Initial import.

This commit is contained in:
Greg Burd 2017-04-03 11:25:47 -04:00
commit 123ba27acd
20 changed files with 2896 additions and 0 deletions

View file

@ -0,0 +1 @@
#Fri Mar 31 21:55:13 EDT 2017

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View file

@ -0,0 +1,90 @@
<?xml version="1.0" encoding="UTF-8"?>
<module external.linked.project.id="farsite:main" external.linked.project.path="$MODULE_DIR$/../.." external.root.project.path="$MODULE_DIR$/../.." external.system.id="GRADLE" external.system.module.group="" external.system.module.type="sourceSet" external.system.module.version="unspecified" type="JAVA_MODULE" version="4">
<component name="FacetManager">
<facet type="kotlin-language" name="Kotlin">
<configuration version="1">
<option name="compilerInfo">
<KotlinCompilerInfo>
<option name="compilerSettings">
<CompilerSettings />
</option>
<option name="k2jsCompilerArguments">
<K2JSCompilerArguments />
</option>
<option name="k2jvmCompilerArguments">
<K2JVMCompilerArguments />
</option>
<option name="_commonCompilerArguments">
<DummyImpl>
<option name="languageVersion" value="1.0" />
<option name="apiVersion" value="1.0" />
<option name="pluginClasspaths">
<array />
</option>
<option name="coroutinesWarn" value="true" />
<option name="pluginOptions">
<array />
</option>
</DummyImpl>
</option>
</KotlinCompilerInfo>
</option>
<option name="useProjectSettings" value="false" />
<option name="versionInfo">
<KotlinVersionInfo>
<option name="apiLevel" value="1.0" />
<option name="languageLevel" value="1.0" />
<option name="targetPlatformName" value="JVM 1.8" />
</KotlinVersionInfo>
</option>
</configuration>
</facet>
</component>
<component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_8">
<output url="file://$MODULE_DIR$/../../build/classes/main" />
<exclude-output />
<content url="file://$MODULE_DIR$/../../src/main">
<sourceFolder url="file://$MODULE_DIR$/../../src/main/java" isTestSource="false" />
<sourceFolder url="file://$MODULE_DIR$/../../src/main/resources" type="java-resource" />
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
<orderEntry type="library" name="Gradle: javax.inject:javax.inject:1" level="project" />
<orderEntry type="library" name="Gradle: com.google.guava:guava:21.0" level="project" />
<orderEntry type="library" name="Gradle: joda-time:joda-time:2.9.9" level="project" />
<orderEntry type="library" name="Gradle: org.projectlombok:lombok:1.16.16" level="project" />
<orderEntry type="library" name="Gradle: org.postgresql:postgresql:42.0.0" level="project" />
<orderEntry type="library" name="Gradle: org.eclipse.persistence:eclipselink:2.6.4" level="project" />
<orderEntry type="library" name="Gradle: org.eclipse.persistence:javax.persistence:2.1.1" level="project" />
<orderEntry type="library" name="Gradle: org.eclipse.persistence:org.eclipse.persistence.jpa:2.6.4" level="project" />
<orderEntry type="library" name="Gradle: io.dropwizard.metrics:metrics-core:3.2.2" level="project" />
<orderEntry type="library" name="Gradle: io.dropwizard.metrics:metrics-jvm:3.2.2" level="project" />
<orderEntry type="library" name="Gradle: io.dropwizard.metrics:metrics-healthchecks:3.2.2" level="project" />
<orderEntry type="library" name="Gradle: io.dropwizard.metrics:metrics-graphite:3.2.2" level="project" />
<orderEntry type="library" name="Gradle: io.riemann:metrics3-riemann-reporter:0.4.3" level="project" />
<orderEntry type="library" name="Gradle: ch.qos.logback:logback-classic:1.2.3" level="project" />
<orderEntry type="library" name="Gradle: org.slf4j:log4j-over-slf4j:1.7.25" level="project" />
<orderEntry type="library" name="Gradle: org.zalando:logbook-core:1.1.1" level="project" />
<orderEntry type="library" name="Gradle: com.github.javafaker:javafaker:0.13" level="project" />
<orderEntry type="library" name="Gradle: org.eclipse.persistence:commonj.sdo:2.1.1" level="project" />
<orderEntry type="library" name="Gradle: javax.validation:validation-api:1.1.0.Final" level="project" />
<orderEntry type="library" name="Gradle: org.glassfish:javax.json:1.0.4" level="project" />
<orderEntry type="library" name="Gradle: org.eclipse.persistence:org.eclipse.persistence.asm:2.6.4" level="project" />
<orderEntry type="library" name="Gradle: org.eclipse.persistence:org.eclipse.persistence.antlr:2.6.4" level="project" />
<orderEntry type="library" name="Gradle: org.eclipse.persistence:org.eclipse.persistence.jpa.jpql:2.6.4" level="project" />
<orderEntry type="library" name="Gradle: org.eclipse.persistence:org.eclipse.persistence.core:2.6.4" level="project" />
<orderEntry type="library" name="Gradle: com.codahale.metrics:metrics-core:3.0.1" level="project" />
<orderEntry type="library" name="Gradle: io.riemann:riemann-java-client:0.4.3" level="project" />
<orderEntry type="library" name="Gradle: ch.qos.logback:logback-core:1.2.3" level="project" />
<orderEntry type="library" name="Gradle: org.zalando:logbook-api:1.1.1" level="project" />
<orderEntry type="library" name="Gradle: com.github.stephenc.jcip:jcip-annotations:1.0-1" level="project" />
<orderEntry type="library" name="Gradle: com.google.code.findbugs:jsr305:3.0.1" level="project" />
<orderEntry type="library" name="Gradle: com.google.gag:gag:1.0.1" level="project" />
<orderEntry type="library" name="Gradle: org.apache.commons:commons-lang3:3.5" level="project" />
<orderEntry type="library" name="Gradle: com.github.mifmif:generex:1.0.2" level="project" />
<orderEntry type="library" name="Gradle: com.google.protobuf:protobuf-java:2.6.1" level="project" />
<orderEntry type="library" name="Gradle: io.netty:netty:3.6.1.Final" level="project" />
<orderEntry type="library" name="Gradle: dk.brics.automaton:automaton:1.11-8" level="project" />
<orderEntry type="library" name="Gradle: org.slf4j:slf4j-api:1.7.25" level="project" />
</component>
</module>

View file

@ -0,0 +1,94 @@
<?xml version="1.0" encoding="UTF-8"?>
<module external.linked.project.id="farsite:test" external.linked.project.path="$MODULE_DIR$/../.." external.root.project.path="$MODULE_DIR$/../.." external.system.id="GRADLE" external.system.module.group="" external.system.module.type="sourceSet" external.system.module.version="unspecified" type="JAVA_MODULE" version="4">
<component name="FacetManager">
<facet type="kotlin-language" name="Kotlin">
<configuration version="1">
<option name="compilerInfo">
<KotlinCompilerInfo>
<option name="compilerSettings">
<CompilerSettings />
</option>
<option name="k2jsCompilerArguments">
<K2JSCompilerArguments />
</option>
<option name="k2jvmCompilerArguments">
<K2JVMCompilerArguments />
</option>
<option name="_commonCompilerArguments">
<DummyImpl>
<option name="languageVersion" value="1.0" />
<option name="apiVersion" value="1.0" />
<option name="pluginClasspaths">
<array />
</option>
<option name="coroutinesWarn" value="true" />
<option name="pluginOptions">
<array />
</option>
</DummyImpl>
</option>
</KotlinCompilerInfo>
</option>
<option name="useProjectSettings" value="false" />
<option name="versionInfo">
<KotlinVersionInfo>
<option name="apiLevel" value="1.0" />
<option name="languageLevel" value="1.0" />
<option name="targetPlatformName" value="JVM 1.8" />
</KotlinVersionInfo>
</option>
</configuration>
</facet>
</component>
<component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_8">
<output-test url="file://$MODULE_DIR$/../../build/classes/test" />
<exclude-output />
<content url="file://$MODULE_DIR$/../../src/test">
<sourceFolder url="file://$MODULE_DIR$/../../src/test/java" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/../../src/test/resources" type="java-test-resource" />
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
<orderEntry type="module" module-name="farsite_main" />
<orderEntry type="library" name="Gradle: javax.inject:javax.inject:1" level="project" />
<orderEntry type="library" name="Gradle: com.google.guava:guava:21.0" level="project" />
<orderEntry type="library" name="Gradle: joda-time:joda-time:2.9.9" level="project" />
<orderEntry type="library" name="Gradle: org.projectlombok:lombok:1.16.16" level="project" />
<orderEntry type="library" name="Gradle: org.postgresql:postgresql:42.0.0" level="project" />
<orderEntry type="library" name="Gradle: org.eclipse.persistence:eclipselink:2.6.4" level="project" />
<orderEntry type="library" name="Gradle: org.eclipse.persistence:javax.persistence:2.1.1" level="project" />
<orderEntry type="library" name="Gradle: org.eclipse.persistence:org.eclipse.persistence.jpa:2.6.4" level="project" />
<orderEntry type="library" name="Gradle: io.dropwizard.metrics:metrics-core:3.2.2" level="project" />
<orderEntry type="library" name="Gradle: io.dropwizard.metrics:metrics-jvm:3.2.2" level="project" />
<orderEntry type="library" name="Gradle: io.dropwizard.metrics:metrics-healthchecks:3.2.2" level="project" />
<orderEntry type="library" name="Gradle: io.dropwizard.metrics:metrics-graphite:3.2.2" level="project" />
<orderEntry type="library" name="Gradle: io.riemann:metrics3-riemann-reporter:0.4.3" level="project" />
<orderEntry type="library" name="Gradle: ch.qos.logback:logback-classic:1.2.3" level="project" />
<orderEntry type="library" name="Gradle: org.slf4j:log4j-over-slf4j:1.7.25" level="project" />
<orderEntry type="library" name="Gradle: org.zalando:logbook-core:1.1.1" level="project" />
<orderEntry type="library" name="Gradle: com.github.javafaker:javafaker:0.13" level="project" />
<orderEntry type="library" name="Gradle: junit:junit:4.12" level="project" />
<orderEntry type="library" name="Gradle: org.eclipse.persistence:commonj.sdo:2.1.1" level="project" />
<orderEntry type="library" name="Gradle: javax.validation:validation-api:1.1.0.Final" level="project" />
<orderEntry type="library" name="Gradle: org.glassfish:javax.json:1.0.4" level="project" />
<orderEntry type="library" name="Gradle: org.eclipse.persistence:org.eclipse.persistence.asm:2.6.4" level="project" />
<orderEntry type="library" name="Gradle: org.eclipse.persistence:org.eclipse.persistence.antlr:2.6.4" level="project" />
<orderEntry type="library" name="Gradle: org.eclipse.persistence:org.eclipse.persistence.jpa.jpql:2.6.4" level="project" />
<orderEntry type="library" name="Gradle: org.eclipse.persistence:org.eclipse.persistence.core:2.6.4" level="project" />
<orderEntry type="library" name="Gradle: com.codahale.metrics:metrics-core:3.0.1" level="project" />
<orderEntry type="library" name="Gradle: io.riemann:riemann-java-client:0.4.3" level="project" />
<orderEntry type="library" name="Gradle: ch.qos.logback:logback-core:1.2.3" level="project" />
<orderEntry type="library" name="Gradle: org.zalando:logbook-api:1.1.1" level="project" />
<orderEntry type="library" name="Gradle: com.github.stephenc.jcip:jcip-annotations:1.0-1" level="project" />
<orderEntry type="library" name="Gradle: com.google.code.findbugs:jsr305:3.0.1" level="project" />
<orderEntry type="library" name="Gradle: com.google.gag:gag:1.0.1" level="project" />
<orderEntry type="library" name="Gradle: org.apache.commons:commons-lang3:3.5" level="project" />
<orderEntry type="library" name="Gradle: com.github.mifmif:generex:1.0.2" level="project" />
<orderEntry type="library" name="Gradle: org.hamcrest:hamcrest-core:1.3" level="project" />
<orderEntry type="library" name="Gradle: com.google.protobuf:protobuf-java:2.6.1" level="project" />
<orderEntry type="library" name="Gradle: io.netty:netty:3.6.1.Final" level="project" />
<orderEntry type="library" name="Gradle: dk.brics.automaton:automaton:1.11-8" level="project" />
<orderEntry type="library" name="Gradle: org.slf4j:slf4j-api:1.7.25" level="project" />
</component>
<component name="TestModuleProperties" production-module="farsite_main" />
</module>

106
build.gradle Normal file
View file

@ -0,0 +1,106 @@
// gradle wrapper
// ./gradlew clean generateLock saveLock
// ./gradlew compileJava
// ./gradlew run
// ./gradlew run --debug-jvm
buildscript {
ext {
}
repositories {
jcenter()
mavenCentral()
maven { url "https://clojars.org/repo" }
}
dependencies {
classpath 'com.netflix.nebula:gradle-dependency-lock-plugin:4.+'
classpath 'com.uber:okbuck:0.19.0'
}
}
apply plugin: 'java'
apply plugin: 'idea'
apply plugin: 'com.uber.okbuck'
apply plugin: 'nebula.dependency-lock'
apply plugin: 'application'
mainClassName = "com.example.farsite.Main"
applicationDefaultJvmArgs = ["-Dgreeting.language=en"]
task execute(type:JavaExec) {
classpath = sourceSets.main.runtimeClasspath
main = project.hasProperty("mainClass") ? project.getProperty("mainClass") : "com.example.farsite.Main"
}
dependencies {
testCompile 'junit:junit:4.12'
}
jar {
baseName = ''
version = '0.0.1-SNAPSHOT'
}
sourceCompatibility = 1.8
targetCompatibility = 1.8
repositories {
jcenter()
mavenLocal()
mavenCentral()
maven { url "https://clojars.org/repo" }
}
configurations {
compile.exclude module: 'spring-boot-starter-tomcat'
compile.exclude module: 'tomcat-jdbc'
}
configurations.all {
exclude group: "org.slf4j", module: "slf4j-log4j12"
exclude group: "log4j", module: "log4j"
}
dependencies {
// Some Java Extras
compile group: 'javax.inject', name: 'javax.inject', version: '1'
// Google Guava, "For all the Goodness(TM)"
compile group: 'com.google.guava', name: 'guava', version: '21.+'
// Joda Time, "Because time is hard(TM)"
compile group: 'joda-time', name: 'joda-time', version: '2.+'
// Lombok, "Where less is more(TM)"
compile group: 'org.projectlombok', name: 'lombok', version: '1.+'
// Entity Storage (aka. txn{CRUD}), "Things necessary for data persistence"
// - CockroachDB (the *clustered, scale-out* PostgreSQL server)
// - HikariCP (Connection Pooling)
// - EclipseLink (ORM)
compile group: 'org.postgresql', name: 'postgresql', version: '42.+'
compile group: 'org.eclipse.persistence', name: 'eclipselink', version: '2.+'
compile group: 'org.eclipse.persistence', name: 'javax.persistence', version: '2.+'
compile group: 'org.eclipse.persistence', name: 'org.eclipse.persistence.jpa', version: '2.+'
// Dropwizard (aka. CodaHale) Metrics, "Measure all the things!(TM)"
compile group: 'io.dropwizard.metrics', name: 'metrics-core', version: '3.+'
compile group: 'io.dropwizard.metrics', name: 'metrics-jvm', version: '3.+'
compile group: 'io.dropwizard.metrics', name: 'metrics-healthchecks', version: '3.+'
compile group: 'io.dropwizard.metrics', name: 'metrics-graphite', version: '3.+'
compile group: 'io.riemann', name: 'metrics3-riemann-reporter', version: '0.+'
// Logging for Java, "Visibility proceeds insight(TM)"
compile group: 'ch.qos.logback', name: 'logback-classic', version: '1.+'
compile group: 'org.slf4j', name: 'log4j-over-slf4j', version: '1.+'
compile group: 'org.zalando', name: 'logbook-core', version: '1.+'
// Fake data generator
compile group: 'com.github.javafaker', name: 'javafaker', version: '0.+'
}
task wrapper(type: Wrapper) {
gradleVersion = '2.2'
}

360
dependencies.lock Normal file
View file

@ -0,0 +1,360 @@
{
"compile": {
"ch.qos.logback:logback-classic": {
"locked": "1.2.3",
"requested": "1.+"
},
"com.github.javafaker:javafaker": {
"locked": "0.13",
"requested": "0.+"
},
"com.google.guava:guava": {
"locked": "21.0",
"requested": "21.+"
},
"io.dropwizard.metrics:metrics-core": {
"locked": "3.2.2",
"requested": "3.+"
},
"io.dropwizard.metrics:metrics-graphite": {
"locked": "3.2.2",
"requested": "3.+"
},
"io.dropwizard.metrics:metrics-healthchecks": {
"locked": "3.2.2",
"requested": "3.+"
},
"io.dropwizard.metrics:metrics-jvm": {
"locked": "3.2.2",
"requested": "3.+"
},
"io.riemann:metrics3-riemann-reporter": {
"locked": "0.4.3",
"requested": "0.+"
},
"javax.inject:javax.inject": {
"locked": "1",
"requested": "1"
},
"joda-time:joda-time": {
"locked": "2.9.9",
"requested": "2.+"
},
"org.eclipse.persistence:eclipselink": {
"locked": "2.6.4",
"requested": "2.+"
},
"org.eclipse.persistence:javax.persistence": {
"locked": "2.1.1",
"requested": "2.+"
},
"org.eclipse.persistence:org.eclipse.persistence.jpa": {
"locked": "2.6.4",
"requested": "2.+"
},
"org.postgresql:postgresql": {
"locked": "42.0.0",
"requested": "42.+"
},
"org.projectlombok:lombok": {
"locked": "1.16.16",
"requested": "1.+"
},
"org.slf4j:log4j-over-slf4j": {
"locked": "1.7.25",
"requested": "1.+"
},
"org.zalando:logbook-core": {
"locked": "1.1.1",
"requested": "1.+"
}
},
"default": {
"ch.qos.logback:logback-classic": {
"locked": "1.2.3",
"requested": "1.+"
},
"com.github.javafaker:javafaker": {
"locked": "0.13",
"requested": "0.+"
},
"com.google.guava:guava": {
"locked": "21.0",
"requested": "21.+"
},
"io.dropwizard.metrics:metrics-core": {
"locked": "3.2.2",
"requested": "3.+"
},
"io.dropwizard.metrics:metrics-graphite": {
"locked": "3.2.2",
"requested": "3.+"
},
"io.dropwizard.metrics:metrics-healthchecks": {
"locked": "3.2.2",
"requested": "3.+"
},
"io.dropwizard.metrics:metrics-jvm": {
"locked": "3.2.2",
"requested": "3.+"
},
"io.riemann:metrics3-riemann-reporter": {
"locked": "0.4.3",
"requested": "0.+"
},
"javax.inject:javax.inject": {
"locked": "1",
"requested": "1"
},
"joda-time:joda-time": {
"locked": "2.9.9",
"requested": "2.+"
},
"org.eclipse.persistence:eclipselink": {
"locked": "2.6.4",
"requested": "2.+"
},
"org.eclipse.persistence:javax.persistence": {
"locked": "2.1.1",
"requested": "2.+"
},
"org.eclipse.persistence:org.eclipse.persistence.jpa": {
"locked": "2.6.4",
"requested": "2.+"
},
"org.postgresql:postgresql": {
"locked": "42.0.0",
"requested": "42.+"
},
"org.projectlombok:lombok": {
"locked": "1.16.16",
"requested": "1.+"
},
"org.slf4j:log4j-over-slf4j": {
"locked": "1.7.25",
"requested": "1.+"
},
"org.zalando:logbook-core": {
"locked": "1.1.1",
"requested": "1.+"
}
},
"runtime": {
"ch.qos.logback:logback-classic": {
"locked": "1.2.3",
"requested": "1.+"
},
"com.github.javafaker:javafaker": {
"locked": "0.13",
"requested": "0.+"
},
"com.google.guava:guava": {
"locked": "21.0",
"requested": "21.+"
},
"io.dropwizard.metrics:metrics-core": {
"locked": "3.2.2",
"requested": "3.+"
},
"io.dropwizard.metrics:metrics-graphite": {
"locked": "3.2.2",
"requested": "3.+"
},
"io.dropwizard.metrics:metrics-healthchecks": {
"locked": "3.2.2",
"requested": "3.+"
},
"io.dropwizard.metrics:metrics-jvm": {
"locked": "3.2.2",
"requested": "3.+"
},
"io.riemann:metrics3-riemann-reporter": {
"locked": "0.4.3",
"requested": "0.+"
},
"javax.inject:javax.inject": {
"locked": "1",
"requested": "1"
},
"joda-time:joda-time": {
"locked": "2.9.9",
"requested": "2.+"
},
"org.eclipse.persistence:eclipselink": {
"locked": "2.6.4",
"requested": "2.+"
},
"org.eclipse.persistence:javax.persistence": {
"locked": "2.1.1",
"requested": "2.+"
},
"org.eclipse.persistence:org.eclipse.persistence.jpa": {
"locked": "2.6.4",
"requested": "2.+"
},
"org.postgresql:postgresql": {
"locked": "42.0.0",
"requested": "42.+"
},
"org.projectlombok:lombok": {
"locked": "1.16.16",
"requested": "1.+"
},
"org.slf4j:log4j-over-slf4j": {
"locked": "1.7.25",
"requested": "1.+"
},
"org.zalando:logbook-core": {
"locked": "1.1.1",
"requested": "1.+"
}
},
"testCompile": {
"ch.qos.logback:logback-classic": {
"locked": "1.2.3",
"requested": "1.+"
},
"com.github.javafaker:javafaker": {
"locked": "0.13",
"requested": "0.+"
},
"com.google.guava:guava": {
"locked": "21.0",
"requested": "21.+"
},
"io.dropwizard.metrics:metrics-core": {
"locked": "3.2.2",
"requested": "3.+"
},
"io.dropwizard.metrics:metrics-graphite": {
"locked": "3.2.2",
"requested": "3.+"
},
"io.dropwizard.metrics:metrics-healthchecks": {
"locked": "3.2.2",
"requested": "3.+"
},
"io.dropwizard.metrics:metrics-jvm": {
"locked": "3.2.2",
"requested": "3.+"
},
"io.riemann:metrics3-riemann-reporter": {
"locked": "0.4.3",
"requested": "0.+"
},
"javax.inject:javax.inject": {
"locked": "1",
"requested": "1"
},
"joda-time:joda-time": {
"locked": "2.9.9",
"requested": "2.+"
},
"junit:junit": {
"locked": "4.12",
"requested": "4.12"
},
"org.eclipse.persistence:eclipselink": {
"locked": "2.6.4",
"requested": "2.+"
},
"org.eclipse.persistence:javax.persistence": {
"locked": "2.1.1",
"requested": "2.+"
},
"org.eclipse.persistence:org.eclipse.persistence.jpa": {
"locked": "2.6.4",
"requested": "2.+"
},
"org.postgresql:postgresql": {
"locked": "42.0.0",
"requested": "42.+"
},
"org.projectlombok:lombok": {
"locked": "1.16.16",
"requested": "1.+"
},
"org.slf4j:log4j-over-slf4j": {
"locked": "1.7.25",
"requested": "1.+"
},
"org.zalando:logbook-core": {
"locked": "1.1.1",
"requested": "1.+"
}
},
"testRuntime": {
"ch.qos.logback:logback-classic": {
"locked": "1.2.3",
"requested": "1.+"
},
"com.github.javafaker:javafaker": {
"locked": "0.13",
"requested": "0.+"
},
"com.google.guava:guava": {
"locked": "21.0",
"requested": "21.+"
},
"io.dropwizard.metrics:metrics-core": {
"locked": "3.2.2",
"requested": "3.+"
},
"io.dropwizard.metrics:metrics-graphite": {
"locked": "3.2.2",
"requested": "3.+"
},
"io.dropwizard.metrics:metrics-healthchecks": {
"locked": "3.2.2",
"requested": "3.+"
},
"io.dropwizard.metrics:metrics-jvm": {
"locked": "3.2.2",
"requested": "3.+"
},
"io.riemann:metrics3-riemann-reporter": {
"locked": "0.4.3",
"requested": "0.+"
},
"javax.inject:javax.inject": {
"locked": "1",
"requested": "1"
},
"joda-time:joda-time": {
"locked": "2.9.9",
"requested": "2.+"
},
"junit:junit": {
"locked": "4.12",
"requested": "4.12"
},
"org.eclipse.persistence:eclipselink": {
"locked": "2.6.4",
"requested": "2.+"
},
"org.eclipse.persistence:javax.persistence": {
"locked": "2.1.1",
"requested": "2.+"
},
"org.eclipse.persistence:org.eclipse.persistence.jpa": {
"locked": "2.6.4",
"requested": "2.+"
},
"org.postgresql:postgresql": {
"locked": "42.0.0",
"requested": "42.+"
},
"org.projectlombok:lombok": {
"locked": "1.16.16",
"requested": "1.+"
},
"org.slf4j:log4j-over-slf4j": {
"locked": "1.7.25",
"requested": "1.+"
},
"org.zalando:logbook-core": {
"locked": "1.1.1",
"requested": "1.+"
}
}
}

22
farsite.iml Normal file
View file

@ -0,0 +1,22 @@
<?xml version="1.0" encoding="UTF-8"?>
<module external.linked.project.id="farsite" external.linked.project.path="$MODULE_DIR$" external.root.project.path="$MODULE_DIR$" external.system.id="GRADLE" external.system.module.group="" external.system.module.version="unspecified" relativePaths="true" type="JAVA_MODULE" version="4">
<component name="FacetManager">
<facet type="jpa" name="JPA">
<configuration>
<setting name="validation-enabled" value="true" />
<setting name="provider-name" value="" />
<datasource-mapping />
<deploymentDescriptor name="persistence.xml" url="file://$MODULE_DIR$/src/META-INF/persistence.xml" />
</configuration>
</facet>
</component>
<component name="NewModuleRootManager" inherit-compiler-output="true">
<exclude-output />
<content url="file://$MODULE_DIR$">
<excludeFolder url="file://$MODULE_DIR$/.gradle" />
<excludeFolder url="file://$MODULE_DIR$/build" />
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
</component>
</module>

481
farsite.ipr Normal file
View file

@ -0,0 +1,481 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="CompilerConfiguration">
<resourceExtensions>
<entry name=".+\.(properties|xml|html|dtd|tld)" />
<entry name=".+\.(gif|png|jpeg|jpg)" />
</resourceExtensions>
<wildcardResourcePatterns>
<entry name="!?*.java" />
<entry name="!?*.groovy" />
</wildcardResourcePatterns>
<annotationProcessing>
<profile default="true" name="Default" enabled="true" />
</annotationProcessing>
<bytecodeTargetLevel>
<module name="farsite_main" target="1.8" />
<module name="farsite_test" target="1.8" />
</bytecodeTargetLevel>
</component>
<component name="CopyrightManager" default="" />
<component name="DependencyValidationManager">
<option name="SKIP_IMPORT_STATEMENTS" value="false" />
</component>
<component name="Encoding" useUTFGuessing="true" native2AsciiForPropertiesFiles="false" />
<component name="GradleSettings">
<option name="linkedExternalProjectsSettings">
<GradleProjectSettings>
<option name="distributionType" value="DEFAULT_WRAPPED" />
<option name="externalProjectPath" value="$PROJECT_DIR$" />
<option name="gradleHome" value="/usr/local/Cellar/gradle/3.3/libexec" />
<option name="modules">
<set>
<option value="$PROJECT_DIR$" />
</set>
</option>
<option name="useAutoImport" value="true" />
</GradleProjectSettings>
</option>
</component>
<component name="GradleUISettings">
<setting name="root" />
</component>
<component name="GradleUISettings2">
<setting name="root" />
</component>
<component name="IdProvider" IDEtalkID="11DA1DB66DD62DDA1ED602B7079FE97C" />
<component name="InspectionProjectProfileManager">
<profile version="1.0">
<option name="myName" value="Project Default" />
</profile>
<version value="1.0" />
</component>
<component name="JavadocGenerationManager">
<option name="OUTPUT_DIRECTORY" />
<option name="OPTION_SCOPE" value="protected" />
<option name="OPTION_HIERARCHY" value="true" />
<option name="OPTION_NAVIGATOR" value="true" />
<option name="OPTION_INDEX" value="true" />
<option name="OPTION_SEPARATE_INDEX" value="true" />
<option name="OPTION_DOCUMENT_TAG_USE" value="false" />
<option name="OPTION_DOCUMENT_TAG_AUTHOR" value="false" />
<option name="OPTION_DOCUMENT_TAG_VERSION" value="false" />
<option name="OPTION_DOCUMENT_TAG_DEPRECATED" value="true" />
<option name="OPTION_DEPRECATED_LIST" value="true" />
<option name="OTHER_OPTIONS" value="" />
<option name="HEAP_SIZE" />
<option name="LOCALE" />
<option name="OPEN_IN_BROWSER" value="true" />
</component>
<component name="KotlinCommonCompilerArguments">
<option name="languageVersion" value="1.1" />
<option name="apiVersion" value="1.1" />
</component>
<component name="ProjectModuleManager">
<modules>
<module fileurl="file://$PROJECT_DIR$/farsite.iml" filepath="$PROJECT_DIR$/farsite.iml" />
<module fileurl="file://$PROJECT_DIR$/.idea/modules/farsite_main.iml" filepath="$PROJECT_DIR$/.idea/modules/farsite_main.iml" group="farsite" />
<module fileurl="file://$PROJECT_DIR$/.idea/modules/farsite_test.iml" filepath="$PROJECT_DIR$/.idea/modules/farsite_test.iml" group="farsite" />
</modules>
</component>
<component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" project-jdk-name="1.8" project-jdk-type="JavaSDK">
<output url="file://$PROJECT_DIR$/out" />
</component>
<component name="SvnBranchConfigurationManager">
<option name="mySupportsUserInfoFilter" value="true" />
</component>
<component name="libraryTable">
<library name="Gradle: ch.qos.logback:logback-classic:1.2.3">
<CLASSES>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/ch.qos.logback/logback-classic/1.2.3/7c4f3c474fb2c041d8028740440937705ebb473a/logback-classic-1.2.3.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/ch.qos.logback/logback-classic/1.2.3/cfd5385e0c5ed1c8a5dce57d86e79cf357153a64/logback-classic-1.2.3-sources.jar!/" />
</SOURCES>
</library>
<library name="Gradle: ch.qos.logback:logback-core:1.2.3">
<CLASSES>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/ch.qos.logback/logback-core/1.2.3/864344400c3d4d92dfeb0a305dc87d953677c03c/logback-core-1.2.3.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/ch.qos.logback/logback-core/1.2.3/3ebabe69eba0196af9ad3a814f723fb720b9101e/logback-core-1.2.3-sources.jar!/" />
</SOURCES>
</library>
<library name="Gradle: com.codahale.metrics:metrics-core:3.0.1">
<CLASSES>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.codahale.metrics/metrics-core/3.0.1/1e98427c7f6e53363b598e2943e50903ce4f3657/metrics-core-3.0.1.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.codahale.metrics/metrics-core/3.0.1/abfcf3776e5ab80cd493b3c37144f49f2aa86f31/metrics-core-3.0.1-sources.jar!/" />
</SOURCES>
</library>
<library name="Gradle: com.github.javafaker:javafaker:0.13">
<CLASSES>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.github.javafaker/javafaker/0.13/570a68db6e8b61da8a8331811d9f515b032ebee4/javafaker-0.13.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.github.javafaker/javafaker/0.13/a16f41537306131cb2db7db4d4bf051405b5480e/javafaker-0.13-sources.jar!/" />
</SOURCES>
</library>
<library name="Gradle: com.github.mifmif:generex:1.0.2">
<CLASSES>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.github.mifmif/generex/1.0.2/b378f873b4e8d7616c3d920e2132cb1c87679600/generex-1.0.2.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.github.mifmif/generex/1.0.2/d1f52c4efe0b20154faf35f8df5c08a234dc41db/generex-1.0.2-sources.jar!/" />
</SOURCES>
</library>
<library name="Gradle: com.github.stephenc.jcip:jcip-annotations:1.0-1">
<CLASSES>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.github.stephenc.jcip/jcip-annotations/1.0-1/ef31541dd28ae2cefdd17c7ebf352d93e9058c63/jcip-annotations-1.0-1.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.github.stephenc.jcip/jcip-annotations/1.0-1/2064ac5ff426f3c02656aedc317952b82463782f/jcip-annotations-1.0-1-sources.jar!/" />
</SOURCES>
</library>
<library name="Gradle: com.google.code.findbugs:jsr305:3.0.1">
<CLASSES>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.google.code.findbugs/jsr305/3.0.1/f7be08ec23c21485b9b5a1cf1654c2ec8c58168d/jsr305-3.0.1.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.google.code.findbugs/jsr305/3.0.1/a2926c057ca3b662b9db194c869bdbe7d3bb8aef/jsr305-3.0.1-sources.jar!/" />
</SOURCES>
</library>
<library name="Gradle: com.google.gag:gag:1.0.1">
<CLASSES>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.google.gag/gag/1.0.1/3daaf10b4399cab0546b5d56b0f74b98b06be0aa/gag-1.0.1.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.google.gag/gag/1.0.1/4e3c3162e30ee738902b0cddc1d5444a91514def/gag-1.0.1-sources.jar!/" />
</SOURCES>
</library>
<library name="Gradle: com.google.guava:guava:21.0">
<CLASSES>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.google.guava/guava/21.0/3a3d111be1be1b745edfa7d91678a12d7ed38709/guava-21.0.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.google.guava/guava/21.0/b9ed26b8c23fe7cd3e6b463b34e54e5c6d9536d5/guava-21.0-sources.jar!/" />
</SOURCES>
</library>
<library name="Gradle: com.google.protobuf:protobuf-java:2.6.1">
<CLASSES>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.google.protobuf/protobuf-java/2.6.1/d9521f2aecb909835746b7a5facf612af5e890e8/protobuf-java-2.6.1.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.google.protobuf/protobuf-java/2.6.1/cf47bfc6a10f85d14bc4c078a48d163b5903a291/protobuf-java-2.6.1-sources.jar!/" />
</SOURCES>
</library>
<library name="Gradle: dk.brics.automaton:automaton:1.11-8">
<CLASSES>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/dk.brics.automaton/automaton/1.11-8/6ebfa65eb431ff4b715a23be7a750cbc4cc96d0f/automaton-1.11-8.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/dk.brics.automaton/automaton/1.11-8/6bc89a2a9c9c5524aa275b572c0fd3699ff7a5be/automaton-1.11-8-sources.jar!/" />
</SOURCES>
</library>
<library name="Gradle: io.dropwizard.metrics:metrics-core:3.2.2">
<CLASSES>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/io.dropwizard.metrics/metrics-core/3.2.2/cd9886f498ee2ab2d994f0c779e5553b2c450416/metrics-core-3.2.2.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/io.dropwizard.metrics/metrics-core/3.2.2/d8341de37a301b38988b40f5b20976258f2b77e8/metrics-core-3.2.2-sources.jar!/" />
</SOURCES>
</library>
<library name="Gradle: io.dropwizard.metrics:metrics-graphite:3.2.2">
<CLASSES>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/io.dropwizard.metrics/metrics-graphite/3.2.2/908e8cbec1bbdb2f4023334e424c7de2832a95af/metrics-graphite-3.2.2.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/io.dropwizard.metrics/metrics-graphite/3.2.2/9c1d1d208082bd7816d147f3b5479fa7b068f1e8/metrics-graphite-3.2.2-sources.jar!/" />
</SOURCES>
</library>
<library name="Gradle: io.dropwizard.metrics:metrics-healthchecks:3.2.2">
<CLASSES>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/io.dropwizard.metrics/metrics-healthchecks/3.2.2/b3ab00fe50f793cc5b4412cf5fb14179bee10a26/metrics-healthchecks-3.2.2.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/io.dropwizard.metrics/metrics-healthchecks/3.2.2/8b19146b468e6396c42d9e6abc049fef16fd778a/metrics-healthchecks-3.2.2-sources.jar!/" />
</SOURCES>
</library>
<library name="Gradle: io.dropwizard.metrics:metrics-jvm:3.2.2">
<CLASSES>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/io.dropwizard.metrics/metrics-jvm/3.2.2/9cbf2030242f7ffb97fae23f8a81421eb8d4ad45/metrics-jvm-3.2.2.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/io.dropwizard.metrics/metrics-jvm/3.2.2/3f19780b12bbe21468f41705ebf391493fdc85eb/metrics-jvm-3.2.2-sources.jar!/" />
</SOURCES>
</library>
<library name="Gradle: io.netty:netty:3.6.1.Final">
<CLASSES>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/io.netty/netty/3.6.1.Final/e044dd5d3f3e328686c8d5816cc5f2c86693f634/netty-3.6.1.Final.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/io.netty/netty/3.6.1.Final/a9ce2555b3e03c6ffc88468151fe2204ca6d0a6f/netty-3.6.1.Final-sources.jar!/" />
</SOURCES>
</library>
<library name="Gradle: io.riemann:metrics3-riemann-reporter:0.4.3">
<CLASSES>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/io.riemann/metrics3-riemann-reporter/0.4.3/9e1b61b2efff812be7e9cefbcd3113305a3e5055/metrics3-riemann-reporter-0.4.3.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/io.riemann/metrics3-riemann-reporter/0.4.3/5f0bb55d6d1c206e3413ab5da71a787eb7889df9/metrics3-riemann-reporter-0.4.3-sources.jar!/" />
</SOURCES>
</library>
<library name="Gradle: io.riemann:riemann-java-client:0.4.3">
<CLASSES>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/io.riemann/riemann-java-client/0.4.3/660cdaed3038b6cc366a0938fb75bb9ea45418bf/riemann-java-client-0.4.3.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/io.riemann/riemann-java-client/0.4.3/61d78cc81e1f9cc458607f0d0ffe6c830824ba1a/riemann-java-client-0.4.3-sources.jar!/" />
</SOURCES>
</library>
<library name="Gradle: javax.inject:javax.inject:1">
<CLASSES>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/javax.inject/javax.inject/1/6975da39a7040257bd51d21a231b76c915872d38/javax.inject-1.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/javax.inject/javax.inject/1/a00123f261762a7c5e0ec916a2c7c8298d29c400/javax.inject-1-sources.jar!/" />
</SOURCES>
</library>
<library name="Gradle: javax.validation:validation-api:1.1.0.Final">
<CLASSES>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/javax.validation/validation-api/1.1.0.Final/8613ae82954779d518631e05daa73a6a954817d5/validation-api-1.1.0.Final.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/javax.validation/validation-api/1.1.0.Final/7d49b53caed9bd81d172807c3e096d24f3c57090/validation-api-1.1.0.Final-sources.jar!/" />
</SOURCES>
</library>
<library name="Gradle: joda-time:joda-time:2.9.9">
<CLASSES>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/joda-time/joda-time/2.9.9/f7b520c458572890807d143670c9b24f4de90897/joda-time-2.9.9.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/joda-time/joda-time/2.9.9/29a9fcf32288cd678b37b372974786f731b982d1/joda-time-2.9.9-sources.jar!/" />
</SOURCES>
</library>
<library name="Gradle: junit:junit:4.12">
<CLASSES>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/junit/junit/4.12/2973d150c0dc1fefe998f834810d68f278ea58ec/junit-4.12.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/junit/junit/4.12/a6c32b40bf3d76eca54e3c601e5d1470c86fcdfa/junit-4.12-sources.jar!/" />
</SOURCES>
</library>
<library name="Gradle: org.apache.commons:commons-lang3:3.5">
<CLASSES>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.apache.commons/commons-lang3/3.5/6c6c702c89bfff3cd9e80b04d668c5e190d588c6/commons-lang3-3.5.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.apache.commons/commons-lang3/3.5/f7d878153e86a1cdddf6b37850e00a9f8bff726f/commons-lang3-3.5-sources.jar!/" />
</SOURCES>
</library>
<library name="Gradle: org.eclipse.persistence:commonj.sdo:2.1.1">
<CLASSES>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.eclipse.persistence/commonj.sdo/2.1.1/90d4c89ce0a69f58619f1a247bbf420122139ff5/commonj.sdo-2.1.1.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.eclipse.persistence/commonj.sdo/2.1.1/6de70daec63068c07df2a87507cafb2cc34ef2b1/commonj.sdo-2.1.1-sources.jar!/" />
</SOURCES>
</library>
<library name="Gradle: org.eclipse.persistence:eclipselink:2.6.4">
<CLASSES>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.eclipse.persistence/eclipselink/2.6.4/526cc0ddb69c01784e7e9b0a048f39dc313403cb/eclipselink-2.6.4.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.eclipse.persistence/eclipselink/2.6.4/8111a270d75d595c1dfe4404e58e1ceae4c92d43/eclipselink-2.6.4-sources.jar!/" />
</SOURCES>
</library>
<library name="Gradle: org.eclipse.persistence:javax.persistence:2.1.1">
<CLASSES>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.eclipse.persistence/javax.persistence/2.1.1/4954fdf995d5083a1bdbf171ea3b240b88c85bac/javax.persistence-2.1.1.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.eclipse.persistence/javax.persistence/2.1.1/9c9b416652ec904ef11bdba41ddcf299ce38f12b/javax.persistence-2.1.1-sources.jar!/" />
</SOURCES>
</library>
<library name="Gradle: org.eclipse.persistence:org.eclipse.persistence.antlr:2.6.4">
<CLASSES>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.eclipse.persistence/org.eclipse.persistence.antlr/2.6.4/63fc1991395280365ae6a1f9ef07a09f3c338338/org.eclipse.persistence.antlr-2.6.4.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.eclipse.persistence/org.eclipse.persistence.antlr/2.6.4/7caffaedef2d51b46fbdfea278eac5bc38cac03c/org.eclipse.persistence.antlr-2.6.4-sources.jar!/" />
</SOURCES>
</library>
<library name="Gradle: org.eclipse.persistence:org.eclipse.persistence.asm:2.6.4">
<CLASSES>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.eclipse.persistence/org.eclipse.persistence.asm/2.6.4/c9a0ba8354c23212d71f624b48e51918767cea3d/org.eclipse.persistence.asm-2.6.4.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.eclipse.persistence/org.eclipse.persistence.asm/2.6.4/c4a34acef667c6c08d31847e8a734ceb36b9611e/org.eclipse.persistence.asm-2.6.4-sources.jar!/" />
</SOURCES>
</library>
<library name="Gradle: org.eclipse.persistence:org.eclipse.persistence.core:2.6.4">
<CLASSES>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.eclipse.persistence/org.eclipse.persistence.core/2.6.4/e31a234fcc73ca3fbd3079c84fc8b5aad00d3762/org.eclipse.persistence.core-2.6.4.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.eclipse.persistence/org.eclipse.persistence.core/2.6.4/52e2989a62a54c7d89d5b201d1fa5eebcab35909/org.eclipse.persistence.core-2.6.4-sources.jar!/" />
</SOURCES>
</library>
<library name="Gradle: org.eclipse.persistence:org.eclipse.persistence.jpa.jpql:2.6.4">
<CLASSES>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.eclipse.persistence/org.eclipse.persistence.jpa.jpql/2.6.4/da703ce6083d41173e867ae6923e1b5820c052c5/org.eclipse.persistence.jpa.jpql-2.6.4.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.eclipse.persistence/org.eclipse.persistence.jpa.jpql/2.6.4/769fd5d40350e59db3ad80c01e1bb3c73093ab43/org.eclipse.persistence.jpa.jpql-2.6.4-sources.jar!/" />
</SOURCES>
</library>
<library name="Gradle: org.eclipse.persistence:org.eclipse.persistence.jpa:2.6.4">
<CLASSES>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.eclipse.persistence/org.eclipse.persistence.jpa/2.6.4/40e59fbf90875950f0cc784c30306099c0a87ac1/org.eclipse.persistence.jpa-2.6.4.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.eclipse.persistence/org.eclipse.persistence.jpa/2.6.4/e2b68fc5e6dbe65a930d68d03ad13c79dca84c1f/org.eclipse.persistence.jpa-2.6.4-sources.jar!/" />
</SOURCES>
</library>
<library name="Gradle: org.glassfish:javax.json:1.0.4">
<CLASSES>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.glassfish/javax.json/1.0.4/3178f73569fd7a1e5ffc464e680f7a8cc784b85a/javax.json-1.0.4.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.glassfish/javax.json/1.0.4/ef782abad0d3f1d30644c4023a6bbc6fe371e23a/javax.json-1.0.4-sources.jar!/" />
</SOURCES>
</library>
<library name="Gradle: org.hamcrest:hamcrest-core:1.3">
<CLASSES>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.hamcrest/hamcrest-core/1.3/42a25dc3219429f0e5d060061f71acb49bf010a0/hamcrest-core-1.3.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.hamcrest/hamcrest-core/1.3/1dc37250fbc78e23a65a67fbbaf71d2e9cbc3c0b/hamcrest-core-1.3-sources.jar!/" />
</SOURCES>
</library>
<library name="Gradle: org.postgresql:postgresql:42.0.0">
<CLASSES>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.postgresql/postgresql/42.0.0/938ede0cdf862cc4eaba5023a86254783af1d261/postgresql-42.0.0.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.postgresql/postgresql/42.0.0/6352c460e5767b1cdae11b4f3d1f437da20f195/postgresql-42.0.0-sources.jar!/" />
</SOURCES>
</library>
<library name="Gradle: org.projectlombok:lombok:1.16.16">
<CLASSES>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.projectlombok/lombok/1.16.16/245b50f714bf89ed7659266ace12f9e509d13551/lombok-1.16.16.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.projectlombok/lombok/1.16.16/c4b112e9645070ac05946084317cc5d01cf4ddcd/lombok-1.16.16-sources.jar!/" />
</SOURCES>
</library>
<library name="Gradle: org.slf4j:log4j-over-slf4j:1.7.25">
<CLASSES>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.slf4j/log4j-over-slf4j/1.7.25/a87bb47468f47ee7aabbd54f93e133d4215769c3/log4j-over-slf4j-1.7.25.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.slf4j/log4j-over-slf4j/1.7.25/42a10e06ab88cbe5f31253ffb8c0bca96b34f81d/log4j-over-slf4j-1.7.25-sources.jar!/" />
</SOURCES>
</library>
<library name="Gradle: org.slf4j:slf4j-api:1.7.25">
<CLASSES>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.slf4j/slf4j-api/1.7.25/da76ca59f6a57ee3102f8f9bd9cee742973efa8a/slf4j-api-1.7.25.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.slf4j/slf4j-api/1.7.25/962153db4a9ea71b79d047dfd1b2a0d80d8f4739/slf4j-api-1.7.25-sources.jar!/" />
</SOURCES>
</library>
<library name="Gradle: org.zalando:logbook-api:1.1.1">
<CLASSES>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.zalando/logbook-api/1.1.1/dc91f0565568d3d9d7b34ad124510c0f4384bbe9/logbook-api-1.1.1.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.zalando/logbook-api/1.1.1/17022f3106e0835d7985d023d971856aa296d2f4/logbook-api-1.1.1-sources.jar!/" />
</SOURCES>
</library>
<library name="Gradle: org.zalando:logbook-core:1.1.1">
<CLASSES>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.zalando/logbook-core/1.1.1/b2937b8b8ac427114d0797a92ee266f5f442243d/logbook-core-1.1.1.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.zalando/logbook-core/1.1.1/6df19484b4b7e6cbeab983dbb15534857b91b843/logbook-core-1.1.1-sources.jar!/" />
</SOURCES>
</library>
</component>
<component name="masterDetails">
<states>
<state key="ArtifactsStructureConfigurable.UI">
<UIState>
<splitter-proportions>
<SplitterProportionsDataImpl />
</splitter-proportions>
<settings />
</UIState>
</state>
<state key="Copyright.UI">
<UIState>
<splitter-proportions>
<SplitterProportionsDataImpl />
</splitter-proportions>
</UIState>
</state>
<state key="ProjectJDKs.UI">
<UIState>
<splitter-proportions>
<SplitterProportionsDataImpl>
<option name="proportions">
<list>
<option value="0.2" />
</list>
</option>
</SplitterProportionsDataImpl>
</splitter-proportions>
<last-edited>1.6</last-edited>
</UIState>
</state>
<state key="ScopeChooserConfigurable.UI">
<UIState>
<splitter-proportions>
<SplitterProportionsDataImpl />
</splitter-proportions>
<settings />
</UIState>
</state>
</states>
</component>
</project>

1467
farsite.iws Normal file

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,47 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<!-- https://jcp.org/aboutJava/communityprocess/final/jsr338/index.html -->
<persistence xmlns="http://xmlns.jcp.org/xml/ns/persistence"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/persistence
http://xmlns.jcp.org/xml/ns/persistence/persistence_2_1.xsd"
version="2.1">
<persistence-unit name="people" transaction-type="JTA">
<provider>org.eclipse.persistence.jpa.PersistenceProvider</provider>
<exclude-unlisted-classes>true</exclude-unlisted-classes>
<properties>
<property name="javax.persistence.jdbc.driver" value="org.postgresql.Driver" />
<property name="javax.persistence.jdbc.url" value="jdbc:postgresql://127.0.0.1:26257/farsite?sslmode=disable" />
<property name="javax.persistence.jdbc.user" value="root" />
<property name="javax.persistence.jdbc.password" value="" />
<!-- EclipseLink should create the database schema automatically -->
<property name="eclipselink.ddl-generation" value="drop-and-create-tables" />
<property name="eclipselink.ddl-generation.output-mode" value="database" />
<property name="eclipselink.target-database" value="PostgreSQL"/>
<property name="eclipselink.logging.level" value="FINE"/>
<property name="eclipselink.logging.logger" value="JavaLogger"/>
</properties>
</persistence-unit>
<persistence-unit name="todos" transaction-type="RESOURCE_LOCAL">
<provider>org.eclipse.persistence.jpa.PersistenceProvider</provider>
<exclude-unlisted-classes>true</exclude-unlisted-classes>
<properties>
<property name="javax.persistence.jdbc.driver" value="org.postgresql.Driver" />
<property name="javax.persistence.jdbc.url" value="jdbc:postgresql://127.0.0.1:26257/farsite?sslmode=disable" />
<property name="javax.persistence.jdbc.user" value="root" />
<property name="javax.persistence.jdbc.password" value="" />
<!-- EclipseLink should create the database schema automatically -->
<property name="eclipselink.ddl-generation" value="create-tables" />
<property name="eclipselink.ddl-generation.output-mode" value="database" />
<property name="eclipselink.logging.level" value="FINE"/>
<property name="eclipselink.logging.logger" value="JavaLogger"/>
</properties>
</persistence-unit>
</persistence>

View file

@ -0,0 +1,36 @@
package com.example.farsite;
import com.example.farsite.model.Todo;
import javax.persistence.EntityManager;
import javax.persistence.EntityManagerFactory;
import javax.persistence.Persistence;
import javax.persistence.Query;
import java.util.List;
public class Main {
private static final String PERSISTENCE_UNIT_NAME = "todos";
private static EntityManagerFactory factory;
public static void main(String[] args) {
factory = Persistence.createEntityManagerFactory(PERSISTENCE_UNIT_NAME);
EntityManager em = factory.createEntityManager();
// read the existing entries and write to console
Query q = em.createQuery("select t from Todo t");
List<Todo> todoList = q.getResultList();
for (Todo todo : todoList) {
System.out.println(todo);
}
System.out.println("Size: " + todoList.size());
// create new todo
em.getTransaction().begin();
Todo todo = new Todo();
todo.setSummary("This is a test");
todo.setDescription("This is a test");
em.persist(todo);
em.getTransaction().commit();
em.close();
}
}

View file

@ -0,0 +1,19 @@
package com.example.farsite.model;
import lombok.Data;
import javax.persistence.*;
import java.util.ArrayList;
import java.util.List;
@Entity
@Data
public class Family {
@Id
@GeneratedValue(strategy = GenerationType.TABLE)
private int id;
private String description;
@OneToMany(mappedBy = "family")
private final List<Person> members = new ArrayList<Person>();
}

View file

@ -0,0 +1,16 @@
package com.example.farsite.model;
import lombok.Data;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
@Entity
public class Job {
@Id
@GeneratedValue(strategy = GenerationType.TABLE)
private int id;
private double salery;
private String jobDescr;
}

View file

@ -0,0 +1,32 @@
package com.example.farsite.model;
import lombok.Data;
import java.util.ArrayList;
import java.util.List;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.ManyToOne;
import javax.persistence.OneToMany;
import javax.persistence.Transient;
@Entity
@Data
public class Person {
@Id
@GeneratedValue(strategy = GenerationType.TABLE)
private String id;
private String firstName;
private String lastName;
@ManyToOne
private Family family;
@Transient
private String nonsenseField = "";
@OneToMany
private List<Job> jobList = new ArrayList<Job>();
}

View file

@ -0,0 +1,18 @@
package com.example.farsite.model;
import lombok.Data;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
@Entity
@Data
public class Todo {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
private String summary;
private String description;
}

View file

@ -0,0 +1,107 @@
package com.example.farsite.model;
import org.junit.Before;
import org.junit.Test;
import javax.persistence.EntityManager;
import javax.persistence.EntityManagerFactory;
import javax.persistence.Persistence;
import javax.persistence.Query;
import static org.junit.Assert.assertTrue;
public class JpaTest {
private static final String PERSISTENCE_UNIT_NAME = "people";
private EntityManagerFactory factory;
@Before
public void setUp() throws Exception {
factory = Persistence.createEntityManagerFactory(PERSISTENCE_UNIT_NAME);
EntityManager em = factory.createEntityManager();
// Begin a new local transaction so that we can persist a new entity
em.getTransaction().begin();
// read the existing entries
Query q = em.createQuery("select m from Person m");
// Persons should be empty
// do we have entries?
boolean createNewEntries = (q.getResultList().size() == 0);
// No, so lets create new entries
if (createNewEntries) {
assertTrue(q.getResultList().size() == 0);
Family family = new Family();
family.setDescription("Family for the Knopfs");
em.persist(family);
for (int i = 0; i < 40; i++) {
Person person = new Person();
person.setFirstName("Jim_" + i);
person.setLastName("Knopf_" + i);
em.persist(person);
// now persists the family person relationship
family.getMembers().add(person);
em.persist(person);
em.persist(family);
}
}
// Commit the transaction, which will cause the entity to
// be stored in the database
em.getTransaction().commit();
// It is always good practice to close the EntityManager so that
// resources are conserved.
em.close();
}
@Test
public void checkAvailablePeople() {
// now lets check the database and see if the created entries are there
// create a fresh, new EntityManager
EntityManager em = factory.createEntityManager();
// Perform a simple query for all the Message entities
Query q = em.createQuery("select m from Person m");
// We should have 40 Persons in the database
assertTrue(q.getResultList().size() == 40);
em.close();
}
@Test
public void checkFamily() {
EntityManager em = factory.createEntityManager();
// Go through each of the entities and print out each of their
// messages, as well as the date on which it was created
Query q = em.createQuery("select f from Family f");
// We should have one family with 40 persons
assertTrue(q.getResultList().size() == 1);
assertTrue(((Family) q.getSingleResult()).getMembers().size() == 40);
em.close();
}
@Test(expected = javax.persistence.NoResultException.class)
public void deletePerson() {
EntityManager em = factory.createEntityManager();
// Begin a new local transaction so that we can persist a new entity
em.getTransaction().begin();
Query q = em
.createQuery("SELECT p FROM Person p WHERE p.firstName = :firstName AND p.lastName = :lastName");
q.setParameter("firstName", "Jim_1");
q.setParameter("lastName", "Knopf_!");
Person user = (Person) q.getSingleResult();
em.remove(user);
em.getTransaction().commit();
Person person = (Person) q.getSingleResult();
// Begin a new local transaction so that we can persist a new entity
em.close();
}
}