From e8bbe6eba606d8661ec691249f2eedd921b2c48e Mon Sep 17 00:00:00 2001 From: Thai Nguyen Date: Thu, 26 May 2016 17:36:32 +0700 Subject: [PATCH 01/26] initial commit for wiremock --- rest-testing/pom.xml | 285 +++++++++--------- .../wiremock/introduction/JUnitManaged.java | 53 ++++ .../introduction/ProgrammaticallyManaged.java | 52 ++++ 3 files changed, 251 insertions(+), 139 deletions(-) create mode 100644 rest-testing/src/test/java/com/baeldung/rest/wiremock/introduction/JUnitManaged.java create mode 100644 rest-testing/src/test/java/com/baeldung/rest/wiremock/introduction/ProgrammaticallyManaged.java diff --git a/rest-testing/pom.xml b/rest-testing/pom.xml index e159af0b77..3bd7efb4d5 100644 --- a/rest-testing/pom.xml +++ b/rest-testing/pom.xml @@ -1,173 +1,180 @@ - - 4.0.0 - com.baeldung - rest-testing - 0.1-SNAPSHOT + + 4.0.0 + com.baeldung + rest-testing + 0.1-SNAPSHOT - rest-testing + rest-testing - + - + - - com.google.guava - guava - ${guava.version} - + + com.google.guava + guava + ${guava.version} + - - commons-io - commons-io - 2.4 - + + commons-io + commons-io + 2.4 + - - org.apache.commons - commons-lang3 - ${commons-lang3.version} - + + org.apache.commons + commons-lang3 + ${commons-lang3.version} + - + - - org.apache.httpcomponents - httpclient - ${httpclient.version} - - - org.apache.httpcomponents - httpcore - ${httpcore.version} - + + org.apache.httpcomponents + httpclient + ${httpclient.version} + + + org.apache.httpcomponents + httpcore + ${httpcore.version} + - + - - com.fasterxml.jackson.core - jackson-databind - ${jackson.version} - + + com.fasterxml.jackson.core + jackson-databind + ${jackson.version} + - + - - org.slf4j - slf4j-api - ${org.slf4j.version} - - - ch.qos.logback - logback-classic - ${logback.version} - - - - org.slf4j - jcl-over-slf4j - ${org.slf4j.version} - runtime - - - org.slf4j - log4j-over-slf4j - ${org.slf4j.version} - + + org.slf4j + slf4j-api + ${org.slf4j.version} + + + ch.qos.logback + logback-classic + ${logback.version} + + + + org.slf4j + jcl-over-slf4j + ${org.slf4j.version} + runtime + + + org.slf4j + log4j-over-slf4j + ${org.slf4j.version} + - + - - junit - junit - ${junit.version} - test - + + junit + junit + ${junit.version} + test + - - org.hamcrest - hamcrest-core - ${org.hamcrest.version} - test - - - org.hamcrest - hamcrest-library - ${org.hamcrest.version} - test - + + org.hamcrest + hamcrest-core + ${org.hamcrest.version} + test + + + org.hamcrest + hamcrest-library + ${org.hamcrest.version} + test + - - org.mockito - mockito-core - ${mockito.version} - test - + + org.mockito + mockito-core + ${mockito.version} + test + + + com.github.tomakehurst + wiremock + 1.58 + test + - + - - rest-testing - - - src/main/resources - true - - + + rest-testing + + + src/main/resources + true + + - + - - org.apache.maven.plugins - maven-compiler-plugin - ${maven-compiler-plugin.version} - - 1.8 - 1.8 - - + + org.apache.maven.plugins + maven-compiler-plugin + ${maven-compiler-plugin.version} + + 1.8 + 1.8 + + - - org.apache.maven.plugins - maven-surefire-plugin - ${maven-surefire-plugin.version} - + + org.apache.maven.plugins + maven-surefire-plugin + ${maven-surefire-plugin.version} + - + - + - - - 2.7.2 + + + 2.7.2 - - 1.7.13 - 1.1.3 + + 1.7.13 + 1.1.3 - - 5.1.3.Final + + 5.1.3.Final - - 19.0 - 3.4 + + 19.0 + 3.4 - - 1.3 - 4.12 - 1.10.19 + + 1.3 + 4.12 + 1.10.19 - 4.4.1 - 4.5 + 4.4.1 + 4.5 - 2.9.0 + 2.9.0 - - 3.5.1 - 2.6 - 2.19.1 - 2.7 - 1.4.18 + + 3.5.1 + 2.6 + 2.19.1 + 2.7 + 1.4.18 - + \ No newline at end of file diff --git a/rest-testing/src/test/java/com/baeldung/rest/wiremock/introduction/JUnitManaged.java b/rest-testing/src/test/java/com/baeldung/rest/wiremock/introduction/JUnitManaged.java new file mode 100644 index 0000000000..9fef6017c1 --- /dev/null +++ b/rest-testing/src/test/java/com/baeldung/rest/wiremock/introduction/JUnitManaged.java @@ -0,0 +1,53 @@ +package com.baeldung.rest.wiremock.introduction; + +import static com.github.tomakehurst.wiremock.client.WireMock.aResponse; +import static com.github.tomakehurst.wiremock.client.WireMock.configureFor; +import static com.github.tomakehurst.wiremock.client.WireMock.get; +import static com.github.tomakehurst.wiremock.client.WireMock.getRequestedFor; +import static com.github.tomakehurst.wiremock.client.WireMock.stubFor; +import static com.github.tomakehurst.wiremock.client.WireMock.urlEqualTo; +import static com.github.tomakehurst.wiremock.client.WireMock.urlPathMatching; +import static com.github.tomakehurst.wiremock.client.WireMock.verify; +import static org.junit.Assert.assertEquals; + +import java.io.IOException; +import java.io.InputStream; +import java.util.Scanner; + +import org.apache.http.HttpResponse; +import org.apache.http.client.methods.HttpGet; +import org.apache.http.impl.client.CloseableHttpClient; +import org.apache.http.impl.client.HttpClients; +import org.junit.Rule; +import org.junit.Test; + +import com.github.tomakehurst.wiremock.junit.WireMockRule; + +public class JUnitManaged { + @Rule + public WireMockRule wireMockRule = new WireMockRule(); + + @Test + public void givenJUnitManagedServer_whenStubbingURL_thenCorrect() throws IOException { + configureFor("localhost", 8080); + stubFor(get(urlPathMatching("/baeldung/.*")).willReturn(aResponse().withStatus(200).withHeader("Content-Type", "application/json").withBody("\"testing-library\": \"WireMock\""))); + + CloseableHttpClient httpClient = HttpClients.createDefault(); + HttpGet request = new HttpGet("http://localhost:8080/baeldung/wiremock"); + HttpResponse httpResponse = httpClient.execute(request); + String stringResponse = convertResponseToString(httpResponse); + + verify(getRequestedFor(urlEqualTo("/baeldung/wiremock"))); + assertEquals(200, httpResponse.getStatusLine().getStatusCode()); + assertEquals("application/json", httpResponse.getFirstHeader("Content-Type").getValue()); + assertEquals("\"testing-library\": \"WireMock\"", stringResponse); + } + + private String convertResponseToString(HttpResponse response) throws IOException { + InputStream responseStream = response.getEntity().getContent(); + Scanner scanner = new Scanner(responseStream, "UTF-8"); + String stringResponse = scanner.useDelimiter("\\Z").next(); + scanner.close(); + return stringResponse; + } +} diff --git a/rest-testing/src/test/java/com/baeldung/rest/wiremock/introduction/ProgrammaticallyManaged.java b/rest-testing/src/test/java/com/baeldung/rest/wiremock/introduction/ProgrammaticallyManaged.java new file mode 100644 index 0000000000..34b445ac0f --- /dev/null +++ b/rest-testing/src/test/java/com/baeldung/rest/wiremock/introduction/ProgrammaticallyManaged.java @@ -0,0 +1,52 @@ +package com.baeldung.rest.wiremock.introduction; + +import static com.github.tomakehurst.wiremock.client.WireMock.aResponse; +import static com.github.tomakehurst.wiremock.client.WireMock.configureFor; +import static com.github.tomakehurst.wiremock.client.WireMock.get; +import static com.github.tomakehurst.wiremock.client.WireMock.getRequestedFor; +import static com.github.tomakehurst.wiremock.client.WireMock.stubFor; +import static com.github.tomakehurst.wiremock.client.WireMock.urlEqualTo; +import static com.github.tomakehurst.wiremock.client.WireMock.verify; +import static org.junit.Assert.assertEquals; + +import java.io.IOException; +import java.io.InputStream; +import java.util.Scanner; + +import org.apache.http.HttpResponse; +import org.apache.http.client.methods.HttpGet; +import org.apache.http.impl.client.CloseableHttpClient; +import org.apache.http.impl.client.HttpClients; +import org.junit.Test; + +import com.github.tomakehurst.wiremock.WireMockServer; + +public class ProgrammaticallyManaged { + WireMockServer wireMockServer = new WireMockServer(); + CloseableHttpClient httpClient = HttpClients.createDefault(); + + @Test + public void givenProgrammaticallyManagedServer_whenUsingSimpleStubbing_thenCorrect() throws IOException { + wireMockServer.start(); + + configureFor("localhost", 8080); + stubFor(get(urlEqualTo("/baeldung")).willReturn(aResponse().withBody("Welcome to Baeldung!"))); + + HttpGet request = new HttpGet("http://localhost:8080/baeldung"); + HttpResponse httpResponse = httpClient.execute(request); + String stringResponse = convertResponseToString(httpResponse); + + verify(getRequestedFor(urlEqualTo("/baeldung"))); + assertEquals("Welcome to Baeldung!", stringResponse); + + wireMockServer.stop(); + } + + private String convertResponseToString(HttpResponse response) throws IOException { + InputStream responseStream = response.getEntity().getContent(); + Scanner scanner = new Scanner(responseStream, "UTF-8"); + String stringResponse = scanner.useDelimiter("\\Z").next(); + scanner.close(); + return stringResponse; + } +} \ No newline at end of file From ce7c3954175b84d5987835af0f39164fa04befff Mon Sep 17 00:00:00 2001 From: Ivan Paolillo Date: Fri, 27 May 2016 15:49:07 +0200 Subject: [PATCH 02/26] A Gatling load test demo --- gatling-loadtest-demo/.cache-tests | 166 ++++++++++++++++++ gatling-loadtest-demo/.classpath | 32 ++++ gatling-loadtest-demo/.project | 24 +++ gatling-loadtest-demo/pom.xml | 113 ++++++++++++ .../src/test/resources/gatling.conf | 127 ++++++++++++++ .../src/test/resources/logback.xml | 22 +++ .../src/test/resources/recorder.conf | 57 ++++++ .../src/test/scala/Engine.scala | 13 ++ .../src/test/scala/IDEPathHelper.scala | 22 +++ .../src/test/scala/Recorder.scala | 12 ++ .../org/baeldung/RecordedSimulation.scala | 46 +++++ 11 files changed, 634 insertions(+) create mode 100644 gatling-loadtest-demo/.cache-tests create mode 100644 gatling-loadtest-demo/.classpath create mode 100644 gatling-loadtest-demo/.project create mode 100644 gatling-loadtest-demo/pom.xml create mode 100644 gatling-loadtest-demo/src/test/resources/gatling.conf create mode 100644 gatling-loadtest-demo/src/test/resources/logback.xml create mode 100644 gatling-loadtest-demo/src/test/resources/recorder.conf create mode 100644 gatling-loadtest-demo/src/test/scala/Engine.scala create mode 100644 gatling-loadtest-demo/src/test/scala/IDEPathHelper.scala create mode 100644 gatling-loadtest-demo/src/test/scala/Recorder.scala create mode 100644 gatling-loadtest-demo/src/test/scala/org/baeldung/RecordedSimulation.scala diff --git a/gatling-loadtest-demo/.cache-tests b/gatling-loadtest-demo/.cache-tests new file mode 100644 index 0000000000..31b0015eef --- /dev/null +++ b/gatling-loadtest-demo/.cache-tests @@ -0,0 +1,166 @@ +format version: 5 +output mode: +1 items +0 -> multiple +output directories: +2 items +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\resources -> C:\develop\git\tutorials\gatling-loadtest-demo\target\test-classes +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala -> C:\develop\git\tutorials\gatling-loadtest-demo\target\test-classes +compile options: +8 items +0 -> -javabootclasspath +1 -> C:\develop\Java\jdk1.8.0_77\jre\lib\resources.jar;C:\develop\Java\jdk1.8.0_77\jre\lib\rt.jar;C:\develop\Java\jdk1.8.0_77\jre\lib\jsse.jar;C:\develop\Java\jdk1.8.0_77\jre\lib\jce.jar;C:\develop\Java\jdk1.8.0_77\jre\lib\charsets.jar;C:\develop\Java\jdk1.8.0_77\jre\lib\jfr.jar;C:\develop\Java\jdk1.8.0_77\jre\lib\ext\access-bridge-64.jar;C:\develop\Java\jdk1.8.0_77\jre\lib\ext\cldrdata.jar;C:\develop\Java\jdk1.8.0_77\jre\lib\ext\dnsns.jar;C:\develop\Java\jdk1.8.0_77\jre\lib\ext\jaccess.jar;C:\develop\Java\jdk1.8.0_77\jre\lib\ext\jfxrt.jar;C:\develop\Java\jdk1.8.0_77\jre\lib\ext\localedata.jar;C:\develop\Java\jdk1.8.0_77\jre\lib\ext\nashorn.jar;C:\develop\Java\jdk1.8.0_77\jre\lib\ext\sunec.jar;C:\develop\Java\jdk1.8.0_77\jre\lib\ext\sunjce_provider.jar;C:\develop\Java\jdk1.8.0_77\jre\lib\ext\sunmscapi.jar;C:\develop\Java\jdk1.8.0_77\jre\lib\ext\sunpkcs11.jar;C:\develop\Java\jdk1.8.0_77\jre\lib\ext\zipfs.jar +2 -> -javaextdirs +3 -> +4 -> -bootclasspath +5 -> C:\develop\IDE\sts-bundle\sts-3.7.3.RELEASE\plugins\org.scala-lang.scala-library_2.11.8.v20160304-115712-1706a37eb8.jar +6 -> -encoding +7 -> UTF-8 +javac options: +0 items +compiler version: +1 items +0 -> 2.11.8 +compile order: +1 items +0 -> Mixed +name hashing: +1 items +0 -> false +products: +9 items +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\Engine.scala -> C:\develop\git\tutorials\gatling-loadtest-demo\target\test-classes\Engine$.class +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\Engine.scala -> C:\develop\git\tutorials\gatling-loadtest-demo\target\test-classes\Engine$delayedInit$body.class +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\Engine.scala -> C:\develop\git\tutorials\gatling-loadtest-demo\target\test-classes\Engine.class +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\IDEPathHelper.scala -> C:\develop\git\tutorials\gatling-loadtest-demo\target\test-classes\IDEPathHelper$.class +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\IDEPathHelper.scala -> C:\develop\git\tutorials\gatling-loadtest-demo\target\test-classes\IDEPathHelper.class +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\org\baeldung\RecordedSimulation.scala -> C:\develop\git\tutorials\gatling-loadtest-demo\target\test-classes\org\baeldung\RecordedSimulation.class +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\Recorder.scala -> C:\develop\git\tutorials\gatling-loadtest-demo\target\test-classes\Recorder$.class +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\Recorder.scala -> C:\develop\git\tutorials\gatling-loadtest-demo\target\test-classes\Recorder$delayedInit$body.class +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\Recorder.scala -> C:\develop\git\tutorials\gatling-loadtest-demo\target\test-classes\Recorder.class +binary dependencies: +15 items +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\Engine.scala -> C:\Users\Ivan Paolillo\.m2\repository\io\gatling\gatling-app\2.2.0\gatling-app-2.2.0.jar +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\Engine.scala -> C:\Users\Ivan Paolillo\.m2\repository\io\gatling\gatling-core\2.2.0\gatling-core-2.2.0.jar +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\Engine.scala -> C:\develop\IDE\sts-bundle\sts-3.7.3.RELEASE\plugins\org.scala-lang.scala-library_2.11.8.v20160304-115712-1706a37eb8.jar +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\Engine.scala -> C:\develop\Java\jdk1.8.0_77\jre\lib\rt.jar +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\IDEPathHelper.scala -> C:\Users\Ivan Paolillo\.m2\repository\io\gatling\gatling-commons\2.2.0\gatling-commons-2.2.0.jar +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\IDEPathHelper.scala -> C:\develop\Java\jdk1.8.0_77\jre\lib\rt.jar +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\org\baeldung\RecordedSimulation.scala -> C:\Users\Ivan Paolillo\.m2\repository\io\gatling\gatling-commons\2.2.0\gatling-commons-2.2.0.jar +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\org\baeldung\RecordedSimulation.scala -> C:\Users\Ivan Paolillo\.m2\repository\io\gatling\gatling-core\2.2.0\gatling-core-2.2.0.jar +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\org\baeldung\RecordedSimulation.scala -> C:\Users\Ivan Paolillo\.m2\repository\io\gatling\gatling-http\2.2.0\gatling-http-2.2.0.jar +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\org\baeldung\RecordedSimulation.scala -> C:\Users\Ivan Paolillo\.m2\repository\io\gatling\gatling-jdbc\2.2.0\gatling-jdbc-2.2.0.jar +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\org\baeldung\RecordedSimulation.scala -> C:\develop\IDE\sts-bundle\sts-3.7.3.RELEASE\plugins\org.scala-lang.scala-library_2.11.8.v20160304-115712-1706a37eb8.jar +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\org\baeldung\RecordedSimulation.scala -> C:\develop\Java\jdk1.8.0_77\jre\lib\rt.jar +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\Recorder.scala -> C:\Users\Ivan Paolillo\.m2\repository\io\gatling\gatling-recorder\2.2.0\gatling-recorder-2.2.0.jar +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\Recorder.scala -> C:\develop\IDE\sts-bundle\sts-3.7.3.RELEASE\plugins\org.scala-lang.scala-library_2.11.8.v20160304-115712-1706a37eb8.jar +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\Recorder.scala -> C:\develop\Java\jdk1.8.0_77\jre\lib\rt.jar +direct source dependencies: +2 items +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\Engine.scala -> C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\IDEPathHelper.scala +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\Recorder.scala -> C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\IDEPathHelper.scala +direct external dependencies: +0 items +public inherited source dependencies: +0 items +public inherited external dependencies: +0 items +member reference internal dependencies: +0 items +member reference external dependencies: +0 items +inheritance internal dependencies: +0 items +inheritance external dependencies: +0 items +class names: +9 items +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\Engine.scala -> Engine +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\Engine.scala -> Engine$ +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\Engine.scala -> Engine$delayedInit$body +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\IDEPathHelper.scala -> IDEPathHelper +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\IDEPathHelper.scala -> IDEPathHelper$ +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\org\baeldung\RecordedSimulation.scala -> org.baeldung.RecordedSimulation +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\Recorder.scala -> Recorder +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\Recorder.scala -> Recorder$ +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\Recorder.scala -> Recorder$delayedInit$body +used names: +0 items +product stamps: +9 items +C:\develop\git\tutorials\gatling-loadtest-demo\target\test-classes\Engine$.class -> lastModified(1464356690978) +C:\develop\git\tutorials\gatling-loadtest-demo\target\test-classes\Engine$delayedInit$body.class -> lastModified(1464356690989) +C:\develop\git\tutorials\gatling-loadtest-demo\target\test-classes\Engine.class -> lastModified(1464356690863) +C:\develop\git\tutorials\gatling-loadtest-demo\target\test-classes\IDEPathHelper$.class -> lastModified(1464356691030) +C:\develop\git\tutorials\gatling-loadtest-demo\target\test-classes\IDEPathHelper.class -> lastModified(1464356691005) +C:\develop\git\tutorials\gatling-loadtest-demo\target\test-classes\org\baeldung\RecordedSimulation.class -> lastModified(1464356691072) +C:\develop\git\tutorials\gatling-loadtest-demo\target\test-classes\Recorder$.class -> lastModified(1464356691045) +C:\develop\git\tutorials\gatling-loadtest-demo\target\test-classes\Recorder$delayedInit$body.class -> lastModified(1464356691049) +C:\develop\git\tutorials\gatling-loadtest-demo\target\test-classes\Recorder.class -> lastModified(1464356691034) +source stamps: +4 items +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\Engine.scala -> hash(e98bacf89a84be65d2a131fa7e072d4f6ebef89d) +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\IDEPathHelper.scala -> hash(20255b66020a40c67db52f8248fab7e3250fc940) +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\org\baeldung\RecordedSimulation.scala -> hash(1d4aab935ed26aa3fee62aff5bc9d1d2dbc3f776) +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\Recorder.scala -> hash(667da8a9d712f988ed7b14bdfa7b293c76ac3b61) +binary stamps: +8 items +C:\develop\IDE\sts-bundle\sts-3.7.3.RELEASE\plugins\org.scala-lang.scala-library_2.11.8.v20160304-115712-1706a37eb8.jar -> lastModified(1463581376873) +C:\develop\Java\jdk1.8.0_77\jre\lib\rt.jar -> lastModified(1460466041763) +C:\Users\Ivan Paolillo\.m2\repository\io\gatling\gatling-app\2.2.0\gatling-app-2.2.0.jar -> lastModified(1463577683111) +C:\Users\Ivan Paolillo\.m2\repository\io\gatling\gatling-commons\2.2.0\gatling-commons-2.2.0.jar -> lastModified(1463577434095) +C:\Users\Ivan Paolillo\.m2\repository\io\gatling\gatling-core\2.2.0\gatling-core-2.2.0.jar -> lastModified(1463577425041) +C:\Users\Ivan Paolillo\.m2\repository\io\gatling\gatling-http\2.2.0\gatling-http-2.2.0.jar -> lastModified(1463577691216) +C:\Users\Ivan Paolillo\.m2\repository\io\gatling\gatling-jdbc\2.2.0\gatling-jdbc-2.2.0.jar -> lastModified(1463577767127) +C:\Users\Ivan Paolillo\.m2\repository\io\gatling\gatling-recorder\2.2.0\gatling-recorder-2.2.0.jar -> lastModified(1463577812366) +class names: +8 items +C:\develop\IDE\sts-bundle\sts-3.7.3.RELEASE\plugins\org.scala-lang.scala-library_2.11.8.v20160304-115712-1706a37eb8.jar -> scala.reflect.ClassTag$ +C:\develop\Java\jdk1.8.0_77\jre\lib\rt.jar -> java.lang.Object +C:\Users\Ivan Paolillo\.m2\repository\io\gatling\gatling-app\2.2.0\gatling-app-2.2.0.jar -> io.gatling.app.Gatling$ +C:\Users\Ivan Paolillo\.m2\repository\io\gatling\gatling-commons\2.2.0\gatling-commons-2.2.0.jar -> io.gatling.commons.util.TypeCaster$ +C:\Users\Ivan Paolillo\.m2\repository\io\gatling\gatling-core\2.2.0\gatling-core-2.2.0.jar -> io.gatling.core.scenario.Simulation +C:\Users\Ivan Paolillo\.m2\repository\io\gatling\gatling-http\2.2.0\gatling-http-2.2.0.jar -> io.gatling.http.protocol.HttpProtocolBuilder +C:\Users\Ivan Paolillo\.m2\repository\io\gatling\gatling-jdbc\2.2.0\gatling-jdbc-2.2.0.jar -> io.gatling.jdbc.Predef$ +C:\Users\Ivan Paolillo\.m2\repository\io\gatling\gatling-recorder\2.2.0\gatling-recorder-2.2.0.jar -> io.gatling.recorder.GatlingRecorder$ +internal apis: +4 items +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\Engine.scala -> +rO0ABXNyABB4c2J0aS5hcGkuU291cmNlFlpwRASfbtoCAAZJAAdhcGlIYXNoWgAIaGFzTWFjcm9MABhfaW50ZXJuYWxPbmx5X25hbWVIYXNoZXN0ACRMeHNidGkvYXBpL19pbnRlcm5hbE9ubHlfTmFtZUhhc2hlcztMAANhcGl0ABVMeHNidGkvYXBpL1NvdXJjZUFQSTtMAAtjb21waWxhdGlvbnQAF0x4c2J0aS9hcGkvQ29tcGlsYXRpb247WwAEaGFzaHQAAltCeHA7lBuUAHNyACJ4c2J0aS5hcGkuX2ludGVybmFsT25seV9OYW1lSGFzaGVzVNq+mfrU7EwCAAJbAA9pbXBsaWNpdE1lbWJlcnN0ACNbTHhzYnRpL2FwaS9faW50ZXJuYWxPbmx5X05hbWVIYXNoO1sADnJlZ3VsYXJNZW1iZXJzcQB+AAd4cHVyACNbTHhzYnRpLmFwaS5faW50ZXJuYWxPbmx5X05hbWVIYXNoO0lagLbdlov0AgAAeHAAAAAAdXEAfgAJAAAAAHNyABN4c2J0aS5hcGkuU291cmNlQVBJuV6n+SkjOKQCAAJbAAtkZWZpbml0aW9uc3QAF1tMeHNidGkvYXBpL0RlZmluaXRpb247WwAIcGFja2FnZXN0ABRbTHhzYnRpL2FwaS9QYWNrYWdlO3hwdXIAF1tMeHNidGkuYXBpLkRlZmluaXRpb247iMlc57TjXg4CAAB4cAAAAAFzcgATeHNidGkuYXBpLkNsYXNzTGlrZYM0HKHfsJdsAgAETAAOZGVmaW5pdGlvblR5cGV0ABpMeHNidGkvYXBpL0RlZmluaXRpb25UeXBlO1sAEHNhdmVkQW5ub3RhdGlvbnN0ABNbTGphdmEvbGFuZy9TdHJpbmc7TAAIc2VsZlR5cGV0ABBMeHNidGkvYXBpL0xhenk7TAAJc3RydWN0dXJlcQB+ABV4cgAheHNidGkuYXBpLlBhcmFtZXRlcml6ZWREZWZpbml0aW9u+RFusdVQPOICAAFbAA50eXBlUGFyYW1ldGVyc3QAGltMeHNidGkvYXBpL1R5cGVQYXJhbWV0ZXI7eHIAFHhzYnRpLmFwaS5EZWZpbml0aW9uhyob6HFC40YCAARMAAZhY2Nlc3N0ABJMeHNidGkvYXBpL0FjY2VzcztbAAthbm5vdGF0aW9uc3QAF1tMeHNidGkvYXBpL0Fubm90YXRpb247TAAJbW9kaWZpZXJzdAAVTHhzYnRpL2FwaS9Nb2RpZmllcnM7TAAEbmFtZXQAEkxqYXZhL2xhbmcvU3RyaW5nO3hwc3IAEHhzYnRpLmFwaS5QdWJsaWO6WD2ubC1gQgIAAHhyABB4c2J0aS5hcGkuQWNjZXNz3WKa+B1jMUgCAAB4cHVyABdbTHhzYnRpLmFwaS5Bbm5vdGF0aW9uO+uX6xkQ9o1IAgAAeHAAAAAAc3IAE3hzYnRpLmFwaS5Nb2RpZmllcnPHERMhaZzcJAIAAUIABWZsYWdzeHAAdAAGRW5naW5ldXIAGltMeHNidGkuYXBpLlR5cGVQYXJhbWV0ZXI72W0mDyid8rYCAAB4cAAAAAB+cgAYeHNidGkuYXBpLkRlZmluaXRpb25UeXBlAAAAAAAAAAASAAB4cgAOamF2YS5sYW5nLkVudW0AAAAAAAAAABIAAHhwdAAGTW9kdWxldXIAE1tMamF2YS5sYW5nLlN0cmluZzut0lbn6R17RwIAAHhwAAAAAnQAEHNjYWxhLmRlcHJlY2F0ZWR0ABpzY2FsYS5kZXByZWNhdGVkT3ZlcnJpZGluZ3NyABN4c2J0aS5TYWZlTGF6eSRJbXBsO5FPEfRFTMkCAANaAAhiaXRtYXAkMEwAAl90dAASTGphdmEvbGFuZy9PYmplY3Q7TAAEZXZhbHQAEUxzY2FsYS9GdW5jdGlvbjA7eHIAFnhzYnRpLmFwaS5BYnN0cmFjdExhennTd7UBX7vnoAIAAHhwAXNyABN4c2J0aS5hcGkuRW1wdHlUeXBlvP2eRkk7iSQCAAB4cgAUeHNidGkuYXBpLlNpbXBsZVR5cGVyeGKIISO/QAIAAHhyAA54c2J0aS5hcGkuVHlwZT9q2SEWSarKAgAAeHBwc3EAfgAwAXNyABN4c2J0aS5hcGkuU3RydWN0dXJlqar5gJNv2AACAANMAAhkZWNsYXJlZHEAfgAVTAAJaW5oZXJpdGVkcQB+ABVMAAdwYXJlbnRzcQB+ABV4cQB+ADdzcQB+ADABdXEAfgAQAAAAAHBzcQB+ADABdXEAfgAQAAAAAXNyAA14c2J0aS5hcGkuRGVmUr6f4ny0NmkCAAJMAApyZXR1cm5UeXBldAAQTHhzYnRpL2FwaS9UeXBlO1sAD3ZhbHVlUGFyYW1ldGVyc3QAGltMeHNidGkvYXBpL1BhcmFtZXRlckxpc3Q7eHEAfgAWcQB+ACB1cQB+ACEAAAABc3IAFHhzYnRpLmFwaS5Bbm5vdGF0aW9u3g6BovZcCrICAAJbAAlhcmd1bWVudHN0AB9bTHhzYnRpL2FwaS9Bbm5vdGF0aW9uQXJndW1lbnQ7TAAEYmFzZXEAfgBBeHB1cgAfW0x4c2J0aS5hcGkuQW5ub3RhdGlvbkFyZ3VtZW50O1Gdpo84JQ94AgAAeHAAAAABc3IAHHhzYnRpLmFwaS5Bbm5vdGF0aW9uQXJndW1lbnTWRbHYAxsXfAIAAkwABG5hbWVxAH4AHEwABXZhbHVlcQB+ABx4cHQAAHQAKigibWFpbiBzaG91bGQgbm90IGJlIG92ZXJyaWRkZW4iLCIyLjExLjAiKXNyABR4c2J0aS5hcGkuUHJvamVjdGlvbvPSjVTpRaQtAgACTAACaWRxAH4AHEwABnByZWZpeHQAFkx4c2J0aS9hcGkvU2ltcGxlVHlwZTt4cQB+ADZ0ABRkZXByZWNhdGVkT3ZlcnJpZGluZ3NyABN4c2J0aS5hcGkuU2luZ2xldG9u/Kdf+M9W5EYCAAFMAARwYXRodAAQTHhzYnRpL2FwaS9QYXRoO3hxAH4ANnNyAA54c2J0aS5hcGkuUGF0aJs9XAjOpSeEAgABWwAKY29tcG9uZW50c3QAGltMeHNidGkvYXBpL1BhdGhDb21wb25lbnQ7eHB1cgAaW0x4c2J0aS5hcGkuUGF0aENvbXBvbmVudDtD2gl0LWcWdAIAAHhwAAAAAnNyAAx4c2J0aS5hcGkuSWSYMmyLN1PEQAIAAUwAAmlkcQB+ABx4cgAXeHNidGkuYXBpLlBhdGhDb21wb25lbnRfmiJbLoafvAIAAHhwdAAFc2NhbGFzcgAOeHNidGkuYXBpLlRoaXPbCe2mzFpAXAIAAHhxAH4AW3NxAH4AIwB0AARtYWludXEAfgAmAAAAAHNxAH4ATnQABFVuaXRxAH4AVHVyABpbTHhzYnRpLmFwaS5QYXJhbWV0ZXJMaXN0O/XTOh3ys3DuAgAAeHAAAAABc3IAF3hzYnRpLmFwaS5QYXJhbWV0ZXJMaXN01sW8HGRJdOMCAAJaAAppc0ltcGxpY2l0WwAKcGFyYW1ldGVyc3QAHFtMeHNidGkvYXBpL01ldGhvZFBhcmFtZXRlcjt4cAB1cgAcW0x4c2J0aS5hcGkuTWV0aG9kUGFyYW1ldGVyO8+4xV2l3bVtAgAAeHAAAAABc3IAGXhzYnRpLmFwaS5NZXRob2RQYXJhbWV0ZXIfRa4X00mw6gIABFoACmhhc0RlZmF1bHRMAAhtb2RpZmllcnQAHUx4c2J0aS9hcGkvUGFyYW1ldGVyTW9kaWZpZXI7TAAEbmFtZXEAfgAcTAADdHBlcQB+AEF4cAB+cgAbeHNidGkuYXBpLlBhcmFtZXRlck1vZGlmaWVyAAAAAAAAAAASAAB4cQB+ACl0AAVQbGFpbnQABGFyZ3NzcgAXeHNidGkuYXBpLlBhcmFtZXRlcml6ZWQWbO5pA8m7fwIAAkwACGJhc2VUeXBlcQB+AE9bAA10eXBlQXJndW1lbnRzdAARW0x4c2J0aS9hcGkvVHlwZTt4cQB+ADZzcQB+AE50AAVBcnJheXEAfgBUdXIAEVtMeHNidGkuYXBpLlR5cGU7dP+lWnv56UECAAB4cAAAAAFzcQB+AE50AAZTdHJpbmdzcQB+AFJzcQB+AFV1cQB+AFgAAAADc3EAfgBadAAEamF2YXNxAH4AWnQABGxhbmdxAH4AX3BzcQB+ADABdXEAfgB4AAAABHNxAH4ATnQAA0FwcHEAfgBUc3EAfgBOdAALRGVsYXllZEluaXRxAH4AVHNxAH4ATnQABk9iamVjdHEAfgB8c3EAfgBOdAADQW55cQB+AFRwcHVyABRbTHhzYnRpLmFwaS5QYWNrYWdlO1sTGTdwpyehAgAAeHAAAAAAc3IAFXhzYnRpLmFwaS5Db21waWxhdGlvbu364MNq6KBCAgACSgAJc3RhcnRUaW1lWwAHb3V0cHV0c3QAGltMeHNidGkvYXBpL091dHB1dFNldHRpbmc7eHAAAAFU8nXEpnVyABpbTHhzYnRpLmFwaS5PdXRwdXRTZXR0aW5nO39qwvOnh6VCAgAAeHAAAAACc3IAF3hzYnRpLmFwaS5PdXRwdXRTZXR0aW5netmaR3T7HXsCAAJMAA9vdXRwdXREaXJlY3RvcnlxAH4AHEwAD3NvdXJjZURpcmVjdG9yeXEAfgAceHB0AEJDOlxkZXZlbG9wXGdpdFx0dXRvcmlhbHNcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHRhcmdldFx0ZXN0LWNsYXNzZXN0AD1DOlxkZXZlbG9wXGdpdFx0dXRvcmlhbHNcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHNyY1x0ZXN0XHNjYWxhc3EAfgCUdABCQzpcZGV2ZWxvcFxnaXRcdHV0b3JpYWxzXGdhdGxpbmctbG9hZHRlc3QtZGVtb1x0YXJnZXRcdGVzdC1jbGFzc2VzdABBQzpcZGV2ZWxvcFxnaXRcdHV0b3JpYWxzXGdhdGxpbmctbG9hZHRlc3QtZGVtb1xzcmNcdGVzdFxyZXNvdXJjZXN1cgACW0Ks8xf4BghU4AIAAHhwAAAAFOmLrPiahL5l0qEx+n4HLU9uvvid +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\IDEPathHelper.scala -> +rO0ABXNyABB4c2J0aS5hcGkuU291cmNlFlpwRASfbtoCAAZJAAdhcGlIYXNoWgAIaGFzTWFjcm9MABhfaW50ZXJuYWxPbmx5X25hbWVIYXNoZXN0ACRMeHNidGkvYXBpL19pbnRlcm5hbE9ubHlfTmFtZUhhc2hlcztMAANhcGl0ABVMeHNidGkvYXBpL1NvdXJjZUFQSTtMAAtjb21waWxhdGlvbnQAF0x4c2J0aS9hcGkvQ29tcGlsYXRpb247WwAEaGFzaHQAAltCeHCXMg60AHNyACJ4c2J0aS5hcGkuX2ludGVybmFsT25seV9OYW1lSGFzaGVzVNq+mfrU7EwCAAJbAA9pbXBsaWNpdE1lbWJlcnN0ACNbTHhzYnRpL2FwaS9faW50ZXJuYWxPbmx5X05hbWVIYXNoO1sADnJlZ3VsYXJNZW1iZXJzcQB+AAd4cHVyACNbTHhzYnRpLmFwaS5faW50ZXJuYWxPbmx5X05hbWVIYXNoO0lagLbdlov0AgAAeHAAAAAAdXEAfgAJAAAAAHNyABN4c2J0aS5hcGkuU291cmNlQVBJuV6n+SkjOKQCAAJbAAtkZWZpbml0aW9uc3QAF1tMeHNidGkvYXBpL0RlZmluaXRpb247WwAIcGFja2FnZXN0ABRbTHhzYnRpL2FwaS9QYWNrYWdlO3hwdXIAF1tMeHNidGkuYXBpLkRlZmluaXRpb247iMlc57TjXg4CAAB4cAAAAAFzcgATeHNidGkuYXBpLkNsYXNzTGlrZYM0HKHfsJdsAgAETAAOZGVmaW5pdGlvblR5cGV0ABpMeHNidGkvYXBpL0RlZmluaXRpb25UeXBlO1sAEHNhdmVkQW5ub3RhdGlvbnN0ABNbTGphdmEvbGFuZy9TdHJpbmc7TAAIc2VsZlR5cGV0ABBMeHNidGkvYXBpL0xhenk7TAAJc3RydWN0dXJlcQB+ABV4cgAheHNidGkuYXBpLlBhcmFtZXRlcml6ZWREZWZpbml0aW9u+RFusdVQPOICAAFbAA50eXBlUGFyYW1ldGVyc3QAGltMeHNidGkvYXBpL1R5cGVQYXJhbWV0ZXI7eHIAFHhzYnRpLmFwaS5EZWZpbml0aW9uhyob6HFC40YCAARMAAZhY2Nlc3N0ABJMeHNidGkvYXBpL0FjY2VzcztbAAthbm5vdGF0aW9uc3QAF1tMeHNidGkvYXBpL0Fubm90YXRpb247TAAJbW9kaWZpZXJzdAAVTHhzYnRpL2FwaS9Nb2RpZmllcnM7TAAEbmFtZXQAEkxqYXZhL2xhbmcvU3RyaW5nO3hwc3IAEHhzYnRpLmFwaS5QdWJsaWO6WD2ubC1gQgIAAHhyABB4c2J0aS5hcGkuQWNjZXNz3WKa+B1jMUgCAAB4cHVyABdbTHhzYnRpLmFwaS5Bbm5vdGF0aW9uO+uX6xkQ9o1IAgAAeHAAAAAAc3IAE3hzYnRpLmFwaS5Nb2RpZmllcnPHERMhaZzcJAIAAUIABWZsYWdzeHAAdAANSURFUGF0aEhlbHBlcnVyABpbTHhzYnRpLmFwaS5UeXBlUGFyYW1ldGVyO9ltJg8onfK2AgAAeHAAAAAAfnIAGHhzYnRpLmFwaS5EZWZpbml0aW9uVHlwZQAAAAAAAAAAEgAAeHIADmphdmEubGFuZy5FbnVtAAAAAAAAAAASAAB4cHQABk1vZHVsZXVyABNbTGphdmEubGFuZy5TdHJpbmc7rdJW5+kde0cCAAB4cAAAAABzcgATeHNidGkuU2FmZUxhenkkSW1wbDuRTxH0RUzJAgADWgAIYml0bWFwJDBMAAJfdHQAEkxqYXZhL2xhbmcvT2JqZWN0O0wABGV2YWx0ABFMc2NhbGEvRnVuY3Rpb24wO3hyABZ4c2J0aS5hcGkuQWJzdHJhY3RMYXp503e1AV+756ACAAB4cAFzcgATeHNidGkuYXBpLkVtcHR5VHlwZbz9nkZJO4kkAgAAeHIAFHhzYnRpLmFwaS5TaW1wbGVUeXBlcnhiiCEjv0ACAAB4cgAOeHNidGkuYXBpLlR5cGU/atkhFkmqygIAAHhwcHNxAH4ALgFzcgATeHNidGkuYXBpLlN0cnVjdHVyZamq+YCTb9gAAgADTAAIZGVjbGFyZWRxAH4AFUwACWluaGVyaXRlZHEAfgAVTAAHcGFyZW50c3EAfgAVeHEAfgA1c3EAfgAuAXVxAH4AEAAAAABwc3EAfgAuAXVxAH4AEAAAAABwc3EAfgAuAXVyABFbTHhzYnRpLmFwaS5UeXBlO3T/pVp7+elBAgAAeHAAAAACc3IAFHhzYnRpLmFwaS5Qcm9qZWN0aW9u89KNVOlFpC0CAAJMAAJpZHEAfgAcTAAGcHJlZml4dAAWTHhzYnRpL2FwaS9TaW1wbGVUeXBlO3hxAH4ANHQABk9iamVjdHNyABN4c2J0aS5hcGkuU2luZ2xldG9u/Kdf+M9W5EYCAAFMAARwYXRodAAQTHhzYnRpL2FwaS9QYXRoO3hxAH4ANHNyAA54c2J0aS5hcGkuUGF0aJs9XAjOpSeEAgABWwAKY29tcG9uZW50c3QAGltMeHNidGkvYXBpL1BhdGhDb21wb25lbnQ7eHB1cgAaW0x4c2J0aS5hcGkuUGF0aENvbXBvbmVudDtD2gl0LWcWdAIAAHhwAAAAA3NyAAx4c2J0aS5hcGkuSWSYMmyLN1PEQAIAAUwAAmlkcQB+ABx4cgAXeHNidGkuYXBpLlBhdGhDb21wb25lbnRfmiJbLoafvAIAAHhwdAAEamF2YXNxAH4ATXQABGxhbmdzcgAOeHNidGkuYXBpLlRoaXPbCe2mzFpAXAIAAHhxAH4ATnNxAH4AQXQAA0FueXNxAH4ARXNxAH4ASHVxAH4ASwAAAAJzcQB+AE10AAVzY2FsYXEAfgBUcHB1cgAUW0x4c2J0aS5hcGkuUGFja2FnZTtbExk3cKcnoQIAAHhwAAAAAHNyABV4c2J0aS5hcGkuQ29tcGlsYXRpb27t+uDDauigQgIAAkoACXN0YXJ0VGltZVsAB291dHB1dHN0ABpbTHhzYnRpL2FwaS9PdXRwdXRTZXR0aW5nO3hwAAABVPJ1xKZ1cgAaW0x4c2J0aS5hcGkuT3V0cHV0U2V0dGluZzt/asLzp4elQgIAAHhwAAAAAnNyABd4c2J0aS5hcGkuT3V0cHV0U2V0dGluZ3rZmkd0+x17AgACTAAPb3V0cHV0RGlyZWN0b3J5cQB+ABxMAA9zb3VyY2VEaXJlY3RvcnlxAH4AHHhwdABCQzpcZGV2ZWxvcFxnaXRcdHV0b3JpYWxzXGdhdGxpbmctbG9hZHRlc3QtZGVtb1x0YXJnZXRcdGVzdC1jbGFzc2VzdAA9QzpcZGV2ZWxvcFxnaXRcdHV0b3JpYWxzXGdhdGxpbmctbG9hZHRlc3QtZGVtb1xzcmNcdGVzdFxzY2FsYXNxAH4AY3QAQkM6XGRldmVsb3BcZ2l0XHR1dG9yaWFsc1xnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cdGFyZ2V0XHRlc3QtY2xhc3Nlc3QAQUM6XGRldmVsb3BcZ2l0XHR1dG9yaWFsc1xnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cc3JjXHRlc3RccmVzb3VyY2VzdXIAAltCrPMX+AYIVOACAAB4cAAAABQgJVtmAgpAxn21L4JI+rfjJQ/JQA== +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\org\baeldung\RecordedSimulation.scala -> +rO0ABXNyABB4c2J0aS5hcGkuU291cmNlFlpwRASfbtoCAAZJAAdhcGlIYXNoWgAIaGFzTWFjcm9MABhfaW50ZXJuYWxPbmx5X25hbWVIYXNoZXN0ACRMeHNidGkvYXBpL19pbnRlcm5hbE9ubHlfTmFtZUhhc2hlcztMAANhcGl0ABVMeHNidGkvYXBpL1NvdXJjZUFQSTtMAAtjb21waWxhdGlvbnQAF0x4c2J0aS9hcGkvQ29tcGlsYXRpb247WwAEaGFzaHQAAltCeHARTQnpAHNyACJ4c2J0aS5hcGkuX2ludGVybmFsT25seV9OYW1lSGFzaGVzVNq+mfrU7EwCAAJbAA9pbXBsaWNpdE1lbWJlcnN0ACNbTHhzYnRpL2FwaS9faW50ZXJuYWxPbmx5X05hbWVIYXNoO1sADnJlZ3VsYXJNZW1iZXJzcQB+AAd4cHVyACNbTHhzYnRpLmFwaS5faW50ZXJuYWxPbmx5X05hbWVIYXNoO0lagLbdlov0AgAAeHAAAAAAdXEAfgAJAAAAAHNyABN4c2J0aS5hcGkuU291cmNlQVBJuV6n+SkjOKQCAAJbAAtkZWZpbml0aW9uc3QAF1tMeHNidGkvYXBpL0RlZmluaXRpb247WwAIcGFja2FnZXN0ABRbTHhzYnRpL2FwaS9QYWNrYWdlO3hwdXIAF1tMeHNidGkuYXBpLkRlZmluaXRpb247iMlc57TjXg4CAAB4cAAAAAFzcgATeHNidGkuYXBpLkNsYXNzTGlrZYM0HKHfsJdsAgAETAAOZGVmaW5pdGlvblR5cGV0ABpMeHNidGkvYXBpL0RlZmluaXRpb25UeXBlO1sAEHNhdmVkQW5ub3RhdGlvbnN0ABNbTGphdmEvbGFuZy9TdHJpbmc7TAAIc2VsZlR5cGV0ABBMeHNidGkvYXBpL0xhenk7TAAJc3RydWN0dXJlcQB+ABV4cgAheHNidGkuYXBpLlBhcmFtZXRlcml6ZWREZWZpbml0aW9u+RFusdVQPOICAAFbAA50eXBlUGFyYW1ldGVyc3QAGltMeHNidGkvYXBpL1R5cGVQYXJhbWV0ZXI7eHIAFHhzYnRpLmFwaS5EZWZpbml0aW9uhyob6HFC40YCAARMAAZhY2Nlc3N0ABJMeHNidGkvYXBpL0FjY2VzcztbAAthbm5vdGF0aW9uc3QAF1tMeHNidGkvYXBpL0Fubm90YXRpb247TAAJbW9kaWZpZXJzdAAVTHhzYnRpL2FwaS9Nb2RpZmllcnM7TAAEbmFtZXQAEkxqYXZhL2xhbmcvU3RyaW5nO3hwc3IAEHhzYnRpLmFwaS5QdWJsaWO6WD2ubC1gQgIAAHhyABB4c2J0aS5hcGkuQWNjZXNz3WKa+B1jMUgCAAB4cHVyABdbTHhzYnRpLmFwaS5Bbm5vdGF0aW9uO+uX6xkQ9o1IAgAAeHAAAAAAc3IAE3hzYnRpLmFwaS5Nb2RpZmllcnPHERMhaZzcJAIAAUIABWZsYWdzeHAAdAAfb3JnLmJhZWxkdW5nLlJlY29yZGVkU2ltdWxhdGlvbnVyABpbTHhzYnRpLmFwaS5UeXBlUGFyYW1ldGVyO9ltJg8onfK2AgAAeHAAAAAAfnIAGHhzYnRpLmFwaS5EZWZpbml0aW9uVHlwZQAAAAAAAAAAEgAAeHIADmphdmEubGFuZy5FbnVtAAAAAAAAAAASAAB4cHQACENsYXNzRGVmdXIAE1tMamF2YS5sYW5nLlN0cmluZzut0lbn6R17RwIAAHhwAAAAAHNyABN4c2J0aS5TYWZlTGF6eSRJbXBsO5FPEfRFTMkCAANaAAhiaXRtYXAkMEwAAl90dAASTGphdmEvbGFuZy9PYmplY3Q7TAAEZXZhbHQAEUxzY2FsYS9GdW5jdGlvbjA7eHIAFnhzYnRpLmFwaS5BYnN0cmFjdExhennTd7UBX7vnoAIAAHhwAXNyABN4c2J0aS5hcGkuRW1wdHlUeXBlvP2eRkk7iSQCAAB4cgAUeHNidGkuYXBpLlNpbXBsZVR5cGVyeGKIISO/QAIAAHhyAA54c2J0aS5hcGkuVHlwZT9q2SEWSarKAgAAeHBwc3EAfgAuAXNyABN4c2J0aS5hcGkuU3RydWN0dXJlqar5gJNv2AACAANMAAhkZWNsYXJlZHEAfgAVTAAJaW5oZXJpdGVkcQB+ABVMAAdwYXJlbnRzcQB+ABV4cQB+ADVzcQB+AC4BdXEAfgAQAAAAAHBzcQB+AC4BdXEAfgAQAAAAAHBzcQB+AC4BdXIAEVtMeHNidGkuYXBpLlR5cGU7dP+lWnv56UECAAB4cAAAAANzcgAUeHNidGkuYXBpLlByb2plY3Rpb27z0o1U6UWkLQIAAkwAAmlkcQB+ABxMAAZwcmVmaXh0ABZMeHNidGkvYXBpL1NpbXBsZVR5cGU7eHEAfgA0dAAKU2ltdWxhdGlvbnNyABN4c2J0aS5hcGkuU2luZ2xldG9u/Kdf+M9W5EYCAAFMAARwYXRodAAQTHhzYnRpL2FwaS9QYXRoO3hxAH4ANHNyAA54c2J0aS5hcGkuUGF0aJs9XAjOpSeEAgABWwAKY29tcG9uZW50c3QAGltMeHNidGkvYXBpL1BhdGhDb21wb25lbnQ7eHB1cgAaW0x4c2J0aS5hcGkuUGF0aENvbXBvbmVudDtD2gl0LWcWdAIAAHhwAAAABXNyAAx4c2J0aS5hcGkuSWSYMmyLN1PEQAIAAUwAAmlkcQB+ABx4cgAXeHNidGkuYXBpLlBhdGhDb21wb25lbnRfmiJbLoafvAIAAHhwdAACaW9zcQB+AE10AAdnYXRsaW5nc3EAfgBNdAAEY29yZXNxAH4ATXQACHNjZW5hcmlvc3IADnhzYnRpLmFwaS5UaGlz2wntpsxaQFwCAAB4cQB+AE5zcQB+AEF0AAZPYmplY3RzcQB+AEVzcQB+AEh1cQB+AEsAAAADc3EAfgBNdAAEamF2YXNxAH4ATXQABGxhbmdxAH4AWHNxAH4AQXQAA0FueXNxAH4ARXNxAH4ASHVxAH4ASwAAAAJzcQB+AE10AAVzY2FsYXEAfgBYcHB1cgAUW0x4c2J0aS5hcGkuUGFja2FnZTtbExk3cKcnoQIAAHhwAAAAAnNyABF4c2J0aS5hcGkuUGFja2FnZX5Zj/auzjlYAgABTAAEbmFtZXEAfgAceHB0AAxvcmcuYmFlbGR1bmdzcQB+AGt0AANvcmdzcgAVeHNidGkuYXBpLkNvbXBpbGF0aW9u7frgw2rooEICAAJKAAlzdGFydFRpbWVbAAdvdXRwdXRzdAAaW0x4c2J0aS9hcGkvT3V0cHV0U2V0dGluZzt4cAAAAVTydcSmdXIAGltMeHNidGkuYXBpLk91dHB1dFNldHRpbmc7f2rC86eHpUICAAB4cAAAAAJzcgAXeHNidGkuYXBpLk91dHB1dFNldHRpbmd62ZpHdPsdewIAAkwAD291dHB1dERpcmVjdG9yeXEAfgAcTAAPc291cmNlRGlyZWN0b3J5cQB+ABx4cHQAQkM6XGRldmVsb3BcZ2l0XHR1dG9yaWFsc1xnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cdGFyZ2V0XHRlc3QtY2xhc3Nlc3QAPUM6XGRldmVsb3BcZ2l0XHR1dG9yaWFsc1xnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cc3JjXHRlc3Rcc2NhbGFzcQB+AHV0AEJDOlxkZXZlbG9wXGdpdFx0dXRvcmlhbHNcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHRhcmdldFx0ZXN0LWNsYXNzZXN0AEFDOlxkZXZlbG9wXGdpdFx0dXRvcmlhbHNcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHNyY1x0ZXN0XHJlc291cmNlc3VyAAJbQqzzF/gGCFTgAgAAeHAAAAAUHUqrk17SaqP+5ir/W8nR0tvD93Y= +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\Recorder.scala -> +rO0ABXNyABB4c2J0aS5hcGkuU291cmNlFlpwRASfbtoCAAZJAAdhcGlIYXNoWgAIaGFzTWFjcm9MABhfaW50ZXJuYWxPbmx5X25hbWVIYXNoZXN0ACRMeHNidGkvYXBpL19pbnRlcm5hbE9ubHlfTmFtZUhhc2hlcztMAANhcGl0ABVMeHNidGkvYXBpL1NvdXJjZUFQSTtMAAtjb21waWxhdGlvbnQAF0x4c2J0aS9hcGkvQ29tcGlsYXRpb247WwAEaGFzaHQAAltCeHD3nMHWAHNyACJ4c2J0aS5hcGkuX2ludGVybmFsT25seV9OYW1lSGFzaGVzVNq+mfrU7EwCAAJbAA9pbXBsaWNpdE1lbWJlcnN0ACNbTHhzYnRpL2FwaS9faW50ZXJuYWxPbmx5X05hbWVIYXNoO1sADnJlZ3VsYXJNZW1iZXJzcQB+AAd4cHVyACNbTHhzYnRpLmFwaS5faW50ZXJuYWxPbmx5X05hbWVIYXNoO0lagLbdlov0AgAAeHAAAAAAdXEAfgAJAAAAAHNyABN4c2J0aS5hcGkuU291cmNlQVBJuV6n+SkjOKQCAAJbAAtkZWZpbml0aW9uc3QAF1tMeHNidGkvYXBpL0RlZmluaXRpb247WwAIcGFja2FnZXN0ABRbTHhzYnRpL2FwaS9QYWNrYWdlO3hwdXIAF1tMeHNidGkuYXBpLkRlZmluaXRpb247iMlc57TjXg4CAAB4cAAAAAFzcgATeHNidGkuYXBpLkNsYXNzTGlrZYM0HKHfsJdsAgAETAAOZGVmaW5pdGlvblR5cGV0ABpMeHNidGkvYXBpL0RlZmluaXRpb25UeXBlO1sAEHNhdmVkQW5ub3RhdGlvbnN0ABNbTGphdmEvbGFuZy9TdHJpbmc7TAAIc2VsZlR5cGV0ABBMeHNidGkvYXBpL0xhenk7TAAJc3RydWN0dXJlcQB+ABV4cgAheHNidGkuYXBpLlBhcmFtZXRlcml6ZWREZWZpbml0aW9u+RFusdVQPOICAAFbAA50eXBlUGFyYW1ldGVyc3QAGltMeHNidGkvYXBpL1R5cGVQYXJhbWV0ZXI7eHIAFHhzYnRpLmFwaS5EZWZpbml0aW9uhyob6HFC40YCAARMAAZhY2Nlc3N0ABJMeHNidGkvYXBpL0FjY2VzcztbAAthbm5vdGF0aW9uc3QAF1tMeHNidGkvYXBpL0Fubm90YXRpb247TAAJbW9kaWZpZXJzdAAVTHhzYnRpL2FwaS9Nb2RpZmllcnM7TAAEbmFtZXQAEkxqYXZhL2xhbmcvU3RyaW5nO3hwc3IAEHhzYnRpLmFwaS5QdWJsaWO6WD2ubC1gQgIAAHhyABB4c2J0aS5hcGkuQWNjZXNz3WKa+B1jMUgCAAB4cHVyABdbTHhzYnRpLmFwaS5Bbm5vdGF0aW9uO+uX6xkQ9o1IAgAAeHAAAAAAc3IAE3hzYnRpLmFwaS5Nb2RpZmllcnPHERMhaZzcJAIAAUIABWZsYWdzeHAAdAAIUmVjb3JkZXJ1cgAaW0x4c2J0aS5hcGkuVHlwZVBhcmFtZXRlcjvZbSYPKJ3ytgIAAHhwAAAAAH5yABh4c2J0aS5hcGkuRGVmaW5pdGlvblR5cGUAAAAAAAAAABIAAHhyAA5qYXZhLmxhbmcuRW51bQAAAAAAAAAAEgAAeHB0AAZNb2R1bGV1cgATW0xqYXZhLmxhbmcuU3RyaW5nO63SVufpHXtHAgAAeHAAAAACdAAQc2NhbGEuZGVwcmVjYXRlZHQAGnNjYWxhLmRlcHJlY2F0ZWRPdmVycmlkaW5nc3IAE3hzYnRpLlNhZmVMYXp5JEltcGw7kU8R9EVMyQIAA1oACGJpdG1hcCQwTAACX3R0ABJMamF2YS9sYW5nL09iamVjdDtMAARldmFsdAARTHNjYWxhL0Z1bmN0aW9uMDt4cgAWeHNidGkuYXBpLkFic3RyYWN0TGF6edN3tQFfu+egAgAAeHABc3IAE3hzYnRpLmFwaS5FbXB0eVR5cGW8/Z5GSTuJJAIAAHhyABR4c2J0aS5hcGkuU2ltcGxlVHlwZXJ4YoghI79AAgAAeHIADnhzYnRpLmFwaS5UeXBlP2rZIRZJqsoCAAB4cHBzcQB+ADABc3IAE3hzYnRpLmFwaS5TdHJ1Y3R1cmWpqvmAk2/YAAIAA0wACGRlY2xhcmVkcQB+ABVMAAlpbmhlcml0ZWRxAH4AFUwAB3BhcmVudHNxAH4AFXhxAH4AN3NxAH4AMAF1cQB+ABAAAAAAcHNxAH4AMAF1cQB+ABAAAAABc3IADXhzYnRpLmFwaS5EZWZSvp/ifLQ2aQIAAkwACnJldHVyblR5cGV0ABBMeHNidGkvYXBpL1R5cGU7WwAPdmFsdWVQYXJhbWV0ZXJzdAAaW0x4c2J0aS9hcGkvUGFyYW1ldGVyTGlzdDt4cQB+ABZxAH4AIHVxAH4AIQAAAAFzcgAUeHNidGkuYXBpLkFubm90YXRpb27eDoGi9lwKsgIAAlsACWFyZ3VtZW50c3QAH1tMeHNidGkvYXBpL0Fubm90YXRpb25Bcmd1bWVudDtMAARiYXNlcQB+AEF4cHVyAB9bTHhzYnRpLmFwaS5Bbm5vdGF0aW9uQXJndW1lbnQ7UZ2mjzglD3gCAAB4cAAAAAFzcgAceHNidGkuYXBpLkFubm90YXRpb25Bcmd1bWVudNZFsdgDGxd8AgACTAAEbmFtZXEAfgAcTAAFdmFsdWVxAH4AHHhwdAAAdAAqKCJtYWluIHNob3VsZCBub3QgYmUgb3ZlcnJpZGRlbiIsIjIuMTEuMCIpc3IAFHhzYnRpLmFwaS5Qcm9qZWN0aW9u89KNVOlFpC0CAAJMAAJpZHEAfgAcTAAGcHJlZml4dAAWTHhzYnRpL2FwaS9TaW1wbGVUeXBlO3hxAH4ANnQAFGRlcHJlY2F0ZWRPdmVycmlkaW5nc3IAE3hzYnRpLmFwaS5TaW5nbGV0b278p1/4z1bkRgIAAUwABHBhdGh0ABBMeHNidGkvYXBpL1BhdGg7eHEAfgA2c3IADnhzYnRpLmFwaS5QYXRomz1cCM6lJ4QCAAFbAApjb21wb25lbnRzdAAaW0x4c2J0aS9hcGkvUGF0aENvbXBvbmVudDt4cHVyABpbTHhzYnRpLmFwaS5QYXRoQ29tcG9uZW50O0PaCXQtZxZ0AgAAeHAAAAACc3IADHhzYnRpLmFwaS5JZJgybIs3U8RAAgABTAACaWRxAH4AHHhyABd4c2J0aS5hcGkuUGF0aENvbXBvbmVudF+aIlsuhp+8AgAAeHB0AAVzY2FsYXNyAA54c2J0aS5hcGkuVGhpc9sJ7abMWkBcAgAAeHEAfgBbc3EAfgAjAHQABG1haW51cQB+ACYAAAAAc3EAfgBOdAAEVW5pdHEAfgBUdXIAGltMeHNidGkuYXBpLlBhcmFtZXRlckxpc3Q79dM6HfKzcO4CAAB4cAAAAAFzcgAXeHNidGkuYXBpLlBhcmFtZXRlckxpc3TWxbwcZEl04wIAAloACmlzSW1wbGljaXRbAApwYXJhbWV0ZXJzdAAcW0x4c2J0aS9hcGkvTWV0aG9kUGFyYW1ldGVyO3hwAHVyABxbTHhzYnRpLmFwaS5NZXRob2RQYXJhbWV0ZXI7z7jFXaXdtW0CAAB4cAAAAAFzcgAZeHNidGkuYXBpLk1ldGhvZFBhcmFtZXRlch9FrhfTSbDqAgAEWgAKaGFzRGVmYXVsdEwACG1vZGlmaWVydAAdTHhzYnRpL2FwaS9QYXJhbWV0ZXJNb2RpZmllcjtMAARuYW1lcQB+ABxMAAN0cGVxAH4AQXhwAH5yABt4c2J0aS5hcGkuUGFyYW1ldGVyTW9kaWZpZXIAAAAAAAAAABIAAHhxAH4AKXQABVBsYWludAAEYXJnc3NyABd4c2J0aS5hcGkuUGFyYW1ldGVyaXplZBZs7mkDybt/AgACTAAIYmFzZVR5cGVxAH4AT1sADXR5cGVBcmd1bWVudHN0ABFbTHhzYnRpL2FwaS9UeXBlO3hxAH4ANnNxAH4ATnQABUFycmF5cQB+AFR1cgARW0x4c2J0aS5hcGkuVHlwZTt0/6Vae/npQQIAAHhwAAAAAXNxAH4ATnQABlN0cmluZ3NxAH4AUnNxAH4AVXVxAH4AWAAAAANzcQB+AFp0AARqYXZhc3EAfgBadAAEbGFuZ3EAfgBfcHNxAH4AMAF1cQB+AHgAAAAEc3EAfgBOdAADQXBwcQB+AFRzcQB+AE50AAtEZWxheWVkSW5pdHEAfgBUc3EAfgBOdAAGT2JqZWN0cQB+AHxzcQB+AE50AANBbnlxAH4AVHBwdXIAFFtMeHNidGkuYXBpLlBhY2thZ2U7WxMZN3CnJ6ECAAB4cAAAAABzcgAVeHNidGkuYXBpLkNvbXBpbGF0aW9u7frgw2rooEICAAJKAAlzdGFydFRpbWVbAAdvdXRwdXRzdAAaW0x4c2J0aS9hcGkvT3V0cHV0U2V0dGluZzt4cAAAAVTydcSmdXIAGltMeHNidGkuYXBpLk91dHB1dFNldHRpbmc7f2rC86eHpUICAAB4cAAAAAJzcgAXeHNidGkuYXBpLk91dHB1dFNldHRpbmd62ZpHdPsdewIAAkwAD291dHB1dERpcmVjdG9yeXEAfgAcTAAPc291cmNlRGlyZWN0b3J5cQB+ABx4cHQAQkM6XGRldmVsb3BcZ2l0XHR1dG9yaWFsc1xnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cdGFyZ2V0XHRlc3QtY2xhc3Nlc3QAPUM6XGRldmVsb3BcZ2l0XHR1dG9yaWFsc1xnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cc3JjXHRlc3Rcc2NhbGFzcQB+AJR0AEJDOlxkZXZlbG9wXGdpdFx0dXRvcmlhbHNcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHRhcmdldFx0ZXN0LWNsYXNzZXN0AEFDOlxkZXZlbG9wXGdpdFx0dXRvcmlhbHNcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHNyY1x0ZXN0XHJlc291cmNlc3VyAAJbQqzzF/gGCFTgAgAAeHAAAAAUZn2oqdcS+YjtexS9+nspPHasO2E= +external apis: +0 items +source infos: +4 items +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\Engine.scala -> +AAAAAAAAAAA= +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\IDEPathHelper.scala -> +AAAAAAAAAAA= +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\org\baeldung\RecordedSimulation.scala -> +AAAAAAAAAAA= +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\Recorder.scala -> +AAAAAAAAAAA= +compilations: +17 items +00 -> rO0ABXNyABV4c2J0aS5hcGkuQ29tcGlsYXRpb27t+uDDauigQgIAAkoACXN0YXJ0VGltZVsAB291dHB1dHN0ABpbTHhzYnRpL2FwaS9PdXRwdXRTZXR0aW5nO3hwAAABVOxQus91cgAaW0x4c2J0aS5hcGkuT3V0cHV0U2V0dGluZzt/asLzp4elQgIAAHhwAAAAAnNyABd4c2J0aS5hcGkuT3V0cHV0U2V0dGluZ3rZmkd0+x17AgACTAAPb3V0cHV0RGlyZWN0b3J5dAASTGphdmEvbGFuZy9TdHJpbmc7TAAPc291cmNlRGlyZWN0b3J5cQB+AAZ4cHQAUUM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cdGFyZ2V0XHRlc3QtY2xhc3Nlc3QATEM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cc3JjXHRlc3Rcc2NhbGFzcQB+AAV0AFFDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHRhcmdldFx0ZXN0LWNsYXNzZXN0AFBDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHNyY1x0ZXN0XHJlc291cmNlcw== +01 -> rO0ABXNyABV4c2J0aS5hcGkuQ29tcGlsYXRpb27t+uDDauigQgIAAkoACXN0YXJ0VGltZVsAB291dHB1dHN0ABpbTHhzYnRpL2FwaS9PdXRwdXRTZXR0aW5nO3hwAAABVO1Iw051cgAaW0x4c2J0aS5hcGkuT3V0cHV0U2V0dGluZzt/asLzp4elQgIAAHhwAAAAAnNyABd4c2J0aS5hcGkuT3V0cHV0U2V0dGluZ3rZmkd0+x17AgACTAAPb3V0cHV0RGlyZWN0b3J5dAASTGphdmEvbGFuZy9TdHJpbmc7TAAPc291cmNlRGlyZWN0b3J5cQB+AAZ4cHQAUUM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cdGFyZ2V0XHRlc3QtY2xhc3Nlc3QATEM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cc3JjXHRlc3Rcc2NhbGFzcQB+AAV0AFFDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHRhcmdldFx0ZXN0LWNsYXNzZXN0AFBDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHNyY1x0ZXN0XHJlc291cmNlcw== +02 -> rO0ABXNyABV4c2J0aS5hcGkuQ29tcGlsYXRpb27t+uDDauigQgIAAkoACXN0YXJ0VGltZVsAB291dHB1dHN0ABpbTHhzYnRpL2FwaS9PdXRwdXRTZXR0aW5nO3hwAAABVO1LJxV1cgAaW0x4c2J0aS5hcGkuT3V0cHV0U2V0dGluZzt/asLzp4elQgIAAHhwAAAAAnNyABd4c2J0aS5hcGkuT3V0cHV0U2V0dGluZ3rZmkd0+x17AgACTAAPb3V0cHV0RGlyZWN0b3J5dAASTGphdmEvbGFuZy9TdHJpbmc7TAAPc291cmNlRGlyZWN0b3J5cQB+AAZ4cHQAUUM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cdGFyZ2V0XHRlc3QtY2xhc3Nlc3QATEM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cc3JjXHRlc3Rcc2NhbGFzcQB+AAV0AFFDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHRhcmdldFx0ZXN0LWNsYXNzZXN0AFBDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHNyY1x0ZXN0XHJlc291cmNlcw== +03 -> rO0ABXNyABV4c2J0aS5hcGkuQ29tcGlsYXRpb27t+uDDauigQgIAAkoACXN0YXJ0VGltZVsAB291dHB1dHN0ABpbTHhzYnRpL2FwaS9PdXRwdXRTZXR0aW5nO3hwAAABVO1LOZV1cgAaW0x4c2J0aS5hcGkuT3V0cHV0U2V0dGluZzt/asLzp4elQgIAAHhwAAAAAnNyABd4c2J0aS5hcGkuT3V0cHV0U2V0dGluZ3rZmkd0+x17AgACTAAPb3V0cHV0RGlyZWN0b3J5dAASTGphdmEvbGFuZy9TdHJpbmc7TAAPc291cmNlRGlyZWN0b3J5cQB+AAZ4cHQAUUM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cdGFyZ2V0XHRlc3QtY2xhc3Nlc3QATEM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cc3JjXHRlc3Rcc2NhbGFzcQB+AAV0AFFDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHRhcmdldFx0ZXN0LWNsYXNzZXN0AFBDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHNyY1x0ZXN0XHJlc291cmNlcw== +04 -> rO0ABXNyABV4c2J0aS5hcGkuQ29tcGlsYXRpb27t+uDDauigQgIAAkoACXN0YXJ0VGltZVsAB291dHB1dHN0ABpbTHhzYnRpL2FwaS9PdXRwdXRTZXR0aW5nO3hwAAABVO1QxNd1cgAaW0x4c2J0aS5hcGkuT3V0cHV0U2V0dGluZzt/asLzp4elQgIAAHhwAAAAAnNyABd4c2J0aS5hcGkuT3V0cHV0U2V0dGluZ3rZmkd0+x17AgACTAAPb3V0cHV0RGlyZWN0b3J5dAASTGphdmEvbGFuZy9TdHJpbmc7TAAPc291cmNlRGlyZWN0b3J5cQB+AAZ4cHQAUUM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cdGFyZ2V0XHRlc3QtY2xhc3Nlc3QATEM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cc3JjXHRlc3Rcc2NhbGFzcQB+AAV0AFFDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHRhcmdldFx0ZXN0LWNsYXNzZXN0AFBDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHNyY1x0ZXN0XHJlc291cmNlcw== +05 -> rO0ABXNyABV4c2J0aS5hcGkuQ29tcGlsYXRpb27t+uDDauigQgIAAkoACXN0YXJ0VGltZVsAB291dHB1dHN0ABpbTHhzYnRpL2FwaS9PdXRwdXRTZXR0aW5nO3hwAAABVO1U4651cgAaW0x4c2J0aS5hcGkuT3V0cHV0U2V0dGluZzt/asLzp4elQgIAAHhwAAAAAnNyABd4c2J0aS5hcGkuT3V0cHV0U2V0dGluZ3rZmkd0+x17AgACTAAPb3V0cHV0RGlyZWN0b3J5dAASTGphdmEvbGFuZy9TdHJpbmc7TAAPc291cmNlRGlyZWN0b3J5cQB+AAZ4cHQAUUM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cdGFyZ2V0XHRlc3QtY2xhc3Nlc3QATEM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cc3JjXHRlc3Rcc2NhbGFzcQB+AAV0AFFDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHRhcmdldFx0ZXN0LWNsYXNzZXN0AFBDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHNyY1x0ZXN0XHJlc291cmNlcw== +06 -> rO0ABXNyABV4c2J0aS5hcGkuQ29tcGlsYXRpb27t+uDDauigQgIAAkoACXN0YXJ0VGltZVsAB291dHB1dHN0ABpbTHhzYnRpL2FwaS9PdXRwdXRTZXR0aW5nO3hwAAABVO1kjrl1cgAaW0x4c2J0aS5hcGkuT3V0cHV0U2V0dGluZzt/asLzp4elQgIAAHhwAAAAAnNyABd4c2J0aS5hcGkuT3V0cHV0U2V0dGluZ3rZmkd0+x17AgACTAAPb3V0cHV0RGlyZWN0b3J5dAASTGphdmEvbGFuZy9TdHJpbmc7TAAPc291cmNlRGlyZWN0b3J5cQB+AAZ4cHQAUUM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cdGFyZ2V0XHRlc3QtY2xhc3Nlc3QATEM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cc3JjXHRlc3Rcc2NhbGFzcQB+AAV0AFFDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHRhcmdldFx0ZXN0LWNsYXNzZXN0AFBDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHNyY1x0ZXN0XHJlc291cmNlcw== +07 -> rO0ABXNyABV4c2J0aS5hcGkuQ29tcGlsYXRpb27t+uDDauigQgIAAkoACXN0YXJ0VGltZVsAB291dHB1dHN0ABpbTHhzYnRpL2FwaS9PdXRwdXRTZXR0aW5nO3hwAAABVO1koUh1cgAaW0x4c2J0aS5hcGkuT3V0cHV0U2V0dGluZzt/asLzp4elQgIAAHhwAAAAAnNyABd4c2J0aS5hcGkuT3V0cHV0U2V0dGluZ3rZmkd0+x17AgACTAAPb3V0cHV0RGlyZWN0b3J5dAASTGphdmEvbGFuZy9TdHJpbmc7TAAPc291cmNlRGlyZWN0b3J5cQB+AAZ4cHQAUUM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cdGFyZ2V0XHRlc3QtY2xhc3Nlc3QATEM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cc3JjXHRlc3Rcc2NhbGFzcQB+AAV0AFFDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHRhcmdldFx0ZXN0LWNsYXNzZXN0AFBDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHNyY1x0ZXN0XHJlc291cmNlcw== +08 -> rO0ABXNyABV4c2J0aS5hcGkuQ29tcGlsYXRpb27t+uDDauigQgIAAkoACXN0YXJ0VGltZVsAB291dHB1dHN0ABpbTHhzYnRpL2FwaS9PdXRwdXRTZXR0aW5nO3hwAAABVO1kwGd1cgAaW0x4c2J0aS5hcGkuT3V0cHV0U2V0dGluZzt/asLzp4elQgIAAHhwAAAAAnNyABd4c2J0aS5hcGkuT3V0cHV0U2V0dGluZ3rZmkd0+x17AgACTAAPb3V0cHV0RGlyZWN0b3J5dAASTGphdmEvbGFuZy9TdHJpbmc7TAAPc291cmNlRGlyZWN0b3J5cQB+AAZ4cHQAUUM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cdGFyZ2V0XHRlc3QtY2xhc3Nlc3QATEM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cc3JjXHRlc3Rcc2NhbGFzcQB+AAV0AFFDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHRhcmdldFx0ZXN0LWNsYXNzZXN0AFBDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHNyY1x0ZXN0XHJlc291cmNlcw== +09 -> rO0ABXNyABV4c2J0aS5hcGkuQ29tcGlsYXRpb27t+uDDauigQgIAAkoACXN0YXJ0VGltZVsAB291dHB1dHN0ABpbTHhzYnRpL2FwaS9PdXRwdXRTZXR0aW5nO3hwAAABVO1lpUV1cgAaW0x4c2J0aS5hcGkuT3V0cHV0U2V0dGluZzt/asLzp4elQgIAAHhwAAAAAnNyABd4c2J0aS5hcGkuT3V0cHV0U2V0dGluZ3rZmkd0+x17AgACTAAPb3V0cHV0RGlyZWN0b3J5dAASTGphdmEvbGFuZy9TdHJpbmc7TAAPc291cmNlRGlyZWN0b3J5cQB+AAZ4cHQAUUM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cdGFyZ2V0XHRlc3QtY2xhc3Nlc3QATEM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cc3JjXHRlc3Rcc2NhbGFzcQB+AAV0AFFDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHRhcmdldFx0ZXN0LWNsYXNzZXN0AFBDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHNyY1x0ZXN0XHJlc291cmNlcw== +10 -> rO0ABXNyABV4c2J0aS5hcGkuQ29tcGlsYXRpb27t+uDDauigQgIAAkoACXN0YXJ0VGltZVsAB291dHB1dHN0ABpbTHhzYnRpL2FwaS9PdXRwdXRTZXR0aW5nO3hwAAABVO1oYjh1cgAaW0x4c2J0aS5hcGkuT3V0cHV0U2V0dGluZzt/asLzp4elQgIAAHhwAAAAAnNyABd4c2J0aS5hcGkuT3V0cHV0U2V0dGluZ3rZmkd0+x17AgACTAAPb3V0cHV0RGlyZWN0b3J5dAASTGphdmEvbGFuZy9TdHJpbmc7TAAPc291cmNlRGlyZWN0b3J5cQB+AAZ4cHQAUUM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cdGFyZ2V0XHRlc3QtY2xhc3Nlc3QATEM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cc3JjXHRlc3Rcc2NhbGFzcQB+AAV0AFFDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHRhcmdldFx0ZXN0LWNsYXNzZXN0AFBDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHNyY1x0ZXN0XHJlc291cmNlcw== +11 -> rO0ABXNyABV4c2J0aS5hcGkuQ29tcGlsYXRpb27t+uDDauigQgIAAkoACXN0YXJ0VGltZVsAB291dHB1dHN0ABpbTHhzYnRpL2FwaS9PdXRwdXRTZXR0aW5nO3hwAAABVO1ofWt1cgAaW0x4c2J0aS5hcGkuT3V0cHV0U2V0dGluZzt/asLzp4elQgIAAHhwAAAAAnNyABd4c2J0aS5hcGkuT3V0cHV0U2V0dGluZ3rZmkd0+x17AgACTAAPb3V0cHV0RGlyZWN0b3J5dAASTGphdmEvbGFuZy9TdHJpbmc7TAAPc291cmNlRGlyZWN0b3J5cQB+AAZ4cHQAUUM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cdGFyZ2V0XHRlc3QtY2xhc3Nlc3QATEM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cc3JjXHRlc3Rcc2NhbGFzcQB+AAV0AFFDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHRhcmdldFx0ZXN0LWNsYXNzZXN0AFBDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHNyY1x0ZXN0XHJlc291cmNlcw== +12 -> rO0ABXNyABV4c2J0aS5hcGkuQ29tcGlsYXRpb27t+uDDauigQgIAAkoACXN0YXJ0VGltZVsAB291dHB1dHN0ABpbTHhzYnRpL2FwaS9PdXRwdXRTZXR0aW5nO3hwAAABVO1px4J1cgAaW0x4c2J0aS5hcGkuT3V0cHV0U2V0dGluZzt/asLzp4elQgIAAHhwAAAAAnNyABd4c2J0aS5hcGkuT3V0cHV0U2V0dGluZ3rZmkd0+x17AgACTAAPb3V0cHV0RGlyZWN0b3J5dAASTGphdmEvbGFuZy9TdHJpbmc7TAAPc291cmNlRGlyZWN0b3J5cQB+AAZ4cHQAUUM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cdGFyZ2V0XHRlc3QtY2xhc3Nlc3QATEM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cc3JjXHRlc3Rcc2NhbGFzcQB+AAV0AFFDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHRhcmdldFx0ZXN0LWNsYXNzZXN0AFBDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHNyY1x0ZXN0XHJlc291cmNlcw== +13 -> rO0ABXNyABV4c2J0aS5hcGkuQ29tcGlsYXRpb27t+uDDauigQgIAAkoACXN0YXJ0VGltZVsAB291dHB1dHN0ABpbTHhzYnRpL2FwaS9PdXRwdXRTZXR0aW5nO3hwAAABVO1q7U91cgAaW0x4c2J0aS5hcGkuT3V0cHV0U2V0dGluZzt/asLzp4elQgIAAHhwAAAAAnNyABd4c2J0aS5hcGkuT3V0cHV0U2V0dGluZ3rZmkd0+x17AgACTAAPb3V0cHV0RGlyZWN0b3J5dAASTGphdmEvbGFuZy9TdHJpbmc7TAAPc291cmNlRGlyZWN0b3J5cQB+AAZ4cHQAUUM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cdGFyZ2V0XHRlc3QtY2xhc3Nlc3QATEM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cc3JjXHRlc3Rcc2NhbGFzcQB+AAV0AFFDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHRhcmdldFx0ZXN0LWNsYXNzZXN0AFBDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHNyY1x0ZXN0XHJlc291cmNlcw== +14 -> rO0ABXNyABV4c2J0aS5hcGkuQ29tcGlsYXRpb27t+uDDauigQgIAAkoACXN0YXJ0VGltZVsAB291dHB1dHN0ABpbTHhzYnRpL2FwaS9PdXRwdXRTZXR0aW5nO3hwAAABVPJoEOF1cgAaW0x4c2J0aS5hcGkuT3V0cHV0U2V0dGluZzt/asLzp4elQgIAAHhwAAAAAnNyABd4c2J0aS5hcGkuT3V0cHV0U2V0dGluZ3rZmkd0+x17AgACTAAPb3V0cHV0RGlyZWN0b3J5dAASTGphdmEvbGFuZy9TdHJpbmc7TAAPc291cmNlRGlyZWN0b3J5cQB+AAZ4cHQAUUM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cdGFyZ2V0XHRlc3QtY2xhc3Nlc3QATEM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cc3JjXHRlc3Rcc2NhbGFzcQB+AAV0AFFDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHRhcmdldFx0ZXN0LWNsYXNzZXN0AFBDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHNyY1x0ZXN0XHJlc291cmNlcw== +15 -> rO0ABXNyABV4c2J0aS5hcGkuQ29tcGlsYXRpb27t+uDDauigQgIAAkoACXN0YXJ0VGltZVsAB291dHB1dHN0ABpbTHhzYnRpL2FwaS9PdXRwdXRTZXR0aW5nO3hwAAABVPJ0QXt1cgAaW0x4c2J0aS5hcGkuT3V0cHV0U2V0dGluZzt/asLzp4elQgIAAHhwAAAAAnNyABd4c2J0aS5hcGkuT3V0cHV0U2V0dGluZ3rZmkd0+x17AgACTAAPb3V0cHV0RGlyZWN0b3J5dAASTGphdmEvbGFuZy9TdHJpbmc7TAAPc291cmNlRGlyZWN0b3J5cQB+AAZ4cHQAQkM6XGRldmVsb3BcZ2l0XHR1dG9yaWFsc1xnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cdGFyZ2V0XHRlc3QtY2xhc3Nlc3QAPUM6XGRldmVsb3BcZ2l0XHR1dG9yaWFsc1xnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cc3JjXHRlc3Rcc2NhbGFzcQB+AAV0AEJDOlxkZXZlbG9wXGdpdFx0dXRvcmlhbHNcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHRhcmdldFx0ZXN0LWNsYXNzZXN0AEFDOlxkZXZlbG9wXGdpdFx0dXRvcmlhbHNcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHNyY1x0ZXN0XHJlc291cmNlcw== +16 -> rO0ABXNyABV4c2J0aS5hcGkuQ29tcGlsYXRpb27t+uDDauigQgIAAkoACXN0YXJ0VGltZVsAB291dHB1dHN0ABpbTHhzYnRpL2FwaS9PdXRwdXRTZXR0aW5nO3hwAAABVPJ1xKZ1cgAaW0x4c2J0aS5hcGkuT3V0cHV0U2V0dGluZzt/asLzp4elQgIAAHhwAAAAAnNyABd4c2J0aS5hcGkuT3V0cHV0U2V0dGluZ3rZmkd0+x17AgACTAAPb3V0cHV0RGlyZWN0b3J5dAASTGphdmEvbGFuZy9TdHJpbmc7TAAPc291cmNlRGlyZWN0b3J5cQB+AAZ4cHQAQkM6XGRldmVsb3BcZ2l0XHR1dG9yaWFsc1xnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cdGFyZ2V0XHRlc3QtY2xhc3Nlc3QAPUM6XGRldmVsb3BcZ2l0XHR1dG9yaWFsc1xnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cc3JjXHRlc3Rcc2NhbGFzcQB+AAV0AEJDOlxkZXZlbG9wXGdpdFx0dXRvcmlhbHNcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHRhcmdldFx0ZXN0LWNsYXNzZXN0AEFDOlxkZXZlbG9wXGdpdFx0dXRvcmlhbHNcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHNyY1x0ZXN0XHJlc291cmNlcw== diff --git a/gatling-loadtest-demo/.classpath b/gatling-loadtest-demo/.classpath new file mode 100644 index 0000000000..6026072109 --- /dev/null +++ b/gatling-loadtest-demo/.classpath @@ -0,0 +1,32 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/gatling-loadtest-demo/.project b/gatling-loadtest-demo/.project new file mode 100644 index 0000000000..a5e3b774e0 --- /dev/null +++ b/gatling-loadtest-demo/.project @@ -0,0 +1,24 @@ + + + gatling-loadtest-demo + + + + + + org.scala-ide.sdt.core.scalabuilder + + + + + org.eclipse.m2e.core.maven2Builder + + + + + + org.scala-ide.sdt.core.scalanature + org.eclipse.jdt.core.javanature + org.eclipse.m2e.core.maven2Nature + + diff --git a/gatling-loadtest-demo/pom.xml b/gatling-loadtest-demo/pom.xml new file mode 100644 index 0000000000..f5ed1d7de7 --- /dev/null +++ b/gatling-loadtest-demo/pom.xml @@ -0,0 +1,113 @@ + + + 4.0.0 + org.baeldung + gatling-loadtest-demo + 1.0-SNAPSHOT + + + 1.8 + 1.8 + 2.11.7 + UTF-8 + + 2.2.0 + + 3.2.2 + + + + + + io.gatling + gatling-app + ${gatling.version} + + + io.gatling + gatling-recorder + ${gatling.version} + + + io.gatling.highcharts + gatling-charts-highcharts + ${gatling.version} + + + org.scala-lang + scala-library + ${scala.version} + + + + + + + io.gatling.highcharts + gatling-charts-highcharts + + + io.gatling + gatling-app + + + io.gatling + gatling-recorder + + + org.scala-lang + scala-library + + + + + src/test/scala + + + + net.alchim31.maven + scala-maven-plugin + ${scala-maven-plugin.version} + + + + + + net.alchim31.maven + scala-maven-plugin + + + + testCompile + + + + -Ybackend:GenBCode + -Ydelambdafy:method + -target:jvm-1.8 + -deprecation + -feature + -unchecked + -language:implicitConversions + -language:postfixOps + + + + + + + + io.gatling + gatling-maven-plugin + ${gatling.version} + + + test + execute + + + + + + diff --git a/gatling-loadtest-demo/src/test/resources/gatling.conf b/gatling-loadtest-demo/src/test/resources/gatling.conf new file mode 100644 index 0000000000..8bfa0ed366 --- /dev/null +++ b/gatling-loadtest-demo/src/test/resources/gatling.conf @@ -0,0 +1,127 @@ +######################### +# Gatling Configuration # +######################### + +# This file contains all the settings configurable for Gatling with their default values + +gatling { + core { + #outputDirectoryBaseName = "" # The prefix for each simulation result folder (then suffixed by the report generation timestamp) + #runDescription = "" # The description for this simulation run, displayed in each report + #encoding = "utf-8" # Encoding to use throughout Gatling for file and string manipulation + #simulationClass = "" # The FQCN of the simulation to run (when used in conjunction with noReports, the simulation for which assertions will be validated) + #mute = false # When set to true, don't ask for simulation name nor run description (currently only used by Gatling SBT plugin) + #elFileBodiesCacheMaxCapacity = 200 # Cache size for request body EL templates, set to 0 to disable + #rawFileBodiesCacheMaxCapacity = 200 # Cache size for request body Raw templates, set to 0 to disable + #rawFileBodiesInMemoryMaxSize = 1000 # Below this limit, raw file bodies will be cached in memory + + extract { + regex { + #cacheMaxCapacity = 200 # Cache size for the compiled regexes, set to 0 to disable caching + } + xpath { + #cacheMaxCapacity = 200 # Cache size for the compiled XPath queries, set to 0 to disable caching + } + jsonPath { + #cacheMaxCapacity = 200 # Cache size for the compiled jsonPath queries, set to 0 to disable caching + #preferJackson = false # When set to true, prefer Jackson over Boon for JSON-related operations + } + css { + #cacheMaxCapacity = 200 # Cache size for the compiled CSS selectors queries, set to 0 to disable caching + } + } + + directory { + #data = user-files/data # Folder where user's data (e.g. files used by Feeders) is located + #bodies = user-files/bodies # Folder where bodies are located + #simulations = user-files/simulations # Folder where the bundle's simulations are located + #reportsOnly = "" # If set, name of report folder to look for in order to generate its report + #binaries = "" # If set, name of the folder where compiles classes are located: Defaults to GATLING_HOME/target. + #results = results # Name of the folder where all reports folder are located + } + } + charting { + #noReports = false # When set to true, don't generate HTML reports + #maxPlotPerSeries = 1000 # Number of points per graph in Gatling reports + #useGroupDurationMetric = false # Switch group timings from cumulated response time to group duration. + indicators { + #lowerBound = 800 # Lower bound for the requests' response time to track in the reports and the console summary + #higherBound = 1200 # Higher bound for the requests' response time to track in the reports and the console summary + #percentile1 = 50 # Value for the 1st percentile to track in the reports, the console summary and Graphite + #percentile2 = 75 # Value for the 2nd percentile to track in the reports, the console summary and Graphite + #percentile3 = 95 # Value for the 3rd percentile to track in the reports, the console summary and Graphite + #percentile4 = 99 # Value for the 4th percentile to track in the reports, the console summary and Graphite + } + } + http { + #fetchedCssCacheMaxCapacity = 200 # Cache size for CSS parsed content, set to 0 to disable + #fetchedHtmlCacheMaxCapacity = 200 # Cache size for HTML parsed content, set to 0 to disable + #perUserCacheMaxCapacity = 200 # Per virtual user cache size, set to 0 to disable + #warmUpUrl = "http://gatling.io" # The URL to use to warm-up the HTTP stack (blank means disabled) + #enableGA = true # Very light Google Analytics, please support + ssl { + keyStore { + #type = "" # Type of SSLContext's KeyManagers store + #file = "" # Location of SSLContext's KeyManagers store + #password = "" # Password for SSLContext's KeyManagers store + #algorithm = "" # Algorithm used SSLContext's KeyManagers store + } + trustStore { + #type = "" # Type of SSLContext's TrustManagers store + #file = "" # Location of SSLContext's TrustManagers store + #password = "" # Password for SSLContext's TrustManagers store + #algorithm = "" # Algorithm used by SSLContext's TrustManagers store + } + } + ahc { + #keepAlive = true # Allow pooling HTTP connections (keep-alive header automatically added) + #connectTimeout = 60000 # Timeout when establishing a connection + #pooledConnectionIdleTimeout = 60000 # Timeout when a connection stays unused in the pool + #readTimeout = 60000 # Timeout when a used connection stays idle + #maxRetry = 2 # Number of times that a request should be tried again + #requestTimeout = 60000 # Timeout of the requests + #acceptAnyCertificate = true # When set to true, doesn't validate SSL certificates + #httpClientCodecMaxInitialLineLength = 4096 # Maximum length of the initial line of the response (e.g. "HTTP/1.0 200 OK") + #httpClientCodecMaxHeaderSize = 8192 # Maximum size, in bytes, of each request's headers + #httpClientCodecMaxChunkSize = 8192 # Maximum length of the content or each chunk + #webSocketMaxFrameSize = 10240000 # Maximum frame payload size + #sslEnabledProtocols = [TLSv1.2, TLSv1.1, TLSv1] # Array of enabled protocols for HTTPS, if empty use the JDK defaults + #sslEnabledCipherSuites = [] # Array of enabled cipher suites for HTTPS, if empty use the JDK defaults + #sslSessionCacheSize = 0 # SSLSession cache size, set to 0 to use JDK's default + #sslSessionTimeout = 0 # SSLSession timeout in seconds, set to 0 to use JDK's default (24h) + #useOpenSsl = false # if OpenSSL should be used instead of JSSE (requires tcnative jar) + #useNativeTransport = false # if native transport should be used instead of Java NIO (requires netty-transport-native-epoll, currently Linux only) + #usePooledMemory = true # if Gatling should use pooled memory + #tcpNoDelay = true + #soReuseAddress = false + #soLinger = -1 + #soSndBuf = -1 + #soRcvBuf = -1 + } + dns { + #queryTimeout = 5000 # Timeout of each DNS query in millis + #maxQueriesPerResolve = 3 # Maximum allowed number of DNS queries for a given name resolution + } + } + data { + #writers = [console, file] # The list of DataWriters to which Gatling write simulation data (currently supported : console, file, graphite, jdbc) + console { + #light = false # When set to true, displays a light version without detailed request stats + } + file { + #bufferSize = 8192 # FileDataWriter's internal data buffer size, in bytes + } + leak { + #noActivityTimeout = 30 # Period, in seconds, for which Gatling may have no activity before considering a leak may be happening + } + graphite { + #light = false # only send the all* stats + #host = "localhost" # The host where the Carbon server is located + #port = 2003 # The port to which the Carbon server listens to (2003 is default for plaintext, 2004 is default for pickle) + #protocol = "tcp" # The protocol used to send data to Carbon (currently supported : "tcp", "udp") + #rootPathPrefix = "gatling" # The common prefix of all metrics sent to Graphite + #bufferSize = 8192 # GraphiteDataWriter's internal data buffer size, in bytes + #writeInterval = 1 # GraphiteDataWriter's write interval, in seconds + } + } +} diff --git a/gatling-loadtest-demo/src/test/resources/logback.xml b/gatling-loadtest-demo/src/test/resources/logback.xml new file mode 100644 index 0000000000..a8fe714e7d --- /dev/null +++ b/gatling-loadtest-demo/src/test/resources/logback.xml @@ -0,0 +1,22 @@ + + + + + + %d{HH:mm:ss.SSS} [%-5level] %logger{15} - %msg%n%rEx + false + + + + + + + + + + + + + + + diff --git a/gatling-loadtest-demo/src/test/resources/recorder.conf b/gatling-loadtest-demo/src/test/resources/recorder.conf new file mode 100644 index 0000000000..f4ba60310b --- /dev/null +++ b/gatling-loadtest-demo/src/test/resources/recorder.conf @@ -0,0 +1,57 @@ +recorder { + core { + className=RecordedSimulation + encoding=utf-8 + harFilePath="" + headless=false + mode=Proxy + outputFolder="C:\\develop\\workspaces\\vjportalWorkspace\\gatling-loadtest-demo\\src\\test\\scala" + package="org.baeldung" + saveConfig=true + thresholdForPauseCreation=100 + } + filters { + blacklist=[ + ".*\\.css", + ".*\\.js", + ".*\\.ico" + ] + filterStrategy=BlacklistFirst + whitelist=[] + } + http { + automaticReferer=true + checkResponseBodies=false + followRedirect=true + inferHtmlResources=true + removeCacheHeaders=true + } + netty { + maxChunkSize=8192 + maxContentLength=100000000 + maxHeaderSize=20000 + maxInitialLineLength=10000 + } + proxy { + https { + certificateAuthority { + certificatePath="" + privateKeyPath="" + } + keyStore { + password="" + path="" + type=JKS + } + mode=SelfSignedCertificate + } + outgoing { + host="" + password="" + port=0 + sslPort=0 + username="" + } + port=8000 + } +} diff --git a/gatling-loadtest-demo/src/test/scala/Engine.scala b/gatling-loadtest-demo/src/test/scala/Engine.scala new file mode 100644 index 0000000000..0ac3abe948 --- /dev/null +++ b/gatling-loadtest-demo/src/test/scala/Engine.scala @@ -0,0 +1,13 @@ +import io.gatling.app.Gatling +import io.gatling.core.config.GatlingPropertiesBuilder + +object Engine extends App { + + val props = new GatlingPropertiesBuilder + props.dataDirectory(IDEPathHelper.dataDirectory.toString) + props.resultsDirectory(IDEPathHelper.resultsDirectory.toString) + props.bodiesDirectory(IDEPathHelper.bodiesDirectory.toString) + props.binariesDirectory(IDEPathHelper.mavenBinariesDirectory.toString) + + Gatling.fromMap(props.build) +} diff --git a/gatling-loadtest-demo/src/test/scala/IDEPathHelper.scala b/gatling-loadtest-demo/src/test/scala/IDEPathHelper.scala new file mode 100644 index 0000000000..32c986a072 --- /dev/null +++ b/gatling-loadtest-demo/src/test/scala/IDEPathHelper.scala @@ -0,0 +1,22 @@ +import java.nio.file.Path + +import io.gatling.commons.util.PathHelper._ + +object IDEPathHelper { + + val gatlingConfUrl: Path = getClass.getClassLoader.getResource("gatling.conf").toURI + val projectRootDir = gatlingConfUrl.ancestor(3) + + val mavenSourcesDirectory = projectRootDir / "src" / "test" / "scala" + val mavenResourcesDirectory = projectRootDir / "src" / "test" / "resources" + val mavenTargetDirectory = projectRootDir / "target" + val mavenBinariesDirectory = mavenTargetDirectory / "test-classes" + + val dataDirectory = mavenResourcesDirectory / "data" + val bodiesDirectory = mavenResourcesDirectory / "bodies" + + val recorderOutputDirectory = mavenSourcesDirectory + val resultsDirectory = mavenTargetDirectory / "gatling" + + val recorderConfigFile = mavenResourcesDirectory / "recorder.conf" +} diff --git a/gatling-loadtest-demo/src/test/scala/Recorder.scala b/gatling-loadtest-demo/src/test/scala/Recorder.scala new file mode 100644 index 0000000000..1372da6d41 --- /dev/null +++ b/gatling-loadtest-demo/src/test/scala/Recorder.scala @@ -0,0 +1,12 @@ +import io.gatling.recorder.GatlingRecorder +import io.gatling.recorder.config.RecorderPropertiesBuilder + +object Recorder extends App { + + val props = new RecorderPropertiesBuilder + props.simulationOutputFolder(IDEPathHelper.recorderOutputDirectory.toString) + props.simulationPackage("org.baeldung") + props.bodiesFolder(IDEPathHelper.bodiesDirectory.toString) + + GatlingRecorder.fromMap(props.build, Some(IDEPathHelper.recorderConfigFile)) +} diff --git a/gatling-loadtest-demo/src/test/scala/org/baeldung/RecordedSimulation.scala b/gatling-loadtest-demo/src/test/scala/org/baeldung/RecordedSimulation.scala new file mode 100644 index 0000000000..553e17e56f --- /dev/null +++ b/gatling-loadtest-demo/src/test/scala/org/baeldung/RecordedSimulation.scala @@ -0,0 +1,46 @@ +package org.baeldung + +import scala.concurrent.duration._ + +import io.gatling.core.Predef._ +import io.gatling.http.Predef._ +import io.gatling.jdbc.Predef._ + +class RecordedSimulation extends Simulation { + + val httpProtocol = http + .baseURL("http://computer-database.gatling.io") + .inferHtmlResources(BlackList(""".*\.css""", """.*\.js""", """.*\.ico"""), WhiteList()) + .acceptHeader("text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8") + .acceptEncodingHeader("gzip, deflate") + .acceptLanguageHeader("it-IT,it;q=0.8,en-US;q=0.5,en;q=0.3") + .userAgentHeader("Mozilla/5.0 (Windows NT 10.0; WOW64; rv:46.0) Gecko/20100101 Firefox/46.0") + + + + + + val scn = scenario("RecordedSimulation") + .exec(http("request_0") + .get("/")) + .pause(5) + .exec(http("request_1") + .get("/computers?f=amstrad")) + .pause(4) + .exec(http("request_2") + .get("/computers/412")) + .pause(2) + .exec(http("request_3") + .get("/")) + .pause(2) + .exec(http("request_4") + .get("/computers?p=1")) + .pause(1) + .exec(http("request_5") + .get("/computers?p=2")) + .pause(2) + .exec(http("request_6") + .get("/computers?p=3")) + + setUp(scn.inject(atOnceUsers(1))).protocols(httpProtocol) +} \ No newline at end of file From db9ecdb2392f5a7f4bc300be063a5c970644b1a5 Mon Sep 17 00:00:00 2001 From: Thai Nguyen Date: Sun, 29 May 2016 14:02:06 +0700 Subject: [PATCH 03/26] introduction to wiremock --- .../wiremock/introduction/JUnitManaged.java | 96 ++++++++++++++++--- 1 file changed, 85 insertions(+), 11 deletions(-) diff --git a/rest-testing/src/test/java/com/baeldung/rest/wiremock/introduction/JUnitManaged.java b/rest-testing/src/test/java/com/baeldung/rest/wiremock/introduction/JUnitManaged.java index 9fef6017c1..6f1ad640cb 100644 --- a/rest-testing/src/test/java/com/baeldung/rest/wiremock/introduction/JUnitManaged.java +++ b/rest-testing/src/test/java/com/baeldung/rest/wiremock/introduction/JUnitManaged.java @@ -1,12 +1,17 @@ package com.baeldung.rest.wiremock.introduction; import static com.github.tomakehurst.wiremock.client.WireMock.aResponse; -import static com.github.tomakehurst.wiremock.client.WireMock.configureFor; +import static com.github.tomakehurst.wiremock.client.WireMock.equalTo; import static com.github.tomakehurst.wiremock.client.WireMock.get; import static com.github.tomakehurst.wiremock.client.WireMock.getRequestedFor; +import static com.github.tomakehurst.wiremock.client.WireMock.post; +import static com.github.tomakehurst.wiremock.client.WireMock.postRequestedFor; import static com.github.tomakehurst.wiremock.client.WireMock.stubFor; import static com.github.tomakehurst.wiremock.client.WireMock.urlEqualTo; +import static com.github.tomakehurst.wiremock.client.WireMock.urlPathEqualTo; import static com.github.tomakehurst.wiremock.client.WireMock.urlPathMatching; +import static com.github.tomakehurst.wiremock.client.WireMock.matching; +import static com.github.tomakehurst.wiremock.client.WireMock.containing; import static com.github.tomakehurst.wiremock.client.WireMock.verify; import static org.junit.Assert.assertEquals; @@ -16,6 +21,8 @@ import java.util.Scanner; import org.apache.http.HttpResponse; import org.apache.http.client.methods.HttpGet; +import org.apache.http.client.methods.HttpPost; +import org.apache.http.entity.StringEntity; import org.apache.http.impl.client.CloseableHttpClient; import org.apache.http.impl.client.HttpClients; import org.junit.Rule; @@ -28,14 +35,13 @@ public class JUnitManaged { public WireMockRule wireMockRule = new WireMockRule(); @Test - public void givenJUnitManagedServer_whenStubbingURL_thenCorrect() throws IOException { - configureFor("localhost", 8080); + public void givenJUnitManagedServer_whenMatchingURL_thenCorrect() throws IOException { stubFor(get(urlPathMatching("/baeldung/.*")).willReturn(aResponse().withStatus(200).withHeader("Content-Type", "application/json").withBody("\"testing-library\": \"WireMock\""))); CloseableHttpClient httpClient = HttpClients.createDefault(); HttpGet request = new HttpGet("http://localhost:8080/baeldung/wiremock"); HttpResponse httpResponse = httpClient.execute(request); - String stringResponse = convertResponseToString(httpResponse); + String stringResponse = convertHttpResponseToString(httpResponse); verify(getRequestedFor(urlEqualTo("/baeldung/wiremock"))); assertEquals(200, httpResponse.getStatusLine().getStatusCode()); @@ -43,11 +49,79 @@ public class JUnitManaged { assertEquals("\"testing-library\": \"WireMock\"", stringResponse); } - private String convertResponseToString(HttpResponse response) throws IOException { - InputStream responseStream = response.getEntity().getContent(); - Scanner scanner = new Scanner(responseStream, "UTF-8"); - String stringResponse = scanner.useDelimiter("\\Z").next(); - scanner.close(); - return stringResponse; + @Test + public void givenJUnitManagedServer_whenMatchingHeaders_thenCorrect() throws IOException { + stubFor(get(urlPathEqualTo("/baeldung/wiremock")).withHeader("Accept", matching("text/.*")).willReturn(aResponse().withStatus(503).withBody("!!! Service Unavailable !!!"))); + + CloseableHttpClient httpClient = HttpClients.createDefault(); + HttpGet request = new HttpGet("http://localhost:8080/baeldung/wiremock"); + request.addHeader("Accept", "text/xml"); + HttpResponse httpResponse = httpClient.execute(request); + String stringResponse = convertHttpResponseToString(httpResponse); + + verify(getRequestedFor(urlEqualTo("/baeldung/wiremock"))); + assertEquals(503, httpResponse.getStatusLine().getStatusCode()); + assertEquals("!!! Service Unavailable !!!", stringResponse); } -} + + // @Test + public void givenJUnitManagedServer_whenMatchingBody_thenCorrect() throws IOException { + stubFor(post(urlEqualTo("/baeldung/wiremock")).withHeader("Content-Type", equalTo("application/json")).withRequestBody(containing("\"testing-library\": \"WireMock\"")).withRequestBody(containing("\"creator\": \"Tom Akehurst\"")) + .withRequestBody(containing("\"website\": \"wiremock.org\"")).willReturn(aResponse().withStatus(200))); + + InputStream jsonInputStream = this.getClass().getClassLoader().getResourceAsStream("wiremock_intro.json"); + String jsonString = convertInputStreamToString(jsonInputStream); + StringEntity entity = new StringEntity(jsonString); + + CloseableHttpClient httpClient = HttpClients.createDefault(); + HttpPost request = new HttpPost("http://localhost:8080/baeldung/wiremock"); + + request.addHeader("Content-Type", "application/json"); + request.setEntity(entity); + HttpResponse response = httpClient.execute(request); + + assertEquals(200, response.getStatusLine().getStatusCode()); + verify(postRequestedFor(urlEqualTo("/baeldung/wiremock")).withHeader("Content-Type", equalTo("application/json"))); + } + + @Test + public void givenJUnitManagedServer_whenNotUsingPriority_thenCorrect() throws IOException { + stubFor(get(urlPathMatching("/baeldung/.*")).willReturn(aResponse().withStatus(200))); + stubFor(get(urlPathEqualTo("/baeldung/wiremock")).withHeader("Accept", matching("text/.*")).willReturn(aResponse().withStatus(503))); + + HttpResponse httpResponse = generateClientAndReceiveResponseForPriorityTests(); + + verify(getRequestedFor(urlEqualTo("/baeldung/wiremock"))); + assertEquals(503, httpResponse.getStatusLine().getStatusCode()); + } + + @Test + public void givenJUnitManagedServer_whenUsingPriority_thenCorrect() throws IOException { + stubFor(get(urlPathMatching("/baeldung/.*")).atPriority(1).willReturn(aResponse().withStatus(200))); + stubFor(get(urlPathEqualTo("/baeldung/wiremock")).atPriority(2).withHeader("Accept", matching("text/.*")).willReturn(aResponse().withStatus(503))); + + HttpResponse httpResponse = generateClientAndReceiveResponseForPriorityTests(); + + verify(getRequestedFor(urlEqualTo("/baeldung/wiremock"))); + assertEquals(200, httpResponse.getStatusLine().getStatusCode()); + } + + private String convertHttpResponseToString(HttpResponse httpResponse) throws IOException { + InputStream inputStream = httpResponse.getEntity().getContent(); + return convertInputStreamToString(inputStream); + } + + private String convertInputStreamToString(InputStream inputStream) { + Scanner scanner = new Scanner(inputStream, "UTF-8"); + String string = scanner.useDelimiter("\\Z").next(); + scanner.close(); + return string; + } + + private HttpResponse generateClientAndReceiveResponseForPriorityTests() throws IOException { + CloseableHttpClient httpClient = HttpClients.createDefault(); + HttpGet request = new HttpGet("http://localhost:8080/baeldung/wiremock"); + request.addHeader("Accept", "text/xml"); + return httpClient.execute(request); + } +} \ No newline at end of file From 1cf09ba2a8b8f0d14b3c218b66af54f43dd5cccd Mon Sep 17 00:00:00 2001 From: Thai Nguyen Date: Sun, 29 May 2016 23:48:59 +0700 Subject: [PATCH 04/26] minor fixes --- .../rest/wiremock/introduction/JUnitManaged.java | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/rest-testing/src/test/java/com/baeldung/rest/wiremock/introduction/JUnitManaged.java b/rest-testing/src/test/java/com/baeldung/rest/wiremock/introduction/JUnitManaged.java index 6f1ad640cb..f6a46256ac 100644 --- a/rest-testing/src/test/java/com/baeldung/rest/wiremock/introduction/JUnitManaged.java +++ b/rest-testing/src/test/java/com/baeldung/rest/wiremock/introduction/JUnitManaged.java @@ -51,20 +51,21 @@ public class JUnitManaged { @Test public void givenJUnitManagedServer_whenMatchingHeaders_thenCorrect() throws IOException { - stubFor(get(urlPathEqualTo("/baeldung/wiremock")).withHeader("Accept", matching("text/.*")).willReturn(aResponse().withStatus(503).withBody("!!! Service Unavailable !!!"))); + stubFor(get(urlPathEqualTo("/baeldung/wiremock")).withHeader("Accept", matching("text/.*")).willReturn(aResponse().withStatus(503).withHeader("Content-Type", "text/html").withBody("!!! Service Unavailable !!!"))); CloseableHttpClient httpClient = HttpClients.createDefault(); HttpGet request = new HttpGet("http://localhost:8080/baeldung/wiremock"); - request.addHeader("Accept", "text/xml"); + request.addHeader("Accept", "text/html"); HttpResponse httpResponse = httpClient.execute(request); String stringResponse = convertHttpResponseToString(httpResponse); verify(getRequestedFor(urlEqualTo("/baeldung/wiremock"))); assertEquals(503, httpResponse.getStatusLine().getStatusCode()); + assertEquals("text/html", httpResponse.getFirstHeader("Content-Type").getValue()); assertEquals("!!! Service Unavailable !!!", stringResponse); } - // @Test + @Test public void givenJUnitManagedServer_whenMatchingBody_thenCorrect() throws IOException { stubFor(post(urlEqualTo("/baeldung/wiremock")).withHeader("Content-Type", equalTo("application/json")).withRequestBody(containing("\"testing-library\": \"WireMock\"")).withRequestBody(containing("\"creator\": \"Tom Akehurst\"")) .withRequestBody(containing("\"website\": \"wiremock.org\"")).willReturn(aResponse().withStatus(200))); @@ -75,13 +76,12 @@ public class JUnitManaged { CloseableHttpClient httpClient = HttpClients.createDefault(); HttpPost request = new HttpPost("http://localhost:8080/baeldung/wiremock"); - request.addHeader("Content-Type", "application/json"); request.setEntity(entity); HttpResponse response = httpClient.execute(request); - assertEquals(200, response.getStatusLine().getStatusCode()); verify(postRequestedFor(urlEqualTo("/baeldung/wiremock")).withHeader("Content-Type", equalTo("application/json"))); + assertEquals(200, response.getStatusLine().getStatusCode()); } @Test From f53ac9d4a17365f652202064704b8b278c55b464 Mon Sep 17 00:00:00 2001 From: Thai Nguyen Date: Mon, 6 Jun 2016 23:19:05 +0700 Subject: [PATCH 05/26] adds the wire_mock.json file --- rest-testing/src/main/resources/wiremock_intro.json | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 rest-testing/src/main/resources/wiremock_intro.json diff --git a/rest-testing/src/main/resources/wiremock_intro.json b/rest-testing/src/main/resources/wiremock_intro.json new file mode 100644 index 0000000000..ece2d35907 --- /dev/null +++ b/rest-testing/src/main/resources/wiremock_intro.json @@ -0,0 +1,5 @@ +{ + "testing-library": "WireMock", + "creator": "Tom Akehurst", + "website": "wiremock.org" +} \ No newline at end of file From c38e6c187681113ad5403d3dcc501756538077c2 Mon Sep 17 00:00:00 2001 From: Thai Nguyen Date: Tue, 7 Jun 2016 00:22:22 +0700 Subject: [PATCH 06/26] initial commit for rest testing with cucumber --- rest-testing/pom.xml | 11 +++ .../main/resources/Feature/cucumber.feature | 10 +++ rest-testing/src/main/resources/cucumber.json | 14 ++++ .../baeldung/rest/cucumber/CucumberTest.java | 10 +++ .../rest/cucumber/StepDefinition.java | 83 +++++++++++++++++++ 5 files changed, 128 insertions(+) create mode 100644 rest-testing/src/main/resources/Feature/cucumber.feature create mode 100644 rest-testing/src/main/resources/cucumber.json create mode 100644 rest-testing/src/test/java/com/baeldung/rest/cucumber/CucumberTest.java create mode 100644 rest-testing/src/test/java/com/baeldung/rest/cucumber/StepDefinition.java diff --git a/rest-testing/pom.xml b/rest-testing/pom.xml index 3bd7efb4d5..652f2ab601 100644 --- a/rest-testing/pom.xml +++ b/rest-testing/pom.xml @@ -110,6 +110,17 @@ test + + info.cukes + cucumber-java + 1.2.4 + test + + + info.cukes + cucumber-junit + 1.2.4 + diff --git a/rest-testing/src/main/resources/Feature/cucumber.feature b/rest-testing/src/main/resources/Feature/cucumber.feature new file mode 100644 index 0000000000..99dd8249fe --- /dev/null +++ b/rest-testing/src/main/resources/Feature/cucumber.feature @@ -0,0 +1,10 @@ +Feature: Testing a REST API + Users should be able to submit GET and POST requests to a web service, represented by WireMock + + Scenario: Data Upload to a web service + When users upload data on a project + Then the server should handle it and return a success status + + Scenario: Data retrieval from a web service + When users want to get information on the Cucumber project + Then the requested data is returned \ No newline at end of file diff --git a/rest-testing/src/main/resources/cucumber.json b/rest-testing/src/main/resources/cucumber.json new file mode 100644 index 0000000000..38ebe066ac --- /dev/null +++ b/rest-testing/src/main/resources/cucumber.json @@ -0,0 +1,14 @@ +{ + "testing-framework": "cucumber", + "supported-language": + [ + "Ruby", + "Java", + "Javascript", + "PHP", + "Python", + "C++" + ], + + "website": "cucumber.io" +} \ No newline at end of file diff --git a/rest-testing/src/test/java/com/baeldung/rest/cucumber/CucumberTest.java b/rest-testing/src/test/java/com/baeldung/rest/cucumber/CucumberTest.java new file mode 100644 index 0000000000..041de592e9 --- /dev/null +++ b/rest-testing/src/test/java/com/baeldung/rest/cucumber/CucumberTest.java @@ -0,0 +1,10 @@ +package com.baeldung.rest.cucumber; + +import org.junit.runner.RunWith; +import cucumber.api.CucumberOptions; +import cucumber.api.junit.Cucumber; + +@RunWith(Cucumber.class) +@CucumberOptions(features = "classpath:Feature") +public class CucumberTest { +} \ No newline at end of file diff --git a/rest-testing/src/test/java/com/baeldung/rest/cucumber/StepDefinition.java b/rest-testing/src/test/java/com/baeldung/rest/cucumber/StepDefinition.java new file mode 100644 index 0000000000..0d72c60950 --- /dev/null +++ b/rest-testing/src/test/java/com/baeldung/rest/cucumber/StepDefinition.java @@ -0,0 +1,83 @@ +package com.baeldung.rest.cucumber; + +import static org.junit.Assert.*; +import static org.hamcrest.CoreMatchers.containsString; +import static com.github.tomakehurst.wiremock.client.WireMock.*; + +import java.io.IOException; +import java.io.InputStream; +import java.util.Scanner; + +import org.apache.http.HttpResponse; +import org.apache.http.client.methods.HttpGet; +import org.apache.http.client.methods.HttpPost; +import org.apache.http.entity.StringEntity; +import org.apache.http.impl.client.CloseableHttpClient; +import org.apache.http.impl.client.HttpClients; + +import com.github.tomakehurst.wiremock.WireMockServer; + +import cucumber.api.java.en.Then; +import cucumber.api.java.en.When; + +public class StepDefinition { + InputStream jsonInputStream = this.getClass().getClassLoader().getResourceAsStream("cucumber.json"); + String jsonString = new Scanner(jsonInputStream, "UTF-8").useDelimiter("\\Z").next(); + + WireMockServer wireMockServer = new WireMockServer(); + CloseableHttpClient httpClient = HttpClients.createDefault(); + + @When("^users upload data on a project$") + public void usersUploadDataOnAProject() throws IOException { + wireMockServer.start(); + + configureFor("localhost", 8080); + stubFor(post(urlEqualTo("/create")).withHeader("content-type", equalTo("application/json")).withRequestBody(containing("testing-framework")).willReturn(aResponse().withStatus(200))); + + HttpPost request = new HttpPost("http://localhost:8080/create"); + StringEntity entity = new StringEntity(jsonString); + request.addHeader("content-type", "application/json"); + request.setEntity(entity); + HttpResponse response = httpClient.execute(request); + + assertEquals(200, response.getStatusLine().getStatusCode()); + verify(postRequestedFor(urlEqualTo("/create")).withHeader("content-type", equalTo("application/json"))); + + wireMockServer.stop(); + } + + @When("^users want to get information on the (.+) project$") + public void usersGetInformationOnAProject(String projectName) throws IOException { + wireMockServer.start(); + + configureFor("localhost", 8080); + stubFor(get(urlEqualTo("/projects/cucumber")).withHeader("accept", equalTo("application/json")).willReturn(aResponse().withBody(jsonString))); + + HttpGet request = new HttpGet("http://localhost:8080/projects/" + projectName.toLowerCase()); + request.addHeader("accept", "application/json"); + HttpResponse httpResponse = httpClient.execute(request); + String responseString = convertResponseToString(httpResponse); + + assertThat(responseString, containsString("\"testing-framework\": \"cucumber\"")); + assertThat(responseString, containsString("\"website\": \"cucumber.io\"")); + verify(getRequestedFor(urlEqualTo("/projects/cucumber")).withHeader("accept", equalTo("application/json"))); + + wireMockServer.stop(); + } + + @Then("^the server should handle it and return a success status$") + public void theServerShouldReturnASuccessStatus() { + } + + @Then("^the requested data is returned$") + public void theRequestedDataIsReturned() { + } + + private String convertResponseToString(HttpResponse response) throws IOException { + InputStream responseStream = response.getEntity().getContent(); + Scanner scanner = new Scanner(responseStream, "UTF-8"); + String responseString = scanner.useDelimiter("\\Z").next(); + scanner.close(); + return responseString; + } +} \ No newline at end of file From aadaba033182c848c448a78c3cfa5274af5b3855 Mon Sep 17 00:00:00 2001 From: nguyennamthai Date: Tue, 7 Jun 2016 18:44:55 +0700 Subject: [PATCH 07/26] Introduction to WireMock (#437) * initial commit for wiremock * introduction to wiremock * minor fixes * adds the wire_mock.json file --- rest-testing/pom.xml | 285 +++++++++--------- .../src/main/resources/wiremock_intro.json | 5 + .../wiremock/introduction/JUnitManaged.java | 127 ++++++++ .../introduction/ProgrammaticallyManaged.java | 52 ++++ 4 files changed, 330 insertions(+), 139 deletions(-) create mode 100644 rest-testing/src/main/resources/wiremock_intro.json create mode 100644 rest-testing/src/test/java/com/baeldung/rest/wiremock/introduction/JUnitManaged.java create mode 100644 rest-testing/src/test/java/com/baeldung/rest/wiremock/introduction/ProgrammaticallyManaged.java diff --git a/rest-testing/pom.xml b/rest-testing/pom.xml index e159af0b77..3bd7efb4d5 100644 --- a/rest-testing/pom.xml +++ b/rest-testing/pom.xml @@ -1,173 +1,180 @@ - - 4.0.0 - com.baeldung - rest-testing - 0.1-SNAPSHOT + + 4.0.0 + com.baeldung + rest-testing + 0.1-SNAPSHOT - rest-testing + rest-testing - + - + - - com.google.guava - guava - ${guava.version} - + + com.google.guava + guava + ${guava.version} + - - commons-io - commons-io - 2.4 - + + commons-io + commons-io + 2.4 + - - org.apache.commons - commons-lang3 - ${commons-lang3.version} - + + org.apache.commons + commons-lang3 + ${commons-lang3.version} + - + - - org.apache.httpcomponents - httpclient - ${httpclient.version} - - - org.apache.httpcomponents - httpcore - ${httpcore.version} - + + org.apache.httpcomponents + httpclient + ${httpclient.version} + + + org.apache.httpcomponents + httpcore + ${httpcore.version} + - + - - com.fasterxml.jackson.core - jackson-databind - ${jackson.version} - + + com.fasterxml.jackson.core + jackson-databind + ${jackson.version} + - + - - org.slf4j - slf4j-api - ${org.slf4j.version} - - - ch.qos.logback - logback-classic - ${logback.version} - - - - org.slf4j - jcl-over-slf4j - ${org.slf4j.version} - runtime - - - org.slf4j - log4j-over-slf4j - ${org.slf4j.version} - + + org.slf4j + slf4j-api + ${org.slf4j.version} + + + ch.qos.logback + logback-classic + ${logback.version} + + + + org.slf4j + jcl-over-slf4j + ${org.slf4j.version} + runtime + + + org.slf4j + log4j-over-slf4j + ${org.slf4j.version} + - + - - junit - junit - ${junit.version} - test - + + junit + junit + ${junit.version} + test + - - org.hamcrest - hamcrest-core - ${org.hamcrest.version} - test - - - org.hamcrest - hamcrest-library - ${org.hamcrest.version} - test - + + org.hamcrest + hamcrest-core + ${org.hamcrest.version} + test + + + org.hamcrest + hamcrest-library + ${org.hamcrest.version} + test + - - org.mockito - mockito-core - ${mockito.version} - test - + + org.mockito + mockito-core + ${mockito.version} + test + + + com.github.tomakehurst + wiremock + 1.58 + test + - + - - rest-testing - - - src/main/resources - true - - + + rest-testing + + + src/main/resources + true + + - + - - org.apache.maven.plugins - maven-compiler-plugin - ${maven-compiler-plugin.version} - - 1.8 - 1.8 - - + + org.apache.maven.plugins + maven-compiler-plugin + ${maven-compiler-plugin.version} + + 1.8 + 1.8 + + - - org.apache.maven.plugins - maven-surefire-plugin - ${maven-surefire-plugin.version} - + + org.apache.maven.plugins + maven-surefire-plugin + ${maven-surefire-plugin.version} + - + - + - - - 2.7.2 + + + 2.7.2 - - 1.7.13 - 1.1.3 + + 1.7.13 + 1.1.3 - - 5.1.3.Final + + 5.1.3.Final - - 19.0 - 3.4 + + 19.0 + 3.4 - - 1.3 - 4.12 - 1.10.19 + + 1.3 + 4.12 + 1.10.19 - 4.4.1 - 4.5 + 4.4.1 + 4.5 - 2.9.0 + 2.9.0 - - 3.5.1 - 2.6 - 2.19.1 - 2.7 - 1.4.18 + + 3.5.1 + 2.6 + 2.19.1 + 2.7 + 1.4.18 - + \ No newline at end of file diff --git a/rest-testing/src/main/resources/wiremock_intro.json b/rest-testing/src/main/resources/wiremock_intro.json new file mode 100644 index 0000000000..ece2d35907 --- /dev/null +++ b/rest-testing/src/main/resources/wiremock_intro.json @@ -0,0 +1,5 @@ +{ + "testing-library": "WireMock", + "creator": "Tom Akehurst", + "website": "wiremock.org" +} \ No newline at end of file diff --git a/rest-testing/src/test/java/com/baeldung/rest/wiremock/introduction/JUnitManaged.java b/rest-testing/src/test/java/com/baeldung/rest/wiremock/introduction/JUnitManaged.java new file mode 100644 index 0000000000..f6a46256ac --- /dev/null +++ b/rest-testing/src/test/java/com/baeldung/rest/wiremock/introduction/JUnitManaged.java @@ -0,0 +1,127 @@ +package com.baeldung.rest.wiremock.introduction; + +import static com.github.tomakehurst.wiremock.client.WireMock.aResponse; +import static com.github.tomakehurst.wiremock.client.WireMock.equalTo; +import static com.github.tomakehurst.wiremock.client.WireMock.get; +import static com.github.tomakehurst.wiremock.client.WireMock.getRequestedFor; +import static com.github.tomakehurst.wiremock.client.WireMock.post; +import static com.github.tomakehurst.wiremock.client.WireMock.postRequestedFor; +import static com.github.tomakehurst.wiremock.client.WireMock.stubFor; +import static com.github.tomakehurst.wiremock.client.WireMock.urlEqualTo; +import static com.github.tomakehurst.wiremock.client.WireMock.urlPathEqualTo; +import static com.github.tomakehurst.wiremock.client.WireMock.urlPathMatching; +import static com.github.tomakehurst.wiremock.client.WireMock.matching; +import static com.github.tomakehurst.wiremock.client.WireMock.containing; +import static com.github.tomakehurst.wiremock.client.WireMock.verify; +import static org.junit.Assert.assertEquals; + +import java.io.IOException; +import java.io.InputStream; +import java.util.Scanner; + +import org.apache.http.HttpResponse; +import org.apache.http.client.methods.HttpGet; +import org.apache.http.client.methods.HttpPost; +import org.apache.http.entity.StringEntity; +import org.apache.http.impl.client.CloseableHttpClient; +import org.apache.http.impl.client.HttpClients; +import org.junit.Rule; +import org.junit.Test; + +import com.github.tomakehurst.wiremock.junit.WireMockRule; + +public class JUnitManaged { + @Rule + public WireMockRule wireMockRule = new WireMockRule(); + + @Test + public void givenJUnitManagedServer_whenMatchingURL_thenCorrect() throws IOException { + stubFor(get(urlPathMatching("/baeldung/.*")).willReturn(aResponse().withStatus(200).withHeader("Content-Type", "application/json").withBody("\"testing-library\": \"WireMock\""))); + + CloseableHttpClient httpClient = HttpClients.createDefault(); + HttpGet request = new HttpGet("http://localhost:8080/baeldung/wiremock"); + HttpResponse httpResponse = httpClient.execute(request); + String stringResponse = convertHttpResponseToString(httpResponse); + + verify(getRequestedFor(urlEqualTo("/baeldung/wiremock"))); + assertEquals(200, httpResponse.getStatusLine().getStatusCode()); + assertEquals("application/json", httpResponse.getFirstHeader("Content-Type").getValue()); + assertEquals("\"testing-library\": \"WireMock\"", stringResponse); + } + + @Test + public void givenJUnitManagedServer_whenMatchingHeaders_thenCorrect() throws IOException { + stubFor(get(urlPathEqualTo("/baeldung/wiremock")).withHeader("Accept", matching("text/.*")).willReturn(aResponse().withStatus(503).withHeader("Content-Type", "text/html").withBody("!!! Service Unavailable !!!"))); + + CloseableHttpClient httpClient = HttpClients.createDefault(); + HttpGet request = new HttpGet("http://localhost:8080/baeldung/wiremock"); + request.addHeader("Accept", "text/html"); + HttpResponse httpResponse = httpClient.execute(request); + String stringResponse = convertHttpResponseToString(httpResponse); + + verify(getRequestedFor(urlEqualTo("/baeldung/wiremock"))); + assertEquals(503, httpResponse.getStatusLine().getStatusCode()); + assertEquals("text/html", httpResponse.getFirstHeader("Content-Type").getValue()); + assertEquals("!!! Service Unavailable !!!", stringResponse); + } + + @Test + public void givenJUnitManagedServer_whenMatchingBody_thenCorrect() throws IOException { + stubFor(post(urlEqualTo("/baeldung/wiremock")).withHeader("Content-Type", equalTo("application/json")).withRequestBody(containing("\"testing-library\": \"WireMock\"")).withRequestBody(containing("\"creator\": \"Tom Akehurst\"")) + .withRequestBody(containing("\"website\": \"wiremock.org\"")).willReturn(aResponse().withStatus(200))); + + InputStream jsonInputStream = this.getClass().getClassLoader().getResourceAsStream("wiremock_intro.json"); + String jsonString = convertInputStreamToString(jsonInputStream); + StringEntity entity = new StringEntity(jsonString); + + CloseableHttpClient httpClient = HttpClients.createDefault(); + HttpPost request = new HttpPost("http://localhost:8080/baeldung/wiremock"); + request.addHeader("Content-Type", "application/json"); + request.setEntity(entity); + HttpResponse response = httpClient.execute(request); + + verify(postRequestedFor(urlEqualTo("/baeldung/wiremock")).withHeader("Content-Type", equalTo("application/json"))); + assertEquals(200, response.getStatusLine().getStatusCode()); + } + + @Test + public void givenJUnitManagedServer_whenNotUsingPriority_thenCorrect() throws IOException { + stubFor(get(urlPathMatching("/baeldung/.*")).willReturn(aResponse().withStatus(200))); + stubFor(get(urlPathEqualTo("/baeldung/wiremock")).withHeader("Accept", matching("text/.*")).willReturn(aResponse().withStatus(503))); + + HttpResponse httpResponse = generateClientAndReceiveResponseForPriorityTests(); + + verify(getRequestedFor(urlEqualTo("/baeldung/wiremock"))); + assertEquals(503, httpResponse.getStatusLine().getStatusCode()); + } + + @Test + public void givenJUnitManagedServer_whenUsingPriority_thenCorrect() throws IOException { + stubFor(get(urlPathMatching("/baeldung/.*")).atPriority(1).willReturn(aResponse().withStatus(200))); + stubFor(get(urlPathEqualTo("/baeldung/wiremock")).atPriority(2).withHeader("Accept", matching("text/.*")).willReturn(aResponse().withStatus(503))); + + HttpResponse httpResponse = generateClientAndReceiveResponseForPriorityTests(); + + verify(getRequestedFor(urlEqualTo("/baeldung/wiremock"))); + assertEquals(200, httpResponse.getStatusLine().getStatusCode()); + } + + private String convertHttpResponseToString(HttpResponse httpResponse) throws IOException { + InputStream inputStream = httpResponse.getEntity().getContent(); + return convertInputStreamToString(inputStream); + } + + private String convertInputStreamToString(InputStream inputStream) { + Scanner scanner = new Scanner(inputStream, "UTF-8"); + String string = scanner.useDelimiter("\\Z").next(); + scanner.close(); + return string; + } + + private HttpResponse generateClientAndReceiveResponseForPriorityTests() throws IOException { + CloseableHttpClient httpClient = HttpClients.createDefault(); + HttpGet request = new HttpGet("http://localhost:8080/baeldung/wiremock"); + request.addHeader("Accept", "text/xml"); + return httpClient.execute(request); + } +} \ No newline at end of file diff --git a/rest-testing/src/test/java/com/baeldung/rest/wiremock/introduction/ProgrammaticallyManaged.java b/rest-testing/src/test/java/com/baeldung/rest/wiremock/introduction/ProgrammaticallyManaged.java new file mode 100644 index 0000000000..34b445ac0f --- /dev/null +++ b/rest-testing/src/test/java/com/baeldung/rest/wiremock/introduction/ProgrammaticallyManaged.java @@ -0,0 +1,52 @@ +package com.baeldung.rest.wiremock.introduction; + +import static com.github.tomakehurst.wiremock.client.WireMock.aResponse; +import static com.github.tomakehurst.wiremock.client.WireMock.configureFor; +import static com.github.tomakehurst.wiremock.client.WireMock.get; +import static com.github.tomakehurst.wiremock.client.WireMock.getRequestedFor; +import static com.github.tomakehurst.wiremock.client.WireMock.stubFor; +import static com.github.tomakehurst.wiremock.client.WireMock.urlEqualTo; +import static com.github.tomakehurst.wiremock.client.WireMock.verify; +import static org.junit.Assert.assertEquals; + +import java.io.IOException; +import java.io.InputStream; +import java.util.Scanner; + +import org.apache.http.HttpResponse; +import org.apache.http.client.methods.HttpGet; +import org.apache.http.impl.client.CloseableHttpClient; +import org.apache.http.impl.client.HttpClients; +import org.junit.Test; + +import com.github.tomakehurst.wiremock.WireMockServer; + +public class ProgrammaticallyManaged { + WireMockServer wireMockServer = new WireMockServer(); + CloseableHttpClient httpClient = HttpClients.createDefault(); + + @Test + public void givenProgrammaticallyManagedServer_whenUsingSimpleStubbing_thenCorrect() throws IOException { + wireMockServer.start(); + + configureFor("localhost", 8080); + stubFor(get(urlEqualTo("/baeldung")).willReturn(aResponse().withBody("Welcome to Baeldung!"))); + + HttpGet request = new HttpGet("http://localhost:8080/baeldung"); + HttpResponse httpResponse = httpClient.execute(request); + String stringResponse = convertResponseToString(httpResponse); + + verify(getRequestedFor(urlEqualTo("/baeldung"))); + assertEquals("Welcome to Baeldung!", stringResponse); + + wireMockServer.stop(); + } + + private String convertResponseToString(HttpResponse response) throws IOException { + InputStream responseStream = response.getEntity().getContent(); + Scanner scanner = new Scanner(responseStream, "UTF-8"); + String stringResponse = scanner.useDelimiter("\\Z").next(); + scanner.close(); + return stringResponse; + } +} \ No newline at end of file From 04c942f5d0b73cb7961bcbc4b606bd2ce6b3a3d5 Mon Sep 17 00:00:00 2001 From: nguyennamthai Date: Tue, 7 Jun 2016 22:21:06 +0700 Subject: [PATCH 08/26] Spring Boot Support for jOOQ (#438) * initial commit * revision of spring boot support for jooq * initial commit for spring boot support for jooq --- jooq-spring/pom.xml | 20 +- .../information_schema/InformationSchema.java | 113 +++ .../db/information_schema/Keys.java | 42 + .../db/information_schema/Tables.java | 196 ++++ .../information_schema/tables/Catalogs.java | 87 ++ .../information_schema/tables/Collations.java | 92 ++ .../tables/ColumnPrivileges.java | 122 +++ .../db/information_schema/tables/Columns.java | 197 ++++ .../information_schema/tables/Constants.java | 117 +++ .../tables/Constraints.java | 147 +++ .../tables/CrossReferences.java | 152 +++ .../db/information_schema/tables/Domains.java | 152 +++ .../tables/FunctionAliases.java | 142 +++ .../tables/FunctionColumns.java | 167 ++++ .../db/information_schema/tables/Help.java | 107 ++ .../db/information_schema/tables/InDoubt.java | 92 ++ .../db/information_schema/tables/Indexes.java | 187 ++++ .../db/information_schema/tables/Locks.java | 102 ++ .../tables/QueryStatistics.java | 142 +++ .../db/information_schema/tables/Rights.java | 117 +++ .../db/information_schema/tables/Roles.java | 97 ++ .../information_schema/tables/Schemata.java | 122 +++ .../information_schema/tables/Sequences.java | 142 +++ .../tables/SessionState.java | 92 ++ .../information_schema/tables/Sessions.java | 112 +++ .../information_schema/tables/Settings.java | 92 ++ .../tables/TablePrivileges.java | 117 +++ .../information_schema/tables/TableTypes.java | 87 ++ .../db/information_schema/tables/Tables.java | 142 +++ .../information_schema/tables/Triggers.java | 152 +++ .../information_schema/tables/TypeInfo.java | 152 +++ .../db/information_schema/tables/Users.java | 102 ++ .../db/information_schema/tables/Views.java | 127 +++ .../tables/records/CatalogsRecord.java | 119 +++ .../tables/records/CollationsRecord.java | 160 +++ .../records/ColumnPrivilegesRecord.java | 406 ++++++++ .../tables/records/ColumnsRecord.java | 392 ++++++++ .../tables/records/ConstantsRecord.java | 365 +++++++ .../tables/records/ConstraintsRecord.java | 611 ++++++++++++ .../tables/records/CrossReferencesRecord.java | 652 ++++++++++++ .../tables/records/DomainsRecord.java | 652 ++++++++++++ .../tables/records/FunctionAliasesRecord.java | 570 +++++++++++ .../tables/records/FunctionColumnsRecord.java | 775 +++++++++++++++ .../tables/records/HelpRecord.java | 283 ++++++ .../tables/records/InDoubtRecord.java | 160 +++ .../tables/records/IndexesRecord.java | 939 ++++++++++++++++++ .../tables/records/LocksRecord.java | 242 +++++ .../tables/records/QueryStatisticsRecord.java | 570 +++++++++++ .../tables/records/RightsRecord.java | 365 +++++++ .../tables/records/RolesRecord.java | 201 ++++ .../tables/records/SchemataRecord.java | 406 ++++++++ .../tables/records/SequencesRecord.java | 570 +++++++++++ .../tables/records/SessionStateRecord.java | 160 +++ .../tables/records/SessionsRecord.java | 324 ++++++ .../tables/records/SettingsRecord.java | 160 +++ .../tables/records/TablePrivilegesRecord.java | 365 +++++++ .../tables/records/TableTypesRecord.java | 119 +++ .../tables/records/TablesRecord.java | 570 +++++++++++ .../tables/records/TriggersRecord.java | 652 ++++++++++++ .../tables/records/TypeInfoRecord.java | 652 ++++++++++++ .../tables/records/UsersRecord.java | 242 +++++ .../tables/records/ViewsRecord.java | 447 +++++++++ .../jooq/introduction/db/public_/Keys.java | 69 ++ .../jooq/introduction/db/public_/Public.java | 61 ++ .../jooq/introduction/db/public_/Tables.java | 41 + .../db/public_/tables/Author.java | 118 +++ .../db/public_/tables/AuthorBook.java | 122 +++ .../introduction/db/public_/tables/Book.java | 113 +++ .../tables/records/AuthorBookRecord.java | 172 ++++ .../public_/tables/records/AuthorRecord.java | 214 ++++ .../db/public_/tables/records/BookRecord.java | 173 ++++ .../src/main/resources/application.properties | 3 + .../baeldung/jooq/springboot/Application.java | 68 ++ .../jooq/springboot/SpringBootTest.java | 85 ++ 74 files changed, 17396 insertions(+), 1 deletion(-) create mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/InformationSchema.java create mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/Keys.java create mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/Tables.java create mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Catalogs.java create mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Collations.java create mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/ColumnPrivileges.java create mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Columns.java create mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Constants.java create mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Constraints.java create mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/CrossReferences.java create mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Domains.java create mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/FunctionAliases.java create mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/FunctionColumns.java create mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Help.java create mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/InDoubt.java create mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Indexes.java create mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Locks.java create mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/QueryStatistics.java create mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Rights.java create mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Roles.java create mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Schemata.java create mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Sequences.java create mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/SessionState.java create mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Sessions.java create mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Settings.java create mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/TablePrivileges.java create mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/TableTypes.java create mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Tables.java create mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Triggers.java create mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/TypeInfo.java create mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Users.java create mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Views.java create mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/CatalogsRecord.java create mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/CollationsRecord.java create mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/ColumnPrivilegesRecord.java create mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/ColumnsRecord.java create mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/ConstantsRecord.java create mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/ConstraintsRecord.java create mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/CrossReferencesRecord.java create mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/DomainsRecord.java create mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/FunctionAliasesRecord.java create mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/FunctionColumnsRecord.java create mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/HelpRecord.java create mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/InDoubtRecord.java create mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/IndexesRecord.java create mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/LocksRecord.java create mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/QueryStatisticsRecord.java create mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/RightsRecord.java create mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/RolesRecord.java create mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/SchemataRecord.java create mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/SequencesRecord.java create mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/SessionStateRecord.java create mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/SessionsRecord.java create mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/SettingsRecord.java create mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/TablePrivilegesRecord.java create mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/TableTypesRecord.java create mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/TablesRecord.java create mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/TriggersRecord.java create mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/TypeInfoRecord.java create mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/UsersRecord.java create mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/ViewsRecord.java create mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/public_/Keys.java create mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/public_/Public.java create mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/public_/Tables.java create mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/public_/tables/Author.java create mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/public_/tables/AuthorBook.java create mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/public_/tables/Book.java create mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/public_/tables/records/AuthorBookRecord.java create mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/public_/tables/records/AuthorRecord.java create mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/public_/tables/records/BookRecord.java create mode 100644 jooq-spring/src/main/resources/application.properties create mode 100644 jooq-spring/src/test/java/com/baeldung/jooq/springboot/Application.java create mode 100644 jooq-spring/src/test/java/com/baeldung/jooq/springboot/SpringBootTest.java diff --git a/jooq-spring/pom.xml b/jooq-spring/pom.xml index 76198c4993..7a3ec0ac24 100644 --- a/jooq-spring/pom.xml +++ b/jooq-spring/pom.xml @@ -14,6 +14,19 @@ 4.12 + + + + + org.springframework.boot + spring-boot-dependencies + 1.3.3.RELEASE + pom + import + + + + @@ -40,6 +53,11 @@ spring-jdbc ${org.springframework.version} + + org.springframework.boot + spring-boot-starter-jooq + 1.3.3.RELEASE + @@ -67,7 +85,7 @@ spring-test ${org.springframework.version} test - + diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/InformationSchema.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/InformationSchema.java new file mode 100644 index 0000000000..94138a9ebe --- /dev/null +++ b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/InformationSchema.java @@ -0,0 +1,113 @@ +/** + * This class is generated by jOOQ + */ +package com.baeldung.jooq.introduction.db.information_schema; + + +import com.baeldung.jooq.introduction.db.information_schema.tables.Catalogs; +import com.baeldung.jooq.introduction.db.information_schema.tables.Collations; +import com.baeldung.jooq.introduction.db.information_schema.tables.ColumnPrivileges; +import com.baeldung.jooq.introduction.db.information_schema.tables.Columns; +import com.baeldung.jooq.introduction.db.information_schema.tables.Constants; +import com.baeldung.jooq.introduction.db.information_schema.tables.Constraints; +import com.baeldung.jooq.introduction.db.information_schema.tables.CrossReferences; +import com.baeldung.jooq.introduction.db.information_schema.tables.Domains; +import com.baeldung.jooq.introduction.db.information_schema.tables.FunctionAliases; +import com.baeldung.jooq.introduction.db.information_schema.tables.FunctionColumns; +import com.baeldung.jooq.introduction.db.information_schema.tables.Help; +import com.baeldung.jooq.introduction.db.information_schema.tables.InDoubt; +import com.baeldung.jooq.introduction.db.information_schema.tables.Indexes; +import com.baeldung.jooq.introduction.db.information_schema.tables.Locks; +import com.baeldung.jooq.introduction.db.information_schema.tables.QueryStatistics; +import com.baeldung.jooq.introduction.db.information_schema.tables.Rights; +import com.baeldung.jooq.introduction.db.information_schema.tables.Roles; +import com.baeldung.jooq.introduction.db.information_schema.tables.Schemata; +import com.baeldung.jooq.introduction.db.information_schema.tables.Sequences; +import com.baeldung.jooq.introduction.db.information_schema.tables.SessionState; +import com.baeldung.jooq.introduction.db.information_schema.tables.Sessions; +import com.baeldung.jooq.introduction.db.information_schema.tables.Settings; +import com.baeldung.jooq.introduction.db.information_schema.tables.TablePrivileges; +import com.baeldung.jooq.introduction.db.information_schema.tables.TableTypes; +import com.baeldung.jooq.introduction.db.information_schema.tables.Tables; +import com.baeldung.jooq.introduction.db.information_schema.tables.Triggers; +import com.baeldung.jooq.introduction.db.information_schema.tables.TypeInfo; +import com.baeldung.jooq.introduction.db.information_schema.tables.Users; +import com.baeldung.jooq.introduction.db.information_schema.tables.Views; + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; + +import javax.annotation.Generated; + +import org.jooq.Table; +import org.jooq.impl.SchemaImpl; + + +/** + * This class is generated by jOOQ. + */ +@Generated( + value = { + "http://www.jooq.org", + "jOOQ version:3.7.3" + }, + comments = "This class is generated by jOOQ" +) +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class InformationSchema extends SchemaImpl { + + private static final long serialVersionUID = 436617961; + + /** + * The reference instance of INFORMATION_SCHEMA + */ + public static final InformationSchema INFORMATION_SCHEMA = new InformationSchema(); + + /** + * No further instances allowed + */ + private InformationSchema() { + super("INFORMATION_SCHEMA"); + } + + @Override + public final List> getTables() { + List result = new ArrayList(); + result.addAll(getTables0()); + return result; + } + + private final List> getTables0() { + return Arrays.>asList( + QueryStatistics.QUERY_STATISTICS, + SessionState.SESSION_STATE, + Locks.LOCKS, + Sessions.SESSIONS, + Triggers.TRIGGERS, + Domains.DOMAINS, + Constants.CONSTANTS, + FunctionColumns.FUNCTION_COLUMNS, + Constraints.CONSTRAINTS, + CrossReferences.CROSS_REFERENCES, + InDoubt.IN_DOUBT, + Views.VIEWS, + Collations.COLLATIONS, + ColumnPrivileges.COLUMN_PRIVILEGES, + TablePrivileges.TABLE_PRIVILEGES, + Schemata.SCHEMATA, + FunctionAliases.FUNCTION_ALIASES, + Rights.RIGHTS, + Roles.ROLES, + Users.USERS, + Sequences.SEQUENCES, + Help.HELP, + Settings.SETTINGS, + Catalogs.CATALOGS, + TypeInfo.TYPE_INFO, + TableTypes.TABLE_TYPES, + Indexes.INDEXES, + Columns.COLUMNS, + Tables.TABLES); + } +} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/Keys.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/Keys.java new file mode 100644 index 0000000000..87a1a03e55 --- /dev/null +++ b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/Keys.java @@ -0,0 +1,42 @@ +/** + * This class is generated by jOOQ + */ +package com.baeldung.jooq.introduction.db.information_schema; + + +import javax.annotation.Generated; + + +/** + * A class modelling foreign key relationships between tables of the INFORMATION_SCHEMA + * schema + */ +@Generated( + value = { + "http://www.jooq.org", + "jOOQ version:3.7.3" + }, + comments = "This class is generated by jOOQ" +) +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class Keys { + + // ------------------------------------------------------------------------- + // IDENTITY definitions + // ------------------------------------------------------------------------- + + + // ------------------------------------------------------------------------- + // UNIQUE and PRIMARY KEY definitions + // ------------------------------------------------------------------------- + + + // ------------------------------------------------------------------------- + // FOREIGN KEY definitions + // ------------------------------------------------------------------------- + + + // ------------------------------------------------------------------------- + // [#1459] distribute members to avoid static initialisers > 64kb + // ------------------------------------------------------------------------- +} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/Tables.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/Tables.java new file mode 100644 index 0000000000..9d66776232 --- /dev/null +++ b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/Tables.java @@ -0,0 +1,196 @@ +/** + * This class is generated by jOOQ + */ +package com.baeldung.jooq.introduction.db.information_schema; + + +import com.baeldung.jooq.introduction.db.information_schema.tables.Catalogs; +import com.baeldung.jooq.introduction.db.information_schema.tables.Collations; +import com.baeldung.jooq.introduction.db.information_schema.tables.ColumnPrivileges; +import com.baeldung.jooq.introduction.db.information_schema.tables.Columns; +import com.baeldung.jooq.introduction.db.information_schema.tables.Constants; +import com.baeldung.jooq.introduction.db.information_schema.tables.Constraints; +import com.baeldung.jooq.introduction.db.information_schema.tables.CrossReferences; +import com.baeldung.jooq.introduction.db.information_schema.tables.Domains; +import com.baeldung.jooq.introduction.db.information_schema.tables.FunctionAliases; +import com.baeldung.jooq.introduction.db.information_schema.tables.FunctionColumns; +import com.baeldung.jooq.introduction.db.information_schema.tables.Help; +import com.baeldung.jooq.introduction.db.information_schema.tables.InDoubt; +import com.baeldung.jooq.introduction.db.information_schema.tables.Indexes; +import com.baeldung.jooq.introduction.db.information_schema.tables.Locks; +import com.baeldung.jooq.introduction.db.information_schema.tables.QueryStatistics; +import com.baeldung.jooq.introduction.db.information_schema.tables.Rights; +import com.baeldung.jooq.introduction.db.information_schema.tables.Roles; +import com.baeldung.jooq.introduction.db.information_schema.tables.Schemata; +import com.baeldung.jooq.introduction.db.information_schema.tables.Sequences; +import com.baeldung.jooq.introduction.db.information_schema.tables.SessionState; +import com.baeldung.jooq.introduction.db.information_schema.tables.Sessions; +import com.baeldung.jooq.introduction.db.information_schema.tables.Settings; +import com.baeldung.jooq.introduction.db.information_schema.tables.TablePrivileges; +import com.baeldung.jooq.introduction.db.information_schema.tables.TableTypes; +import com.baeldung.jooq.introduction.db.information_schema.tables.Triggers; +import com.baeldung.jooq.introduction.db.information_schema.tables.TypeInfo; +import com.baeldung.jooq.introduction.db.information_schema.tables.Users; +import com.baeldung.jooq.introduction.db.information_schema.tables.Views; + +import javax.annotation.Generated; + + +/** + * Convenience access to all tables in INFORMATION_SCHEMA + */ +@Generated( + value = { + "http://www.jooq.org", + "jOOQ version:3.7.3" + }, + comments = "This class is generated by jOOQ" +) +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class Tables { + + /** + * The table INFORMATION_SCHEMA.QUERY_STATISTICS + */ + public static final QueryStatistics QUERY_STATISTICS = com.baeldung.jooq.introduction.db.information_schema.tables.QueryStatistics.QUERY_STATISTICS; + + /** + * The table INFORMATION_SCHEMA.SESSION_STATE + */ + public static final SessionState SESSION_STATE = com.baeldung.jooq.introduction.db.information_schema.tables.SessionState.SESSION_STATE; + + /** + * The table INFORMATION_SCHEMA.LOCKS + */ + public static final Locks LOCKS = com.baeldung.jooq.introduction.db.information_schema.tables.Locks.LOCKS; + + /** + * The table INFORMATION_SCHEMA.SESSIONS + */ + public static final Sessions SESSIONS = com.baeldung.jooq.introduction.db.information_schema.tables.Sessions.SESSIONS; + + /** + * The table INFORMATION_SCHEMA.TRIGGERS + */ + public static final Triggers TRIGGERS = com.baeldung.jooq.introduction.db.information_schema.tables.Triggers.TRIGGERS; + + /** + * The table INFORMATION_SCHEMA.DOMAINS + */ + public static final Domains DOMAINS = com.baeldung.jooq.introduction.db.information_schema.tables.Domains.DOMAINS; + + /** + * The table INFORMATION_SCHEMA.CONSTANTS + */ + public static final Constants CONSTANTS = com.baeldung.jooq.introduction.db.information_schema.tables.Constants.CONSTANTS; + + /** + * The table INFORMATION_SCHEMA.FUNCTION_COLUMNS + */ + public static final FunctionColumns FUNCTION_COLUMNS = com.baeldung.jooq.introduction.db.information_schema.tables.FunctionColumns.FUNCTION_COLUMNS; + + /** + * The table INFORMATION_SCHEMA.CONSTRAINTS + */ + public static final Constraints CONSTRAINTS = com.baeldung.jooq.introduction.db.information_schema.tables.Constraints.CONSTRAINTS; + + /** + * The table INFORMATION_SCHEMA.CROSS_REFERENCES + */ + public static final CrossReferences CROSS_REFERENCES = com.baeldung.jooq.introduction.db.information_schema.tables.CrossReferences.CROSS_REFERENCES; + + /** + * The table INFORMATION_SCHEMA.IN_DOUBT + */ + public static final InDoubt IN_DOUBT = com.baeldung.jooq.introduction.db.information_schema.tables.InDoubt.IN_DOUBT; + + /** + * The table INFORMATION_SCHEMA.VIEWS + */ + public static final Views VIEWS = com.baeldung.jooq.introduction.db.information_schema.tables.Views.VIEWS; + + /** + * The table INFORMATION_SCHEMA.COLLATIONS + */ + public static final Collations COLLATIONS = com.baeldung.jooq.introduction.db.information_schema.tables.Collations.COLLATIONS; + + /** + * The table INFORMATION_SCHEMA.COLUMN_PRIVILEGES + */ + public static final ColumnPrivileges COLUMN_PRIVILEGES = com.baeldung.jooq.introduction.db.information_schema.tables.ColumnPrivileges.COLUMN_PRIVILEGES; + + /** + * The table INFORMATION_SCHEMA.TABLE_PRIVILEGES + */ + public static final TablePrivileges TABLE_PRIVILEGES = com.baeldung.jooq.introduction.db.information_schema.tables.TablePrivileges.TABLE_PRIVILEGES; + + /** + * The table INFORMATION_SCHEMA.SCHEMATA + */ + public static final Schemata SCHEMATA = com.baeldung.jooq.introduction.db.information_schema.tables.Schemata.SCHEMATA; + + /** + * The table INFORMATION_SCHEMA.FUNCTION_ALIASES + */ + public static final FunctionAliases FUNCTION_ALIASES = com.baeldung.jooq.introduction.db.information_schema.tables.FunctionAliases.FUNCTION_ALIASES; + + /** + * The table INFORMATION_SCHEMA.RIGHTS + */ + public static final Rights RIGHTS = com.baeldung.jooq.introduction.db.information_schema.tables.Rights.RIGHTS; + + /** + * The table INFORMATION_SCHEMA.ROLES + */ + public static final Roles ROLES = com.baeldung.jooq.introduction.db.information_schema.tables.Roles.ROLES; + + /** + * The table INFORMATION_SCHEMA.USERS + */ + public static final Users USERS = com.baeldung.jooq.introduction.db.information_schema.tables.Users.USERS; + + /** + * The table INFORMATION_SCHEMA.SEQUENCES + */ + public static final Sequences SEQUENCES = com.baeldung.jooq.introduction.db.information_schema.tables.Sequences.SEQUENCES; + + /** + * The table INFORMATION_SCHEMA.HELP + */ + public static final Help HELP = com.baeldung.jooq.introduction.db.information_schema.tables.Help.HELP; + + /** + * The table INFORMATION_SCHEMA.SETTINGS + */ + public static final Settings SETTINGS = com.baeldung.jooq.introduction.db.information_schema.tables.Settings.SETTINGS; + + /** + * The table INFORMATION_SCHEMA.CATALOGS + */ + public static final Catalogs CATALOGS = com.baeldung.jooq.introduction.db.information_schema.tables.Catalogs.CATALOGS; + + /** + * The table INFORMATION_SCHEMA.TYPE_INFO + */ + public static final TypeInfo TYPE_INFO = com.baeldung.jooq.introduction.db.information_schema.tables.TypeInfo.TYPE_INFO; + + /** + * The table INFORMATION_SCHEMA.TABLE_TYPES + */ + public static final TableTypes TABLE_TYPES = com.baeldung.jooq.introduction.db.information_schema.tables.TableTypes.TABLE_TYPES; + + /** + * The table INFORMATION_SCHEMA.INDEXES + */ + public static final Indexes INDEXES = com.baeldung.jooq.introduction.db.information_schema.tables.Indexes.INDEXES; + + /** + * The table INFORMATION_SCHEMA.COLUMNS + */ + public static final Columns COLUMNS = com.baeldung.jooq.introduction.db.information_schema.tables.Columns.COLUMNS; + + /** + * The table INFORMATION_SCHEMA.TABLES + */ + public static final com.baeldung.jooq.introduction.db.information_schema.tables.Tables TABLES = com.baeldung.jooq.introduction.db.information_schema.tables.Tables.TABLES; +} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Catalogs.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Catalogs.java new file mode 100644 index 0000000000..f7091cfbe4 --- /dev/null +++ b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Catalogs.java @@ -0,0 +1,87 @@ +/** + * This class is generated by jOOQ + */ +package com.baeldung.jooq.introduction.db.information_schema.tables; + + +import com.baeldung.jooq.introduction.db.information_schema.InformationSchema; +import com.baeldung.jooq.introduction.db.information_schema.tables.records.CatalogsRecord; + +import javax.annotation.Generated; + +import org.jooq.Field; +import org.jooq.Table; +import org.jooq.TableField; +import org.jooq.impl.TableImpl; + + +/** + * This class is generated by jOOQ. + */ +@Generated( + value = { + "http://www.jooq.org", + "jOOQ version:3.7.3" + }, + comments = "This class is generated by jOOQ" +) +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class Catalogs extends TableImpl { + + private static final long serialVersionUID = 1558896306; + + /** + * The reference instance of INFORMATION_SCHEMA.CATALOGS + */ + public static final Catalogs CATALOGS = new Catalogs(); + + /** + * The class holding records for this type + */ + @Override + public Class getRecordType() { + return CatalogsRecord.class; + } + + /** + * The column INFORMATION_SCHEMA.CATALOGS.CATALOG_NAME. + */ + public final TableField CATALOG_NAME = createField("CATALOG_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * Create a INFORMATION_SCHEMA.CATALOGS table reference + */ + public Catalogs() { + this("CATALOGS", null); + } + + /** + * Create an aliased INFORMATION_SCHEMA.CATALOGS table reference + */ + public Catalogs(String alias) { + this(alias, CATALOGS); + } + + private Catalogs(String alias, Table aliased) { + this(alias, aliased, null); + } + + private Catalogs(String alias, Table aliased, Field[] parameters) { + super(alias, InformationSchema.INFORMATION_SCHEMA, aliased, parameters, ""); + } + + /** + * {@inheritDoc} + */ + @Override + public Catalogs as(String alias) { + return new Catalogs(alias, this); + } + + /** + * Rename this table + */ + public Catalogs rename(String name) { + return new Catalogs(name, null); + } +} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Collations.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Collations.java new file mode 100644 index 0000000000..e16ed17605 --- /dev/null +++ b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Collations.java @@ -0,0 +1,92 @@ +/** + * This class is generated by jOOQ + */ +package com.baeldung.jooq.introduction.db.information_schema.tables; + + +import com.baeldung.jooq.introduction.db.information_schema.InformationSchema; +import com.baeldung.jooq.introduction.db.information_schema.tables.records.CollationsRecord; + +import javax.annotation.Generated; + +import org.jooq.Field; +import org.jooq.Table; +import org.jooq.TableField; +import org.jooq.impl.TableImpl; + + +/** + * This class is generated by jOOQ. + */ +@Generated( + value = { + "http://www.jooq.org", + "jOOQ version:3.7.3" + }, + comments = "This class is generated by jOOQ" +) +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class Collations extends TableImpl { + + private static final long serialVersionUID = 1978393146; + + /** + * The reference instance of INFORMATION_SCHEMA.COLLATIONS + */ + public static final Collations COLLATIONS = new Collations(); + + /** + * The class holding records for this type + */ + @Override + public Class getRecordType() { + return CollationsRecord.class; + } + + /** + * The column INFORMATION_SCHEMA.COLLATIONS.NAME. + */ + public final TableField NAME = createField("NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.COLLATIONS.KEY. + */ + public final TableField KEY = createField("KEY", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * Create a INFORMATION_SCHEMA.COLLATIONS table reference + */ + public Collations() { + this("COLLATIONS", null); + } + + /** + * Create an aliased INFORMATION_SCHEMA.COLLATIONS table reference + */ + public Collations(String alias) { + this(alias, COLLATIONS); + } + + private Collations(String alias, Table aliased) { + this(alias, aliased, null); + } + + private Collations(String alias, Table aliased, Field[] parameters) { + super(alias, InformationSchema.INFORMATION_SCHEMA, aliased, parameters, ""); + } + + /** + * {@inheritDoc} + */ + @Override + public Collations as(String alias) { + return new Collations(alias, this); + } + + /** + * Rename this table + */ + public Collations rename(String name) { + return new Collations(name, null); + } +} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/ColumnPrivileges.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/ColumnPrivileges.java new file mode 100644 index 0000000000..307682f434 --- /dev/null +++ b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/ColumnPrivileges.java @@ -0,0 +1,122 @@ +/** + * This class is generated by jOOQ + */ +package com.baeldung.jooq.introduction.db.information_schema.tables; + + +import com.baeldung.jooq.introduction.db.information_schema.InformationSchema; +import com.baeldung.jooq.introduction.db.information_schema.tables.records.ColumnPrivilegesRecord; + +import javax.annotation.Generated; + +import org.jooq.Field; +import org.jooq.Table; +import org.jooq.TableField; +import org.jooq.impl.TableImpl; + + +/** + * This class is generated by jOOQ. + */ +@Generated( + value = { + "http://www.jooq.org", + "jOOQ version:3.7.3" + }, + comments = "This class is generated by jOOQ" +) +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class ColumnPrivileges extends TableImpl { + + private static final long serialVersionUID = -282101680; + + /** + * The reference instance of INFORMATION_SCHEMA.COLUMN_PRIVILEGES + */ + public static final ColumnPrivileges COLUMN_PRIVILEGES = new ColumnPrivileges(); + + /** + * The class holding records for this type + */ + @Override + public Class getRecordType() { + return ColumnPrivilegesRecord.class; + } + + /** + * The column INFORMATION_SCHEMA.COLUMN_PRIVILEGES.GRANTOR. + */ + public final TableField GRANTOR = createField("GRANTOR", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.COLUMN_PRIVILEGES.GRANTEE. + */ + public final TableField GRANTEE = createField("GRANTEE", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.COLUMN_PRIVILEGES.TABLE_CATALOG. + */ + public final TableField TABLE_CATALOG = createField("TABLE_CATALOG", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.COLUMN_PRIVILEGES.TABLE_SCHEMA. + */ + public final TableField TABLE_SCHEMA = createField("TABLE_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.COLUMN_PRIVILEGES.TABLE_NAME. + */ + public final TableField TABLE_NAME = createField("TABLE_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.COLUMN_PRIVILEGES.COLUMN_NAME. + */ + public final TableField COLUMN_NAME = createField("COLUMN_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.COLUMN_PRIVILEGES.PRIVILEGE_TYPE. + */ + public final TableField PRIVILEGE_TYPE = createField("PRIVILEGE_TYPE", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.COLUMN_PRIVILEGES.IS_GRANTABLE. + */ + public final TableField IS_GRANTABLE = createField("IS_GRANTABLE", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * Create a INFORMATION_SCHEMA.COLUMN_PRIVILEGES table reference + */ + public ColumnPrivileges() { + this("COLUMN_PRIVILEGES", null); + } + + /** + * Create an aliased INFORMATION_SCHEMA.COLUMN_PRIVILEGES table reference + */ + public ColumnPrivileges(String alias) { + this(alias, COLUMN_PRIVILEGES); + } + + private ColumnPrivileges(String alias, Table aliased) { + this(alias, aliased, null); + } + + private ColumnPrivileges(String alias, Table aliased, Field[] parameters) { + super(alias, InformationSchema.INFORMATION_SCHEMA, aliased, parameters, ""); + } + + /** + * {@inheritDoc} + */ + @Override + public ColumnPrivileges as(String alias) { + return new ColumnPrivileges(alias, this); + } + + /** + * Rename this table + */ + public ColumnPrivileges rename(String name) { + return new ColumnPrivileges(name, null); + } +} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Columns.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Columns.java new file mode 100644 index 0000000000..d95a518c1f --- /dev/null +++ b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Columns.java @@ -0,0 +1,197 @@ +/** + * This class is generated by jOOQ + */ +package com.baeldung.jooq.introduction.db.information_schema.tables; + + +import com.baeldung.jooq.introduction.db.information_schema.InformationSchema; +import com.baeldung.jooq.introduction.db.information_schema.tables.records.ColumnsRecord; + +import javax.annotation.Generated; + +import org.jooq.Field; +import org.jooq.Table; +import org.jooq.TableField; +import org.jooq.impl.TableImpl; + + +/** + * This class is generated by jOOQ. + */ +@Generated( + value = { + "http://www.jooq.org", + "jOOQ version:3.7.3" + }, + comments = "This class is generated by jOOQ" +) +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class Columns extends TableImpl { + + private static final long serialVersionUID = 1721995161; + + /** + * The reference instance of INFORMATION_SCHEMA.COLUMNS + */ + public static final Columns COLUMNS = new Columns(); + + /** + * The class holding records for this type + */ + @Override + public Class getRecordType() { + return ColumnsRecord.class; + } + + /** + * The column INFORMATION_SCHEMA.COLUMNS.TABLE_CATALOG. + */ + public final TableField TABLE_CATALOG = createField("TABLE_CATALOG", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.COLUMNS.TABLE_SCHEMA. + */ + public final TableField TABLE_SCHEMA = createField("TABLE_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.COLUMNS.TABLE_NAME. + */ + public final TableField TABLE_NAME = createField("TABLE_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.COLUMNS.COLUMN_NAME. + */ + public final TableField COLUMN_NAME = createField("COLUMN_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.COLUMNS.ORDINAL_POSITION. + */ + public final TableField ORDINAL_POSITION = createField("ORDINAL_POSITION", org.jooq.impl.SQLDataType.INTEGER, this, ""); + + /** + * The column INFORMATION_SCHEMA.COLUMNS.COLUMN_DEFAULT. + */ + public final TableField COLUMN_DEFAULT = createField("COLUMN_DEFAULT", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.COLUMNS.IS_NULLABLE. + */ + public final TableField IS_NULLABLE = createField("IS_NULLABLE", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.COLUMNS.DATA_TYPE. + */ + public final TableField DATA_TYPE = createField("DATA_TYPE", org.jooq.impl.SQLDataType.INTEGER, this, ""); + + /** + * The column INFORMATION_SCHEMA.COLUMNS.CHARACTER_MAXIMUM_LENGTH. + */ + public final TableField CHARACTER_MAXIMUM_LENGTH = createField("CHARACTER_MAXIMUM_LENGTH", org.jooq.impl.SQLDataType.INTEGER, this, ""); + + /** + * The column INFORMATION_SCHEMA.COLUMNS.CHARACTER_OCTET_LENGTH. + */ + public final TableField CHARACTER_OCTET_LENGTH = createField("CHARACTER_OCTET_LENGTH", org.jooq.impl.SQLDataType.INTEGER, this, ""); + + /** + * The column INFORMATION_SCHEMA.COLUMNS.NUMERIC_PRECISION. + */ + public final TableField NUMERIC_PRECISION = createField("NUMERIC_PRECISION", org.jooq.impl.SQLDataType.INTEGER, this, ""); + + /** + * The column INFORMATION_SCHEMA.COLUMNS.NUMERIC_PRECISION_RADIX. + */ + public final TableField NUMERIC_PRECISION_RADIX = createField("NUMERIC_PRECISION_RADIX", org.jooq.impl.SQLDataType.INTEGER, this, ""); + + /** + * The column INFORMATION_SCHEMA.COLUMNS.NUMERIC_SCALE. + */ + public final TableField NUMERIC_SCALE = createField("NUMERIC_SCALE", org.jooq.impl.SQLDataType.INTEGER, this, ""); + + /** + * The column INFORMATION_SCHEMA.COLUMNS.CHARACTER_SET_NAME. + */ + public final TableField CHARACTER_SET_NAME = createField("CHARACTER_SET_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.COLUMNS.COLLATION_NAME. + */ + public final TableField COLLATION_NAME = createField("COLLATION_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.COLUMNS.TYPE_NAME. + */ + public final TableField TYPE_NAME = createField("TYPE_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.COLUMNS.NULLABLE. + */ + public final TableField NULLABLE = createField("NULLABLE", org.jooq.impl.SQLDataType.INTEGER, this, ""); + + /** + * The column INFORMATION_SCHEMA.COLUMNS.IS_COMPUTED. + */ + public final TableField IS_COMPUTED = createField("IS_COMPUTED", org.jooq.impl.SQLDataType.BOOLEAN, this, ""); + + /** + * The column INFORMATION_SCHEMA.COLUMNS.SELECTIVITY. + */ + public final TableField SELECTIVITY = createField("SELECTIVITY", org.jooq.impl.SQLDataType.INTEGER, this, ""); + + /** + * The column INFORMATION_SCHEMA.COLUMNS.CHECK_CONSTRAINT. + */ + public final TableField CHECK_CONSTRAINT = createField("CHECK_CONSTRAINT", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.COLUMNS.SEQUENCE_NAME. + */ + public final TableField SEQUENCE_NAME = createField("SEQUENCE_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.COLUMNS.REMARKS. + */ + public final TableField REMARKS = createField("REMARKS", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.COLUMNS.SOURCE_DATA_TYPE. + */ + public final TableField SOURCE_DATA_TYPE = createField("SOURCE_DATA_TYPE", org.jooq.impl.SQLDataType.SMALLINT, this, ""); + + /** + * Create a INFORMATION_SCHEMA.COLUMNS table reference + */ + public Columns() { + this("COLUMNS", null); + } + + /** + * Create an aliased INFORMATION_SCHEMA.COLUMNS table reference + */ + public Columns(String alias) { + this(alias, COLUMNS); + } + + private Columns(String alias, Table aliased) { + this(alias, aliased, null); + } + + private Columns(String alias, Table aliased, Field[] parameters) { + super(alias, InformationSchema.INFORMATION_SCHEMA, aliased, parameters, ""); + } + + /** + * {@inheritDoc} + */ + @Override + public Columns as(String alias) { + return new Columns(alias, this); + } + + /** + * Rename this table + */ + public Columns rename(String name) { + return new Columns(name, null); + } +} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Constants.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Constants.java new file mode 100644 index 0000000000..7d2d97f5f8 --- /dev/null +++ b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Constants.java @@ -0,0 +1,117 @@ +/** + * This class is generated by jOOQ + */ +package com.baeldung.jooq.introduction.db.information_schema.tables; + + +import com.baeldung.jooq.introduction.db.information_schema.InformationSchema; +import com.baeldung.jooq.introduction.db.information_schema.tables.records.ConstantsRecord; + +import javax.annotation.Generated; + +import org.jooq.Field; +import org.jooq.Table; +import org.jooq.TableField; +import org.jooq.impl.TableImpl; + + +/** + * This class is generated by jOOQ. + */ +@Generated( + value = { + "http://www.jooq.org", + "jOOQ version:3.7.3" + }, + comments = "This class is generated by jOOQ" +) +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class Constants extends TableImpl { + + private static final long serialVersionUID = 107996087; + + /** + * The reference instance of INFORMATION_SCHEMA.CONSTANTS + */ + public static final Constants CONSTANTS = new Constants(); + + /** + * The class holding records for this type + */ + @Override + public Class getRecordType() { + return ConstantsRecord.class; + } + + /** + * The column INFORMATION_SCHEMA.CONSTANTS.CONSTANT_CATALOG. + */ + public final TableField CONSTANT_CATALOG = createField("CONSTANT_CATALOG", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.CONSTANTS.CONSTANT_SCHEMA. + */ + public final TableField CONSTANT_SCHEMA = createField("CONSTANT_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.CONSTANTS.CONSTANT_NAME. + */ + public final TableField CONSTANT_NAME = createField("CONSTANT_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.CONSTANTS.DATA_TYPE. + */ + public final TableField DATA_TYPE = createField("DATA_TYPE", org.jooq.impl.SQLDataType.INTEGER, this, ""); + + /** + * The column INFORMATION_SCHEMA.CONSTANTS.REMARKS. + */ + public final TableField REMARKS = createField("REMARKS", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.CONSTANTS.SQL. + */ + public final TableField SQL = createField("SQL", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.CONSTANTS.ID. + */ + public final TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this, ""); + + /** + * Create a INFORMATION_SCHEMA.CONSTANTS table reference + */ + public Constants() { + this("CONSTANTS", null); + } + + /** + * Create an aliased INFORMATION_SCHEMA.CONSTANTS table reference + */ + public Constants(String alias) { + this(alias, CONSTANTS); + } + + private Constants(String alias, Table aliased) { + this(alias, aliased, null); + } + + private Constants(String alias, Table aliased, Field[] parameters) { + super(alias, InformationSchema.INFORMATION_SCHEMA, aliased, parameters, ""); + } + + /** + * {@inheritDoc} + */ + @Override + public Constants as(String alias) { + return new Constants(alias, this); + } + + /** + * Rename this table + */ + public Constants rename(String name) { + return new Constants(name, null); + } +} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Constraints.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Constraints.java new file mode 100644 index 0000000000..1c95f369ec --- /dev/null +++ b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Constraints.java @@ -0,0 +1,147 @@ +/** + * This class is generated by jOOQ + */ +package com.baeldung.jooq.introduction.db.information_schema.tables; + + +import com.baeldung.jooq.introduction.db.information_schema.InformationSchema; +import com.baeldung.jooq.introduction.db.information_schema.tables.records.ConstraintsRecord; + +import javax.annotation.Generated; + +import org.jooq.Field; +import org.jooq.Table; +import org.jooq.TableField; +import org.jooq.impl.TableImpl; + + +/** + * This class is generated by jOOQ. + */ +@Generated( + value = { + "http://www.jooq.org", + "jOOQ version:3.7.3" + }, + comments = "This class is generated by jOOQ" +) +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class Constraints extends TableImpl { + + private static final long serialVersionUID = 529190017; + + /** + * The reference instance of INFORMATION_SCHEMA.CONSTRAINTS + */ + public static final Constraints CONSTRAINTS = new Constraints(); + + /** + * The class holding records for this type + */ + @Override + public Class getRecordType() { + return ConstraintsRecord.class; + } + + /** + * The column INFORMATION_SCHEMA.CONSTRAINTS.CONSTRAINT_CATALOG. + */ + public final TableField CONSTRAINT_CATALOG = createField("CONSTRAINT_CATALOG", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.CONSTRAINTS.CONSTRAINT_SCHEMA. + */ + public final TableField CONSTRAINT_SCHEMA = createField("CONSTRAINT_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.CONSTRAINTS.CONSTRAINT_NAME. + */ + public final TableField CONSTRAINT_NAME = createField("CONSTRAINT_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.CONSTRAINTS.CONSTRAINT_TYPE. + */ + public final TableField CONSTRAINT_TYPE = createField("CONSTRAINT_TYPE", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.CONSTRAINTS.TABLE_CATALOG. + */ + public final TableField TABLE_CATALOG = createField("TABLE_CATALOG", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.CONSTRAINTS.TABLE_SCHEMA. + */ + public final TableField TABLE_SCHEMA = createField("TABLE_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.CONSTRAINTS.TABLE_NAME. + */ + public final TableField TABLE_NAME = createField("TABLE_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.CONSTRAINTS.UNIQUE_INDEX_NAME. + */ + public final TableField UNIQUE_INDEX_NAME = createField("UNIQUE_INDEX_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.CONSTRAINTS.CHECK_EXPRESSION. + */ + public final TableField CHECK_EXPRESSION = createField("CHECK_EXPRESSION", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.CONSTRAINTS.COLUMN_LIST. + */ + public final TableField COLUMN_LIST = createField("COLUMN_LIST", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.CONSTRAINTS.REMARKS. + */ + public final TableField REMARKS = createField("REMARKS", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.CONSTRAINTS.SQL. + */ + public final TableField SQL = createField("SQL", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.CONSTRAINTS.ID. + */ + public final TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this, ""); + + /** + * Create a INFORMATION_SCHEMA.CONSTRAINTS table reference + */ + public Constraints() { + this("CONSTRAINTS", null); + } + + /** + * Create an aliased INFORMATION_SCHEMA.CONSTRAINTS table reference + */ + public Constraints(String alias) { + this(alias, CONSTRAINTS); + } + + private Constraints(String alias, Table aliased) { + this(alias, aliased, null); + } + + private Constraints(String alias, Table aliased, Field[] parameters) { + super(alias, InformationSchema.INFORMATION_SCHEMA, aliased, parameters, ""); + } + + /** + * {@inheritDoc} + */ + @Override + public Constraints as(String alias) { + return new Constraints(alias, this); + } + + /** + * Rename this table + */ + public Constraints rename(String name) { + return new Constraints(name, null); + } +} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/CrossReferences.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/CrossReferences.java new file mode 100644 index 0000000000..d3d9cebded --- /dev/null +++ b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/CrossReferences.java @@ -0,0 +1,152 @@ +/** + * This class is generated by jOOQ + */ +package com.baeldung.jooq.introduction.db.information_schema.tables; + + +import com.baeldung.jooq.introduction.db.information_schema.InformationSchema; +import com.baeldung.jooq.introduction.db.information_schema.tables.records.CrossReferencesRecord; + +import javax.annotation.Generated; + +import org.jooq.Field; +import org.jooq.Table; +import org.jooq.TableField; +import org.jooq.impl.TableImpl; + + +/** + * This class is generated by jOOQ. + */ +@Generated( + value = { + "http://www.jooq.org", + "jOOQ version:3.7.3" + }, + comments = "This class is generated by jOOQ" +) +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class CrossReferences extends TableImpl { + + private static final long serialVersionUID = 846378739; + + /** + * The reference instance of INFORMATION_SCHEMA.CROSS_REFERENCES + */ + public static final CrossReferences CROSS_REFERENCES = new CrossReferences(); + + /** + * The class holding records for this type + */ + @Override + public Class getRecordType() { + return CrossReferencesRecord.class; + } + + /** + * The column INFORMATION_SCHEMA.CROSS_REFERENCES.PKTABLE_CATALOG. + */ + public final TableField PKTABLE_CATALOG = createField("PKTABLE_CATALOG", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.CROSS_REFERENCES.PKTABLE_SCHEMA. + */ + public final TableField PKTABLE_SCHEMA = createField("PKTABLE_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.CROSS_REFERENCES.PKTABLE_NAME. + */ + public final TableField PKTABLE_NAME = createField("PKTABLE_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.CROSS_REFERENCES.PKCOLUMN_NAME. + */ + public final TableField PKCOLUMN_NAME = createField("PKCOLUMN_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.CROSS_REFERENCES.FKTABLE_CATALOG. + */ + public final TableField FKTABLE_CATALOG = createField("FKTABLE_CATALOG", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.CROSS_REFERENCES.FKTABLE_SCHEMA. + */ + public final TableField FKTABLE_SCHEMA = createField("FKTABLE_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.CROSS_REFERENCES.FKTABLE_NAME. + */ + public final TableField FKTABLE_NAME = createField("FKTABLE_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.CROSS_REFERENCES.FKCOLUMN_NAME. + */ + public final TableField FKCOLUMN_NAME = createField("FKCOLUMN_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.CROSS_REFERENCES.ORDINAL_POSITION. + */ + public final TableField ORDINAL_POSITION = createField("ORDINAL_POSITION", org.jooq.impl.SQLDataType.SMALLINT, this, ""); + + /** + * The column INFORMATION_SCHEMA.CROSS_REFERENCES.UPDATE_RULE. + */ + public final TableField UPDATE_RULE = createField("UPDATE_RULE", org.jooq.impl.SQLDataType.SMALLINT, this, ""); + + /** + * The column INFORMATION_SCHEMA.CROSS_REFERENCES.DELETE_RULE. + */ + public final TableField DELETE_RULE = createField("DELETE_RULE", org.jooq.impl.SQLDataType.SMALLINT, this, ""); + + /** + * The column INFORMATION_SCHEMA.CROSS_REFERENCES.FK_NAME. + */ + public final TableField FK_NAME = createField("FK_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.CROSS_REFERENCES.PK_NAME. + */ + public final TableField PK_NAME = createField("PK_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.CROSS_REFERENCES.DEFERRABILITY. + */ + public final TableField DEFERRABILITY = createField("DEFERRABILITY", org.jooq.impl.SQLDataType.SMALLINT, this, ""); + + /** + * Create a INFORMATION_SCHEMA.CROSS_REFERENCES table reference + */ + public CrossReferences() { + this("CROSS_REFERENCES", null); + } + + /** + * Create an aliased INFORMATION_SCHEMA.CROSS_REFERENCES table reference + */ + public CrossReferences(String alias) { + this(alias, CROSS_REFERENCES); + } + + private CrossReferences(String alias, Table aliased) { + this(alias, aliased, null); + } + + private CrossReferences(String alias, Table aliased, Field[] parameters) { + super(alias, InformationSchema.INFORMATION_SCHEMA, aliased, parameters, ""); + } + + /** + * {@inheritDoc} + */ + @Override + public CrossReferences as(String alias) { + return new CrossReferences(alias, this); + } + + /** + * Rename this table + */ + public CrossReferences rename(String name) { + return new CrossReferences(name, null); + } +} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Domains.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Domains.java new file mode 100644 index 0000000000..597f3d2e2b --- /dev/null +++ b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Domains.java @@ -0,0 +1,152 @@ +/** + * This class is generated by jOOQ + */ +package com.baeldung.jooq.introduction.db.information_schema.tables; + + +import com.baeldung.jooq.introduction.db.information_schema.InformationSchema; +import com.baeldung.jooq.introduction.db.information_schema.tables.records.DomainsRecord; + +import javax.annotation.Generated; + +import org.jooq.Field; +import org.jooq.Table; +import org.jooq.TableField; +import org.jooq.impl.TableImpl; + + +/** + * This class is generated by jOOQ. + */ +@Generated( + value = { + "http://www.jooq.org", + "jOOQ version:3.7.3" + }, + comments = "This class is generated by jOOQ" +) +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class Domains extends TableImpl { + + private static final long serialVersionUID = -742107682; + + /** + * The reference instance of INFORMATION_SCHEMA.DOMAINS + */ + public static final Domains DOMAINS = new Domains(); + + /** + * The class holding records for this type + */ + @Override + public Class getRecordType() { + return DomainsRecord.class; + } + + /** + * The column INFORMATION_SCHEMA.DOMAINS.DOMAIN_CATALOG. + */ + public final TableField DOMAIN_CATALOG = createField("DOMAIN_CATALOG", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.DOMAINS.DOMAIN_SCHEMA. + */ + public final TableField DOMAIN_SCHEMA = createField("DOMAIN_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.DOMAINS.DOMAIN_NAME. + */ + public final TableField DOMAIN_NAME = createField("DOMAIN_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.DOMAINS.COLUMN_DEFAULT. + */ + public final TableField COLUMN_DEFAULT = createField("COLUMN_DEFAULT", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.DOMAINS.IS_NULLABLE. + */ + public final TableField IS_NULLABLE = createField("IS_NULLABLE", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.DOMAINS.DATA_TYPE. + */ + public final TableField DATA_TYPE = createField("DATA_TYPE", org.jooq.impl.SQLDataType.INTEGER, this, ""); + + /** + * The column INFORMATION_SCHEMA.DOMAINS.PRECISION. + */ + public final TableField PRECISION = createField("PRECISION", org.jooq.impl.SQLDataType.INTEGER, this, ""); + + /** + * The column INFORMATION_SCHEMA.DOMAINS.SCALE. + */ + public final TableField SCALE = createField("SCALE", org.jooq.impl.SQLDataType.INTEGER, this, ""); + + /** + * The column INFORMATION_SCHEMA.DOMAINS.TYPE_NAME. + */ + public final TableField TYPE_NAME = createField("TYPE_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.DOMAINS.SELECTIVITY. + */ + public final TableField SELECTIVITY = createField("SELECTIVITY", org.jooq.impl.SQLDataType.INTEGER, this, ""); + + /** + * The column INFORMATION_SCHEMA.DOMAINS.CHECK_CONSTRAINT. + */ + public final TableField CHECK_CONSTRAINT = createField("CHECK_CONSTRAINT", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.DOMAINS.REMARKS. + */ + public final TableField REMARKS = createField("REMARKS", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.DOMAINS.SQL. + */ + public final TableField SQL = createField("SQL", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.DOMAINS.ID. + */ + public final TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this, ""); + + /** + * Create a INFORMATION_SCHEMA.DOMAINS table reference + */ + public Domains() { + this("DOMAINS", null); + } + + /** + * Create an aliased INFORMATION_SCHEMA.DOMAINS table reference + */ + public Domains(String alias) { + this(alias, DOMAINS); + } + + private Domains(String alias, Table aliased) { + this(alias, aliased, null); + } + + private Domains(String alias, Table aliased, Field[] parameters) { + super(alias, InformationSchema.INFORMATION_SCHEMA, aliased, parameters, ""); + } + + /** + * {@inheritDoc} + */ + @Override + public Domains as(String alias) { + return new Domains(alias, this); + } + + /** + * Rename this table + */ + public Domains rename(String name) { + return new Domains(name, null); + } +} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/FunctionAliases.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/FunctionAliases.java new file mode 100644 index 0000000000..8b85980d38 --- /dev/null +++ b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/FunctionAliases.java @@ -0,0 +1,142 @@ +/** + * This class is generated by jOOQ + */ +package com.baeldung.jooq.introduction.db.information_schema.tables; + + +import com.baeldung.jooq.introduction.db.information_schema.InformationSchema; +import com.baeldung.jooq.introduction.db.information_schema.tables.records.FunctionAliasesRecord; + +import javax.annotation.Generated; + +import org.jooq.Field; +import org.jooq.Table; +import org.jooq.TableField; +import org.jooq.impl.TableImpl; + + +/** + * This class is generated by jOOQ. + */ +@Generated( + value = { + "http://www.jooq.org", + "jOOQ version:3.7.3" + }, + comments = "This class is generated by jOOQ" +) +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class FunctionAliases extends TableImpl { + + private static final long serialVersionUID = -232882186; + + /** + * The reference instance of INFORMATION_SCHEMA.FUNCTION_ALIASES + */ + public static final FunctionAliases FUNCTION_ALIASES = new FunctionAliases(); + + /** + * The class holding records for this type + */ + @Override + public Class getRecordType() { + return FunctionAliasesRecord.class; + } + + /** + * The column INFORMATION_SCHEMA.FUNCTION_ALIASES.ALIAS_CATALOG. + */ + public final TableField ALIAS_CATALOG = createField("ALIAS_CATALOG", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.FUNCTION_ALIASES.ALIAS_SCHEMA. + */ + public final TableField ALIAS_SCHEMA = createField("ALIAS_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.FUNCTION_ALIASES.ALIAS_NAME. + */ + public final TableField ALIAS_NAME = createField("ALIAS_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.FUNCTION_ALIASES.JAVA_CLASS. + */ + public final TableField JAVA_CLASS = createField("JAVA_CLASS", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.FUNCTION_ALIASES.JAVA_METHOD. + */ + public final TableField JAVA_METHOD = createField("JAVA_METHOD", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.FUNCTION_ALIASES.DATA_TYPE. + */ + public final TableField DATA_TYPE = createField("DATA_TYPE", org.jooq.impl.SQLDataType.INTEGER, this, ""); + + /** + * The column INFORMATION_SCHEMA.FUNCTION_ALIASES.TYPE_NAME. + */ + public final TableField TYPE_NAME = createField("TYPE_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.FUNCTION_ALIASES.COLUMN_COUNT. + */ + public final TableField COLUMN_COUNT = createField("COLUMN_COUNT", org.jooq.impl.SQLDataType.INTEGER, this, ""); + + /** + * The column INFORMATION_SCHEMA.FUNCTION_ALIASES.RETURNS_RESULT. + */ + public final TableField RETURNS_RESULT = createField("RETURNS_RESULT", org.jooq.impl.SQLDataType.SMALLINT, this, ""); + + /** + * The column INFORMATION_SCHEMA.FUNCTION_ALIASES.REMARKS. + */ + public final TableField REMARKS = createField("REMARKS", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.FUNCTION_ALIASES.ID. + */ + public final TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this, ""); + + /** + * The column INFORMATION_SCHEMA.FUNCTION_ALIASES.SOURCE. + */ + public final TableField SOURCE = createField("SOURCE", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * Create a INFORMATION_SCHEMA.FUNCTION_ALIASES table reference + */ + public FunctionAliases() { + this("FUNCTION_ALIASES", null); + } + + /** + * Create an aliased INFORMATION_SCHEMA.FUNCTION_ALIASES table reference + */ + public FunctionAliases(String alias) { + this(alias, FUNCTION_ALIASES); + } + + private FunctionAliases(String alias, Table aliased) { + this(alias, aliased, null); + } + + private FunctionAliases(String alias, Table aliased, Field[] parameters) { + super(alias, InformationSchema.INFORMATION_SCHEMA, aliased, parameters, ""); + } + + /** + * {@inheritDoc} + */ + @Override + public FunctionAliases as(String alias) { + return new FunctionAliases(alias, this); + } + + /** + * Rename this table + */ + public FunctionAliases rename(String name) { + return new FunctionAliases(name, null); + } +} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/FunctionColumns.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/FunctionColumns.java new file mode 100644 index 0000000000..b5df94b4f0 --- /dev/null +++ b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/FunctionColumns.java @@ -0,0 +1,167 @@ +/** + * This class is generated by jOOQ + */ +package com.baeldung.jooq.introduction.db.information_schema.tables; + + +import com.baeldung.jooq.introduction.db.information_schema.InformationSchema; +import com.baeldung.jooq.introduction.db.information_schema.tables.records.FunctionColumnsRecord; + +import javax.annotation.Generated; + +import org.jooq.Field; +import org.jooq.Table; +import org.jooq.TableField; +import org.jooq.impl.TableImpl; + + +/** + * This class is generated by jOOQ. + */ +@Generated( + value = { + "http://www.jooq.org", + "jOOQ version:3.7.3" + }, + comments = "This class is generated by jOOQ" +) +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class FunctionColumns extends TableImpl { + + private static final long serialVersionUID = -406719584; + + /** + * The reference instance of INFORMATION_SCHEMA.FUNCTION_COLUMNS + */ + public static final FunctionColumns FUNCTION_COLUMNS = new FunctionColumns(); + + /** + * The class holding records for this type + */ + @Override + public Class getRecordType() { + return FunctionColumnsRecord.class; + } + + /** + * The column INFORMATION_SCHEMA.FUNCTION_COLUMNS.ALIAS_CATALOG. + */ + public final TableField ALIAS_CATALOG = createField("ALIAS_CATALOG", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.FUNCTION_COLUMNS.ALIAS_SCHEMA. + */ + public final TableField ALIAS_SCHEMA = createField("ALIAS_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.FUNCTION_COLUMNS.ALIAS_NAME. + */ + public final TableField ALIAS_NAME = createField("ALIAS_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.FUNCTION_COLUMNS.JAVA_CLASS. + */ + public final TableField JAVA_CLASS = createField("JAVA_CLASS", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.FUNCTION_COLUMNS.JAVA_METHOD. + */ + public final TableField JAVA_METHOD = createField("JAVA_METHOD", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.FUNCTION_COLUMNS.COLUMN_COUNT. + */ + public final TableField COLUMN_COUNT = createField("COLUMN_COUNT", org.jooq.impl.SQLDataType.INTEGER, this, ""); + + /** + * The column INFORMATION_SCHEMA.FUNCTION_COLUMNS.POS. + */ + public final TableField POS = createField("POS", org.jooq.impl.SQLDataType.INTEGER, this, ""); + + /** + * The column INFORMATION_SCHEMA.FUNCTION_COLUMNS.COLUMN_NAME. + */ + public final TableField COLUMN_NAME = createField("COLUMN_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.FUNCTION_COLUMNS.DATA_TYPE. + */ + public final TableField DATA_TYPE = createField("DATA_TYPE", org.jooq.impl.SQLDataType.INTEGER, this, ""); + + /** + * The column INFORMATION_SCHEMA.FUNCTION_COLUMNS.TYPE_NAME. + */ + public final TableField TYPE_NAME = createField("TYPE_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.FUNCTION_COLUMNS.PRECISION. + */ + public final TableField PRECISION = createField("PRECISION", org.jooq.impl.SQLDataType.INTEGER, this, ""); + + /** + * The column INFORMATION_SCHEMA.FUNCTION_COLUMNS.SCALE. + */ + public final TableField SCALE = createField("SCALE", org.jooq.impl.SQLDataType.SMALLINT, this, ""); + + /** + * The column INFORMATION_SCHEMA.FUNCTION_COLUMNS.RADIX. + */ + public final TableField RADIX = createField("RADIX", org.jooq.impl.SQLDataType.SMALLINT, this, ""); + + /** + * The column INFORMATION_SCHEMA.FUNCTION_COLUMNS.NULLABLE. + */ + public final TableField NULLABLE = createField("NULLABLE", org.jooq.impl.SQLDataType.SMALLINT, this, ""); + + /** + * The column INFORMATION_SCHEMA.FUNCTION_COLUMNS.COLUMN_TYPE. + */ + public final TableField COLUMN_TYPE = createField("COLUMN_TYPE", org.jooq.impl.SQLDataType.SMALLINT, this, ""); + + /** + * The column INFORMATION_SCHEMA.FUNCTION_COLUMNS.REMARKS. + */ + public final TableField REMARKS = createField("REMARKS", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.FUNCTION_COLUMNS.COLUMN_DEFAULT. + */ + public final TableField COLUMN_DEFAULT = createField("COLUMN_DEFAULT", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * Create a INFORMATION_SCHEMA.FUNCTION_COLUMNS table reference + */ + public FunctionColumns() { + this("FUNCTION_COLUMNS", null); + } + + /** + * Create an aliased INFORMATION_SCHEMA.FUNCTION_COLUMNS table reference + */ + public FunctionColumns(String alias) { + this(alias, FUNCTION_COLUMNS); + } + + private FunctionColumns(String alias, Table aliased) { + this(alias, aliased, null); + } + + private FunctionColumns(String alias, Table aliased, Field[] parameters) { + super(alias, InformationSchema.INFORMATION_SCHEMA, aliased, parameters, ""); + } + + /** + * {@inheritDoc} + */ + @Override + public FunctionColumns as(String alias) { + return new FunctionColumns(alias, this); + } + + /** + * Rename this table + */ + public FunctionColumns rename(String name) { + return new FunctionColumns(name, null); + } +} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Help.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Help.java new file mode 100644 index 0000000000..449eed4f72 --- /dev/null +++ b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Help.java @@ -0,0 +1,107 @@ +/** + * This class is generated by jOOQ + */ +package com.baeldung.jooq.introduction.db.information_schema.tables; + + +import com.baeldung.jooq.introduction.db.information_schema.InformationSchema; +import com.baeldung.jooq.introduction.db.information_schema.tables.records.HelpRecord; + +import javax.annotation.Generated; + +import org.jooq.Field; +import org.jooq.Table; +import org.jooq.TableField; +import org.jooq.impl.TableImpl; + + +/** + * This class is generated by jOOQ. + */ +@Generated( + value = { + "http://www.jooq.org", + "jOOQ version:3.7.3" + }, + comments = "This class is generated by jOOQ" +) +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class Help extends TableImpl { + + private static final long serialVersionUID = 1402170374; + + /** + * The reference instance of INFORMATION_SCHEMA.HELP + */ + public static final Help HELP = new Help(); + + /** + * The class holding records for this type + */ + @Override + public Class getRecordType() { + return HelpRecord.class; + } + + /** + * The column INFORMATION_SCHEMA.HELP.ID. + */ + public final TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this, ""); + + /** + * The column INFORMATION_SCHEMA.HELP.SECTION. + */ + public final TableField SECTION = createField("SECTION", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.HELP.TOPIC. + */ + public final TableField TOPIC = createField("TOPIC", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.HELP.SYNTAX. + */ + public final TableField SYNTAX = createField("SYNTAX", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.HELP.TEXT. + */ + public final TableField TEXT = createField("TEXT", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * Create a INFORMATION_SCHEMA.HELP table reference + */ + public Help() { + this("HELP", null); + } + + /** + * Create an aliased INFORMATION_SCHEMA.HELP table reference + */ + public Help(String alias) { + this(alias, HELP); + } + + private Help(String alias, Table aliased) { + this(alias, aliased, null); + } + + private Help(String alias, Table aliased, Field[] parameters) { + super(alias, InformationSchema.INFORMATION_SCHEMA, aliased, parameters, ""); + } + + /** + * {@inheritDoc} + */ + @Override + public Help as(String alias) { + return new Help(alias, this); + } + + /** + * Rename this table + */ + public Help rename(String name) { + return new Help(name, null); + } +} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/InDoubt.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/InDoubt.java new file mode 100644 index 0000000000..c37e06e47e --- /dev/null +++ b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/InDoubt.java @@ -0,0 +1,92 @@ +/** + * This class is generated by jOOQ + */ +package com.baeldung.jooq.introduction.db.information_schema.tables; + + +import com.baeldung.jooq.introduction.db.information_schema.InformationSchema; +import com.baeldung.jooq.introduction.db.information_schema.tables.records.InDoubtRecord; + +import javax.annotation.Generated; + +import org.jooq.Field; +import org.jooq.Table; +import org.jooq.TableField; +import org.jooq.impl.TableImpl; + + +/** + * This class is generated by jOOQ. + */ +@Generated( + value = { + "http://www.jooq.org", + "jOOQ version:3.7.3" + }, + comments = "This class is generated by jOOQ" +) +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class InDoubt extends TableImpl { + + private static final long serialVersionUID = 284524946; + + /** + * The reference instance of INFORMATION_SCHEMA.IN_DOUBT + */ + public static final InDoubt IN_DOUBT = new InDoubt(); + + /** + * The class holding records for this type + */ + @Override + public Class getRecordType() { + return InDoubtRecord.class; + } + + /** + * The column INFORMATION_SCHEMA.IN_DOUBT.TRANSACTION. + */ + public final TableField TRANSACTION = createField("TRANSACTION", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.IN_DOUBT.STATE. + */ + public final TableField STATE = createField("STATE", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * Create a INFORMATION_SCHEMA.IN_DOUBT table reference + */ + public InDoubt() { + this("IN_DOUBT", null); + } + + /** + * Create an aliased INFORMATION_SCHEMA.IN_DOUBT table reference + */ + public InDoubt(String alias) { + this(alias, IN_DOUBT); + } + + private InDoubt(String alias, Table aliased) { + this(alias, aliased, null); + } + + private InDoubt(String alias, Table aliased, Field[] parameters) { + super(alias, InformationSchema.INFORMATION_SCHEMA, aliased, parameters, ""); + } + + /** + * {@inheritDoc} + */ + @Override + public InDoubt as(String alias) { + return new InDoubt(alias, this); + } + + /** + * Rename this table + */ + public InDoubt rename(String name) { + return new InDoubt(name, null); + } +} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Indexes.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Indexes.java new file mode 100644 index 0000000000..1cc3b176a2 --- /dev/null +++ b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Indexes.java @@ -0,0 +1,187 @@ +/** + * This class is generated by jOOQ + */ +package com.baeldung.jooq.introduction.db.information_schema.tables; + + +import com.baeldung.jooq.introduction.db.information_schema.InformationSchema; +import com.baeldung.jooq.introduction.db.information_schema.tables.records.IndexesRecord; + +import javax.annotation.Generated; + +import org.jooq.Field; +import org.jooq.Table; +import org.jooq.TableField; +import org.jooq.impl.TableImpl; + + +/** + * This class is generated by jOOQ. + */ +@Generated( + value = { + "http://www.jooq.org", + "jOOQ version:3.7.3" + }, + comments = "This class is generated by jOOQ" +) +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class Indexes extends TableImpl { + + private static final long serialVersionUID = 2077967696; + + /** + * The reference instance of INFORMATION_SCHEMA.INDEXES + */ + public static final Indexes INDEXES = new Indexes(); + + /** + * The class holding records for this type + */ + @Override + public Class getRecordType() { + return IndexesRecord.class; + } + + /** + * The column INFORMATION_SCHEMA.INDEXES.TABLE_CATALOG. + */ + public final TableField TABLE_CATALOG = createField("TABLE_CATALOG", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.INDEXES.TABLE_SCHEMA. + */ + public final TableField TABLE_SCHEMA = createField("TABLE_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.INDEXES.TABLE_NAME. + */ + public final TableField TABLE_NAME = createField("TABLE_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.INDEXES.NON_UNIQUE. + */ + public final TableField NON_UNIQUE = createField("NON_UNIQUE", org.jooq.impl.SQLDataType.BOOLEAN, this, ""); + + /** + * The column INFORMATION_SCHEMA.INDEXES.INDEX_NAME. + */ + public final TableField INDEX_NAME = createField("INDEX_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.INDEXES.ORDINAL_POSITION. + */ + public final TableField ORDINAL_POSITION = createField("ORDINAL_POSITION", org.jooq.impl.SQLDataType.SMALLINT, this, ""); + + /** + * The column INFORMATION_SCHEMA.INDEXES.COLUMN_NAME. + */ + public final TableField COLUMN_NAME = createField("COLUMN_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.INDEXES.CARDINALITY. + */ + public final TableField CARDINALITY = createField("CARDINALITY", org.jooq.impl.SQLDataType.INTEGER, this, ""); + + /** + * The column INFORMATION_SCHEMA.INDEXES.PRIMARY_KEY. + */ + public final TableField PRIMARY_KEY = createField("PRIMARY_KEY", org.jooq.impl.SQLDataType.BOOLEAN, this, ""); + + /** + * The column INFORMATION_SCHEMA.INDEXES.INDEX_TYPE_NAME. + */ + public final TableField INDEX_TYPE_NAME = createField("INDEX_TYPE_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.INDEXES.IS_GENERATED. + */ + public final TableField IS_GENERATED = createField("IS_GENERATED", org.jooq.impl.SQLDataType.BOOLEAN, this, ""); + + /** + * The column INFORMATION_SCHEMA.INDEXES.INDEX_TYPE. + */ + public final TableField INDEX_TYPE = createField("INDEX_TYPE", org.jooq.impl.SQLDataType.SMALLINT, this, ""); + + /** + * The column INFORMATION_SCHEMA.INDEXES.ASC_OR_DESC. + */ + public final TableField ASC_OR_DESC = createField("ASC_OR_DESC", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.INDEXES.PAGES. + */ + public final TableField PAGES = createField("PAGES", org.jooq.impl.SQLDataType.INTEGER, this, ""); + + /** + * The column INFORMATION_SCHEMA.INDEXES.FILTER_CONDITION. + */ + public final TableField FILTER_CONDITION = createField("FILTER_CONDITION", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.INDEXES.REMARKS. + */ + public final TableField REMARKS = createField("REMARKS", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.INDEXES.SQL. + */ + public final TableField SQL = createField("SQL", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.INDEXES.ID. + */ + public final TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this, ""); + + /** + * The column INFORMATION_SCHEMA.INDEXES.SORT_TYPE. + */ + public final TableField SORT_TYPE = createField("SORT_TYPE", org.jooq.impl.SQLDataType.INTEGER, this, ""); + + /** + * The column INFORMATION_SCHEMA.INDEXES.CONSTRAINT_NAME. + */ + public final TableField CONSTRAINT_NAME = createField("CONSTRAINT_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.INDEXES.INDEX_CLASS. + */ + public final TableField INDEX_CLASS = createField("INDEX_CLASS", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * Create a INFORMATION_SCHEMA.INDEXES table reference + */ + public Indexes() { + this("INDEXES", null); + } + + /** + * Create an aliased INFORMATION_SCHEMA.INDEXES table reference + */ + public Indexes(String alias) { + this(alias, INDEXES); + } + + private Indexes(String alias, Table aliased) { + this(alias, aliased, null); + } + + private Indexes(String alias, Table aliased, Field[] parameters) { + super(alias, InformationSchema.INFORMATION_SCHEMA, aliased, parameters, ""); + } + + /** + * {@inheritDoc} + */ + @Override + public Indexes as(String alias) { + return new Indexes(alias, this); + } + + /** + * Rename this table + */ + public Indexes rename(String name) { + return new Indexes(name, null); + } +} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Locks.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Locks.java new file mode 100644 index 0000000000..df9f900f5c --- /dev/null +++ b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Locks.java @@ -0,0 +1,102 @@ +/** + * This class is generated by jOOQ + */ +package com.baeldung.jooq.introduction.db.information_schema.tables; + + +import com.baeldung.jooq.introduction.db.information_schema.InformationSchema; +import com.baeldung.jooq.introduction.db.information_schema.tables.records.LocksRecord; + +import javax.annotation.Generated; + +import org.jooq.Field; +import org.jooq.Table; +import org.jooq.TableField; +import org.jooq.impl.TableImpl; + + +/** + * This class is generated by jOOQ. + */ +@Generated( + value = { + "http://www.jooq.org", + "jOOQ version:3.7.3" + }, + comments = "This class is generated by jOOQ" +) +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class Locks extends TableImpl { + + private static final long serialVersionUID = 169116031; + + /** + * The reference instance of INFORMATION_SCHEMA.LOCKS + */ + public static final Locks LOCKS = new Locks(); + + /** + * The class holding records for this type + */ + @Override + public Class getRecordType() { + return LocksRecord.class; + } + + /** + * The column INFORMATION_SCHEMA.LOCKS.TABLE_SCHEMA. + */ + public final TableField TABLE_SCHEMA = createField("TABLE_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.LOCKS.TABLE_NAME. + */ + public final TableField TABLE_NAME = createField("TABLE_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.LOCKS.SESSION_ID. + */ + public final TableField SESSION_ID = createField("SESSION_ID", org.jooq.impl.SQLDataType.INTEGER, this, ""); + + /** + * The column INFORMATION_SCHEMA.LOCKS.LOCK_TYPE. + */ + public final TableField LOCK_TYPE = createField("LOCK_TYPE", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * Create a INFORMATION_SCHEMA.LOCKS table reference + */ + public Locks() { + this("LOCKS", null); + } + + /** + * Create an aliased INFORMATION_SCHEMA.LOCKS table reference + */ + public Locks(String alias) { + this(alias, LOCKS); + } + + private Locks(String alias, Table aliased) { + this(alias, aliased, null); + } + + private Locks(String alias, Table aliased, Field[] parameters) { + super(alias, InformationSchema.INFORMATION_SCHEMA, aliased, parameters, ""); + } + + /** + * {@inheritDoc} + */ + @Override + public Locks as(String alias) { + return new Locks(alias, this); + } + + /** + * Rename this table + */ + public Locks rename(String name) { + return new Locks(name, null); + } +} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/QueryStatistics.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/QueryStatistics.java new file mode 100644 index 0000000000..6c65dd7de8 --- /dev/null +++ b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/QueryStatistics.java @@ -0,0 +1,142 @@ +/** + * This class is generated by jOOQ + */ +package com.baeldung.jooq.introduction.db.information_schema.tables; + + +import com.baeldung.jooq.introduction.db.information_schema.InformationSchema; +import com.baeldung.jooq.introduction.db.information_schema.tables.records.QueryStatisticsRecord; + +import javax.annotation.Generated; + +import org.jooq.Field; +import org.jooq.Table; +import org.jooq.TableField; +import org.jooq.impl.TableImpl; + + +/** + * This class is generated by jOOQ. + */ +@Generated( + value = { + "http://www.jooq.org", + "jOOQ version:3.7.3" + }, + comments = "This class is generated by jOOQ" +) +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class QueryStatistics extends TableImpl { + + private static final long serialVersionUID = -1610174414; + + /** + * The reference instance of INFORMATION_SCHEMA.QUERY_STATISTICS + */ + public static final QueryStatistics QUERY_STATISTICS = new QueryStatistics(); + + /** + * The class holding records for this type + */ + @Override + public Class getRecordType() { + return QueryStatisticsRecord.class; + } + + /** + * The column INFORMATION_SCHEMA.QUERY_STATISTICS.SQL_STATEMENT. + */ + public final TableField SQL_STATEMENT = createField("SQL_STATEMENT", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.QUERY_STATISTICS.EXECUTION_COUNT. + */ + public final TableField EXECUTION_COUNT = createField("EXECUTION_COUNT", org.jooq.impl.SQLDataType.INTEGER, this, ""); + + /** + * The column INFORMATION_SCHEMA.QUERY_STATISTICS.MIN_EXECUTION_TIME. + */ + public final TableField MIN_EXECUTION_TIME = createField("MIN_EXECUTION_TIME", org.jooq.impl.SQLDataType.BIGINT, this, ""); + + /** + * The column INFORMATION_SCHEMA.QUERY_STATISTICS.MAX_EXECUTION_TIME. + */ + public final TableField MAX_EXECUTION_TIME = createField("MAX_EXECUTION_TIME", org.jooq.impl.SQLDataType.BIGINT, this, ""); + + /** + * The column INFORMATION_SCHEMA.QUERY_STATISTICS.CUMULATIVE_EXECUTION_TIME. + */ + public final TableField CUMULATIVE_EXECUTION_TIME = createField("CUMULATIVE_EXECUTION_TIME", org.jooq.impl.SQLDataType.BIGINT, this, ""); + + /** + * The column INFORMATION_SCHEMA.QUERY_STATISTICS.AVERAGE_EXECUTION_TIME. + */ + public final TableField AVERAGE_EXECUTION_TIME = createField("AVERAGE_EXECUTION_TIME", org.jooq.impl.SQLDataType.DOUBLE, this, ""); + + /** + * The column INFORMATION_SCHEMA.QUERY_STATISTICS.STD_DEV_EXECUTION_TIME. + */ + public final TableField STD_DEV_EXECUTION_TIME = createField("STD_DEV_EXECUTION_TIME", org.jooq.impl.SQLDataType.DOUBLE, this, ""); + + /** + * The column INFORMATION_SCHEMA.QUERY_STATISTICS.MIN_ROW_COUNT. + */ + public final TableField MIN_ROW_COUNT = createField("MIN_ROW_COUNT", org.jooq.impl.SQLDataType.INTEGER, this, ""); + + /** + * The column INFORMATION_SCHEMA.QUERY_STATISTICS.MAX_ROW_COUNT. + */ + public final TableField MAX_ROW_COUNT = createField("MAX_ROW_COUNT", org.jooq.impl.SQLDataType.INTEGER, this, ""); + + /** + * The column INFORMATION_SCHEMA.QUERY_STATISTICS.CUMULATIVE_ROW_COUNT. + */ + public final TableField CUMULATIVE_ROW_COUNT = createField("CUMULATIVE_ROW_COUNT", org.jooq.impl.SQLDataType.BIGINT, this, ""); + + /** + * The column INFORMATION_SCHEMA.QUERY_STATISTICS.AVERAGE_ROW_COUNT. + */ + public final TableField AVERAGE_ROW_COUNT = createField("AVERAGE_ROW_COUNT", org.jooq.impl.SQLDataType.DOUBLE, this, ""); + + /** + * The column INFORMATION_SCHEMA.QUERY_STATISTICS.STD_DEV_ROW_COUNT. + */ + public final TableField STD_DEV_ROW_COUNT = createField("STD_DEV_ROW_COUNT", org.jooq.impl.SQLDataType.DOUBLE, this, ""); + + /** + * Create a INFORMATION_SCHEMA.QUERY_STATISTICS table reference + */ + public QueryStatistics() { + this("QUERY_STATISTICS", null); + } + + /** + * Create an aliased INFORMATION_SCHEMA.QUERY_STATISTICS table reference + */ + public QueryStatistics(String alias) { + this(alias, QUERY_STATISTICS); + } + + private QueryStatistics(String alias, Table aliased) { + this(alias, aliased, null); + } + + private QueryStatistics(String alias, Table aliased, Field[] parameters) { + super(alias, InformationSchema.INFORMATION_SCHEMA, aliased, parameters, ""); + } + + /** + * {@inheritDoc} + */ + @Override + public QueryStatistics as(String alias) { + return new QueryStatistics(alias, this); + } + + /** + * Rename this table + */ + public QueryStatistics rename(String name) { + return new QueryStatistics(name, null); + } +} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Rights.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Rights.java new file mode 100644 index 0000000000..e00c2d336e --- /dev/null +++ b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Rights.java @@ -0,0 +1,117 @@ +/** + * This class is generated by jOOQ + */ +package com.baeldung.jooq.introduction.db.information_schema.tables; + + +import com.baeldung.jooq.introduction.db.information_schema.InformationSchema; +import com.baeldung.jooq.introduction.db.information_schema.tables.records.RightsRecord; + +import javax.annotation.Generated; + +import org.jooq.Field; +import org.jooq.Table; +import org.jooq.TableField; +import org.jooq.impl.TableImpl; + + +/** + * This class is generated by jOOQ. + */ +@Generated( + value = { + "http://www.jooq.org", + "jOOQ version:3.7.3" + }, + comments = "This class is generated by jOOQ" +) +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class Rights extends TableImpl { + + private static final long serialVersionUID = -2076280081; + + /** + * The reference instance of INFORMATION_SCHEMA.RIGHTS + */ + public static final Rights RIGHTS = new Rights(); + + /** + * The class holding records for this type + */ + @Override + public Class getRecordType() { + return RightsRecord.class; + } + + /** + * The column INFORMATION_SCHEMA.RIGHTS.GRANTEE. + */ + public final TableField GRANTEE = createField("GRANTEE", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.RIGHTS.GRANTEETYPE. + */ + public final TableField GRANTEETYPE = createField("GRANTEETYPE", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.RIGHTS.GRANTEDROLE. + */ + public final TableField GRANTEDROLE = createField("GRANTEDROLE", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.RIGHTS.RIGHTS. + */ + public final TableField RIGHTS_ = createField("RIGHTS", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.RIGHTS.TABLE_SCHEMA. + */ + public final TableField TABLE_SCHEMA = createField("TABLE_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.RIGHTS.TABLE_NAME. + */ + public final TableField TABLE_NAME = createField("TABLE_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.RIGHTS.ID. + */ + public final TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this, ""); + + /** + * Create a INFORMATION_SCHEMA.RIGHTS table reference + */ + public Rights() { + this("RIGHTS", null); + } + + /** + * Create an aliased INFORMATION_SCHEMA.RIGHTS table reference + */ + public Rights(String alias) { + this(alias, RIGHTS); + } + + private Rights(String alias, Table aliased) { + this(alias, aliased, null); + } + + private Rights(String alias, Table aliased, Field[] parameters) { + super(alias, InformationSchema.INFORMATION_SCHEMA, aliased, parameters, ""); + } + + /** + * {@inheritDoc} + */ + @Override + public Rights as(String alias) { + return new Rights(alias, this); + } + + /** + * Rename this table + */ + public Rights rename(String name) { + return new Rights(name, null); + } +} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Roles.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Roles.java new file mode 100644 index 0000000000..74a394945a --- /dev/null +++ b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Roles.java @@ -0,0 +1,97 @@ +/** + * This class is generated by jOOQ + */ +package com.baeldung.jooq.introduction.db.information_schema.tables; + + +import com.baeldung.jooq.introduction.db.information_schema.InformationSchema; +import com.baeldung.jooq.introduction.db.information_schema.tables.records.RolesRecord; + +import javax.annotation.Generated; + +import org.jooq.Field; +import org.jooq.Table; +import org.jooq.TableField; +import org.jooq.impl.TableImpl; + + +/** + * This class is generated by jOOQ. + */ +@Generated( + value = { + "http://www.jooq.org", + "jOOQ version:3.7.3" + }, + comments = "This class is generated by jOOQ" +) +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class Roles extends TableImpl { + + private static final long serialVersionUID = 1847269376; + + /** + * The reference instance of INFORMATION_SCHEMA.ROLES + */ + public static final Roles ROLES = new Roles(); + + /** + * The class holding records for this type + */ + @Override + public Class getRecordType() { + return RolesRecord.class; + } + + /** + * The column INFORMATION_SCHEMA.ROLES.NAME. + */ + public final TableField NAME = createField("NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.ROLES.REMARKS. + */ + public final TableField REMARKS = createField("REMARKS", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.ROLES.ID. + */ + public final TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this, ""); + + /** + * Create a INFORMATION_SCHEMA.ROLES table reference + */ + public Roles() { + this("ROLES", null); + } + + /** + * Create an aliased INFORMATION_SCHEMA.ROLES table reference + */ + public Roles(String alias) { + this(alias, ROLES); + } + + private Roles(String alias, Table aliased) { + this(alias, aliased, null); + } + + private Roles(String alias, Table aliased, Field[] parameters) { + super(alias, InformationSchema.INFORMATION_SCHEMA, aliased, parameters, ""); + } + + /** + * {@inheritDoc} + */ + @Override + public Roles as(String alias) { + return new Roles(alias, this); + } + + /** + * Rename this table + */ + public Roles rename(String name) { + return new Roles(name, null); + } +} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Schemata.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Schemata.java new file mode 100644 index 0000000000..b084c3501c --- /dev/null +++ b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Schemata.java @@ -0,0 +1,122 @@ +/** + * This class is generated by jOOQ + */ +package com.baeldung.jooq.introduction.db.information_schema.tables; + + +import com.baeldung.jooq.introduction.db.information_schema.InformationSchema; +import com.baeldung.jooq.introduction.db.information_schema.tables.records.SchemataRecord; + +import javax.annotation.Generated; + +import org.jooq.Field; +import org.jooq.Table; +import org.jooq.TableField; +import org.jooq.impl.TableImpl; + + +/** + * This class is generated by jOOQ. + */ +@Generated( + value = { + "http://www.jooq.org", + "jOOQ version:3.7.3" + }, + comments = "This class is generated by jOOQ" +) +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class Schemata extends TableImpl { + + private static final long serialVersionUID = -1029782582; + + /** + * The reference instance of INFORMATION_SCHEMA.SCHEMATA + */ + public static final Schemata SCHEMATA = new Schemata(); + + /** + * The class holding records for this type + */ + @Override + public Class getRecordType() { + return SchemataRecord.class; + } + + /** + * The column INFORMATION_SCHEMA.SCHEMATA.CATALOG_NAME. + */ + public final TableField CATALOG_NAME = createField("CATALOG_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.SCHEMATA.SCHEMA_NAME. + */ + public final TableField SCHEMA_NAME = createField("SCHEMA_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.SCHEMATA.SCHEMA_OWNER. + */ + public final TableField SCHEMA_OWNER = createField("SCHEMA_OWNER", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.SCHEMATA.DEFAULT_CHARACTER_SET_NAME. + */ + public final TableField DEFAULT_CHARACTER_SET_NAME = createField("DEFAULT_CHARACTER_SET_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.SCHEMATA.DEFAULT_COLLATION_NAME. + */ + public final TableField DEFAULT_COLLATION_NAME = createField("DEFAULT_COLLATION_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.SCHEMATA.IS_DEFAULT. + */ + public final TableField IS_DEFAULT = createField("IS_DEFAULT", org.jooq.impl.SQLDataType.BOOLEAN, this, ""); + + /** + * The column INFORMATION_SCHEMA.SCHEMATA.REMARKS. + */ + public final TableField REMARKS = createField("REMARKS", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.SCHEMATA.ID. + */ + public final TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this, ""); + + /** + * Create a INFORMATION_SCHEMA.SCHEMATA table reference + */ + public Schemata() { + this("SCHEMATA", null); + } + + /** + * Create an aliased INFORMATION_SCHEMA.SCHEMATA table reference + */ + public Schemata(String alias) { + this(alias, SCHEMATA); + } + + private Schemata(String alias, Table aliased) { + this(alias, aliased, null); + } + + private Schemata(String alias, Table aliased, Field[] parameters) { + super(alias, InformationSchema.INFORMATION_SCHEMA, aliased, parameters, ""); + } + + /** + * {@inheritDoc} + */ + @Override + public Schemata as(String alias) { + return new Schemata(alias, this); + } + + /** + * Rename this table + */ + public Schemata rename(String name) { + return new Schemata(name, null); + } +} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Sequences.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Sequences.java new file mode 100644 index 0000000000..26c2da9080 --- /dev/null +++ b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Sequences.java @@ -0,0 +1,142 @@ +/** + * This class is generated by jOOQ + */ +package com.baeldung.jooq.introduction.db.information_schema.tables; + + +import com.baeldung.jooq.introduction.db.information_schema.InformationSchema; +import com.baeldung.jooq.introduction.db.information_schema.tables.records.SequencesRecord; + +import javax.annotation.Generated; + +import org.jooq.Field; +import org.jooq.Table; +import org.jooq.TableField; +import org.jooq.impl.TableImpl; + + +/** + * This class is generated by jOOQ. + */ +@Generated( + value = { + "http://www.jooq.org", + "jOOQ version:3.7.3" + }, + comments = "This class is generated by jOOQ" +) +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class Sequences extends TableImpl { + + private static final long serialVersionUID = -1302373749; + + /** + * The reference instance of INFORMATION_SCHEMA.SEQUENCES + */ + public static final Sequences SEQUENCES = new Sequences(); + + /** + * The class holding records for this type + */ + @Override + public Class getRecordType() { + return SequencesRecord.class; + } + + /** + * The column INFORMATION_SCHEMA.SEQUENCES.SEQUENCE_CATALOG. + */ + public final TableField SEQUENCE_CATALOG = createField("SEQUENCE_CATALOG", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.SEQUENCES.SEQUENCE_SCHEMA. + */ + public final TableField SEQUENCE_SCHEMA = createField("SEQUENCE_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.SEQUENCES.SEQUENCE_NAME. + */ + public final TableField SEQUENCE_NAME = createField("SEQUENCE_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.SEQUENCES.CURRENT_VALUE. + */ + public final TableField CURRENT_VALUE = createField("CURRENT_VALUE", org.jooq.impl.SQLDataType.BIGINT, this, ""); + + /** + * The column INFORMATION_SCHEMA.SEQUENCES.INCREMENT. + */ + public final TableField INCREMENT = createField("INCREMENT", org.jooq.impl.SQLDataType.BIGINT, this, ""); + + /** + * The column INFORMATION_SCHEMA.SEQUENCES.IS_GENERATED. + */ + public final TableField IS_GENERATED = createField("IS_GENERATED", org.jooq.impl.SQLDataType.BOOLEAN, this, ""); + + /** + * The column INFORMATION_SCHEMA.SEQUENCES.REMARKS. + */ + public final TableField REMARKS = createField("REMARKS", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.SEQUENCES.CACHE. + */ + public final TableField CACHE = createField("CACHE", org.jooq.impl.SQLDataType.BIGINT, this, ""); + + /** + * The column INFORMATION_SCHEMA.SEQUENCES.MIN_VALUE. + */ + public final TableField MIN_VALUE = createField("MIN_VALUE", org.jooq.impl.SQLDataType.BIGINT, this, ""); + + /** + * The column INFORMATION_SCHEMA.SEQUENCES.MAX_VALUE. + */ + public final TableField MAX_VALUE = createField("MAX_VALUE", org.jooq.impl.SQLDataType.BIGINT, this, ""); + + /** + * The column INFORMATION_SCHEMA.SEQUENCES.IS_CYCLE. + */ + public final TableField IS_CYCLE = createField("IS_CYCLE", org.jooq.impl.SQLDataType.BOOLEAN, this, ""); + + /** + * The column INFORMATION_SCHEMA.SEQUENCES.ID. + */ + public final TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this, ""); + + /** + * Create a INFORMATION_SCHEMA.SEQUENCES table reference + */ + public Sequences() { + this("SEQUENCES", null); + } + + /** + * Create an aliased INFORMATION_SCHEMA.SEQUENCES table reference + */ + public Sequences(String alias) { + this(alias, SEQUENCES); + } + + private Sequences(String alias, Table aliased) { + this(alias, aliased, null); + } + + private Sequences(String alias, Table aliased, Field[] parameters) { + super(alias, InformationSchema.INFORMATION_SCHEMA, aliased, parameters, ""); + } + + /** + * {@inheritDoc} + */ + @Override + public Sequences as(String alias) { + return new Sequences(alias, this); + } + + /** + * Rename this table + */ + public Sequences rename(String name) { + return new Sequences(name, null); + } +} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/SessionState.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/SessionState.java new file mode 100644 index 0000000000..78e0ff743a --- /dev/null +++ b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/SessionState.java @@ -0,0 +1,92 @@ +/** + * This class is generated by jOOQ + */ +package com.baeldung.jooq.introduction.db.information_schema.tables; + + +import com.baeldung.jooq.introduction.db.information_schema.InformationSchema; +import com.baeldung.jooq.introduction.db.information_schema.tables.records.SessionStateRecord; + +import javax.annotation.Generated; + +import org.jooq.Field; +import org.jooq.Table; +import org.jooq.TableField; +import org.jooq.impl.TableImpl; + + +/** + * This class is generated by jOOQ. + */ +@Generated( + value = { + "http://www.jooq.org", + "jOOQ version:3.7.3" + }, + comments = "This class is generated by jOOQ" +) +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class SessionState extends TableImpl { + + private static final long serialVersionUID = 919891380; + + /** + * The reference instance of INFORMATION_SCHEMA.SESSION_STATE + */ + public static final SessionState SESSION_STATE = new SessionState(); + + /** + * The class holding records for this type + */ + @Override + public Class getRecordType() { + return SessionStateRecord.class; + } + + /** + * The column INFORMATION_SCHEMA.SESSION_STATE.KEY. + */ + public final TableField KEY = createField("KEY", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.SESSION_STATE.SQL. + */ + public final TableField SQL = createField("SQL", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * Create a INFORMATION_SCHEMA.SESSION_STATE table reference + */ + public SessionState() { + this("SESSION_STATE", null); + } + + /** + * Create an aliased INFORMATION_SCHEMA.SESSION_STATE table reference + */ + public SessionState(String alias) { + this(alias, SESSION_STATE); + } + + private SessionState(String alias, Table aliased) { + this(alias, aliased, null); + } + + private SessionState(String alias, Table aliased, Field[] parameters) { + super(alias, InformationSchema.INFORMATION_SCHEMA, aliased, parameters, ""); + } + + /** + * {@inheritDoc} + */ + @Override + public SessionState as(String alias) { + return new SessionState(alias, this); + } + + /** + * Rename this table + */ + public SessionState rename(String name) { + return new SessionState(name, null); + } +} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Sessions.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Sessions.java new file mode 100644 index 0000000000..22166987d9 --- /dev/null +++ b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Sessions.java @@ -0,0 +1,112 @@ +/** + * This class is generated by jOOQ + */ +package com.baeldung.jooq.introduction.db.information_schema.tables; + + +import com.baeldung.jooq.introduction.db.information_schema.InformationSchema; +import com.baeldung.jooq.introduction.db.information_schema.tables.records.SessionsRecord; + +import javax.annotation.Generated; + +import org.jooq.Field; +import org.jooq.Table; +import org.jooq.TableField; +import org.jooq.impl.TableImpl; + + +/** + * This class is generated by jOOQ. + */ +@Generated( + value = { + "http://www.jooq.org", + "jOOQ version:3.7.3" + }, + comments = "This class is generated by jOOQ" +) +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class Sessions extends TableImpl { + + private static final long serialVersionUID = -975884629; + + /** + * The reference instance of INFORMATION_SCHEMA.SESSIONS + */ + public static final Sessions SESSIONS = new Sessions(); + + /** + * The class holding records for this type + */ + @Override + public Class getRecordType() { + return SessionsRecord.class; + } + + /** + * The column INFORMATION_SCHEMA.SESSIONS.ID. + */ + public final TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this, ""); + + /** + * The column INFORMATION_SCHEMA.SESSIONS.USER_NAME. + */ + public final TableField USER_NAME = createField("USER_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.SESSIONS.SESSION_START. + */ + public final TableField SESSION_START = createField("SESSION_START", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.SESSIONS.STATEMENT. + */ + public final TableField STATEMENT = createField("STATEMENT", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.SESSIONS.STATEMENT_START. + */ + public final TableField STATEMENT_START = createField("STATEMENT_START", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.SESSIONS.CONTAINS_UNCOMMITTED. + */ + public final TableField CONTAINS_UNCOMMITTED = createField("CONTAINS_UNCOMMITTED", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * Create a INFORMATION_SCHEMA.SESSIONS table reference + */ + public Sessions() { + this("SESSIONS", null); + } + + /** + * Create an aliased INFORMATION_SCHEMA.SESSIONS table reference + */ + public Sessions(String alias) { + this(alias, SESSIONS); + } + + private Sessions(String alias, Table aliased) { + this(alias, aliased, null); + } + + private Sessions(String alias, Table aliased, Field[] parameters) { + super(alias, InformationSchema.INFORMATION_SCHEMA, aliased, parameters, ""); + } + + /** + * {@inheritDoc} + */ + @Override + public Sessions as(String alias) { + return new Sessions(alias, this); + } + + /** + * Rename this table + */ + public Sessions rename(String name) { + return new Sessions(name, null); + } +} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Settings.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Settings.java new file mode 100644 index 0000000000..caca515c67 --- /dev/null +++ b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Settings.java @@ -0,0 +1,92 @@ +/** + * This class is generated by jOOQ + */ +package com.baeldung.jooq.introduction.db.information_schema.tables; + + +import com.baeldung.jooq.introduction.db.information_schema.InformationSchema; +import com.baeldung.jooq.introduction.db.information_schema.tables.records.SettingsRecord; + +import javax.annotation.Generated; + +import org.jooq.Field; +import org.jooq.Table; +import org.jooq.TableField; +import org.jooq.impl.TableImpl; + + +/** + * This class is generated by jOOQ. + */ +@Generated( + value = { + "http://www.jooq.org", + "jOOQ version:3.7.3" + }, + comments = "This class is generated by jOOQ" +) +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class Settings extends TableImpl { + + private static final long serialVersionUID = -1983664507; + + /** + * The reference instance of INFORMATION_SCHEMA.SETTINGS + */ + public static final Settings SETTINGS = new Settings(); + + /** + * The class holding records for this type + */ + @Override + public Class getRecordType() { + return SettingsRecord.class; + } + + /** + * The column INFORMATION_SCHEMA.SETTINGS.NAME. + */ + public final TableField NAME = createField("NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.SETTINGS.VALUE. + */ + public final TableField VALUE = createField("VALUE", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * Create a INFORMATION_SCHEMA.SETTINGS table reference + */ + public Settings() { + this("SETTINGS", null); + } + + /** + * Create an aliased INFORMATION_SCHEMA.SETTINGS table reference + */ + public Settings(String alias) { + this(alias, SETTINGS); + } + + private Settings(String alias, Table aliased) { + this(alias, aliased, null); + } + + private Settings(String alias, Table aliased, Field[] parameters) { + super(alias, InformationSchema.INFORMATION_SCHEMA, aliased, parameters, ""); + } + + /** + * {@inheritDoc} + */ + @Override + public Settings as(String alias) { + return new Settings(alias, this); + } + + /** + * Rename this table + */ + public Settings rename(String name) { + return new Settings(name, null); + } +} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/TablePrivileges.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/TablePrivileges.java new file mode 100644 index 0000000000..16104aa4bb --- /dev/null +++ b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/TablePrivileges.java @@ -0,0 +1,117 @@ +/** + * This class is generated by jOOQ + */ +package com.baeldung.jooq.introduction.db.information_schema.tables; + + +import com.baeldung.jooq.introduction.db.information_schema.InformationSchema; +import com.baeldung.jooq.introduction.db.information_schema.tables.records.TablePrivilegesRecord; + +import javax.annotation.Generated; + +import org.jooq.Field; +import org.jooq.Table; +import org.jooq.TableField; +import org.jooq.impl.TableImpl; + + +/** + * This class is generated by jOOQ. + */ +@Generated( + value = { + "http://www.jooq.org", + "jOOQ version:3.7.3" + }, + comments = "This class is generated by jOOQ" +) +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class TablePrivileges extends TableImpl { + + private static final long serialVersionUID = -270543696; + + /** + * The reference instance of INFORMATION_SCHEMA.TABLE_PRIVILEGES + */ + public static final TablePrivileges TABLE_PRIVILEGES = new TablePrivileges(); + + /** + * The class holding records for this type + */ + @Override + public Class getRecordType() { + return TablePrivilegesRecord.class; + } + + /** + * The column INFORMATION_SCHEMA.TABLE_PRIVILEGES.GRANTOR. + */ + public final TableField GRANTOR = createField("GRANTOR", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.TABLE_PRIVILEGES.GRANTEE. + */ + public final TableField GRANTEE = createField("GRANTEE", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.TABLE_PRIVILEGES.TABLE_CATALOG. + */ + public final TableField TABLE_CATALOG = createField("TABLE_CATALOG", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.TABLE_PRIVILEGES.TABLE_SCHEMA. + */ + public final TableField TABLE_SCHEMA = createField("TABLE_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.TABLE_PRIVILEGES.TABLE_NAME. + */ + public final TableField TABLE_NAME = createField("TABLE_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.TABLE_PRIVILEGES.PRIVILEGE_TYPE. + */ + public final TableField PRIVILEGE_TYPE = createField("PRIVILEGE_TYPE", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.TABLE_PRIVILEGES.IS_GRANTABLE. + */ + public final TableField IS_GRANTABLE = createField("IS_GRANTABLE", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * Create a INFORMATION_SCHEMA.TABLE_PRIVILEGES table reference + */ + public TablePrivileges() { + this("TABLE_PRIVILEGES", null); + } + + /** + * Create an aliased INFORMATION_SCHEMA.TABLE_PRIVILEGES table reference + */ + public TablePrivileges(String alias) { + this(alias, TABLE_PRIVILEGES); + } + + private TablePrivileges(String alias, Table aliased) { + this(alias, aliased, null); + } + + private TablePrivileges(String alias, Table aliased, Field[] parameters) { + super(alias, InformationSchema.INFORMATION_SCHEMA, aliased, parameters, ""); + } + + /** + * {@inheritDoc} + */ + @Override + public TablePrivileges as(String alias) { + return new TablePrivileges(alias, this); + } + + /** + * Rename this table + */ + public TablePrivileges rename(String name) { + return new TablePrivileges(name, null); + } +} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/TableTypes.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/TableTypes.java new file mode 100644 index 0000000000..6901b10786 --- /dev/null +++ b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/TableTypes.java @@ -0,0 +1,87 @@ +/** + * This class is generated by jOOQ + */ +package com.baeldung.jooq.introduction.db.information_schema.tables; + + +import com.baeldung.jooq.introduction.db.information_schema.InformationSchema; +import com.baeldung.jooq.introduction.db.information_schema.tables.records.TableTypesRecord; + +import javax.annotation.Generated; + +import org.jooq.Field; +import org.jooq.Table; +import org.jooq.TableField; +import org.jooq.impl.TableImpl; + + +/** + * This class is generated by jOOQ. + */ +@Generated( + value = { + "http://www.jooq.org", + "jOOQ version:3.7.3" + }, + comments = "This class is generated by jOOQ" +) +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class TableTypes extends TableImpl { + + private static final long serialVersionUID = 676525061; + + /** + * The reference instance of INFORMATION_SCHEMA.TABLE_TYPES + */ + public static final TableTypes TABLE_TYPES = new TableTypes(); + + /** + * The class holding records for this type + */ + @Override + public Class getRecordType() { + return TableTypesRecord.class; + } + + /** + * The column INFORMATION_SCHEMA.TABLE_TYPES.TYPE. + */ + public final TableField TYPE = createField("TYPE", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * Create a INFORMATION_SCHEMA.TABLE_TYPES table reference + */ + public TableTypes() { + this("TABLE_TYPES", null); + } + + /** + * Create an aliased INFORMATION_SCHEMA.TABLE_TYPES table reference + */ + public TableTypes(String alias) { + this(alias, TABLE_TYPES); + } + + private TableTypes(String alias, Table aliased) { + this(alias, aliased, null); + } + + private TableTypes(String alias, Table aliased, Field[] parameters) { + super(alias, InformationSchema.INFORMATION_SCHEMA, aliased, parameters, ""); + } + + /** + * {@inheritDoc} + */ + @Override + public TableTypes as(String alias) { + return new TableTypes(alias, this); + } + + /** + * Rename this table + */ + public TableTypes rename(String name) { + return new TableTypes(name, null); + } +} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Tables.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Tables.java new file mode 100644 index 0000000000..f0927166a5 --- /dev/null +++ b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Tables.java @@ -0,0 +1,142 @@ +/** + * This class is generated by jOOQ + */ +package com.baeldung.jooq.introduction.db.information_schema.tables; + + +import com.baeldung.jooq.introduction.db.information_schema.InformationSchema; +import com.baeldung.jooq.introduction.db.information_schema.tables.records.TablesRecord; + +import javax.annotation.Generated; + +import org.jooq.Field; +import org.jooq.Table; +import org.jooq.TableField; +import org.jooq.impl.TableImpl; + + +/** + * This class is generated by jOOQ. + */ +@Generated( + value = { + "http://www.jooq.org", + "jOOQ version:3.7.3" + }, + comments = "This class is generated by jOOQ" +) +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class Tables extends TableImpl { + + private static final long serialVersionUID = 123051350; + + /** + * The reference instance of INFORMATION_SCHEMA.TABLES + */ + public static final Tables TABLES = new Tables(); + + /** + * The class holding records for this type + */ + @Override + public Class getRecordType() { + return TablesRecord.class; + } + + /** + * The column INFORMATION_SCHEMA.TABLES.TABLE_CATALOG. + */ + public final TableField TABLE_CATALOG = createField("TABLE_CATALOG", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.TABLES.TABLE_SCHEMA. + */ + public final TableField TABLE_SCHEMA = createField("TABLE_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.TABLES.TABLE_NAME. + */ + public final TableField TABLE_NAME = createField("TABLE_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.TABLES.TABLE_TYPE. + */ + public final TableField TABLE_TYPE = createField("TABLE_TYPE", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.TABLES.STORAGE_TYPE. + */ + public final TableField STORAGE_TYPE = createField("STORAGE_TYPE", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.TABLES.SQL. + */ + public final TableField SQL = createField("SQL", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.TABLES.REMARKS. + */ + public final TableField REMARKS = createField("REMARKS", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.TABLES.LAST_MODIFICATION. + */ + public final TableField LAST_MODIFICATION = createField("LAST_MODIFICATION", org.jooq.impl.SQLDataType.BIGINT, this, ""); + + /** + * The column INFORMATION_SCHEMA.TABLES.ID. + */ + public final TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this, ""); + + /** + * The column INFORMATION_SCHEMA.TABLES.TYPE_NAME. + */ + public final TableField TYPE_NAME = createField("TYPE_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.TABLES.TABLE_CLASS. + */ + public final TableField TABLE_CLASS = createField("TABLE_CLASS", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.TABLES.ROW_COUNT_ESTIMATE. + */ + public final TableField ROW_COUNT_ESTIMATE = createField("ROW_COUNT_ESTIMATE", org.jooq.impl.SQLDataType.BIGINT, this, ""); + + /** + * Create a INFORMATION_SCHEMA.TABLES table reference + */ + public Tables() { + this("TABLES", null); + } + + /** + * Create an aliased INFORMATION_SCHEMA.TABLES table reference + */ + public Tables(String alias) { + this(alias, TABLES); + } + + private Tables(String alias, Table aliased) { + this(alias, aliased, null); + } + + private Tables(String alias, Table aliased, Field[] parameters) { + super(alias, InformationSchema.INFORMATION_SCHEMA, aliased, parameters, ""); + } + + /** + * {@inheritDoc} + */ + @Override + public Tables as(String alias) { + return new Tables(alias, this); + } + + /** + * Rename this table + */ + public Tables rename(String name) { + return new Tables(name, null); + } +} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Triggers.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Triggers.java new file mode 100644 index 0000000000..375478af7a --- /dev/null +++ b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Triggers.java @@ -0,0 +1,152 @@ +/** + * This class is generated by jOOQ + */ +package com.baeldung.jooq.introduction.db.information_schema.tables; + + +import com.baeldung.jooq.introduction.db.information_schema.InformationSchema; +import com.baeldung.jooq.introduction.db.information_schema.tables.records.TriggersRecord; + +import javax.annotation.Generated; + +import org.jooq.Field; +import org.jooq.Table; +import org.jooq.TableField; +import org.jooq.impl.TableImpl; + + +/** + * This class is generated by jOOQ. + */ +@Generated( + value = { + "http://www.jooq.org", + "jOOQ version:3.7.3" + }, + comments = "This class is generated by jOOQ" +) +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class Triggers extends TableImpl { + + private static final long serialVersionUID = 376103066; + + /** + * The reference instance of INFORMATION_SCHEMA.TRIGGERS + */ + public static final Triggers TRIGGERS = new Triggers(); + + /** + * The class holding records for this type + */ + @Override + public Class getRecordType() { + return TriggersRecord.class; + } + + /** + * The column INFORMATION_SCHEMA.TRIGGERS.TRIGGER_CATALOG. + */ + public final TableField TRIGGER_CATALOG = createField("TRIGGER_CATALOG", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.TRIGGERS.TRIGGER_SCHEMA. + */ + public final TableField TRIGGER_SCHEMA = createField("TRIGGER_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.TRIGGERS.TRIGGER_NAME. + */ + public final TableField TRIGGER_NAME = createField("TRIGGER_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.TRIGGERS.TRIGGER_TYPE. + */ + public final TableField TRIGGER_TYPE = createField("TRIGGER_TYPE", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.TRIGGERS.TABLE_CATALOG. + */ + public final TableField TABLE_CATALOG = createField("TABLE_CATALOG", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.TRIGGERS.TABLE_SCHEMA. + */ + public final TableField TABLE_SCHEMA = createField("TABLE_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.TRIGGERS.TABLE_NAME. + */ + public final TableField TABLE_NAME = createField("TABLE_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.TRIGGERS.BEFORE. + */ + public final TableField BEFORE = createField("BEFORE", org.jooq.impl.SQLDataType.BOOLEAN, this, ""); + + /** + * The column INFORMATION_SCHEMA.TRIGGERS.JAVA_CLASS. + */ + public final TableField JAVA_CLASS = createField("JAVA_CLASS", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.TRIGGERS.QUEUE_SIZE. + */ + public final TableField QUEUE_SIZE = createField("QUEUE_SIZE", org.jooq.impl.SQLDataType.INTEGER, this, ""); + + /** + * The column INFORMATION_SCHEMA.TRIGGERS.NO_WAIT. + */ + public final TableField NO_WAIT = createField("NO_WAIT", org.jooq.impl.SQLDataType.BOOLEAN, this, ""); + + /** + * The column INFORMATION_SCHEMA.TRIGGERS.REMARKS. + */ + public final TableField REMARKS = createField("REMARKS", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.TRIGGERS.SQL. + */ + public final TableField SQL = createField("SQL", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.TRIGGERS.ID. + */ + public final TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this, ""); + + /** + * Create a INFORMATION_SCHEMA.TRIGGERS table reference + */ + public Triggers() { + this("TRIGGERS", null); + } + + /** + * Create an aliased INFORMATION_SCHEMA.TRIGGERS table reference + */ + public Triggers(String alias) { + this(alias, TRIGGERS); + } + + private Triggers(String alias, Table aliased) { + this(alias, aliased, null); + } + + private Triggers(String alias, Table aliased, Field[] parameters) { + super(alias, InformationSchema.INFORMATION_SCHEMA, aliased, parameters, ""); + } + + /** + * {@inheritDoc} + */ + @Override + public Triggers as(String alias) { + return new Triggers(alias, this); + } + + /** + * Rename this table + */ + public Triggers rename(String name) { + return new Triggers(name, null); + } +} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/TypeInfo.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/TypeInfo.java new file mode 100644 index 0000000000..3db18ebee4 --- /dev/null +++ b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/TypeInfo.java @@ -0,0 +1,152 @@ +/** + * This class is generated by jOOQ + */ +package com.baeldung.jooq.introduction.db.information_schema.tables; + + +import com.baeldung.jooq.introduction.db.information_schema.InformationSchema; +import com.baeldung.jooq.introduction.db.information_schema.tables.records.TypeInfoRecord; + +import javax.annotation.Generated; + +import org.jooq.Field; +import org.jooq.Table; +import org.jooq.TableField; +import org.jooq.impl.TableImpl; + + +/** + * This class is generated by jOOQ. + */ +@Generated( + value = { + "http://www.jooq.org", + "jOOQ version:3.7.3" + }, + comments = "This class is generated by jOOQ" +) +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class TypeInfo extends TableImpl { + + private static final long serialVersionUID = -242556633; + + /** + * The reference instance of INFORMATION_SCHEMA.TYPE_INFO + */ + public static final TypeInfo TYPE_INFO = new TypeInfo(); + + /** + * The class holding records for this type + */ + @Override + public Class getRecordType() { + return TypeInfoRecord.class; + } + + /** + * The column INFORMATION_SCHEMA.TYPE_INFO.TYPE_NAME. + */ + public final TableField TYPE_NAME = createField("TYPE_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.TYPE_INFO.DATA_TYPE. + */ + public final TableField DATA_TYPE = createField("DATA_TYPE", org.jooq.impl.SQLDataType.INTEGER, this, ""); + + /** + * The column INFORMATION_SCHEMA.TYPE_INFO.PRECISION. + */ + public final TableField PRECISION = createField("PRECISION", org.jooq.impl.SQLDataType.INTEGER, this, ""); + + /** + * The column INFORMATION_SCHEMA.TYPE_INFO.PREFIX. + */ + public final TableField PREFIX = createField("PREFIX", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.TYPE_INFO.SUFFIX. + */ + public final TableField SUFFIX = createField("SUFFIX", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.TYPE_INFO.PARAMS. + */ + public final TableField PARAMS = createField("PARAMS", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.TYPE_INFO.AUTO_INCREMENT. + */ + public final TableField AUTO_INCREMENT = createField("AUTO_INCREMENT", org.jooq.impl.SQLDataType.BOOLEAN, this, ""); + + /** + * The column INFORMATION_SCHEMA.TYPE_INFO.MINIMUM_SCALE. + */ + public final TableField MINIMUM_SCALE = createField("MINIMUM_SCALE", org.jooq.impl.SQLDataType.SMALLINT, this, ""); + + /** + * The column INFORMATION_SCHEMA.TYPE_INFO.MAXIMUM_SCALE. + */ + public final TableField MAXIMUM_SCALE = createField("MAXIMUM_SCALE", org.jooq.impl.SQLDataType.SMALLINT, this, ""); + + /** + * The column INFORMATION_SCHEMA.TYPE_INFO.RADIX. + */ + public final TableField RADIX = createField("RADIX", org.jooq.impl.SQLDataType.INTEGER, this, ""); + + /** + * The column INFORMATION_SCHEMA.TYPE_INFO.POS. + */ + public final TableField POS = createField("POS", org.jooq.impl.SQLDataType.INTEGER, this, ""); + + /** + * The column INFORMATION_SCHEMA.TYPE_INFO.CASE_SENSITIVE. + */ + public final TableField CASE_SENSITIVE = createField("CASE_SENSITIVE", org.jooq.impl.SQLDataType.BOOLEAN, this, ""); + + /** + * The column INFORMATION_SCHEMA.TYPE_INFO.NULLABLE. + */ + public final TableField NULLABLE = createField("NULLABLE", org.jooq.impl.SQLDataType.SMALLINT, this, ""); + + /** + * The column INFORMATION_SCHEMA.TYPE_INFO.SEARCHABLE. + */ + public final TableField SEARCHABLE = createField("SEARCHABLE", org.jooq.impl.SQLDataType.SMALLINT, this, ""); + + /** + * Create a INFORMATION_SCHEMA.TYPE_INFO table reference + */ + public TypeInfo() { + this("TYPE_INFO", null); + } + + /** + * Create an aliased INFORMATION_SCHEMA.TYPE_INFO table reference + */ + public TypeInfo(String alias) { + this(alias, TYPE_INFO); + } + + private TypeInfo(String alias, Table aliased) { + this(alias, aliased, null); + } + + private TypeInfo(String alias, Table aliased, Field[] parameters) { + super(alias, InformationSchema.INFORMATION_SCHEMA, aliased, parameters, ""); + } + + /** + * {@inheritDoc} + */ + @Override + public TypeInfo as(String alias) { + return new TypeInfo(alias, this); + } + + /** + * Rename this table + */ + public TypeInfo rename(String name) { + return new TypeInfo(name, null); + } +} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Users.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Users.java new file mode 100644 index 0000000000..417382aed0 --- /dev/null +++ b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Users.java @@ -0,0 +1,102 @@ +/** + * This class is generated by jOOQ + */ +package com.baeldung.jooq.introduction.db.information_schema.tables; + + +import com.baeldung.jooq.introduction.db.information_schema.InformationSchema; +import com.baeldung.jooq.introduction.db.information_schema.tables.records.UsersRecord; + +import javax.annotation.Generated; + +import org.jooq.Field; +import org.jooq.Table; +import org.jooq.TableField; +import org.jooq.impl.TableImpl; + + +/** + * This class is generated by jOOQ. + */ +@Generated( + value = { + "http://www.jooq.org", + "jOOQ version:3.7.3" + }, + comments = "This class is generated by jOOQ" +) +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class Users extends TableImpl { + + private static final long serialVersionUID = 1971797833; + + /** + * The reference instance of INFORMATION_SCHEMA.USERS + */ + public static final Users USERS = new Users(); + + /** + * The class holding records for this type + */ + @Override + public Class getRecordType() { + return UsersRecord.class; + } + + /** + * The column INFORMATION_SCHEMA.USERS.NAME. + */ + public final TableField NAME = createField("NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.USERS.ADMIN. + */ + public final TableField ADMIN = createField("ADMIN", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.USERS.REMARKS. + */ + public final TableField REMARKS = createField("REMARKS", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.USERS.ID. + */ + public final TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this, ""); + + /** + * Create a INFORMATION_SCHEMA.USERS table reference + */ + public Users() { + this("USERS", null); + } + + /** + * Create an aliased INFORMATION_SCHEMA.USERS table reference + */ + public Users(String alias) { + this(alias, USERS); + } + + private Users(String alias, Table aliased) { + this(alias, aliased, null); + } + + private Users(String alias, Table aliased, Field[] parameters) { + super(alias, InformationSchema.INFORMATION_SCHEMA, aliased, parameters, ""); + } + + /** + * {@inheritDoc} + */ + @Override + public Users as(String alias) { + return new Users(alias, this); + } + + /** + * Rename this table + */ + public Users rename(String name) { + return new Users(name, null); + } +} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Views.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Views.java new file mode 100644 index 0000000000..54ffe377d7 --- /dev/null +++ b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Views.java @@ -0,0 +1,127 @@ +/** + * This class is generated by jOOQ + */ +package com.baeldung.jooq.introduction.db.information_schema.tables; + + +import com.baeldung.jooq.introduction.db.information_schema.InformationSchema; +import com.baeldung.jooq.introduction.db.information_schema.tables.records.ViewsRecord; + +import javax.annotation.Generated; + +import org.jooq.Field; +import org.jooq.Table; +import org.jooq.TableField; +import org.jooq.impl.TableImpl; + + +/** + * This class is generated by jOOQ. + */ +@Generated( + value = { + "http://www.jooq.org", + "jOOQ version:3.7.3" + }, + comments = "This class is generated by jOOQ" +) +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class Views extends TableImpl { + + private static final long serialVersionUID = 1565009994; + + /** + * The reference instance of INFORMATION_SCHEMA.VIEWS + */ + public static final Views VIEWS = new Views(); + + /** + * The class holding records for this type + */ + @Override + public Class getRecordType() { + return ViewsRecord.class; + } + + /** + * The column INFORMATION_SCHEMA.VIEWS.TABLE_CATALOG. + */ + public final TableField TABLE_CATALOG = createField("TABLE_CATALOG", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.VIEWS.TABLE_SCHEMA. + */ + public final TableField TABLE_SCHEMA = createField("TABLE_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.VIEWS.TABLE_NAME. + */ + public final TableField TABLE_NAME = createField("TABLE_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.VIEWS.VIEW_DEFINITION. + */ + public final TableField VIEW_DEFINITION = createField("VIEW_DEFINITION", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.VIEWS.CHECK_OPTION. + */ + public final TableField CHECK_OPTION = createField("CHECK_OPTION", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.VIEWS.IS_UPDATABLE. + */ + public final TableField IS_UPDATABLE = createField("IS_UPDATABLE", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.VIEWS.STATUS. + */ + public final TableField STATUS = createField("STATUS", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.VIEWS.REMARKS. + */ + public final TableField REMARKS = createField("REMARKS", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); + + /** + * The column INFORMATION_SCHEMA.VIEWS.ID. + */ + public final TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this, ""); + + /** + * Create a INFORMATION_SCHEMA.VIEWS table reference + */ + public Views() { + this("VIEWS", null); + } + + /** + * Create an aliased INFORMATION_SCHEMA.VIEWS table reference + */ + public Views(String alias) { + this(alias, VIEWS); + } + + private Views(String alias, Table aliased) { + this(alias, aliased, null); + } + + private Views(String alias, Table aliased, Field[] parameters) { + super(alias, InformationSchema.INFORMATION_SCHEMA, aliased, parameters, ""); + } + + /** + * {@inheritDoc} + */ + @Override + public Views as(String alias) { + return new Views(alias, this); + } + + /** + * Rename this table + */ + public Views rename(String name) { + return new Views(name, null); + } +} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/CatalogsRecord.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/CatalogsRecord.java new file mode 100644 index 0000000000..d59728bf01 --- /dev/null +++ b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/CatalogsRecord.java @@ -0,0 +1,119 @@ +/** + * This class is generated by jOOQ + */ +package com.baeldung.jooq.introduction.db.information_schema.tables.records; + + +import com.baeldung.jooq.introduction.db.information_schema.tables.Catalogs; + +import javax.annotation.Generated; + +import org.jooq.Field; +import org.jooq.Record1; +import org.jooq.Row1; +import org.jooq.impl.TableRecordImpl; + + +/** + * This class is generated by jOOQ. + */ +@Generated( + value = { + "http://www.jooq.org", + "jOOQ version:3.7.3" + }, + comments = "This class is generated by jOOQ" +) +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class CatalogsRecord extends TableRecordImpl implements Record1 { + + private static final long serialVersionUID = -2119003002; + + /** + * Setter for INFORMATION_SCHEMA.CATALOGS.CATALOG_NAME. + */ + public void setCatalogName(String value) { + setValue(0, value); + } + + /** + * Getter for INFORMATION_SCHEMA.CATALOGS.CATALOG_NAME. + */ + public String getCatalogName() { + return (String) getValue(0); + } + + // ------------------------------------------------------------------------- + // Record1 type implementation + // ------------------------------------------------------------------------- + + /** + * {@inheritDoc} + */ + @Override + public Row1 fieldsRow() { + return (Row1) super.fieldsRow(); + } + + /** + * {@inheritDoc} + */ + @Override + public Row1 valuesRow() { + return (Row1) super.valuesRow(); + } + + /** + * {@inheritDoc} + */ + @Override + public Field field1() { + return Catalogs.CATALOGS.CATALOG_NAME; + } + + /** + * {@inheritDoc} + */ + @Override + public String value1() { + return getCatalogName(); + } + + /** + * {@inheritDoc} + */ + @Override + public CatalogsRecord value1(String value) { + setCatalogName(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public CatalogsRecord values(String value1) { + value1(value1); + return this; + } + + // ------------------------------------------------------------------------- + // Constructors + // ------------------------------------------------------------------------- + + /** + * Create a detached CatalogsRecord + */ + public CatalogsRecord() { + super(Catalogs.CATALOGS); + } + + /** + * Create a detached, initialised CatalogsRecord + */ + public CatalogsRecord(String catalogName) { + super(Catalogs.CATALOGS); + + setValue(0, catalogName); + } +} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/CollationsRecord.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/CollationsRecord.java new file mode 100644 index 0000000000..e0abb49012 --- /dev/null +++ b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/CollationsRecord.java @@ -0,0 +1,160 @@ +/** + * This class is generated by jOOQ + */ +package com.baeldung.jooq.introduction.db.information_schema.tables.records; + + +import com.baeldung.jooq.introduction.db.information_schema.tables.Collations; + +import javax.annotation.Generated; + +import org.jooq.Field; +import org.jooq.Record2; +import org.jooq.Row2; +import org.jooq.impl.TableRecordImpl; + + +/** + * This class is generated by jOOQ. + */ +@Generated( + value = { + "http://www.jooq.org", + "jOOQ version:3.7.3" + }, + comments = "This class is generated by jOOQ" +) +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class CollationsRecord extends TableRecordImpl implements Record2 { + + private static final long serialVersionUID = -890210086; + + /** + * Setter for INFORMATION_SCHEMA.COLLATIONS.NAME. + */ + public void setName(String value) { + setValue(0, value); + } + + /** + * Getter for INFORMATION_SCHEMA.COLLATIONS.NAME. + */ + public String getName() { + return (String) getValue(0); + } + + /** + * Setter for INFORMATION_SCHEMA.COLLATIONS.KEY. + */ + public void setKey(String value) { + setValue(1, value); + } + + /** + * Getter for INFORMATION_SCHEMA.COLLATIONS.KEY. + */ + public String getKey() { + return (String) getValue(1); + } + + // ------------------------------------------------------------------------- + // Record2 type implementation + // ------------------------------------------------------------------------- + + /** + * {@inheritDoc} + */ + @Override + public Row2 fieldsRow() { + return (Row2) super.fieldsRow(); + } + + /** + * {@inheritDoc} + */ + @Override + public Row2 valuesRow() { + return (Row2) super.valuesRow(); + } + + /** + * {@inheritDoc} + */ + @Override + public Field field1() { + return Collations.COLLATIONS.NAME; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field2() { + return Collations.COLLATIONS.KEY; + } + + /** + * {@inheritDoc} + */ + @Override + public String value1() { + return getName(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value2() { + return getKey(); + } + + /** + * {@inheritDoc} + */ + @Override + public CollationsRecord value1(String value) { + setName(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public CollationsRecord value2(String value) { + setKey(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public CollationsRecord values(String value1, String value2) { + value1(value1); + value2(value2); + return this; + } + + // ------------------------------------------------------------------------- + // Constructors + // ------------------------------------------------------------------------- + + /** + * Create a detached CollationsRecord + */ + public CollationsRecord() { + super(Collations.COLLATIONS); + } + + /** + * Create a detached, initialised CollationsRecord + */ + public CollationsRecord(String name, String key) { + super(Collations.COLLATIONS); + + setValue(0, name); + setValue(1, key); + } +} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/ColumnPrivilegesRecord.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/ColumnPrivilegesRecord.java new file mode 100644 index 0000000000..105348a339 --- /dev/null +++ b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/ColumnPrivilegesRecord.java @@ -0,0 +1,406 @@ +/** + * This class is generated by jOOQ + */ +package com.baeldung.jooq.introduction.db.information_schema.tables.records; + + +import com.baeldung.jooq.introduction.db.information_schema.tables.ColumnPrivileges; + +import javax.annotation.Generated; + +import org.jooq.Field; +import org.jooq.Record8; +import org.jooq.Row8; +import org.jooq.impl.TableRecordImpl; + + +/** + * This class is generated by jOOQ. + */ +@Generated( + value = { + "http://www.jooq.org", + "jOOQ version:3.7.3" + }, + comments = "This class is generated by jOOQ" +) +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class ColumnPrivilegesRecord extends TableRecordImpl implements Record8 { + + private static final long serialVersionUID = 1884367853; + + /** + * Setter for INFORMATION_SCHEMA.COLUMN_PRIVILEGES.GRANTOR. + */ + public void setGrantor(String value) { + setValue(0, value); + } + + /** + * Getter for INFORMATION_SCHEMA.COLUMN_PRIVILEGES.GRANTOR. + */ + public String getGrantor() { + return (String) getValue(0); + } + + /** + * Setter for INFORMATION_SCHEMA.COLUMN_PRIVILEGES.GRANTEE. + */ + public void setGrantee(String value) { + setValue(1, value); + } + + /** + * Getter for INFORMATION_SCHEMA.COLUMN_PRIVILEGES.GRANTEE. + */ + public String getGrantee() { + return (String) getValue(1); + } + + /** + * Setter for INFORMATION_SCHEMA.COLUMN_PRIVILEGES.TABLE_CATALOG. + */ + public void setTableCatalog(String value) { + setValue(2, value); + } + + /** + * Getter for INFORMATION_SCHEMA.COLUMN_PRIVILEGES.TABLE_CATALOG. + */ + public String getTableCatalog() { + return (String) getValue(2); + } + + /** + * Setter for INFORMATION_SCHEMA.COLUMN_PRIVILEGES.TABLE_SCHEMA. + */ + public void setTableSchema(String value) { + setValue(3, value); + } + + /** + * Getter for INFORMATION_SCHEMA.COLUMN_PRIVILEGES.TABLE_SCHEMA. + */ + public String getTableSchema() { + return (String) getValue(3); + } + + /** + * Setter for INFORMATION_SCHEMA.COLUMN_PRIVILEGES.TABLE_NAME. + */ + public void setTableName(String value) { + setValue(4, value); + } + + /** + * Getter for INFORMATION_SCHEMA.COLUMN_PRIVILEGES.TABLE_NAME. + */ + public String getTableName() { + return (String) getValue(4); + } + + /** + * Setter for INFORMATION_SCHEMA.COLUMN_PRIVILEGES.COLUMN_NAME. + */ + public void setColumnName(String value) { + setValue(5, value); + } + + /** + * Getter for INFORMATION_SCHEMA.COLUMN_PRIVILEGES.COLUMN_NAME. + */ + public String getColumnName() { + return (String) getValue(5); + } + + /** + * Setter for INFORMATION_SCHEMA.COLUMN_PRIVILEGES.PRIVILEGE_TYPE. + */ + public void setPrivilegeType(String value) { + setValue(6, value); + } + + /** + * Getter for INFORMATION_SCHEMA.COLUMN_PRIVILEGES.PRIVILEGE_TYPE. + */ + public String getPrivilegeType() { + return (String) getValue(6); + } + + /** + * Setter for INFORMATION_SCHEMA.COLUMN_PRIVILEGES.IS_GRANTABLE. + */ + public void setIsGrantable(String value) { + setValue(7, value); + } + + /** + * Getter for INFORMATION_SCHEMA.COLUMN_PRIVILEGES.IS_GRANTABLE. + */ + public String getIsGrantable() { + return (String) getValue(7); + } + + // ------------------------------------------------------------------------- + // Record8 type implementation + // ------------------------------------------------------------------------- + + /** + * {@inheritDoc} + */ + @Override + public Row8 fieldsRow() { + return (Row8) super.fieldsRow(); + } + + /** + * {@inheritDoc} + */ + @Override + public Row8 valuesRow() { + return (Row8) super.valuesRow(); + } + + /** + * {@inheritDoc} + */ + @Override + public Field field1() { + return ColumnPrivileges.COLUMN_PRIVILEGES.GRANTOR; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field2() { + return ColumnPrivileges.COLUMN_PRIVILEGES.GRANTEE; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field3() { + return ColumnPrivileges.COLUMN_PRIVILEGES.TABLE_CATALOG; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field4() { + return ColumnPrivileges.COLUMN_PRIVILEGES.TABLE_SCHEMA; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field5() { + return ColumnPrivileges.COLUMN_PRIVILEGES.TABLE_NAME; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field6() { + return ColumnPrivileges.COLUMN_PRIVILEGES.COLUMN_NAME; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field7() { + return ColumnPrivileges.COLUMN_PRIVILEGES.PRIVILEGE_TYPE; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field8() { + return ColumnPrivileges.COLUMN_PRIVILEGES.IS_GRANTABLE; + } + + /** + * {@inheritDoc} + */ + @Override + public String value1() { + return getGrantor(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value2() { + return getGrantee(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value3() { + return getTableCatalog(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value4() { + return getTableSchema(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value5() { + return getTableName(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value6() { + return getColumnName(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value7() { + return getPrivilegeType(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value8() { + return getIsGrantable(); + } + + /** + * {@inheritDoc} + */ + @Override + public ColumnPrivilegesRecord value1(String value) { + setGrantor(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public ColumnPrivilegesRecord value2(String value) { + setGrantee(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public ColumnPrivilegesRecord value3(String value) { + setTableCatalog(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public ColumnPrivilegesRecord value4(String value) { + setTableSchema(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public ColumnPrivilegesRecord value5(String value) { + setTableName(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public ColumnPrivilegesRecord value6(String value) { + setColumnName(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public ColumnPrivilegesRecord value7(String value) { + setPrivilegeType(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public ColumnPrivilegesRecord value8(String value) { + setIsGrantable(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public ColumnPrivilegesRecord values(String value1, String value2, String value3, String value4, String value5, String value6, String value7, String value8) { + value1(value1); + value2(value2); + value3(value3); + value4(value4); + value5(value5); + value6(value6); + value7(value7); + value8(value8); + return this; + } + + // ------------------------------------------------------------------------- + // Constructors + // ------------------------------------------------------------------------- + + /** + * Create a detached ColumnPrivilegesRecord + */ + public ColumnPrivilegesRecord() { + super(ColumnPrivileges.COLUMN_PRIVILEGES); + } + + /** + * Create a detached, initialised ColumnPrivilegesRecord + */ + public ColumnPrivilegesRecord(String grantor, String grantee, String tableCatalog, String tableSchema, String tableName, String columnName, String privilegeType, String isGrantable) { + super(ColumnPrivileges.COLUMN_PRIVILEGES); + + setValue(0, grantor); + setValue(1, grantee); + setValue(2, tableCatalog); + setValue(3, tableSchema); + setValue(4, tableName); + setValue(5, columnName); + setValue(6, privilegeType); + setValue(7, isGrantable); + } +} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/ColumnsRecord.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/ColumnsRecord.java new file mode 100644 index 0000000000..63a83b0056 --- /dev/null +++ b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/ColumnsRecord.java @@ -0,0 +1,392 @@ +/** + * This class is generated by jOOQ + */ +package com.baeldung.jooq.introduction.db.information_schema.tables.records; + + +import com.baeldung.jooq.introduction.db.information_schema.tables.Columns; + +import javax.annotation.Generated; + +import org.jooq.impl.TableRecordImpl; + + +/** + * This class is generated by jOOQ. + */ +@Generated( + value = { + "http://www.jooq.org", + "jOOQ version:3.7.3" + }, + comments = "This class is generated by jOOQ" +) +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class ColumnsRecord extends TableRecordImpl { + + private static final long serialVersionUID = 1850723283; + + /** + * Setter for INFORMATION_SCHEMA.COLUMNS.TABLE_CATALOG. + */ + public void setTableCatalog(String value) { + setValue(0, value); + } + + /** + * Getter for INFORMATION_SCHEMA.COLUMNS.TABLE_CATALOG. + */ + public String getTableCatalog() { + return (String) getValue(0); + } + + /** + * Setter for INFORMATION_SCHEMA.COLUMNS.TABLE_SCHEMA. + */ + public void setTableSchema(String value) { + setValue(1, value); + } + + /** + * Getter for INFORMATION_SCHEMA.COLUMNS.TABLE_SCHEMA. + */ + public String getTableSchema() { + return (String) getValue(1); + } + + /** + * Setter for INFORMATION_SCHEMA.COLUMNS.TABLE_NAME. + */ + public void setTableName(String value) { + setValue(2, value); + } + + /** + * Getter for INFORMATION_SCHEMA.COLUMNS.TABLE_NAME. + */ + public String getTableName() { + return (String) getValue(2); + } + + /** + * Setter for INFORMATION_SCHEMA.COLUMNS.COLUMN_NAME. + */ + public void setColumnName(String value) { + setValue(3, value); + } + + /** + * Getter for INFORMATION_SCHEMA.COLUMNS.COLUMN_NAME. + */ + public String getColumnName() { + return (String) getValue(3); + } + + /** + * Setter for INFORMATION_SCHEMA.COLUMNS.ORDINAL_POSITION. + */ + public void setOrdinalPosition(Integer value) { + setValue(4, value); + } + + /** + * Getter for INFORMATION_SCHEMA.COLUMNS.ORDINAL_POSITION. + */ + public Integer getOrdinalPosition() { + return (Integer) getValue(4); + } + + /** + * Setter for INFORMATION_SCHEMA.COLUMNS.COLUMN_DEFAULT. + */ + public void setColumnDefault(String value) { + setValue(5, value); + } + + /** + * Getter for INFORMATION_SCHEMA.COLUMNS.COLUMN_DEFAULT. + */ + public String getColumnDefault() { + return (String) getValue(5); + } + + /** + * Setter for INFORMATION_SCHEMA.COLUMNS.IS_NULLABLE. + */ + public void setIsNullable(String value) { + setValue(6, value); + } + + /** + * Getter for INFORMATION_SCHEMA.COLUMNS.IS_NULLABLE. + */ + public String getIsNullable() { + return (String) getValue(6); + } + + /** + * Setter for INFORMATION_SCHEMA.COLUMNS.DATA_TYPE. + */ + public void setDataType(Integer value) { + setValue(7, value); + } + + /** + * Getter for INFORMATION_SCHEMA.COLUMNS.DATA_TYPE. + */ + public Integer getDataType() { + return (Integer) getValue(7); + } + + /** + * Setter for INFORMATION_SCHEMA.COLUMNS.CHARACTER_MAXIMUM_LENGTH. + */ + public void setCharacterMaximumLength(Integer value) { + setValue(8, value); + } + + /** + * Getter for INFORMATION_SCHEMA.COLUMNS.CHARACTER_MAXIMUM_LENGTH. + */ + public Integer getCharacterMaximumLength() { + return (Integer) getValue(8); + } + + /** + * Setter for INFORMATION_SCHEMA.COLUMNS.CHARACTER_OCTET_LENGTH. + */ + public void setCharacterOctetLength(Integer value) { + setValue(9, value); + } + + /** + * Getter for INFORMATION_SCHEMA.COLUMNS.CHARACTER_OCTET_LENGTH. + */ + public Integer getCharacterOctetLength() { + return (Integer) getValue(9); + } + + /** + * Setter for INFORMATION_SCHEMA.COLUMNS.NUMERIC_PRECISION. + */ + public void setNumericPrecision(Integer value) { + setValue(10, value); + } + + /** + * Getter for INFORMATION_SCHEMA.COLUMNS.NUMERIC_PRECISION. + */ + public Integer getNumericPrecision() { + return (Integer) getValue(10); + } + + /** + * Setter for INFORMATION_SCHEMA.COLUMNS.NUMERIC_PRECISION_RADIX. + */ + public void setNumericPrecisionRadix(Integer value) { + setValue(11, value); + } + + /** + * Getter for INFORMATION_SCHEMA.COLUMNS.NUMERIC_PRECISION_RADIX. + */ + public Integer getNumericPrecisionRadix() { + return (Integer) getValue(11); + } + + /** + * Setter for INFORMATION_SCHEMA.COLUMNS.NUMERIC_SCALE. + */ + public void setNumericScale(Integer value) { + setValue(12, value); + } + + /** + * Getter for INFORMATION_SCHEMA.COLUMNS.NUMERIC_SCALE. + */ + public Integer getNumericScale() { + return (Integer) getValue(12); + } + + /** + * Setter for INFORMATION_SCHEMA.COLUMNS.CHARACTER_SET_NAME. + */ + public void setCharacterSetName(String value) { + setValue(13, value); + } + + /** + * Getter for INFORMATION_SCHEMA.COLUMNS.CHARACTER_SET_NAME. + */ + public String getCharacterSetName() { + return (String) getValue(13); + } + + /** + * Setter for INFORMATION_SCHEMA.COLUMNS.COLLATION_NAME. + */ + public void setCollationName(String value) { + setValue(14, value); + } + + /** + * Getter for INFORMATION_SCHEMA.COLUMNS.COLLATION_NAME. + */ + public String getCollationName() { + return (String) getValue(14); + } + + /** + * Setter for INFORMATION_SCHEMA.COLUMNS.TYPE_NAME. + */ + public void setTypeName(String value) { + setValue(15, value); + } + + /** + * Getter for INFORMATION_SCHEMA.COLUMNS.TYPE_NAME. + */ + public String getTypeName() { + return (String) getValue(15); + } + + /** + * Setter for INFORMATION_SCHEMA.COLUMNS.NULLABLE. + */ + public void setNullable(Integer value) { + setValue(16, value); + } + + /** + * Getter for INFORMATION_SCHEMA.COLUMNS.NULLABLE. + */ + public Integer getNullable() { + return (Integer) getValue(16); + } + + /** + * Setter for INFORMATION_SCHEMA.COLUMNS.IS_COMPUTED. + */ + public void setIsComputed(Boolean value) { + setValue(17, value); + } + + /** + * Getter for INFORMATION_SCHEMA.COLUMNS.IS_COMPUTED. + */ + public Boolean getIsComputed() { + return (Boolean) getValue(17); + } + + /** + * Setter for INFORMATION_SCHEMA.COLUMNS.SELECTIVITY. + */ + public void setSelectivity(Integer value) { + setValue(18, value); + } + + /** + * Getter for INFORMATION_SCHEMA.COLUMNS.SELECTIVITY. + */ + public Integer getSelectivity() { + return (Integer) getValue(18); + } + + /** + * Setter for INFORMATION_SCHEMA.COLUMNS.CHECK_CONSTRAINT. + */ + public void setCheckConstraint(String value) { + setValue(19, value); + } + + /** + * Getter for INFORMATION_SCHEMA.COLUMNS.CHECK_CONSTRAINT. + */ + public String getCheckConstraint() { + return (String) getValue(19); + } + + /** + * Setter for INFORMATION_SCHEMA.COLUMNS.SEQUENCE_NAME. + */ + public void setSequenceName(String value) { + setValue(20, value); + } + + /** + * Getter for INFORMATION_SCHEMA.COLUMNS.SEQUENCE_NAME. + */ + public String getSequenceName() { + return (String) getValue(20); + } + + /** + * Setter for INFORMATION_SCHEMA.COLUMNS.REMARKS. + */ + public void setRemarks(String value) { + setValue(21, value); + } + + /** + * Getter for INFORMATION_SCHEMA.COLUMNS.REMARKS. + */ + public String getRemarks() { + return (String) getValue(21); + } + + /** + * Setter for INFORMATION_SCHEMA.COLUMNS.SOURCE_DATA_TYPE. + */ + public void setSourceDataType(Short value) { + setValue(22, value); + } + + /** + * Getter for INFORMATION_SCHEMA.COLUMNS.SOURCE_DATA_TYPE. + */ + public Short getSourceDataType() { + return (Short) getValue(22); + } + + // ------------------------------------------------------------------------- + // Constructors + // ------------------------------------------------------------------------- + + /** + * Create a detached ColumnsRecord + */ + public ColumnsRecord() { + super(Columns.COLUMNS); + } + + /** + * Create a detached, initialised ColumnsRecord + */ + public ColumnsRecord(String tableCatalog, String tableSchema, String tableName, String columnName, Integer ordinalPosition, String columnDefault, String isNullable, Integer dataType, Integer characterMaximumLength, Integer characterOctetLength, Integer numericPrecision, Integer numericPrecisionRadix, Integer numericScale, String characterSetName, String collationName, String typeName, Integer nullable, Boolean isComputed, Integer selectivity, String checkConstraint, String sequenceName, String remarks, Short sourceDataType) { + super(Columns.COLUMNS); + + setValue(0, tableCatalog); + setValue(1, tableSchema); + setValue(2, tableName); + setValue(3, columnName); + setValue(4, ordinalPosition); + setValue(5, columnDefault); + setValue(6, isNullable); + setValue(7, dataType); + setValue(8, characterMaximumLength); + setValue(9, characterOctetLength); + setValue(10, numericPrecision); + setValue(11, numericPrecisionRadix); + setValue(12, numericScale); + setValue(13, characterSetName); + setValue(14, collationName); + setValue(15, typeName); + setValue(16, nullable); + setValue(17, isComputed); + setValue(18, selectivity); + setValue(19, checkConstraint); + setValue(20, sequenceName); + setValue(21, remarks); + setValue(22, sourceDataType); + } +} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/ConstantsRecord.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/ConstantsRecord.java new file mode 100644 index 0000000000..b1225bd747 --- /dev/null +++ b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/ConstantsRecord.java @@ -0,0 +1,365 @@ +/** + * This class is generated by jOOQ + */ +package com.baeldung.jooq.introduction.db.information_schema.tables.records; + + +import com.baeldung.jooq.introduction.db.information_schema.tables.Constants; + +import javax.annotation.Generated; + +import org.jooq.Field; +import org.jooq.Record7; +import org.jooq.Row7; +import org.jooq.impl.TableRecordImpl; + + +/** + * This class is generated by jOOQ. + */ +@Generated( + value = { + "http://www.jooq.org", + "jOOQ version:3.7.3" + }, + comments = "This class is generated by jOOQ" +) +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class ConstantsRecord extends TableRecordImpl implements Record7 { + + private static final long serialVersionUID = -775500532; + + /** + * Setter for INFORMATION_SCHEMA.CONSTANTS.CONSTANT_CATALOG. + */ + public void setConstantCatalog(String value) { + setValue(0, value); + } + + /** + * Getter for INFORMATION_SCHEMA.CONSTANTS.CONSTANT_CATALOG. + */ + public String getConstantCatalog() { + return (String) getValue(0); + } + + /** + * Setter for INFORMATION_SCHEMA.CONSTANTS.CONSTANT_SCHEMA. + */ + public void setConstantSchema(String value) { + setValue(1, value); + } + + /** + * Getter for INFORMATION_SCHEMA.CONSTANTS.CONSTANT_SCHEMA. + */ + public String getConstantSchema() { + return (String) getValue(1); + } + + /** + * Setter for INFORMATION_SCHEMA.CONSTANTS.CONSTANT_NAME. + */ + public void setConstantName(String value) { + setValue(2, value); + } + + /** + * Getter for INFORMATION_SCHEMA.CONSTANTS.CONSTANT_NAME. + */ + public String getConstantName() { + return (String) getValue(2); + } + + /** + * Setter for INFORMATION_SCHEMA.CONSTANTS.DATA_TYPE. + */ + public void setDataType(Integer value) { + setValue(3, value); + } + + /** + * Getter for INFORMATION_SCHEMA.CONSTANTS.DATA_TYPE. + */ + public Integer getDataType() { + return (Integer) getValue(3); + } + + /** + * Setter for INFORMATION_SCHEMA.CONSTANTS.REMARKS. + */ + public void setRemarks(String value) { + setValue(4, value); + } + + /** + * Getter for INFORMATION_SCHEMA.CONSTANTS.REMARKS. + */ + public String getRemarks() { + return (String) getValue(4); + } + + /** + * Setter for INFORMATION_SCHEMA.CONSTANTS.SQL. + */ + public void setSql(String value) { + setValue(5, value); + } + + /** + * Getter for INFORMATION_SCHEMA.CONSTANTS.SQL. + */ + public String getSql() { + return (String) getValue(5); + } + + /** + * Setter for INFORMATION_SCHEMA.CONSTANTS.ID. + */ + public void setId(Integer value) { + setValue(6, value); + } + + /** + * Getter for INFORMATION_SCHEMA.CONSTANTS.ID. + */ + public Integer getId() { + return (Integer) getValue(6); + } + + // ------------------------------------------------------------------------- + // Record7 type implementation + // ------------------------------------------------------------------------- + + /** + * {@inheritDoc} + */ + @Override + public Row7 fieldsRow() { + return (Row7) super.fieldsRow(); + } + + /** + * {@inheritDoc} + */ + @Override + public Row7 valuesRow() { + return (Row7) super.valuesRow(); + } + + /** + * {@inheritDoc} + */ + @Override + public Field field1() { + return Constants.CONSTANTS.CONSTANT_CATALOG; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field2() { + return Constants.CONSTANTS.CONSTANT_SCHEMA; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field3() { + return Constants.CONSTANTS.CONSTANT_NAME; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field4() { + return Constants.CONSTANTS.DATA_TYPE; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field5() { + return Constants.CONSTANTS.REMARKS; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field6() { + return Constants.CONSTANTS.SQL; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field7() { + return Constants.CONSTANTS.ID; + } + + /** + * {@inheritDoc} + */ + @Override + public String value1() { + return getConstantCatalog(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value2() { + return getConstantSchema(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value3() { + return getConstantName(); + } + + /** + * {@inheritDoc} + */ + @Override + public Integer value4() { + return getDataType(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value5() { + return getRemarks(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value6() { + return getSql(); + } + + /** + * {@inheritDoc} + */ + @Override + public Integer value7() { + return getId(); + } + + /** + * {@inheritDoc} + */ + @Override + public ConstantsRecord value1(String value) { + setConstantCatalog(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public ConstantsRecord value2(String value) { + setConstantSchema(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public ConstantsRecord value3(String value) { + setConstantName(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public ConstantsRecord value4(Integer value) { + setDataType(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public ConstantsRecord value5(String value) { + setRemarks(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public ConstantsRecord value6(String value) { + setSql(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public ConstantsRecord value7(Integer value) { + setId(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public ConstantsRecord values(String value1, String value2, String value3, Integer value4, String value5, String value6, Integer value7) { + value1(value1); + value2(value2); + value3(value3); + value4(value4); + value5(value5); + value6(value6); + value7(value7); + return this; + } + + // ------------------------------------------------------------------------- + // Constructors + // ------------------------------------------------------------------------- + + /** + * Create a detached ConstantsRecord + */ + public ConstantsRecord() { + super(Constants.CONSTANTS); + } + + /** + * Create a detached, initialised ConstantsRecord + */ + public ConstantsRecord(String constantCatalog, String constantSchema, String constantName, Integer dataType, String remarks, String sql, Integer id) { + super(Constants.CONSTANTS); + + setValue(0, constantCatalog); + setValue(1, constantSchema); + setValue(2, constantName); + setValue(3, dataType); + setValue(4, remarks); + setValue(5, sql); + setValue(6, id); + } +} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/ConstraintsRecord.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/ConstraintsRecord.java new file mode 100644 index 0000000000..f1727739a2 --- /dev/null +++ b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/ConstraintsRecord.java @@ -0,0 +1,611 @@ +/** + * This class is generated by jOOQ + */ +package com.baeldung.jooq.introduction.db.information_schema.tables.records; + + +import com.baeldung.jooq.introduction.db.information_schema.tables.Constraints; + +import javax.annotation.Generated; + +import org.jooq.Field; +import org.jooq.Record13; +import org.jooq.Row13; +import org.jooq.impl.TableRecordImpl; + + +/** + * This class is generated by jOOQ. + */ +@Generated( + value = { + "http://www.jooq.org", + "jOOQ version:3.7.3" + }, + comments = "This class is generated by jOOQ" +) +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class ConstraintsRecord extends TableRecordImpl implements Record13 { + + private static final long serialVersionUID = 759662490; + + /** + * Setter for INFORMATION_SCHEMA.CONSTRAINTS.CONSTRAINT_CATALOG. + */ + public void setConstraintCatalog(String value) { + setValue(0, value); + } + + /** + * Getter for INFORMATION_SCHEMA.CONSTRAINTS.CONSTRAINT_CATALOG. + */ + public String getConstraintCatalog() { + return (String) getValue(0); + } + + /** + * Setter for INFORMATION_SCHEMA.CONSTRAINTS.CONSTRAINT_SCHEMA. + */ + public void setConstraintSchema(String value) { + setValue(1, value); + } + + /** + * Getter for INFORMATION_SCHEMA.CONSTRAINTS.CONSTRAINT_SCHEMA. + */ + public String getConstraintSchema() { + return (String) getValue(1); + } + + /** + * Setter for INFORMATION_SCHEMA.CONSTRAINTS.CONSTRAINT_NAME. + */ + public void setConstraintName(String value) { + setValue(2, value); + } + + /** + * Getter for INFORMATION_SCHEMA.CONSTRAINTS.CONSTRAINT_NAME. + */ + public String getConstraintName() { + return (String) getValue(2); + } + + /** + * Setter for INFORMATION_SCHEMA.CONSTRAINTS.CONSTRAINT_TYPE. + */ + public void setConstraintType(String value) { + setValue(3, value); + } + + /** + * Getter for INFORMATION_SCHEMA.CONSTRAINTS.CONSTRAINT_TYPE. + */ + public String getConstraintType() { + return (String) getValue(3); + } + + /** + * Setter for INFORMATION_SCHEMA.CONSTRAINTS.TABLE_CATALOG. + */ + public void setTableCatalog(String value) { + setValue(4, value); + } + + /** + * Getter for INFORMATION_SCHEMA.CONSTRAINTS.TABLE_CATALOG. + */ + public String getTableCatalog() { + return (String) getValue(4); + } + + /** + * Setter for INFORMATION_SCHEMA.CONSTRAINTS.TABLE_SCHEMA. + */ + public void setTableSchema(String value) { + setValue(5, value); + } + + /** + * Getter for INFORMATION_SCHEMA.CONSTRAINTS.TABLE_SCHEMA. + */ + public String getTableSchema() { + return (String) getValue(5); + } + + /** + * Setter for INFORMATION_SCHEMA.CONSTRAINTS.TABLE_NAME. + */ + public void setTableName(String value) { + setValue(6, value); + } + + /** + * Getter for INFORMATION_SCHEMA.CONSTRAINTS.TABLE_NAME. + */ + public String getTableName() { + return (String) getValue(6); + } + + /** + * Setter for INFORMATION_SCHEMA.CONSTRAINTS.UNIQUE_INDEX_NAME. + */ + public void setUniqueIndexName(String value) { + setValue(7, value); + } + + /** + * Getter for INFORMATION_SCHEMA.CONSTRAINTS.UNIQUE_INDEX_NAME. + */ + public String getUniqueIndexName() { + return (String) getValue(7); + } + + /** + * Setter for INFORMATION_SCHEMA.CONSTRAINTS.CHECK_EXPRESSION. + */ + public void setCheckExpression(String value) { + setValue(8, value); + } + + /** + * Getter for INFORMATION_SCHEMA.CONSTRAINTS.CHECK_EXPRESSION. + */ + public String getCheckExpression() { + return (String) getValue(8); + } + + /** + * Setter for INFORMATION_SCHEMA.CONSTRAINTS.COLUMN_LIST. + */ + public void setColumnList(String value) { + setValue(9, value); + } + + /** + * Getter for INFORMATION_SCHEMA.CONSTRAINTS.COLUMN_LIST. + */ + public String getColumnList() { + return (String) getValue(9); + } + + /** + * Setter for INFORMATION_SCHEMA.CONSTRAINTS.REMARKS. + */ + public void setRemarks(String value) { + setValue(10, value); + } + + /** + * Getter for INFORMATION_SCHEMA.CONSTRAINTS.REMARKS. + */ + public String getRemarks() { + return (String) getValue(10); + } + + /** + * Setter for INFORMATION_SCHEMA.CONSTRAINTS.SQL. + */ + public void setSql(String value) { + setValue(11, value); + } + + /** + * Getter for INFORMATION_SCHEMA.CONSTRAINTS.SQL. + */ + public String getSql() { + return (String) getValue(11); + } + + /** + * Setter for INFORMATION_SCHEMA.CONSTRAINTS.ID. + */ + public void setId(Integer value) { + setValue(12, value); + } + + /** + * Getter for INFORMATION_SCHEMA.CONSTRAINTS.ID. + */ + public Integer getId() { + return (Integer) getValue(12); + } + + // ------------------------------------------------------------------------- + // Record13 type implementation + // ------------------------------------------------------------------------- + + /** + * {@inheritDoc} + */ + @Override + public Row13 fieldsRow() { + return (Row13) super.fieldsRow(); + } + + /** + * {@inheritDoc} + */ + @Override + public Row13 valuesRow() { + return (Row13) super.valuesRow(); + } + + /** + * {@inheritDoc} + */ + @Override + public Field field1() { + return Constraints.CONSTRAINTS.CONSTRAINT_CATALOG; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field2() { + return Constraints.CONSTRAINTS.CONSTRAINT_SCHEMA; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field3() { + return Constraints.CONSTRAINTS.CONSTRAINT_NAME; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field4() { + return Constraints.CONSTRAINTS.CONSTRAINT_TYPE; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field5() { + return Constraints.CONSTRAINTS.TABLE_CATALOG; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field6() { + return Constraints.CONSTRAINTS.TABLE_SCHEMA; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field7() { + return Constraints.CONSTRAINTS.TABLE_NAME; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field8() { + return Constraints.CONSTRAINTS.UNIQUE_INDEX_NAME; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field9() { + return Constraints.CONSTRAINTS.CHECK_EXPRESSION; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field10() { + return Constraints.CONSTRAINTS.COLUMN_LIST; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field11() { + return Constraints.CONSTRAINTS.REMARKS; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field12() { + return Constraints.CONSTRAINTS.SQL; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field13() { + return Constraints.CONSTRAINTS.ID; + } + + /** + * {@inheritDoc} + */ + @Override + public String value1() { + return getConstraintCatalog(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value2() { + return getConstraintSchema(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value3() { + return getConstraintName(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value4() { + return getConstraintType(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value5() { + return getTableCatalog(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value6() { + return getTableSchema(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value7() { + return getTableName(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value8() { + return getUniqueIndexName(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value9() { + return getCheckExpression(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value10() { + return getColumnList(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value11() { + return getRemarks(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value12() { + return getSql(); + } + + /** + * {@inheritDoc} + */ + @Override + public Integer value13() { + return getId(); + } + + /** + * {@inheritDoc} + */ + @Override + public ConstraintsRecord value1(String value) { + setConstraintCatalog(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public ConstraintsRecord value2(String value) { + setConstraintSchema(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public ConstraintsRecord value3(String value) { + setConstraintName(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public ConstraintsRecord value4(String value) { + setConstraintType(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public ConstraintsRecord value5(String value) { + setTableCatalog(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public ConstraintsRecord value6(String value) { + setTableSchema(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public ConstraintsRecord value7(String value) { + setTableName(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public ConstraintsRecord value8(String value) { + setUniqueIndexName(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public ConstraintsRecord value9(String value) { + setCheckExpression(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public ConstraintsRecord value10(String value) { + setColumnList(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public ConstraintsRecord value11(String value) { + setRemarks(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public ConstraintsRecord value12(String value) { + setSql(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public ConstraintsRecord value13(Integer value) { + setId(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public ConstraintsRecord values(String value1, String value2, String value3, String value4, String value5, String value6, String value7, String value8, String value9, String value10, String value11, String value12, Integer value13) { + value1(value1); + value2(value2); + value3(value3); + value4(value4); + value5(value5); + value6(value6); + value7(value7); + value8(value8); + value9(value9); + value10(value10); + value11(value11); + value12(value12); + value13(value13); + return this; + } + + // ------------------------------------------------------------------------- + // Constructors + // ------------------------------------------------------------------------- + + /** + * Create a detached ConstraintsRecord + */ + public ConstraintsRecord() { + super(Constraints.CONSTRAINTS); + } + + /** + * Create a detached, initialised ConstraintsRecord + */ + public ConstraintsRecord(String constraintCatalog, String constraintSchema, String constraintName, String constraintType, String tableCatalog, String tableSchema, String tableName, String uniqueIndexName, String checkExpression, String columnList, String remarks, String sql, Integer id) { + super(Constraints.CONSTRAINTS); + + setValue(0, constraintCatalog); + setValue(1, constraintSchema); + setValue(2, constraintName); + setValue(3, constraintType); + setValue(4, tableCatalog); + setValue(5, tableSchema); + setValue(6, tableName); + setValue(7, uniqueIndexName); + setValue(8, checkExpression); + setValue(9, columnList); + setValue(10, remarks); + setValue(11, sql); + setValue(12, id); + } +} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/CrossReferencesRecord.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/CrossReferencesRecord.java new file mode 100644 index 0000000000..ab5ae9c2a3 --- /dev/null +++ b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/CrossReferencesRecord.java @@ -0,0 +1,652 @@ +/** + * This class is generated by jOOQ + */ +package com.baeldung.jooq.introduction.db.information_schema.tables.records; + + +import com.baeldung.jooq.introduction.db.information_schema.tables.CrossReferences; + +import javax.annotation.Generated; + +import org.jooq.Field; +import org.jooq.Record14; +import org.jooq.Row14; +import org.jooq.impl.TableRecordImpl; + + +/** + * This class is generated by jOOQ. + */ +@Generated( + value = { + "http://www.jooq.org", + "jOOQ version:3.7.3" + }, + comments = "This class is generated by jOOQ" +) +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class CrossReferencesRecord extends TableRecordImpl implements Record14 { + + private static final long serialVersionUID = -328289893; + + /** + * Setter for INFORMATION_SCHEMA.CROSS_REFERENCES.PKTABLE_CATALOG. + */ + public void setPktableCatalog(String value) { + setValue(0, value); + } + + /** + * Getter for INFORMATION_SCHEMA.CROSS_REFERENCES.PKTABLE_CATALOG. + */ + public String getPktableCatalog() { + return (String) getValue(0); + } + + /** + * Setter for INFORMATION_SCHEMA.CROSS_REFERENCES.PKTABLE_SCHEMA. + */ + public void setPktableSchema(String value) { + setValue(1, value); + } + + /** + * Getter for INFORMATION_SCHEMA.CROSS_REFERENCES.PKTABLE_SCHEMA. + */ + public String getPktableSchema() { + return (String) getValue(1); + } + + /** + * Setter for INFORMATION_SCHEMA.CROSS_REFERENCES.PKTABLE_NAME. + */ + public void setPktableName(String value) { + setValue(2, value); + } + + /** + * Getter for INFORMATION_SCHEMA.CROSS_REFERENCES.PKTABLE_NAME. + */ + public String getPktableName() { + return (String) getValue(2); + } + + /** + * Setter for INFORMATION_SCHEMA.CROSS_REFERENCES.PKCOLUMN_NAME. + */ + public void setPkcolumnName(String value) { + setValue(3, value); + } + + /** + * Getter for INFORMATION_SCHEMA.CROSS_REFERENCES.PKCOLUMN_NAME. + */ + public String getPkcolumnName() { + return (String) getValue(3); + } + + /** + * Setter for INFORMATION_SCHEMA.CROSS_REFERENCES.FKTABLE_CATALOG. + */ + public void setFktableCatalog(String value) { + setValue(4, value); + } + + /** + * Getter for INFORMATION_SCHEMA.CROSS_REFERENCES.FKTABLE_CATALOG. + */ + public String getFktableCatalog() { + return (String) getValue(4); + } + + /** + * Setter for INFORMATION_SCHEMA.CROSS_REFERENCES.FKTABLE_SCHEMA. + */ + public void setFktableSchema(String value) { + setValue(5, value); + } + + /** + * Getter for INFORMATION_SCHEMA.CROSS_REFERENCES.FKTABLE_SCHEMA. + */ + public String getFktableSchema() { + return (String) getValue(5); + } + + /** + * Setter for INFORMATION_SCHEMA.CROSS_REFERENCES.FKTABLE_NAME. + */ + public void setFktableName(String value) { + setValue(6, value); + } + + /** + * Getter for INFORMATION_SCHEMA.CROSS_REFERENCES.FKTABLE_NAME. + */ + public String getFktableName() { + return (String) getValue(6); + } + + /** + * Setter for INFORMATION_SCHEMA.CROSS_REFERENCES.FKCOLUMN_NAME. + */ + public void setFkcolumnName(String value) { + setValue(7, value); + } + + /** + * Getter for INFORMATION_SCHEMA.CROSS_REFERENCES.FKCOLUMN_NAME. + */ + public String getFkcolumnName() { + return (String) getValue(7); + } + + /** + * Setter for INFORMATION_SCHEMA.CROSS_REFERENCES.ORDINAL_POSITION. + */ + public void setOrdinalPosition(Short value) { + setValue(8, value); + } + + /** + * Getter for INFORMATION_SCHEMA.CROSS_REFERENCES.ORDINAL_POSITION. + */ + public Short getOrdinalPosition() { + return (Short) getValue(8); + } + + /** + * Setter for INFORMATION_SCHEMA.CROSS_REFERENCES.UPDATE_RULE. + */ + public void setUpdateRule(Short value) { + setValue(9, value); + } + + /** + * Getter for INFORMATION_SCHEMA.CROSS_REFERENCES.UPDATE_RULE. + */ + public Short getUpdateRule() { + return (Short) getValue(9); + } + + /** + * Setter for INFORMATION_SCHEMA.CROSS_REFERENCES.DELETE_RULE. + */ + public void setDeleteRule(Short value) { + setValue(10, value); + } + + /** + * Getter for INFORMATION_SCHEMA.CROSS_REFERENCES.DELETE_RULE. + */ + public Short getDeleteRule() { + return (Short) getValue(10); + } + + /** + * Setter for INFORMATION_SCHEMA.CROSS_REFERENCES.FK_NAME. + */ + public void setFkName(String value) { + setValue(11, value); + } + + /** + * Getter for INFORMATION_SCHEMA.CROSS_REFERENCES.FK_NAME. + */ + public String getFkName() { + return (String) getValue(11); + } + + /** + * Setter for INFORMATION_SCHEMA.CROSS_REFERENCES.PK_NAME. + */ + public void setPkName(String value) { + setValue(12, value); + } + + /** + * Getter for INFORMATION_SCHEMA.CROSS_REFERENCES.PK_NAME. + */ + public String getPkName() { + return (String) getValue(12); + } + + /** + * Setter for INFORMATION_SCHEMA.CROSS_REFERENCES.DEFERRABILITY. + */ + public void setDeferrability(Short value) { + setValue(13, value); + } + + /** + * Getter for INFORMATION_SCHEMA.CROSS_REFERENCES.DEFERRABILITY. + */ + public Short getDeferrability() { + return (Short) getValue(13); + } + + // ------------------------------------------------------------------------- + // Record14 type implementation + // ------------------------------------------------------------------------- + + /** + * {@inheritDoc} + */ + @Override + public Row14 fieldsRow() { + return (Row14) super.fieldsRow(); + } + + /** + * {@inheritDoc} + */ + @Override + public Row14 valuesRow() { + return (Row14) super.valuesRow(); + } + + /** + * {@inheritDoc} + */ + @Override + public Field field1() { + return CrossReferences.CROSS_REFERENCES.PKTABLE_CATALOG; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field2() { + return CrossReferences.CROSS_REFERENCES.PKTABLE_SCHEMA; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field3() { + return CrossReferences.CROSS_REFERENCES.PKTABLE_NAME; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field4() { + return CrossReferences.CROSS_REFERENCES.PKCOLUMN_NAME; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field5() { + return CrossReferences.CROSS_REFERENCES.FKTABLE_CATALOG; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field6() { + return CrossReferences.CROSS_REFERENCES.FKTABLE_SCHEMA; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field7() { + return CrossReferences.CROSS_REFERENCES.FKTABLE_NAME; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field8() { + return CrossReferences.CROSS_REFERENCES.FKCOLUMN_NAME; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field9() { + return CrossReferences.CROSS_REFERENCES.ORDINAL_POSITION; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field10() { + return CrossReferences.CROSS_REFERENCES.UPDATE_RULE; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field11() { + return CrossReferences.CROSS_REFERENCES.DELETE_RULE; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field12() { + return CrossReferences.CROSS_REFERENCES.FK_NAME; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field13() { + return CrossReferences.CROSS_REFERENCES.PK_NAME; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field14() { + return CrossReferences.CROSS_REFERENCES.DEFERRABILITY; + } + + /** + * {@inheritDoc} + */ + @Override + public String value1() { + return getPktableCatalog(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value2() { + return getPktableSchema(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value3() { + return getPktableName(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value4() { + return getPkcolumnName(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value5() { + return getFktableCatalog(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value6() { + return getFktableSchema(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value7() { + return getFktableName(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value8() { + return getFkcolumnName(); + } + + /** + * {@inheritDoc} + */ + @Override + public Short value9() { + return getOrdinalPosition(); + } + + /** + * {@inheritDoc} + */ + @Override + public Short value10() { + return getUpdateRule(); + } + + /** + * {@inheritDoc} + */ + @Override + public Short value11() { + return getDeleteRule(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value12() { + return getFkName(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value13() { + return getPkName(); + } + + /** + * {@inheritDoc} + */ + @Override + public Short value14() { + return getDeferrability(); + } + + /** + * {@inheritDoc} + */ + @Override + public CrossReferencesRecord value1(String value) { + setPktableCatalog(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public CrossReferencesRecord value2(String value) { + setPktableSchema(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public CrossReferencesRecord value3(String value) { + setPktableName(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public CrossReferencesRecord value4(String value) { + setPkcolumnName(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public CrossReferencesRecord value5(String value) { + setFktableCatalog(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public CrossReferencesRecord value6(String value) { + setFktableSchema(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public CrossReferencesRecord value7(String value) { + setFktableName(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public CrossReferencesRecord value8(String value) { + setFkcolumnName(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public CrossReferencesRecord value9(Short value) { + setOrdinalPosition(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public CrossReferencesRecord value10(Short value) { + setUpdateRule(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public CrossReferencesRecord value11(Short value) { + setDeleteRule(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public CrossReferencesRecord value12(String value) { + setFkName(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public CrossReferencesRecord value13(String value) { + setPkName(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public CrossReferencesRecord value14(Short value) { + setDeferrability(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public CrossReferencesRecord values(String value1, String value2, String value3, String value4, String value5, String value6, String value7, String value8, Short value9, Short value10, Short value11, String value12, String value13, Short value14) { + value1(value1); + value2(value2); + value3(value3); + value4(value4); + value5(value5); + value6(value6); + value7(value7); + value8(value8); + value9(value9); + value10(value10); + value11(value11); + value12(value12); + value13(value13); + value14(value14); + return this; + } + + // ------------------------------------------------------------------------- + // Constructors + // ------------------------------------------------------------------------- + + /** + * Create a detached CrossReferencesRecord + */ + public CrossReferencesRecord() { + super(CrossReferences.CROSS_REFERENCES); + } + + /** + * Create a detached, initialised CrossReferencesRecord + */ + public CrossReferencesRecord(String pktableCatalog, String pktableSchema, String pktableName, String pkcolumnName, String fktableCatalog, String fktableSchema, String fktableName, String fkcolumnName, Short ordinalPosition, Short updateRule, Short deleteRule, String fkName, String pkName, Short deferrability) { + super(CrossReferences.CROSS_REFERENCES); + + setValue(0, pktableCatalog); + setValue(1, pktableSchema); + setValue(2, pktableName); + setValue(3, pkcolumnName); + setValue(4, fktableCatalog); + setValue(5, fktableSchema); + setValue(6, fktableName); + setValue(7, fkcolumnName); + setValue(8, ordinalPosition); + setValue(9, updateRule); + setValue(10, deleteRule); + setValue(11, fkName); + setValue(12, pkName); + setValue(13, deferrability); + } +} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/DomainsRecord.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/DomainsRecord.java new file mode 100644 index 0000000000..7f3b812750 --- /dev/null +++ b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/DomainsRecord.java @@ -0,0 +1,652 @@ +/** + * This class is generated by jOOQ + */ +package com.baeldung.jooq.introduction.db.information_schema.tables.records; + + +import com.baeldung.jooq.introduction.db.information_schema.tables.Domains; + +import javax.annotation.Generated; + +import org.jooq.Field; +import org.jooq.Record14; +import org.jooq.Row14; +import org.jooq.impl.TableRecordImpl; + + +/** + * This class is generated by jOOQ. + */ +@Generated( + value = { + "http://www.jooq.org", + "jOOQ version:3.7.3" + }, + comments = "This class is generated by jOOQ" +) +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class DomainsRecord extends TableRecordImpl implements Record14 { + + private static final long serialVersionUID = 1750298997; + + /** + * Setter for INFORMATION_SCHEMA.DOMAINS.DOMAIN_CATALOG. + */ + public void setDomainCatalog(String value) { + setValue(0, value); + } + + /** + * Getter for INFORMATION_SCHEMA.DOMAINS.DOMAIN_CATALOG. + */ + public String getDomainCatalog() { + return (String) getValue(0); + } + + /** + * Setter for INFORMATION_SCHEMA.DOMAINS.DOMAIN_SCHEMA. + */ + public void setDomainSchema(String value) { + setValue(1, value); + } + + /** + * Getter for INFORMATION_SCHEMA.DOMAINS.DOMAIN_SCHEMA. + */ + public String getDomainSchema() { + return (String) getValue(1); + } + + /** + * Setter for INFORMATION_SCHEMA.DOMAINS.DOMAIN_NAME. + */ + public void setDomainName(String value) { + setValue(2, value); + } + + /** + * Getter for INFORMATION_SCHEMA.DOMAINS.DOMAIN_NAME. + */ + public String getDomainName() { + return (String) getValue(2); + } + + /** + * Setter for INFORMATION_SCHEMA.DOMAINS.COLUMN_DEFAULT. + */ + public void setColumnDefault(String value) { + setValue(3, value); + } + + /** + * Getter for INFORMATION_SCHEMA.DOMAINS.COLUMN_DEFAULT. + */ + public String getColumnDefault() { + return (String) getValue(3); + } + + /** + * Setter for INFORMATION_SCHEMA.DOMAINS.IS_NULLABLE. + */ + public void setIsNullable(String value) { + setValue(4, value); + } + + /** + * Getter for INFORMATION_SCHEMA.DOMAINS.IS_NULLABLE. + */ + public String getIsNullable() { + return (String) getValue(4); + } + + /** + * Setter for INFORMATION_SCHEMA.DOMAINS.DATA_TYPE. + */ + public void setDataType(Integer value) { + setValue(5, value); + } + + /** + * Getter for INFORMATION_SCHEMA.DOMAINS.DATA_TYPE. + */ + public Integer getDataType() { + return (Integer) getValue(5); + } + + /** + * Setter for INFORMATION_SCHEMA.DOMAINS.PRECISION. + */ + public void setPrecision(Integer value) { + setValue(6, value); + } + + /** + * Getter for INFORMATION_SCHEMA.DOMAINS.PRECISION. + */ + public Integer getPrecision() { + return (Integer) getValue(6); + } + + /** + * Setter for INFORMATION_SCHEMA.DOMAINS.SCALE. + */ + public void setScale(Integer value) { + setValue(7, value); + } + + /** + * Getter for INFORMATION_SCHEMA.DOMAINS.SCALE. + */ + public Integer getScale() { + return (Integer) getValue(7); + } + + /** + * Setter for INFORMATION_SCHEMA.DOMAINS.TYPE_NAME. + */ + public void setTypeName(String value) { + setValue(8, value); + } + + /** + * Getter for INFORMATION_SCHEMA.DOMAINS.TYPE_NAME. + */ + public String getTypeName() { + return (String) getValue(8); + } + + /** + * Setter for INFORMATION_SCHEMA.DOMAINS.SELECTIVITY. + */ + public void setSelectivity(Integer value) { + setValue(9, value); + } + + /** + * Getter for INFORMATION_SCHEMA.DOMAINS.SELECTIVITY. + */ + public Integer getSelectivity() { + return (Integer) getValue(9); + } + + /** + * Setter for INFORMATION_SCHEMA.DOMAINS.CHECK_CONSTRAINT. + */ + public void setCheckConstraint(String value) { + setValue(10, value); + } + + /** + * Getter for INFORMATION_SCHEMA.DOMAINS.CHECK_CONSTRAINT. + */ + public String getCheckConstraint() { + return (String) getValue(10); + } + + /** + * Setter for INFORMATION_SCHEMA.DOMAINS.REMARKS. + */ + public void setRemarks(String value) { + setValue(11, value); + } + + /** + * Getter for INFORMATION_SCHEMA.DOMAINS.REMARKS. + */ + public String getRemarks() { + return (String) getValue(11); + } + + /** + * Setter for INFORMATION_SCHEMA.DOMAINS.SQL. + */ + public void setSql(String value) { + setValue(12, value); + } + + /** + * Getter for INFORMATION_SCHEMA.DOMAINS.SQL. + */ + public String getSql() { + return (String) getValue(12); + } + + /** + * Setter for INFORMATION_SCHEMA.DOMAINS.ID. + */ + public void setId(Integer value) { + setValue(13, value); + } + + /** + * Getter for INFORMATION_SCHEMA.DOMAINS.ID. + */ + public Integer getId() { + return (Integer) getValue(13); + } + + // ------------------------------------------------------------------------- + // Record14 type implementation + // ------------------------------------------------------------------------- + + /** + * {@inheritDoc} + */ + @Override + public Row14 fieldsRow() { + return (Row14) super.fieldsRow(); + } + + /** + * {@inheritDoc} + */ + @Override + public Row14 valuesRow() { + return (Row14) super.valuesRow(); + } + + /** + * {@inheritDoc} + */ + @Override + public Field field1() { + return Domains.DOMAINS.DOMAIN_CATALOG; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field2() { + return Domains.DOMAINS.DOMAIN_SCHEMA; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field3() { + return Domains.DOMAINS.DOMAIN_NAME; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field4() { + return Domains.DOMAINS.COLUMN_DEFAULT; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field5() { + return Domains.DOMAINS.IS_NULLABLE; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field6() { + return Domains.DOMAINS.DATA_TYPE; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field7() { + return Domains.DOMAINS.PRECISION; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field8() { + return Domains.DOMAINS.SCALE; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field9() { + return Domains.DOMAINS.TYPE_NAME; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field10() { + return Domains.DOMAINS.SELECTIVITY; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field11() { + return Domains.DOMAINS.CHECK_CONSTRAINT; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field12() { + return Domains.DOMAINS.REMARKS; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field13() { + return Domains.DOMAINS.SQL; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field14() { + return Domains.DOMAINS.ID; + } + + /** + * {@inheritDoc} + */ + @Override + public String value1() { + return getDomainCatalog(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value2() { + return getDomainSchema(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value3() { + return getDomainName(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value4() { + return getColumnDefault(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value5() { + return getIsNullable(); + } + + /** + * {@inheritDoc} + */ + @Override + public Integer value6() { + return getDataType(); + } + + /** + * {@inheritDoc} + */ + @Override + public Integer value7() { + return getPrecision(); + } + + /** + * {@inheritDoc} + */ + @Override + public Integer value8() { + return getScale(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value9() { + return getTypeName(); + } + + /** + * {@inheritDoc} + */ + @Override + public Integer value10() { + return getSelectivity(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value11() { + return getCheckConstraint(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value12() { + return getRemarks(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value13() { + return getSql(); + } + + /** + * {@inheritDoc} + */ + @Override + public Integer value14() { + return getId(); + } + + /** + * {@inheritDoc} + */ + @Override + public DomainsRecord value1(String value) { + setDomainCatalog(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public DomainsRecord value2(String value) { + setDomainSchema(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public DomainsRecord value3(String value) { + setDomainName(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public DomainsRecord value4(String value) { + setColumnDefault(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public DomainsRecord value5(String value) { + setIsNullable(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public DomainsRecord value6(Integer value) { + setDataType(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public DomainsRecord value7(Integer value) { + setPrecision(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public DomainsRecord value8(Integer value) { + setScale(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public DomainsRecord value9(String value) { + setTypeName(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public DomainsRecord value10(Integer value) { + setSelectivity(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public DomainsRecord value11(String value) { + setCheckConstraint(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public DomainsRecord value12(String value) { + setRemarks(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public DomainsRecord value13(String value) { + setSql(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public DomainsRecord value14(Integer value) { + setId(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public DomainsRecord values(String value1, String value2, String value3, String value4, String value5, Integer value6, Integer value7, Integer value8, String value9, Integer value10, String value11, String value12, String value13, Integer value14) { + value1(value1); + value2(value2); + value3(value3); + value4(value4); + value5(value5); + value6(value6); + value7(value7); + value8(value8); + value9(value9); + value10(value10); + value11(value11); + value12(value12); + value13(value13); + value14(value14); + return this; + } + + // ------------------------------------------------------------------------- + // Constructors + // ------------------------------------------------------------------------- + + /** + * Create a detached DomainsRecord + */ + public DomainsRecord() { + super(Domains.DOMAINS); + } + + /** + * Create a detached, initialised DomainsRecord + */ + public DomainsRecord(String domainCatalog, String domainSchema, String domainName, String columnDefault, String isNullable, Integer dataType, Integer precision, Integer scale, String typeName, Integer selectivity, String checkConstraint, String remarks, String sql, Integer id) { + super(Domains.DOMAINS); + + setValue(0, domainCatalog); + setValue(1, domainSchema); + setValue(2, domainName); + setValue(3, columnDefault); + setValue(4, isNullable); + setValue(5, dataType); + setValue(6, precision); + setValue(7, scale); + setValue(8, typeName); + setValue(9, selectivity); + setValue(10, checkConstraint); + setValue(11, remarks); + setValue(12, sql); + setValue(13, id); + } +} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/FunctionAliasesRecord.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/FunctionAliasesRecord.java new file mode 100644 index 0000000000..7c095555bc --- /dev/null +++ b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/FunctionAliasesRecord.java @@ -0,0 +1,570 @@ +/** + * This class is generated by jOOQ + */ +package com.baeldung.jooq.introduction.db.information_schema.tables.records; + + +import com.baeldung.jooq.introduction.db.information_schema.tables.FunctionAliases; + +import javax.annotation.Generated; + +import org.jooq.Field; +import org.jooq.Record12; +import org.jooq.Row12; +import org.jooq.impl.TableRecordImpl; + + +/** + * This class is generated by jOOQ. + */ +@Generated( + value = { + "http://www.jooq.org", + "jOOQ version:3.7.3" + }, + comments = "This class is generated by jOOQ" +) +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class FunctionAliasesRecord extends TableRecordImpl implements Record12 { + + private static final long serialVersionUID = -788602015; + + /** + * Setter for INFORMATION_SCHEMA.FUNCTION_ALIASES.ALIAS_CATALOG. + */ + public void setAliasCatalog(String value) { + setValue(0, value); + } + + /** + * Getter for INFORMATION_SCHEMA.FUNCTION_ALIASES.ALIAS_CATALOG. + */ + public String getAliasCatalog() { + return (String) getValue(0); + } + + /** + * Setter for INFORMATION_SCHEMA.FUNCTION_ALIASES.ALIAS_SCHEMA. + */ + public void setAliasSchema(String value) { + setValue(1, value); + } + + /** + * Getter for INFORMATION_SCHEMA.FUNCTION_ALIASES.ALIAS_SCHEMA. + */ + public String getAliasSchema() { + return (String) getValue(1); + } + + /** + * Setter for INFORMATION_SCHEMA.FUNCTION_ALIASES.ALIAS_NAME. + */ + public void setAliasName(String value) { + setValue(2, value); + } + + /** + * Getter for INFORMATION_SCHEMA.FUNCTION_ALIASES.ALIAS_NAME. + */ + public String getAliasName() { + return (String) getValue(2); + } + + /** + * Setter for INFORMATION_SCHEMA.FUNCTION_ALIASES.JAVA_CLASS. + */ + public void setJavaClass(String value) { + setValue(3, value); + } + + /** + * Getter for INFORMATION_SCHEMA.FUNCTION_ALIASES.JAVA_CLASS. + */ + public String getJavaClass() { + return (String) getValue(3); + } + + /** + * Setter for INFORMATION_SCHEMA.FUNCTION_ALIASES.JAVA_METHOD. + */ + public void setJavaMethod(String value) { + setValue(4, value); + } + + /** + * Getter for INFORMATION_SCHEMA.FUNCTION_ALIASES.JAVA_METHOD. + */ + public String getJavaMethod() { + return (String) getValue(4); + } + + /** + * Setter for INFORMATION_SCHEMA.FUNCTION_ALIASES.DATA_TYPE. + */ + public void setDataType(Integer value) { + setValue(5, value); + } + + /** + * Getter for INFORMATION_SCHEMA.FUNCTION_ALIASES.DATA_TYPE. + */ + public Integer getDataType() { + return (Integer) getValue(5); + } + + /** + * Setter for INFORMATION_SCHEMA.FUNCTION_ALIASES.TYPE_NAME. + */ + public void setTypeName(String value) { + setValue(6, value); + } + + /** + * Getter for INFORMATION_SCHEMA.FUNCTION_ALIASES.TYPE_NAME. + */ + public String getTypeName() { + return (String) getValue(6); + } + + /** + * Setter for INFORMATION_SCHEMA.FUNCTION_ALIASES.COLUMN_COUNT. + */ + public void setColumnCount(Integer value) { + setValue(7, value); + } + + /** + * Getter for INFORMATION_SCHEMA.FUNCTION_ALIASES.COLUMN_COUNT. + */ + public Integer getColumnCount() { + return (Integer) getValue(7); + } + + /** + * Setter for INFORMATION_SCHEMA.FUNCTION_ALIASES.RETURNS_RESULT. + */ + public void setReturnsResult(Short value) { + setValue(8, value); + } + + /** + * Getter for INFORMATION_SCHEMA.FUNCTION_ALIASES.RETURNS_RESULT. + */ + public Short getReturnsResult() { + return (Short) getValue(8); + } + + /** + * Setter for INFORMATION_SCHEMA.FUNCTION_ALIASES.REMARKS. + */ + public void setRemarks(String value) { + setValue(9, value); + } + + /** + * Getter for INFORMATION_SCHEMA.FUNCTION_ALIASES.REMARKS. + */ + public String getRemarks() { + return (String) getValue(9); + } + + /** + * Setter for INFORMATION_SCHEMA.FUNCTION_ALIASES.ID. + */ + public void setId(Integer value) { + setValue(10, value); + } + + /** + * Getter for INFORMATION_SCHEMA.FUNCTION_ALIASES.ID. + */ + public Integer getId() { + return (Integer) getValue(10); + } + + /** + * Setter for INFORMATION_SCHEMA.FUNCTION_ALIASES.SOURCE. + */ + public void setSource(String value) { + setValue(11, value); + } + + /** + * Getter for INFORMATION_SCHEMA.FUNCTION_ALIASES.SOURCE. + */ + public String getSource() { + return (String) getValue(11); + } + + // ------------------------------------------------------------------------- + // Record12 type implementation + // ------------------------------------------------------------------------- + + /** + * {@inheritDoc} + */ + @Override + public Row12 fieldsRow() { + return (Row12) super.fieldsRow(); + } + + /** + * {@inheritDoc} + */ + @Override + public Row12 valuesRow() { + return (Row12) super.valuesRow(); + } + + /** + * {@inheritDoc} + */ + @Override + public Field field1() { + return FunctionAliases.FUNCTION_ALIASES.ALIAS_CATALOG; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field2() { + return FunctionAliases.FUNCTION_ALIASES.ALIAS_SCHEMA; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field3() { + return FunctionAliases.FUNCTION_ALIASES.ALIAS_NAME; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field4() { + return FunctionAliases.FUNCTION_ALIASES.JAVA_CLASS; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field5() { + return FunctionAliases.FUNCTION_ALIASES.JAVA_METHOD; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field6() { + return FunctionAliases.FUNCTION_ALIASES.DATA_TYPE; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field7() { + return FunctionAliases.FUNCTION_ALIASES.TYPE_NAME; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field8() { + return FunctionAliases.FUNCTION_ALIASES.COLUMN_COUNT; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field9() { + return FunctionAliases.FUNCTION_ALIASES.RETURNS_RESULT; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field10() { + return FunctionAliases.FUNCTION_ALIASES.REMARKS; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field11() { + return FunctionAliases.FUNCTION_ALIASES.ID; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field12() { + return FunctionAliases.FUNCTION_ALIASES.SOURCE; + } + + /** + * {@inheritDoc} + */ + @Override + public String value1() { + return getAliasCatalog(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value2() { + return getAliasSchema(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value3() { + return getAliasName(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value4() { + return getJavaClass(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value5() { + return getJavaMethod(); + } + + /** + * {@inheritDoc} + */ + @Override + public Integer value6() { + return getDataType(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value7() { + return getTypeName(); + } + + /** + * {@inheritDoc} + */ + @Override + public Integer value8() { + return getColumnCount(); + } + + /** + * {@inheritDoc} + */ + @Override + public Short value9() { + return getReturnsResult(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value10() { + return getRemarks(); + } + + /** + * {@inheritDoc} + */ + @Override + public Integer value11() { + return getId(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value12() { + return getSource(); + } + + /** + * {@inheritDoc} + */ + @Override + public FunctionAliasesRecord value1(String value) { + setAliasCatalog(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public FunctionAliasesRecord value2(String value) { + setAliasSchema(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public FunctionAliasesRecord value3(String value) { + setAliasName(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public FunctionAliasesRecord value4(String value) { + setJavaClass(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public FunctionAliasesRecord value5(String value) { + setJavaMethod(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public FunctionAliasesRecord value6(Integer value) { + setDataType(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public FunctionAliasesRecord value7(String value) { + setTypeName(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public FunctionAliasesRecord value8(Integer value) { + setColumnCount(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public FunctionAliasesRecord value9(Short value) { + setReturnsResult(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public FunctionAliasesRecord value10(String value) { + setRemarks(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public FunctionAliasesRecord value11(Integer value) { + setId(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public FunctionAliasesRecord value12(String value) { + setSource(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public FunctionAliasesRecord values(String value1, String value2, String value3, String value4, String value5, Integer value6, String value7, Integer value8, Short value9, String value10, Integer value11, String value12) { + value1(value1); + value2(value2); + value3(value3); + value4(value4); + value5(value5); + value6(value6); + value7(value7); + value8(value8); + value9(value9); + value10(value10); + value11(value11); + value12(value12); + return this; + } + + // ------------------------------------------------------------------------- + // Constructors + // ------------------------------------------------------------------------- + + /** + * Create a detached FunctionAliasesRecord + */ + public FunctionAliasesRecord() { + super(FunctionAliases.FUNCTION_ALIASES); + } + + /** + * Create a detached, initialised FunctionAliasesRecord + */ + public FunctionAliasesRecord(String aliasCatalog, String aliasSchema, String aliasName, String javaClass, String javaMethod, Integer dataType, String typeName, Integer columnCount, Short returnsResult, String remarks, Integer id, String source) { + super(FunctionAliases.FUNCTION_ALIASES); + + setValue(0, aliasCatalog); + setValue(1, aliasSchema); + setValue(2, aliasName); + setValue(3, javaClass); + setValue(4, javaMethod); + setValue(5, dataType); + setValue(6, typeName); + setValue(7, columnCount); + setValue(8, returnsResult); + setValue(9, remarks); + setValue(10, id); + setValue(11, source); + } +} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/FunctionColumnsRecord.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/FunctionColumnsRecord.java new file mode 100644 index 0000000000..3d0c81d2cd --- /dev/null +++ b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/FunctionColumnsRecord.java @@ -0,0 +1,775 @@ +/** + * This class is generated by jOOQ + */ +package com.baeldung.jooq.introduction.db.information_schema.tables.records; + + +import com.baeldung.jooq.introduction.db.information_schema.tables.FunctionColumns; + +import javax.annotation.Generated; + +import org.jooq.Field; +import org.jooq.Record17; +import org.jooq.Row17; +import org.jooq.impl.TableRecordImpl; + + +/** + * This class is generated by jOOQ. + */ +@Generated( + value = { + "http://www.jooq.org", + "jOOQ version:3.7.3" + }, + comments = "This class is generated by jOOQ" +) +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class FunctionColumnsRecord extends TableRecordImpl implements Record17 { + + private static final long serialVersionUID = 1196004173; + + /** + * Setter for INFORMATION_SCHEMA.FUNCTION_COLUMNS.ALIAS_CATALOG. + */ + public void setAliasCatalog(String value) { + setValue(0, value); + } + + /** + * Getter for INFORMATION_SCHEMA.FUNCTION_COLUMNS.ALIAS_CATALOG. + */ + public String getAliasCatalog() { + return (String) getValue(0); + } + + /** + * Setter for INFORMATION_SCHEMA.FUNCTION_COLUMNS.ALIAS_SCHEMA. + */ + public void setAliasSchema(String value) { + setValue(1, value); + } + + /** + * Getter for INFORMATION_SCHEMA.FUNCTION_COLUMNS.ALIAS_SCHEMA. + */ + public String getAliasSchema() { + return (String) getValue(1); + } + + /** + * Setter for INFORMATION_SCHEMA.FUNCTION_COLUMNS.ALIAS_NAME. + */ + public void setAliasName(String value) { + setValue(2, value); + } + + /** + * Getter for INFORMATION_SCHEMA.FUNCTION_COLUMNS.ALIAS_NAME. + */ + public String getAliasName() { + return (String) getValue(2); + } + + /** + * Setter for INFORMATION_SCHEMA.FUNCTION_COLUMNS.JAVA_CLASS. + */ + public void setJavaClass(String value) { + setValue(3, value); + } + + /** + * Getter for INFORMATION_SCHEMA.FUNCTION_COLUMNS.JAVA_CLASS. + */ + public String getJavaClass() { + return (String) getValue(3); + } + + /** + * Setter for INFORMATION_SCHEMA.FUNCTION_COLUMNS.JAVA_METHOD. + */ + public void setJavaMethod(String value) { + setValue(4, value); + } + + /** + * Getter for INFORMATION_SCHEMA.FUNCTION_COLUMNS.JAVA_METHOD. + */ + public String getJavaMethod() { + return (String) getValue(4); + } + + /** + * Setter for INFORMATION_SCHEMA.FUNCTION_COLUMNS.COLUMN_COUNT. + */ + public void setColumnCount(Integer value) { + setValue(5, value); + } + + /** + * Getter for INFORMATION_SCHEMA.FUNCTION_COLUMNS.COLUMN_COUNT. + */ + public Integer getColumnCount() { + return (Integer) getValue(5); + } + + /** + * Setter for INFORMATION_SCHEMA.FUNCTION_COLUMNS.POS. + */ + public void setPos(Integer value) { + setValue(6, value); + } + + /** + * Getter for INFORMATION_SCHEMA.FUNCTION_COLUMNS.POS. + */ + public Integer getPos() { + return (Integer) getValue(6); + } + + /** + * Setter for INFORMATION_SCHEMA.FUNCTION_COLUMNS.COLUMN_NAME. + */ + public void setColumnName(String value) { + setValue(7, value); + } + + /** + * Getter for INFORMATION_SCHEMA.FUNCTION_COLUMNS.COLUMN_NAME. + */ + public String getColumnName() { + return (String) getValue(7); + } + + /** + * Setter for INFORMATION_SCHEMA.FUNCTION_COLUMNS.DATA_TYPE. + */ + public void setDataType(Integer value) { + setValue(8, value); + } + + /** + * Getter for INFORMATION_SCHEMA.FUNCTION_COLUMNS.DATA_TYPE. + */ + public Integer getDataType() { + return (Integer) getValue(8); + } + + /** + * Setter for INFORMATION_SCHEMA.FUNCTION_COLUMNS.TYPE_NAME. + */ + public void setTypeName(String value) { + setValue(9, value); + } + + /** + * Getter for INFORMATION_SCHEMA.FUNCTION_COLUMNS.TYPE_NAME. + */ + public String getTypeName() { + return (String) getValue(9); + } + + /** + * Setter for INFORMATION_SCHEMA.FUNCTION_COLUMNS.PRECISION. + */ + public void setPrecision(Integer value) { + setValue(10, value); + } + + /** + * Getter for INFORMATION_SCHEMA.FUNCTION_COLUMNS.PRECISION. + */ + public Integer getPrecision() { + return (Integer) getValue(10); + } + + /** + * Setter for INFORMATION_SCHEMA.FUNCTION_COLUMNS.SCALE. + */ + public void setScale(Short value) { + setValue(11, value); + } + + /** + * Getter for INFORMATION_SCHEMA.FUNCTION_COLUMNS.SCALE. + */ + public Short getScale() { + return (Short) getValue(11); + } + + /** + * Setter for INFORMATION_SCHEMA.FUNCTION_COLUMNS.RADIX. + */ + public void setRadix(Short value) { + setValue(12, value); + } + + /** + * Getter for INFORMATION_SCHEMA.FUNCTION_COLUMNS.RADIX. + */ + public Short getRadix() { + return (Short) getValue(12); + } + + /** + * Setter for INFORMATION_SCHEMA.FUNCTION_COLUMNS.NULLABLE. + */ + public void setNullable(Short value) { + setValue(13, value); + } + + /** + * Getter for INFORMATION_SCHEMA.FUNCTION_COLUMNS.NULLABLE. + */ + public Short getNullable() { + return (Short) getValue(13); + } + + /** + * Setter for INFORMATION_SCHEMA.FUNCTION_COLUMNS.COLUMN_TYPE. + */ + public void setColumnType(Short value) { + setValue(14, value); + } + + /** + * Getter for INFORMATION_SCHEMA.FUNCTION_COLUMNS.COLUMN_TYPE. + */ + public Short getColumnType() { + return (Short) getValue(14); + } + + /** + * Setter for INFORMATION_SCHEMA.FUNCTION_COLUMNS.REMARKS. + */ + public void setRemarks(String value) { + setValue(15, value); + } + + /** + * Getter for INFORMATION_SCHEMA.FUNCTION_COLUMNS.REMARKS. + */ + public String getRemarks() { + return (String) getValue(15); + } + + /** + * Setter for INFORMATION_SCHEMA.FUNCTION_COLUMNS.COLUMN_DEFAULT. + */ + public void setColumnDefault(String value) { + setValue(16, value); + } + + /** + * Getter for INFORMATION_SCHEMA.FUNCTION_COLUMNS.COLUMN_DEFAULT. + */ + public String getColumnDefault() { + return (String) getValue(16); + } + + // ------------------------------------------------------------------------- + // Record17 type implementation + // ------------------------------------------------------------------------- + + /** + * {@inheritDoc} + */ + @Override + public Row17 fieldsRow() { + return (Row17) super.fieldsRow(); + } + + /** + * {@inheritDoc} + */ + @Override + public Row17 valuesRow() { + return (Row17) super.valuesRow(); + } + + /** + * {@inheritDoc} + */ + @Override + public Field field1() { + return FunctionColumns.FUNCTION_COLUMNS.ALIAS_CATALOG; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field2() { + return FunctionColumns.FUNCTION_COLUMNS.ALIAS_SCHEMA; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field3() { + return FunctionColumns.FUNCTION_COLUMNS.ALIAS_NAME; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field4() { + return FunctionColumns.FUNCTION_COLUMNS.JAVA_CLASS; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field5() { + return FunctionColumns.FUNCTION_COLUMNS.JAVA_METHOD; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field6() { + return FunctionColumns.FUNCTION_COLUMNS.COLUMN_COUNT; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field7() { + return FunctionColumns.FUNCTION_COLUMNS.POS; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field8() { + return FunctionColumns.FUNCTION_COLUMNS.COLUMN_NAME; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field9() { + return FunctionColumns.FUNCTION_COLUMNS.DATA_TYPE; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field10() { + return FunctionColumns.FUNCTION_COLUMNS.TYPE_NAME; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field11() { + return FunctionColumns.FUNCTION_COLUMNS.PRECISION; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field12() { + return FunctionColumns.FUNCTION_COLUMNS.SCALE; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field13() { + return FunctionColumns.FUNCTION_COLUMNS.RADIX; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field14() { + return FunctionColumns.FUNCTION_COLUMNS.NULLABLE; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field15() { + return FunctionColumns.FUNCTION_COLUMNS.COLUMN_TYPE; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field16() { + return FunctionColumns.FUNCTION_COLUMNS.REMARKS; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field17() { + return FunctionColumns.FUNCTION_COLUMNS.COLUMN_DEFAULT; + } + + /** + * {@inheritDoc} + */ + @Override + public String value1() { + return getAliasCatalog(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value2() { + return getAliasSchema(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value3() { + return getAliasName(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value4() { + return getJavaClass(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value5() { + return getJavaMethod(); + } + + /** + * {@inheritDoc} + */ + @Override + public Integer value6() { + return getColumnCount(); + } + + /** + * {@inheritDoc} + */ + @Override + public Integer value7() { + return getPos(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value8() { + return getColumnName(); + } + + /** + * {@inheritDoc} + */ + @Override + public Integer value9() { + return getDataType(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value10() { + return getTypeName(); + } + + /** + * {@inheritDoc} + */ + @Override + public Integer value11() { + return getPrecision(); + } + + /** + * {@inheritDoc} + */ + @Override + public Short value12() { + return getScale(); + } + + /** + * {@inheritDoc} + */ + @Override + public Short value13() { + return getRadix(); + } + + /** + * {@inheritDoc} + */ + @Override + public Short value14() { + return getNullable(); + } + + /** + * {@inheritDoc} + */ + @Override + public Short value15() { + return getColumnType(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value16() { + return getRemarks(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value17() { + return getColumnDefault(); + } + + /** + * {@inheritDoc} + */ + @Override + public FunctionColumnsRecord value1(String value) { + setAliasCatalog(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public FunctionColumnsRecord value2(String value) { + setAliasSchema(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public FunctionColumnsRecord value3(String value) { + setAliasName(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public FunctionColumnsRecord value4(String value) { + setJavaClass(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public FunctionColumnsRecord value5(String value) { + setJavaMethod(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public FunctionColumnsRecord value6(Integer value) { + setColumnCount(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public FunctionColumnsRecord value7(Integer value) { + setPos(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public FunctionColumnsRecord value8(String value) { + setColumnName(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public FunctionColumnsRecord value9(Integer value) { + setDataType(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public FunctionColumnsRecord value10(String value) { + setTypeName(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public FunctionColumnsRecord value11(Integer value) { + setPrecision(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public FunctionColumnsRecord value12(Short value) { + setScale(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public FunctionColumnsRecord value13(Short value) { + setRadix(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public FunctionColumnsRecord value14(Short value) { + setNullable(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public FunctionColumnsRecord value15(Short value) { + setColumnType(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public FunctionColumnsRecord value16(String value) { + setRemarks(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public FunctionColumnsRecord value17(String value) { + setColumnDefault(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public FunctionColumnsRecord values(String value1, String value2, String value3, String value4, String value5, Integer value6, Integer value7, String value8, Integer value9, String value10, Integer value11, Short value12, Short value13, Short value14, Short value15, String value16, String value17) { + value1(value1); + value2(value2); + value3(value3); + value4(value4); + value5(value5); + value6(value6); + value7(value7); + value8(value8); + value9(value9); + value10(value10); + value11(value11); + value12(value12); + value13(value13); + value14(value14); + value15(value15); + value16(value16); + value17(value17); + return this; + } + + // ------------------------------------------------------------------------- + // Constructors + // ------------------------------------------------------------------------- + + /** + * Create a detached FunctionColumnsRecord + */ + public FunctionColumnsRecord() { + super(FunctionColumns.FUNCTION_COLUMNS); + } + + /** + * Create a detached, initialised FunctionColumnsRecord + */ + public FunctionColumnsRecord(String aliasCatalog, String aliasSchema, String aliasName, String javaClass, String javaMethod, Integer columnCount, Integer pos, String columnName, Integer dataType, String typeName, Integer precision, Short scale, Short radix, Short nullable, Short columnType, String remarks, String columnDefault) { + super(FunctionColumns.FUNCTION_COLUMNS); + + setValue(0, aliasCatalog); + setValue(1, aliasSchema); + setValue(2, aliasName); + setValue(3, javaClass); + setValue(4, javaMethod); + setValue(5, columnCount); + setValue(6, pos); + setValue(7, columnName); + setValue(8, dataType); + setValue(9, typeName); + setValue(10, precision); + setValue(11, scale); + setValue(12, radix); + setValue(13, nullable); + setValue(14, columnType); + setValue(15, remarks); + setValue(16, columnDefault); + } +} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/HelpRecord.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/HelpRecord.java new file mode 100644 index 0000000000..1ed95e2ff7 --- /dev/null +++ b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/HelpRecord.java @@ -0,0 +1,283 @@ +/** + * This class is generated by jOOQ + */ +package com.baeldung.jooq.introduction.db.information_schema.tables.records; + + +import com.baeldung.jooq.introduction.db.information_schema.tables.Help; + +import javax.annotation.Generated; + +import org.jooq.Field; +import org.jooq.Record5; +import org.jooq.Row5; +import org.jooq.impl.TableRecordImpl; + + +/** + * This class is generated by jOOQ. + */ +@Generated( + value = { + "http://www.jooq.org", + "jOOQ version:3.7.3" + }, + comments = "This class is generated by jOOQ" +) +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class HelpRecord extends TableRecordImpl implements Record5 { + + private static final long serialVersionUID = -1612064442; + + /** + * Setter for INFORMATION_SCHEMA.HELP.ID. + */ + public void setId(Integer value) { + setValue(0, value); + } + + /** + * Getter for INFORMATION_SCHEMA.HELP.ID. + */ + public Integer getId() { + return (Integer) getValue(0); + } + + /** + * Setter for INFORMATION_SCHEMA.HELP.SECTION. + */ + public void setSection(String value) { + setValue(1, value); + } + + /** + * Getter for INFORMATION_SCHEMA.HELP.SECTION. + */ + public String getSection() { + return (String) getValue(1); + } + + /** + * Setter for INFORMATION_SCHEMA.HELP.TOPIC. + */ + public void setTopic(String value) { + setValue(2, value); + } + + /** + * Getter for INFORMATION_SCHEMA.HELP.TOPIC. + */ + public String getTopic() { + return (String) getValue(2); + } + + /** + * Setter for INFORMATION_SCHEMA.HELP.SYNTAX. + */ + public void setSyntax(String value) { + setValue(3, value); + } + + /** + * Getter for INFORMATION_SCHEMA.HELP.SYNTAX. + */ + public String getSyntax() { + return (String) getValue(3); + } + + /** + * Setter for INFORMATION_SCHEMA.HELP.TEXT. + */ + public void setText(String value) { + setValue(4, value); + } + + /** + * Getter for INFORMATION_SCHEMA.HELP.TEXT. + */ + public String getText() { + return (String) getValue(4); + } + + // ------------------------------------------------------------------------- + // Record5 type implementation + // ------------------------------------------------------------------------- + + /** + * {@inheritDoc} + */ + @Override + public Row5 fieldsRow() { + return (Row5) super.fieldsRow(); + } + + /** + * {@inheritDoc} + */ + @Override + public Row5 valuesRow() { + return (Row5) super.valuesRow(); + } + + /** + * {@inheritDoc} + */ + @Override + public Field field1() { + return Help.HELP.ID; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field2() { + return Help.HELP.SECTION; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field3() { + return Help.HELP.TOPIC; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field4() { + return Help.HELP.SYNTAX; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field5() { + return Help.HELP.TEXT; + } + + /** + * {@inheritDoc} + */ + @Override + public Integer value1() { + return getId(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value2() { + return getSection(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value3() { + return getTopic(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value4() { + return getSyntax(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value5() { + return getText(); + } + + /** + * {@inheritDoc} + */ + @Override + public HelpRecord value1(Integer value) { + setId(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public HelpRecord value2(String value) { + setSection(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public HelpRecord value3(String value) { + setTopic(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public HelpRecord value4(String value) { + setSyntax(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public HelpRecord value5(String value) { + setText(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public HelpRecord values(Integer value1, String value2, String value3, String value4, String value5) { + value1(value1); + value2(value2); + value3(value3); + value4(value4); + value5(value5); + return this; + } + + // ------------------------------------------------------------------------- + // Constructors + // ------------------------------------------------------------------------- + + /** + * Create a detached HelpRecord + */ + public HelpRecord() { + super(Help.HELP); + } + + /** + * Create a detached, initialised HelpRecord + */ + public HelpRecord(Integer id, String section, String topic, String syntax, String text) { + super(Help.HELP); + + setValue(0, id); + setValue(1, section); + setValue(2, topic); + setValue(3, syntax); + setValue(4, text); + } +} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/InDoubtRecord.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/InDoubtRecord.java new file mode 100644 index 0000000000..dd33d014fb --- /dev/null +++ b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/InDoubtRecord.java @@ -0,0 +1,160 @@ +/** + * This class is generated by jOOQ + */ +package com.baeldung.jooq.introduction.db.information_schema.tables.records; + + +import com.baeldung.jooq.introduction.db.information_schema.tables.InDoubt; + +import javax.annotation.Generated; + +import org.jooq.Field; +import org.jooq.Record2; +import org.jooq.Row2; +import org.jooq.impl.TableRecordImpl; + + +/** + * This class is generated by jOOQ. + */ +@Generated( + value = { + "http://www.jooq.org", + "jOOQ version:3.7.3" + }, + comments = "This class is generated by jOOQ" +) +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class InDoubtRecord extends TableRecordImpl implements Record2 { + + private static final long serialVersionUID = 115858325; + + /** + * Setter for INFORMATION_SCHEMA.IN_DOUBT.TRANSACTION. + */ + public void setTransaction(String value) { + setValue(0, value); + } + + /** + * Getter for INFORMATION_SCHEMA.IN_DOUBT.TRANSACTION. + */ + public String getTransaction() { + return (String) getValue(0); + } + + /** + * Setter for INFORMATION_SCHEMA.IN_DOUBT.STATE. + */ + public void setState(String value) { + setValue(1, value); + } + + /** + * Getter for INFORMATION_SCHEMA.IN_DOUBT.STATE. + */ + public String getState() { + return (String) getValue(1); + } + + // ------------------------------------------------------------------------- + // Record2 type implementation + // ------------------------------------------------------------------------- + + /** + * {@inheritDoc} + */ + @Override + public Row2 fieldsRow() { + return (Row2) super.fieldsRow(); + } + + /** + * {@inheritDoc} + */ + @Override + public Row2 valuesRow() { + return (Row2) super.valuesRow(); + } + + /** + * {@inheritDoc} + */ + @Override + public Field field1() { + return InDoubt.IN_DOUBT.TRANSACTION; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field2() { + return InDoubt.IN_DOUBT.STATE; + } + + /** + * {@inheritDoc} + */ + @Override + public String value1() { + return getTransaction(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value2() { + return getState(); + } + + /** + * {@inheritDoc} + */ + @Override + public InDoubtRecord value1(String value) { + setTransaction(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public InDoubtRecord value2(String value) { + setState(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public InDoubtRecord values(String value1, String value2) { + value1(value1); + value2(value2); + return this; + } + + // ------------------------------------------------------------------------- + // Constructors + // ------------------------------------------------------------------------- + + /** + * Create a detached InDoubtRecord + */ + public InDoubtRecord() { + super(InDoubt.IN_DOUBT); + } + + /** + * Create a detached, initialised InDoubtRecord + */ + public InDoubtRecord(String transaction, String state) { + super(InDoubt.IN_DOUBT); + + setValue(0, transaction); + setValue(1, state); + } +} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/IndexesRecord.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/IndexesRecord.java new file mode 100644 index 0000000000..87a34b2473 --- /dev/null +++ b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/IndexesRecord.java @@ -0,0 +1,939 @@ +/** + * This class is generated by jOOQ + */ +package com.baeldung.jooq.introduction.db.information_schema.tables.records; + + +import com.baeldung.jooq.introduction.db.information_schema.tables.Indexes; + +import javax.annotation.Generated; + +import org.jooq.Field; +import org.jooq.Record21; +import org.jooq.Row21; +import org.jooq.impl.TableRecordImpl; + + +/** + * This class is generated by jOOQ. + */ +@Generated( + value = { + "http://www.jooq.org", + "jOOQ version:3.7.3" + }, + comments = "This class is generated by jOOQ" +) +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class IndexesRecord extends TableRecordImpl implements Record21 { + + private static final long serialVersionUID = -1683028432; + + /** + * Setter for INFORMATION_SCHEMA.INDEXES.TABLE_CATALOG. + */ + public void setTableCatalog(String value) { + setValue(0, value); + } + + /** + * Getter for INFORMATION_SCHEMA.INDEXES.TABLE_CATALOG. + */ + public String getTableCatalog() { + return (String) getValue(0); + } + + /** + * Setter for INFORMATION_SCHEMA.INDEXES.TABLE_SCHEMA. + */ + public void setTableSchema(String value) { + setValue(1, value); + } + + /** + * Getter for INFORMATION_SCHEMA.INDEXES.TABLE_SCHEMA. + */ + public String getTableSchema() { + return (String) getValue(1); + } + + /** + * Setter for INFORMATION_SCHEMA.INDEXES.TABLE_NAME. + */ + public void setTableName(String value) { + setValue(2, value); + } + + /** + * Getter for INFORMATION_SCHEMA.INDEXES.TABLE_NAME. + */ + public String getTableName() { + return (String) getValue(2); + } + + /** + * Setter for INFORMATION_SCHEMA.INDEXES.NON_UNIQUE. + */ + public void setNonUnique(Boolean value) { + setValue(3, value); + } + + /** + * Getter for INFORMATION_SCHEMA.INDEXES.NON_UNIQUE. + */ + public Boolean getNonUnique() { + return (Boolean) getValue(3); + } + + /** + * Setter for INFORMATION_SCHEMA.INDEXES.INDEX_NAME. + */ + public void setIndexName(String value) { + setValue(4, value); + } + + /** + * Getter for INFORMATION_SCHEMA.INDEXES.INDEX_NAME. + */ + public String getIndexName() { + return (String) getValue(4); + } + + /** + * Setter for INFORMATION_SCHEMA.INDEXES.ORDINAL_POSITION. + */ + public void setOrdinalPosition(Short value) { + setValue(5, value); + } + + /** + * Getter for INFORMATION_SCHEMA.INDEXES.ORDINAL_POSITION. + */ + public Short getOrdinalPosition() { + return (Short) getValue(5); + } + + /** + * Setter for INFORMATION_SCHEMA.INDEXES.COLUMN_NAME. + */ + public void setColumnName(String value) { + setValue(6, value); + } + + /** + * Getter for INFORMATION_SCHEMA.INDEXES.COLUMN_NAME. + */ + public String getColumnName() { + return (String) getValue(6); + } + + /** + * Setter for INFORMATION_SCHEMA.INDEXES.CARDINALITY. + */ + public void setCardinality(Integer value) { + setValue(7, value); + } + + /** + * Getter for INFORMATION_SCHEMA.INDEXES.CARDINALITY. + */ + public Integer getCardinality() { + return (Integer) getValue(7); + } + + /** + * Setter for INFORMATION_SCHEMA.INDEXES.PRIMARY_KEY. + */ + public void setPrimaryKey_(Boolean value) { + setValue(8, value); + } + + /** + * Getter for INFORMATION_SCHEMA.INDEXES.PRIMARY_KEY. + */ + public Boolean getPrimaryKey_() { + return (Boolean) getValue(8); + } + + /** + * Setter for INFORMATION_SCHEMA.INDEXES.INDEX_TYPE_NAME. + */ + public void setIndexTypeName(String value) { + setValue(9, value); + } + + /** + * Getter for INFORMATION_SCHEMA.INDEXES.INDEX_TYPE_NAME. + */ + public String getIndexTypeName() { + return (String) getValue(9); + } + + /** + * Setter for INFORMATION_SCHEMA.INDEXES.IS_GENERATED. + */ + public void setIsGenerated(Boolean value) { + setValue(10, value); + } + + /** + * Getter for INFORMATION_SCHEMA.INDEXES.IS_GENERATED. + */ + public Boolean getIsGenerated() { + return (Boolean) getValue(10); + } + + /** + * Setter for INFORMATION_SCHEMA.INDEXES.INDEX_TYPE. + */ + public void setIndexType(Short value) { + setValue(11, value); + } + + /** + * Getter for INFORMATION_SCHEMA.INDEXES.INDEX_TYPE. + */ + public Short getIndexType() { + return (Short) getValue(11); + } + + /** + * Setter for INFORMATION_SCHEMA.INDEXES.ASC_OR_DESC. + */ + public void setAscOrDesc(String value) { + setValue(12, value); + } + + /** + * Getter for INFORMATION_SCHEMA.INDEXES.ASC_OR_DESC. + */ + public String getAscOrDesc() { + return (String) getValue(12); + } + + /** + * Setter for INFORMATION_SCHEMA.INDEXES.PAGES. + */ + public void setPages(Integer value) { + setValue(13, value); + } + + /** + * Getter for INFORMATION_SCHEMA.INDEXES.PAGES. + */ + public Integer getPages() { + return (Integer) getValue(13); + } + + /** + * Setter for INFORMATION_SCHEMA.INDEXES.FILTER_CONDITION. + */ + public void setFilterCondition(String value) { + setValue(14, value); + } + + /** + * Getter for INFORMATION_SCHEMA.INDEXES.FILTER_CONDITION. + */ + public String getFilterCondition() { + return (String) getValue(14); + } + + /** + * Setter for INFORMATION_SCHEMA.INDEXES.REMARKS. + */ + public void setRemarks(String value) { + setValue(15, value); + } + + /** + * Getter for INFORMATION_SCHEMA.INDEXES.REMARKS. + */ + public String getRemarks() { + return (String) getValue(15); + } + + /** + * Setter for INFORMATION_SCHEMA.INDEXES.SQL. + */ + public void setSql(String value) { + setValue(16, value); + } + + /** + * Getter for INFORMATION_SCHEMA.INDEXES.SQL. + */ + public String getSql() { + return (String) getValue(16); + } + + /** + * Setter for INFORMATION_SCHEMA.INDEXES.ID. + */ + public void setId(Integer value) { + setValue(17, value); + } + + /** + * Getter for INFORMATION_SCHEMA.INDEXES.ID. + */ + public Integer getId() { + return (Integer) getValue(17); + } + + /** + * Setter for INFORMATION_SCHEMA.INDEXES.SORT_TYPE. + */ + public void setSortType(Integer value) { + setValue(18, value); + } + + /** + * Getter for INFORMATION_SCHEMA.INDEXES.SORT_TYPE. + */ + public Integer getSortType() { + return (Integer) getValue(18); + } + + /** + * Setter for INFORMATION_SCHEMA.INDEXES.CONSTRAINT_NAME. + */ + public void setConstraintName(String value) { + setValue(19, value); + } + + /** + * Getter for INFORMATION_SCHEMA.INDEXES.CONSTRAINT_NAME. + */ + public String getConstraintName() { + return (String) getValue(19); + } + + /** + * Setter for INFORMATION_SCHEMA.INDEXES.INDEX_CLASS. + */ + public void setIndexClass(String value) { + setValue(20, value); + } + + /** + * Getter for INFORMATION_SCHEMA.INDEXES.INDEX_CLASS. + */ + public String getIndexClass() { + return (String) getValue(20); + } + + // ------------------------------------------------------------------------- + // Record21 type implementation + // ------------------------------------------------------------------------- + + /** + * {@inheritDoc} + */ + @Override + public Row21 fieldsRow() { + return (Row21) super.fieldsRow(); + } + + /** + * {@inheritDoc} + */ + @Override + public Row21 valuesRow() { + return (Row21) super.valuesRow(); + } + + /** + * {@inheritDoc} + */ + @Override + public Field field1() { + return Indexes.INDEXES.TABLE_CATALOG; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field2() { + return Indexes.INDEXES.TABLE_SCHEMA; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field3() { + return Indexes.INDEXES.TABLE_NAME; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field4() { + return Indexes.INDEXES.NON_UNIQUE; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field5() { + return Indexes.INDEXES.INDEX_NAME; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field6() { + return Indexes.INDEXES.ORDINAL_POSITION; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field7() { + return Indexes.INDEXES.COLUMN_NAME; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field8() { + return Indexes.INDEXES.CARDINALITY; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field9() { + return Indexes.INDEXES.PRIMARY_KEY; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field10() { + return Indexes.INDEXES.INDEX_TYPE_NAME; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field11() { + return Indexes.INDEXES.IS_GENERATED; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field12() { + return Indexes.INDEXES.INDEX_TYPE; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field13() { + return Indexes.INDEXES.ASC_OR_DESC; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field14() { + return Indexes.INDEXES.PAGES; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field15() { + return Indexes.INDEXES.FILTER_CONDITION; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field16() { + return Indexes.INDEXES.REMARKS; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field17() { + return Indexes.INDEXES.SQL; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field18() { + return Indexes.INDEXES.ID; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field19() { + return Indexes.INDEXES.SORT_TYPE; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field20() { + return Indexes.INDEXES.CONSTRAINT_NAME; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field21() { + return Indexes.INDEXES.INDEX_CLASS; + } + + /** + * {@inheritDoc} + */ + @Override + public String value1() { + return getTableCatalog(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value2() { + return getTableSchema(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value3() { + return getTableName(); + } + + /** + * {@inheritDoc} + */ + @Override + public Boolean value4() { + return getNonUnique(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value5() { + return getIndexName(); + } + + /** + * {@inheritDoc} + */ + @Override + public Short value6() { + return getOrdinalPosition(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value7() { + return getColumnName(); + } + + /** + * {@inheritDoc} + */ + @Override + public Integer value8() { + return getCardinality(); + } + + /** + * {@inheritDoc} + */ + @Override + public Boolean value9() { + return getPrimaryKey_(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value10() { + return getIndexTypeName(); + } + + /** + * {@inheritDoc} + */ + @Override + public Boolean value11() { + return getIsGenerated(); + } + + /** + * {@inheritDoc} + */ + @Override + public Short value12() { + return getIndexType(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value13() { + return getAscOrDesc(); + } + + /** + * {@inheritDoc} + */ + @Override + public Integer value14() { + return getPages(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value15() { + return getFilterCondition(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value16() { + return getRemarks(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value17() { + return getSql(); + } + + /** + * {@inheritDoc} + */ + @Override + public Integer value18() { + return getId(); + } + + /** + * {@inheritDoc} + */ + @Override + public Integer value19() { + return getSortType(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value20() { + return getConstraintName(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value21() { + return getIndexClass(); + } + + /** + * {@inheritDoc} + */ + @Override + public IndexesRecord value1(String value) { + setTableCatalog(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public IndexesRecord value2(String value) { + setTableSchema(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public IndexesRecord value3(String value) { + setTableName(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public IndexesRecord value4(Boolean value) { + setNonUnique(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public IndexesRecord value5(String value) { + setIndexName(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public IndexesRecord value6(Short value) { + setOrdinalPosition(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public IndexesRecord value7(String value) { + setColumnName(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public IndexesRecord value8(Integer value) { + setCardinality(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public IndexesRecord value9(Boolean value) { + setPrimaryKey_(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public IndexesRecord value10(String value) { + setIndexTypeName(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public IndexesRecord value11(Boolean value) { + setIsGenerated(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public IndexesRecord value12(Short value) { + setIndexType(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public IndexesRecord value13(String value) { + setAscOrDesc(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public IndexesRecord value14(Integer value) { + setPages(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public IndexesRecord value15(String value) { + setFilterCondition(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public IndexesRecord value16(String value) { + setRemarks(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public IndexesRecord value17(String value) { + setSql(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public IndexesRecord value18(Integer value) { + setId(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public IndexesRecord value19(Integer value) { + setSortType(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public IndexesRecord value20(String value) { + setConstraintName(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public IndexesRecord value21(String value) { + setIndexClass(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public IndexesRecord values(String value1, String value2, String value3, Boolean value4, String value5, Short value6, String value7, Integer value8, Boolean value9, String value10, Boolean value11, Short value12, String value13, Integer value14, String value15, String value16, String value17, Integer value18, Integer value19, String value20, String value21) { + value1(value1); + value2(value2); + value3(value3); + value4(value4); + value5(value5); + value6(value6); + value7(value7); + value8(value8); + value9(value9); + value10(value10); + value11(value11); + value12(value12); + value13(value13); + value14(value14); + value15(value15); + value16(value16); + value17(value17); + value18(value18); + value19(value19); + value20(value20); + value21(value21); + return this; + } + + // ------------------------------------------------------------------------- + // Constructors + // ------------------------------------------------------------------------- + + /** + * Create a detached IndexesRecord + */ + public IndexesRecord() { + super(Indexes.INDEXES); + } + + /** + * Create a detached, initialised IndexesRecord + */ + public IndexesRecord(String tableCatalog, String tableSchema, String tableName, Boolean nonUnique, String indexName, Short ordinalPosition, String columnName, Integer cardinality, Boolean primaryKey, String indexTypeName, Boolean isGenerated, Short indexType, String ascOrDesc, Integer pages, String filterCondition, String remarks, String sql, Integer id, Integer sortType, String constraintName, String indexClass) { + super(Indexes.INDEXES); + + setValue(0, tableCatalog); + setValue(1, tableSchema); + setValue(2, tableName); + setValue(3, nonUnique); + setValue(4, indexName); + setValue(5, ordinalPosition); + setValue(6, columnName); + setValue(7, cardinality); + setValue(8, primaryKey); + setValue(9, indexTypeName); + setValue(10, isGenerated); + setValue(11, indexType); + setValue(12, ascOrDesc); + setValue(13, pages); + setValue(14, filterCondition); + setValue(15, remarks); + setValue(16, sql); + setValue(17, id); + setValue(18, sortType); + setValue(19, constraintName); + setValue(20, indexClass); + } +} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/LocksRecord.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/LocksRecord.java new file mode 100644 index 0000000000..23cbf780e6 --- /dev/null +++ b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/LocksRecord.java @@ -0,0 +1,242 @@ +/** + * This class is generated by jOOQ + */ +package com.baeldung.jooq.introduction.db.information_schema.tables.records; + + +import com.baeldung.jooq.introduction.db.information_schema.tables.Locks; + +import javax.annotation.Generated; + +import org.jooq.Field; +import org.jooq.Record4; +import org.jooq.Row4; +import org.jooq.impl.TableRecordImpl; + + +/** + * This class is generated by jOOQ. + */ +@Generated( + value = { + "http://www.jooq.org", + "jOOQ version:3.7.3" + }, + comments = "This class is generated by jOOQ" +) +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class LocksRecord extends TableRecordImpl implements Record4 { + + private static final long serialVersionUID = 1548907854; + + /** + * Setter for INFORMATION_SCHEMA.LOCKS.TABLE_SCHEMA. + */ + public void setTableSchema(String value) { + setValue(0, value); + } + + /** + * Getter for INFORMATION_SCHEMA.LOCKS.TABLE_SCHEMA. + */ + public String getTableSchema() { + return (String) getValue(0); + } + + /** + * Setter for INFORMATION_SCHEMA.LOCKS.TABLE_NAME. + */ + public void setTableName(String value) { + setValue(1, value); + } + + /** + * Getter for INFORMATION_SCHEMA.LOCKS.TABLE_NAME. + */ + public String getTableName() { + return (String) getValue(1); + } + + /** + * Setter for INFORMATION_SCHEMA.LOCKS.SESSION_ID. + */ + public void setSessionId(Integer value) { + setValue(2, value); + } + + /** + * Getter for INFORMATION_SCHEMA.LOCKS.SESSION_ID. + */ + public Integer getSessionId() { + return (Integer) getValue(2); + } + + /** + * Setter for INFORMATION_SCHEMA.LOCKS.LOCK_TYPE. + */ + public void setLockType(String value) { + setValue(3, value); + } + + /** + * Getter for INFORMATION_SCHEMA.LOCKS.LOCK_TYPE. + */ + public String getLockType() { + return (String) getValue(3); + } + + // ------------------------------------------------------------------------- + // Record4 type implementation + // ------------------------------------------------------------------------- + + /** + * {@inheritDoc} + */ + @Override + public Row4 fieldsRow() { + return (Row4) super.fieldsRow(); + } + + /** + * {@inheritDoc} + */ + @Override + public Row4 valuesRow() { + return (Row4) super.valuesRow(); + } + + /** + * {@inheritDoc} + */ + @Override + public Field field1() { + return Locks.LOCKS.TABLE_SCHEMA; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field2() { + return Locks.LOCKS.TABLE_NAME; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field3() { + return Locks.LOCKS.SESSION_ID; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field4() { + return Locks.LOCKS.LOCK_TYPE; + } + + /** + * {@inheritDoc} + */ + @Override + public String value1() { + return getTableSchema(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value2() { + return getTableName(); + } + + /** + * {@inheritDoc} + */ + @Override + public Integer value3() { + return getSessionId(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value4() { + return getLockType(); + } + + /** + * {@inheritDoc} + */ + @Override + public LocksRecord value1(String value) { + setTableSchema(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public LocksRecord value2(String value) { + setTableName(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public LocksRecord value3(Integer value) { + setSessionId(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public LocksRecord value4(String value) { + setLockType(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public LocksRecord values(String value1, String value2, Integer value3, String value4) { + value1(value1); + value2(value2); + value3(value3); + value4(value4); + return this; + } + + // ------------------------------------------------------------------------- + // Constructors + // ------------------------------------------------------------------------- + + /** + * Create a detached LocksRecord + */ + public LocksRecord() { + super(Locks.LOCKS); + } + + /** + * Create a detached, initialised LocksRecord + */ + public LocksRecord(String tableSchema, String tableName, Integer sessionId, String lockType) { + super(Locks.LOCKS); + + setValue(0, tableSchema); + setValue(1, tableName); + setValue(2, sessionId); + setValue(3, lockType); + } +} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/QueryStatisticsRecord.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/QueryStatisticsRecord.java new file mode 100644 index 0000000000..56cd9d15c4 --- /dev/null +++ b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/QueryStatisticsRecord.java @@ -0,0 +1,570 @@ +/** + * This class is generated by jOOQ + */ +package com.baeldung.jooq.introduction.db.information_schema.tables.records; + + +import com.baeldung.jooq.introduction.db.information_schema.tables.QueryStatistics; + +import javax.annotation.Generated; + +import org.jooq.Field; +import org.jooq.Record12; +import org.jooq.Row12; +import org.jooq.impl.TableRecordImpl; + + +/** + * This class is generated by jOOQ. + */ +@Generated( + value = { + "http://www.jooq.org", + "jOOQ version:3.7.3" + }, + comments = "This class is generated by jOOQ" +) +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class QueryStatisticsRecord extends TableRecordImpl implements Record12 { + + private static final long serialVersionUID = -1608090322; + + /** + * Setter for INFORMATION_SCHEMA.QUERY_STATISTICS.SQL_STATEMENT. + */ + public void setSqlStatement(String value) { + setValue(0, value); + } + + /** + * Getter for INFORMATION_SCHEMA.QUERY_STATISTICS.SQL_STATEMENT. + */ + public String getSqlStatement() { + return (String) getValue(0); + } + + /** + * Setter for INFORMATION_SCHEMA.QUERY_STATISTICS.EXECUTION_COUNT. + */ + public void setExecutionCount(Integer value) { + setValue(1, value); + } + + /** + * Getter for INFORMATION_SCHEMA.QUERY_STATISTICS.EXECUTION_COUNT. + */ + public Integer getExecutionCount() { + return (Integer) getValue(1); + } + + /** + * Setter for INFORMATION_SCHEMA.QUERY_STATISTICS.MIN_EXECUTION_TIME. + */ + public void setMinExecutionTime(Long value) { + setValue(2, value); + } + + /** + * Getter for INFORMATION_SCHEMA.QUERY_STATISTICS.MIN_EXECUTION_TIME. + */ + public Long getMinExecutionTime() { + return (Long) getValue(2); + } + + /** + * Setter for INFORMATION_SCHEMA.QUERY_STATISTICS.MAX_EXECUTION_TIME. + */ + public void setMaxExecutionTime(Long value) { + setValue(3, value); + } + + /** + * Getter for INFORMATION_SCHEMA.QUERY_STATISTICS.MAX_EXECUTION_TIME. + */ + public Long getMaxExecutionTime() { + return (Long) getValue(3); + } + + /** + * Setter for INFORMATION_SCHEMA.QUERY_STATISTICS.CUMULATIVE_EXECUTION_TIME. + */ + public void setCumulativeExecutionTime(Long value) { + setValue(4, value); + } + + /** + * Getter for INFORMATION_SCHEMA.QUERY_STATISTICS.CUMULATIVE_EXECUTION_TIME. + */ + public Long getCumulativeExecutionTime() { + return (Long) getValue(4); + } + + /** + * Setter for INFORMATION_SCHEMA.QUERY_STATISTICS.AVERAGE_EXECUTION_TIME. + */ + public void setAverageExecutionTime(Double value) { + setValue(5, value); + } + + /** + * Getter for INFORMATION_SCHEMA.QUERY_STATISTICS.AVERAGE_EXECUTION_TIME. + */ + public Double getAverageExecutionTime() { + return (Double) getValue(5); + } + + /** + * Setter for INFORMATION_SCHEMA.QUERY_STATISTICS.STD_DEV_EXECUTION_TIME. + */ + public void setStdDevExecutionTime(Double value) { + setValue(6, value); + } + + /** + * Getter for INFORMATION_SCHEMA.QUERY_STATISTICS.STD_DEV_EXECUTION_TIME. + */ + public Double getStdDevExecutionTime() { + return (Double) getValue(6); + } + + /** + * Setter for INFORMATION_SCHEMA.QUERY_STATISTICS.MIN_ROW_COUNT. + */ + public void setMinRowCount(Integer value) { + setValue(7, value); + } + + /** + * Getter for INFORMATION_SCHEMA.QUERY_STATISTICS.MIN_ROW_COUNT. + */ + public Integer getMinRowCount() { + return (Integer) getValue(7); + } + + /** + * Setter for INFORMATION_SCHEMA.QUERY_STATISTICS.MAX_ROW_COUNT. + */ + public void setMaxRowCount(Integer value) { + setValue(8, value); + } + + /** + * Getter for INFORMATION_SCHEMA.QUERY_STATISTICS.MAX_ROW_COUNT. + */ + public Integer getMaxRowCount() { + return (Integer) getValue(8); + } + + /** + * Setter for INFORMATION_SCHEMA.QUERY_STATISTICS.CUMULATIVE_ROW_COUNT. + */ + public void setCumulativeRowCount(Long value) { + setValue(9, value); + } + + /** + * Getter for INFORMATION_SCHEMA.QUERY_STATISTICS.CUMULATIVE_ROW_COUNT. + */ + public Long getCumulativeRowCount() { + return (Long) getValue(9); + } + + /** + * Setter for INFORMATION_SCHEMA.QUERY_STATISTICS.AVERAGE_ROW_COUNT. + */ + public void setAverageRowCount(Double value) { + setValue(10, value); + } + + /** + * Getter for INFORMATION_SCHEMA.QUERY_STATISTICS.AVERAGE_ROW_COUNT. + */ + public Double getAverageRowCount() { + return (Double) getValue(10); + } + + /** + * Setter for INFORMATION_SCHEMA.QUERY_STATISTICS.STD_DEV_ROW_COUNT. + */ + public void setStdDevRowCount(Double value) { + setValue(11, value); + } + + /** + * Getter for INFORMATION_SCHEMA.QUERY_STATISTICS.STD_DEV_ROW_COUNT. + */ + public Double getStdDevRowCount() { + return (Double) getValue(11); + } + + // ------------------------------------------------------------------------- + // Record12 type implementation + // ------------------------------------------------------------------------- + + /** + * {@inheritDoc} + */ + @Override + public Row12 fieldsRow() { + return (Row12) super.fieldsRow(); + } + + /** + * {@inheritDoc} + */ + @Override + public Row12 valuesRow() { + return (Row12) super.valuesRow(); + } + + /** + * {@inheritDoc} + */ + @Override + public Field field1() { + return QueryStatistics.QUERY_STATISTICS.SQL_STATEMENT; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field2() { + return QueryStatistics.QUERY_STATISTICS.EXECUTION_COUNT; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field3() { + return QueryStatistics.QUERY_STATISTICS.MIN_EXECUTION_TIME; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field4() { + return QueryStatistics.QUERY_STATISTICS.MAX_EXECUTION_TIME; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field5() { + return QueryStatistics.QUERY_STATISTICS.CUMULATIVE_EXECUTION_TIME; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field6() { + return QueryStatistics.QUERY_STATISTICS.AVERAGE_EXECUTION_TIME; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field7() { + return QueryStatistics.QUERY_STATISTICS.STD_DEV_EXECUTION_TIME; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field8() { + return QueryStatistics.QUERY_STATISTICS.MIN_ROW_COUNT; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field9() { + return QueryStatistics.QUERY_STATISTICS.MAX_ROW_COUNT; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field10() { + return QueryStatistics.QUERY_STATISTICS.CUMULATIVE_ROW_COUNT; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field11() { + return QueryStatistics.QUERY_STATISTICS.AVERAGE_ROW_COUNT; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field12() { + return QueryStatistics.QUERY_STATISTICS.STD_DEV_ROW_COUNT; + } + + /** + * {@inheritDoc} + */ + @Override + public String value1() { + return getSqlStatement(); + } + + /** + * {@inheritDoc} + */ + @Override + public Integer value2() { + return getExecutionCount(); + } + + /** + * {@inheritDoc} + */ + @Override + public Long value3() { + return getMinExecutionTime(); + } + + /** + * {@inheritDoc} + */ + @Override + public Long value4() { + return getMaxExecutionTime(); + } + + /** + * {@inheritDoc} + */ + @Override + public Long value5() { + return getCumulativeExecutionTime(); + } + + /** + * {@inheritDoc} + */ + @Override + public Double value6() { + return getAverageExecutionTime(); + } + + /** + * {@inheritDoc} + */ + @Override + public Double value7() { + return getStdDevExecutionTime(); + } + + /** + * {@inheritDoc} + */ + @Override + public Integer value8() { + return getMinRowCount(); + } + + /** + * {@inheritDoc} + */ + @Override + public Integer value9() { + return getMaxRowCount(); + } + + /** + * {@inheritDoc} + */ + @Override + public Long value10() { + return getCumulativeRowCount(); + } + + /** + * {@inheritDoc} + */ + @Override + public Double value11() { + return getAverageRowCount(); + } + + /** + * {@inheritDoc} + */ + @Override + public Double value12() { + return getStdDevRowCount(); + } + + /** + * {@inheritDoc} + */ + @Override + public QueryStatisticsRecord value1(String value) { + setSqlStatement(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public QueryStatisticsRecord value2(Integer value) { + setExecutionCount(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public QueryStatisticsRecord value3(Long value) { + setMinExecutionTime(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public QueryStatisticsRecord value4(Long value) { + setMaxExecutionTime(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public QueryStatisticsRecord value5(Long value) { + setCumulativeExecutionTime(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public QueryStatisticsRecord value6(Double value) { + setAverageExecutionTime(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public QueryStatisticsRecord value7(Double value) { + setStdDevExecutionTime(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public QueryStatisticsRecord value8(Integer value) { + setMinRowCount(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public QueryStatisticsRecord value9(Integer value) { + setMaxRowCount(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public QueryStatisticsRecord value10(Long value) { + setCumulativeRowCount(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public QueryStatisticsRecord value11(Double value) { + setAverageRowCount(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public QueryStatisticsRecord value12(Double value) { + setStdDevRowCount(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public QueryStatisticsRecord values(String value1, Integer value2, Long value3, Long value4, Long value5, Double value6, Double value7, Integer value8, Integer value9, Long value10, Double value11, Double value12) { + value1(value1); + value2(value2); + value3(value3); + value4(value4); + value5(value5); + value6(value6); + value7(value7); + value8(value8); + value9(value9); + value10(value10); + value11(value11); + value12(value12); + return this; + } + + // ------------------------------------------------------------------------- + // Constructors + // ------------------------------------------------------------------------- + + /** + * Create a detached QueryStatisticsRecord + */ + public QueryStatisticsRecord() { + super(QueryStatistics.QUERY_STATISTICS); + } + + /** + * Create a detached, initialised QueryStatisticsRecord + */ + public QueryStatisticsRecord(String sqlStatement, Integer executionCount, Long minExecutionTime, Long maxExecutionTime, Long cumulativeExecutionTime, Double averageExecutionTime, Double stdDevExecutionTime, Integer minRowCount, Integer maxRowCount, Long cumulativeRowCount, Double averageRowCount, Double stdDevRowCount) { + super(QueryStatistics.QUERY_STATISTICS); + + setValue(0, sqlStatement); + setValue(1, executionCount); + setValue(2, minExecutionTime); + setValue(3, maxExecutionTime); + setValue(4, cumulativeExecutionTime); + setValue(5, averageExecutionTime); + setValue(6, stdDevExecutionTime); + setValue(7, minRowCount); + setValue(8, maxRowCount); + setValue(9, cumulativeRowCount); + setValue(10, averageRowCount); + setValue(11, stdDevRowCount); + } +} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/RightsRecord.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/RightsRecord.java new file mode 100644 index 0000000000..a9c50817c7 --- /dev/null +++ b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/RightsRecord.java @@ -0,0 +1,365 @@ +/** + * This class is generated by jOOQ + */ +package com.baeldung.jooq.introduction.db.information_schema.tables.records; + + +import com.baeldung.jooq.introduction.db.information_schema.tables.Rights; + +import javax.annotation.Generated; + +import org.jooq.Field; +import org.jooq.Record7; +import org.jooq.Row7; +import org.jooq.impl.TableRecordImpl; + + +/** + * This class is generated by jOOQ. + */ +@Generated( + value = { + "http://www.jooq.org", + "jOOQ version:3.7.3" + }, + comments = "This class is generated by jOOQ" +) +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class RightsRecord extends TableRecordImpl implements Record7 { + + private static final long serialVersionUID = 269610816; + + /** + * Setter for INFORMATION_SCHEMA.RIGHTS.GRANTEE. + */ + public void setGrantee(String value) { + setValue(0, value); + } + + /** + * Getter for INFORMATION_SCHEMA.RIGHTS.GRANTEE. + */ + public String getGrantee() { + return (String) getValue(0); + } + + /** + * Setter for INFORMATION_SCHEMA.RIGHTS.GRANTEETYPE. + */ + public void setGranteetype(String value) { + setValue(1, value); + } + + /** + * Getter for INFORMATION_SCHEMA.RIGHTS.GRANTEETYPE. + */ + public String getGranteetype() { + return (String) getValue(1); + } + + /** + * Setter for INFORMATION_SCHEMA.RIGHTS.GRANTEDROLE. + */ + public void setGrantedrole(String value) { + setValue(2, value); + } + + /** + * Getter for INFORMATION_SCHEMA.RIGHTS.GRANTEDROLE. + */ + public String getGrantedrole() { + return (String) getValue(2); + } + + /** + * Setter for INFORMATION_SCHEMA.RIGHTS.RIGHTS. + */ + public void setRights(String value) { + setValue(3, value); + } + + /** + * Getter for INFORMATION_SCHEMA.RIGHTS.RIGHTS. + */ + public String getRights() { + return (String) getValue(3); + } + + /** + * Setter for INFORMATION_SCHEMA.RIGHTS.TABLE_SCHEMA. + */ + public void setTableSchema(String value) { + setValue(4, value); + } + + /** + * Getter for INFORMATION_SCHEMA.RIGHTS.TABLE_SCHEMA. + */ + public String getTableSchema() { + return (String) getValue(4); + } + + /** + * Setter for INFORMATION_SCHEMA.RIGHTS.TABLE_NAME. + */ + public void setTableName(String value) { + setValue(5, value); + } + + /** + * Getter for INFORMATION_SCHEMA.RIGHTS.TABLE_NAME. + */ + public String getTableName() { + return (String) getValue(5); + } + + /** + * Setter for INFORMATION_SCHEMA.RIGHTS.ID. + */ + public void setId(Integer value) { + setValue(6, value); + } + + /** + * Getter for INFORMATION_SCHEMA.RIGHTS.ID. + */ + public Integer getId() { + return (Integer) getValue(6); + } + + // ------------------------------------------------------------------------- + // Record7 type implementation + // ------------------------------------------------------------------------- + + /** + * {@inheritDoc} + */ + @Override + public Row7 fieldsRow() { + return (Row7) super.fieldsRow(); + } + + /** + * {@inheritDoc} + */ + @Override + public Row7 valuesRow() { + return (Row7) super.valuesRow(); + } + + /** + * {@inheritDoc} + */ + @Override + public Field field1() { + return Rights.RIGHTS.GRANTEE; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field2() { + return Rights.RIGHTS.GRANTEETYPE; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field3() { + return Rights.RIGHTS.GRANTEDROLE; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field4() { + return Rights.RIGHTS.RIGHTS_; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field5() { + return Rights.RIGHTS.TABLE_SCHEMA; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field6() { + return Rights.RIGHTS.TABLE_NAME; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field7() { + return Rights.RIGHTS.ID; + } + + /** + * {@inheritDoc} + */ + @Override + public String value1() { + return getGrantee(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value2() { + return getGranteetype(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value3() { + return getGrantedrole(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value4() { + return getRights(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value5() { + return getTableSchema(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value6() { + return getTableName(); + } + + /** + * {@inheritDoc} + */ + @Override + public Integer value7() { + return getId(); + } + + /** + * {@inheritDoc} + */ + @Override + public RightsRecord value1(String value) { + setGrantee(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public RightsRecord value2(String value) { + setGranteetype(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public RightsRecord value3(String value) { + setGrantedrole(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public RightsRecord value4(String value) { + setRights(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public RightsRecord value5(String value) { + setTableSchema(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public RightsRecord value6(String value) { + setTableName(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public RightsRecord value7(Integer value) { + setId(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public RightsRecord values(String value1, String value2, String value3, String value4, String value5, String value6, Integer value7) { + value1(value1); + value2(value2); + value3(value3); + value4(value4); + value5(value5); + value6(value6); + value7(value7); + return this; + } + + // ------------------------------------------------------------------------- + // Constructors + // ------------------------------------------------------------------------- + + /** + * Create a detached RightsRecord + */ + public RightsRecord() { + super(Rights.RIGHTS); + } + + /** + * Create a detached, initialised RightsRecord + */ + public RightsRecord(String grantee, String granteetype, String grantedrole, String rights, String tableSchema, String tableName, Integer id) { + super(Rights.RIGHTS); + + setValue(0, grantee); + setValue(1, granteetype); + setValue(2, grantedrole); + setValue(3, rights); + setValue(4, tableSchema); + setValue(5, tableName); + setValue(6, id); + } +} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/RolesRecord.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/RolesRecord.java new file mode 100644 index 0000000000..a648165fc5 --- /dev/null +++ b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/RolesRecord.java @@ -0,0 +1,201 @@ +/** + * This class is generated by jOOQ + */ +package com.baeldung.jooq.introduction.db.information_schema.tables.records; + + +import com.baeldung.jooq.introduction.db.information_schema.tables.Roles; + +import javax.annotation.Generated; + +import org.jooq.Field; +import org.jooq.Record3; +import org.jooq.Row3; +import org.jooq.impl.TableRecordImpl; + + +/** + * This class is generated by jOOQ. + */ +@Generated( + value = { + "http://www.jooq.org", + "jOOQ version:3.7.3" + }, + comments = "This class is generated by jOOQ" +) +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class RolesRecord extends TableRecordImpl implements Record3 { + + private static final long serialVersionUID = -579805711; + + /** + * Setter for INFORMATION_SCHEMA.ROLES.NAME. + */ + public void setName(String value) { + setValue(0, value); + } + + /** + * Getter for INFORMATION_SCHEMA.ROLES.NAME. + */ + public String getName() { + return (String) getValue(0); + } + + /** + * Setter for INFORMATION_SCHEMA.ROLES.REMARKS. + */ + public void setRemarks(String value) { + setValue(1, value); + } + + /** + * Getter for INFORMATION_SCHEMA.ROLES.REMARKS. + */ + public String getRemarks() { + return (String) getValue(1); + } + + /** + * Setter for INFORMATION_SCHEMA.ROLES.ID. + */ + public void setId(Integer value) { + setValue(2, value); + } + + /** + * Getter for INFORMATION_SCHEMA.ROLES.ID. + */ + public Integer getId() { + return (Integer) getValue(2); + } + + // ------------------------------------------------------------------------- + // Record3 type implementation + // ------------------------------------------------------------------------- + + /** + * {@inheritDoc} + */ + @Override + public Row3 fieldsRow() { + return (Row3) super.fieldsRow(); + } + + /** + * {@inheritDoc} + */ + @Override + public Row3 valuesRow() { + return (Row3) super.valuesRow(); + } + + /** + * {@inheritDoc} + */ + @Override + public Field field1() { + return Roles.ROLES.NAME; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field2() { + return Roles.ROLES.REMARKS; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field3() { + return Roles.ROLES.ID; + } + + /** + * {@inheritDoc} + */ + @Override + public String value1() { + return getName(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value2() { + return getRemarks(); + } + + /** + * {@inheritDoc} + */ + @Override + public Integer value3() { + return getId(); + } + + /** + * {@inheritDoc} + */ + @Override + public RolesRecord value1(String value) { + setName(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public RolesRecord value2(String value) { + setRemarks(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public RolesRecord value3(Integer value) { + setId(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public RolesRecord values(String value1, String value2, Integer value3) { + value1(value1); + value2(value2); + value3(value3); + return this; + } + + // ------------------------------------------------------------------------- + // Constructors + // ------------------------------------------------------------------------- + + /** + * Create a detached RolesRecord + */ + public RolesRecord() { + super(Roles.ROLES); + } + + /** + * Create a detached, initialised RolesRecord + */ + public RolesRecord(String name, String remarks, Integer id) { + super(Roles.ROLES); + + setValue(0, name); + setValue(1, remarks); + setValue(2, id); + } +} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/SchemataRecord.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/SchemataRecord.java new file mode 100644 index 0000000000..21ae1edfb4 --- /dev/null +++ b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/SchemataRecord.java @@ -0,0 +1,406 @@ +/** + * This class is generated by jOOQ + */ +package com.baeldung.jooq.introduction.db.information_schema.tables.records; + + +import com.baeldung.jooq.introduction.db.information_schema.tables.Schemata; + +import javax.annotation.Generated; + +import org.jooq.Field; +import org.jooq.Record8; +import org.jooq.Row8; +import org.jooq.impl.TableRecordImpl; + + +/** + * This class is generated by jOOQ. + */ +@Generated( + value = { + "http://www.jooq.org", + "jOOQ version:3.7.3" + }, + comments = "This class is generated by jOOQ" +) +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class SchemataRecord extends TableRecordImpl implements Record8 { + + private static final long serialVersionUID = -163519189; + + /** + * Setter for INFORMATION_SCHEMA.SCHEMATA.CATALOG_NAME. + */ + public void setCatalogName(String value) { + setValue(0, value); + } + + /** + * Getter for INFORMATION_SCHEMA.SCHEMATA.CATALOG_NAME. + */ + public String getCatalogName() { + return (String) getValue(0); + } + + /** + * Setter for INFORMATION_SCHEMA.SCHEMATA.SCHEMA_NAME. + */ + public void setSchemaName(String value) { + setValue(1, value); + } + + /** + * Getter for INFORMATION_SCHEMA.SCHEMATA.SCHEMA_NAME. + */ + public String getSchemaName() { + return (String) getValue(1); + } + + /** + * Setter for INFORMATION_SCHEMA.SCHEMATA.SCHEMA_OWNER. + */ + public void setSchemaOwner(String value) { + setValue(2, value); + } + + /** + * Getter for INFORMATION_SCHEMA.SCHEMATA.SCHEMA_OWNER. + */ + public String getSchemaOwner() { + return (String) getValue(2); + } + + /** + * Setter for INFORMATION_SCHEMA.SCHEMATA.DEFAULT_CHARACTER_SET_NAME. + */ + public void setDefaultCharacterSetName(String value) { + setValue(3, value); + } + + /** + * Getter for INFORMATION_SCHEMA.SCHEMATA.DEFAULT_CHARACTER_SET_NAME. + */ + public String getDefaultCharacterSetName() { + return (String) getValue(3); + } + + /** + * Setter for INFORMATION_SCHEMA.SCHEMATA.DEFAULT_COLLATION_NAME. + */ + public void setDefaultCollationName(String value) { + setValue(4, value); + } + + /** + * Getter for INFORMATION_SCHEMA.SCHEMATA.DEFAULT_COLLATION_NAME. + */ + public String getDefaultCollationName() { + return (String) getValue(4); + } + + /** + * Setter for INFORMATION_SCHEMA.SCHEMATA.IS_DEFAULT. + */ + public void setIsDefault(Boolean value) { + setValue(5, value); + } + + /** + * Getter for INFORMATION_SCHEMA.SCHEMATA.IS_DEFAULT. + */ + public Boolean getIsDefault() { + return (Boolean) getValue(5); + } + + /** + * Setter for INFORMATION_SCHEMA.SCHEMATA.REMARKS. + */ + public void setRemarks(String value) { + setValue(6, value); + } + + /** + * Getter for INFORMATION_SCHEMA.SCHEMATA.REMARKS. + */ + public String getRemarks() { + return (String) getValue(6); + } + + /** + * Setter for INFORMATION_SCHEMA.SCHEMATA.ID. + */ + public void setId(Integer value) { + setValue(7, value); + } + + /** + * Getter for INFORMATION_SCHEMA.SCHEMATA.ID. + */ + public Integer getId() { + return (Integer) getValue(7); + } + + // ------------------------------------------------------------------------- + // Record8 type implementation + // ------------------------------------------------------------------------- + + /** + * {@inheritDoc} + */ + @Override + public Row8 fieldsRow() { + return (Row8) super.fieldsRow(); + } + + /** + * {@inheritDoc} + */ + @Override + public Row8 valuesRow() { + return (Row8) super.valuesRow(); + } + + /** + * {@inheritDoc} + */ + @Override + public Field field1() { + return Schemata.SCHEMATA.CATALOG_NAME; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field2() { + return Schemata.SCHEMATA.SCHEMA_NAME; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field3() { + return Schemata.SCHEMATA.SCHEMA_OWNER; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field4() { + return Schemata.SCHEMATA.DEFAULT_CHARACTER_SET_NAME; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field5() { + return Schemata.SCHEMATA.DEFAULT_COLLATION_NAME; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field6() { + return Schemata.SCHEMATA.IS_DEFAULT; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field7() { + return Schemata.SCHEMATA.REMARKS; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field8() { + return Schemata.SCHEMATA.ID; + } + + /** + * {@inheritDoc} + */ + @Override + public String value1() { + return getCatalogName(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value2() { + return getSchemaName(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value3() { + return getSchemaOwner(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value4() { + return getDefaultCharacterSetName(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value5() { + return getDefaultCollationName(); + } + + /** + * {@inheritDoc} + */ + @Override + public Boolean value6() { + return getIsDefault(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value7() { + return getRemarks(); + } + + /** + * {@inheritDoc} + */ + @Override + public Integer value8() { + return getId(); + } + + /** + * {@inheritDoc} + */ + @Override + public SchemataRecord value1(String value) { + setCatalogName(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public SchemataRecord value2(String value) { + setSchemaName(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public SchemataRecord value3(String value) { + setSchemaOwner(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public SchemataRecord value4(String value) { + setDefaultCharacterSetName(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public SchemataRecord value5(String value) { + setDefaultCollationName(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public SchemataRecord value6(Boolean value) { + setIsDefault(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public SchemataRecord value7(String value) { + setRemarks(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public SchemataRecord value8(Integer value) { + setId(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public SchemataRecord values(String value1, String value2, String value3, String value4, String value5, Boolean value6, String value7, Integer value8) { + value1(value1); + value2(value2); + value3(value3); + value4(value4); + value5(value5); + value6(value6); + value7(value7); + value8(value8); + return this; + } + + // ------------------------------------------------------------------------- + // Constructors + // ------------------------------------------------------------------------- + + /** + * Create a detached SchemataRecord + */ + public SchemataRecord() { + super(Schemata.SCHEMATA); + } + + /** + * Create a detached, initialised SchemataRecord + */ + public SchemataRecord(String catalogName, String schemaName, String schemaOwner, String defaultCharacterSetName, String defaultCollationName, Boolean isDefault, String remarks, Integer id) { + super(Schemata.SCHEMATA); + + setValue(0, catalogName); + setValue(1, schemaName); + setValue(2, schemaOwner); + setValue(3, defaultCharacterSetName); + setValue(4, defaultCollationName); + setValue(5, isDefault); + setValue(6, remarks); + setValue(7, id); + } +} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/SequencesRecord.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/SequencesRecord.java new file mode 100644 index 0000000000..cc8285599f --- /dev/null +++ b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/SequencesRecord.java @@ -0,0 +1,570 @@ +/** + * This class is generated by jOOQ + */ +package com.baeldung.jooq.introduction.db.information_schema.tables.records; + + +import com.baeldung.jooq.introduction.db.information_schema.tables.Sequences; + +import javax.annotation.Generated; + +import org.jooq.Field; +import org.jooq.Record12; +import org.jooq.Row12; +import org.jooq.impl.TableRecordImpl; + + +/** + * This class is generated by jOOQ. + */ +@Generated( + value = { + "http://www.jooq.org", + "jOOQ version:3.7.3" + }, + comments = "This class is generated by jOOQ" +) +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class SequencesRecord extends TableRecordImpl implements Record12 { + + private static final long serialVersionUID = -1861251627; + + /** + * Setter for INFORMATION_SCHEMA.SEQUENCES.SEQUENCE_CATALOG. + */ + public void setSequenceCatalog(String value) { + setValue(0, value); + } + + /** + * Getter for INFORMATION_SCHEMA.SEQUENCES.SEQUENCE_CATALOG. + */ + public String getSequenceCatalog() { + return (String) getValue(0); + } + + /** + * Setter for INFORMATION_SCHEMA.SEQUENCES.SEQUENCE_SCHEMA. + */ + public void setSequenceSchema(String value) { + setValue(1, value); + } + + /** + * Getter for INFORMATION_SCHEMA.SEQUENCES.SEQUENCE_SCHEMA. + */ + public String getSequenceSchema() { + return (String) getValue(1); + } + + /** + * Setter for INFORMATION_SCHEMA.SEQUENCES.SEQUENCE_NAME. + */ + public void setSequenceName(String value) { + setValue(2, value); + } + + /** + * Getter for INFORMATION_SCHEMA.SEQUENCES.SEQUENCE_NAME. + */ + public String getSequenceName() { + return (String) getValue(2); + } + + /** + * Setter for INFORMATION_SCHEMA.SEQUENCES.CURRENT_VALUE. + */ + public void setCurrentValue(Long value) { + setValue(3, value); + } + + /** + * Getter for INFORMATION_SCHEMA.SEQUENCES.CURRENT_VALUE. + */ + public Long getCurrentValue() { + return (Long) getValue(3); + } + + /** + * Setter for INFORMATION_SCHEMA.SEQUENCES.INCREMENT. + */ + public void setIncrement(Long value) { + setValue(4, value); + } + + /** + * Getter for INFORMATION_SCHEMA.SEQUENCES.INCREMENT. + */ + public Long getIncrement() { + return (Long) getValue(4); + } + + /** + * Setter for INFORMATION_SCHEMA.SEQUENCES.IS_GENERATED. + */ + public void setIsGenerated(Boolean value) { + setValue(5, value); + } + + /** + * Getter for INFORMATION_SCHEMA.SEQUENCES.IS_GENERATED. + */ + public Boolean getIsGenerated() { + return (Boolean) getValue(5); + } + + /** + * Setter for INFORMATION_SCHEMA.SEQUENCES.REMARKS. + */ + public void setRemarks(String value) { + setValue(6, value); + } + + /** + * Getter for INFORMATION_SCHEMA.SEQUENCES.REMARKS. + */ + public String getRemarks() { + return (String) getValue(6); + } + + /** + * Setter for INFORMATION_SCHEMA.SEQUENCES.CACHE. + */ + public void setCache(Long value) { + setValue(7, value); + } + + /** + * Getter for INFORMATION_SCHEMA.SEQUENCES.CACHE. + */ + public Long getCache() { + return (Long) getValue(7); + } + + /** + * Setter for INFORMATION_SCHEMA.SEQUENCES.MIN_VALUE. + */ + public void setMinValue(Long value) { + setValue(8, value); + } + + /** + * Getter for INFORMATION_SCHEMA.SEQUENCES.MIN_VALUE. + */ + public Long getMinValue() { + return (Long) getValue(8); + } + + /** + * Setter for INFORMATION_SCHEMA.SEQUENCES.MAX_VALUE. + */ + public void setMaxValue(Long value) { + setValue(9, value); + } + + /** + * Getter for INFORMATION_SCHEMA.SEQUENCES.MAX_VALUE. + */ + public Long getMaxValue() { + return (Long) getValue(9); + } + + /** + * Setter for INFORMATION_SCHEMA.SEQUENCES.IS_CYCLE. + */ + public void setIsCycle(Boolean value) { + setValue(10, value); + } + + /** + * Getter for INFORMATION_SCHEMA.SEQUENCES.IS_CYCLE. + */ + public Boolean getIsCycle() { + return (Boolean) getValue(10); + } + + /** + * Setter for INFORMATION_SCHEMA.SEQUENCES.ID. + */ + public void setId(Integer value) { + setValue(11, value); + } + + /** + * Getter for INFORMATION_SCHEMA.SEQUENCES.ID. + */ + public Integer getId() { + return (Integer) getValue(11); + } + + // ------------------------------------------------------------------------- + // Record12 type implementation + // ------------------------------------------------------------------------- + + /** + * {@inheritDoc} + */ + @Override + public Row12 fieldsRow() { + return (Row12) super.fieldsRow(); + } + + /** + * {@inheritDoc} + */ + @Override + public Row12 valuesRow() { + return (Row12) super.valuesRow(); + } + + /** + * {@inheritDoc} + */ + @Override + public Field field1() { + return Sequences.SEQUENCES.SEQUENCE_CATALOG; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field2() { + return Sequences.SEQUENCES.SEQUENCE_SCHEMA; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field3() { + return Sequences.SEQUENCES.SEQUENCE_NAME; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field4() { + return Sequences.SEQUENCES.CURRENT_VALUE; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field5() { + return Sequences.SEQUENCES.INCREMENT; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field6() { + return Sequences.SEQUENCES.IS_GENERATED; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field7() { + return Sequences.SEQUENCES.REMARKS; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field8() { + return Sequences.SEQUENCES.CACHE; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field9() { + return Sequences.SEQUENCES.MIN_VALUE; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field10() { + return Sequences.SEQUENCES.MAX_VALUE; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field11() { + return Sequences.SEQUENCES.IS_CYCLE; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field12() { + return Sequences.SEQUENCES.ID; + } + + /** + * {@inheritDoc} + */ + @Override + public String value1() { + return getSequenceCatalog(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value2() { + return getSequenceSchema(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value3() { + return getSequenceName(); + } + + /** + * {@inheritDoc} + */ + @Override + public Long value4() { + return getCurrentValue(); + } + + /** + * {@inheritDoc} + */ + @Override + public Long value5() { + return getIncrement(); + } + + /** + * {@inheritDoc} + */ + @Override + public Boolean value6() { + return getIsGenerated(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value7() { + return getRemarks(); + } + + /** + * {@inheritDoc} + */ + @Override + public Long value8() { + return getCache(); + } + + /** + * {@inheritDoc} + */ + @Override + public Long value9() { + return getMinValue(); + } + + /** + * {@inheritDoc} + */ + @Override + public Long value10() { + return getMaxValue(); + } + + /** + * {@inheritDoc} + */ + @Override + public Boolean value11() { + return getIsCycle(); + } + + /** + * {@inheritDoc} + */ + @Override + public Integer value12() { + return getId(); + } + + /** + * {@inheritDoc} + */ + @Override + public SequencesRecord value1(String value) { + setSequenceCatalog(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public SequencesRecord value2(String value) { + setSequenceSchema(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public SequencesRecord value3(String value) { + setSequenceName(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public SequencesRecord value4(Long value) { + setCurrentValue(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public SequencesRecord value5(Long value) { + setIncrement(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public SequencesRecord value6(Boolean value) { + setIsGenerated(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public SequencesRecord value7(String value) { + setRemarks(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public SequencesRecord value8(Long value) { + setCache(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public SequencesRecord value9(Long value) { + setMinValue(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public SequencesRecord value10(Long value) { + setMaxValue(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public SequencesRecord value11(Boolean value) { + setIsCycle(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public SequencesRecord value12(Integer value) { + setId(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public SequencesRecord values(String value1, String value2, String value3, Long value4, Long value5, Boolean value6, String value7, Long value8, Long value9, Long value10, Boolean value11, Integer value12) { + value1(value1); + value2(value2); + value3(value3); + value4(value4); + value5(value5); + value6(value6); + value7(value7); + value8(value8); + value9(value9); + value10(value10); + value11(value11); + value12(value12); + return this; + } + + // ------------------------------------------------------------------------- + // Constructors + // ------------------------------------------------------------------------- + + /** + * Create a detached SequencesRecord + */ + public SequencesRecord() { + super(Sequences.SEQUENCES); + } + + /** + * Create a detached, initialised SequencesRecord + */ + public SequencesRecord(String sequenceCatalog, String sequenceSchema, String sequenceName, Long currentValue, Long increment, Boolean isGenerated, String remarks, Long cache, Long minValue, Long maxValue, Boolean isCycle, Integer id) { + super(Sequences.SEQUENCES); + + setValue(0, sequenceCatalog); + setValue(1, sequenceSchema); + setValue(2, sequenceName); + setValue(3, currentValue); + setValue(4, increment); + setValue(5, isGenerated); + setValue(6, remarks); + setValue(7, cache); + setValue(8, minValue); + setValue(9, maxValue); + setValue(10, isCycle); + setValue(11, id); + } +} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/SessionStateRecord.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/SessionStateRecord.java new file mode 100644 index 0000000000..b25800ae65 --- /dev/null +++ b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/SessionStateRecord.java @@ -0,0 +1,160 @@ +/** + * This class is generated by jOOQ + */ +package com.baeldung.jooq.introduction.db.information_schema.tables.records; + + +import com.baeldung.jooq.introduction.db.information_schema.tables.SessionState; + +import javax.annotation.Generated; + +import org.jooq.Field; +import org.jooq.Record2; +import org.jooq.Row2; +import org.jooq.impl.TableRecordImpl; + + +/** + * This class is generated by jOOQ. + */ +@Generated( + value = { + "http://www.jooq.org", + "jOOQ version:3.7.3" + }, + comments = "This class is generated by jOOQ" +) +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class SessionStateRecord extends TableRecordImpl implements Record2 { + + private static final long serialVersionUID = -1306764107; + + /** + * Setter for INFORMATION_SCHEMA.SESSION_STATE.KEY. + */ + public void setKey(String value) { + setValue(0, value); + } + + /** + * Getter for INFORMATION_SCHEMA.SESSION_STATE.KEY. + */ + public String getKey() { + return (String) getValue(0); + } + + /** + * Setter for INFORMATION_SCHEMA.SESSION_STATE.SQL. + */ + public void setSql(String value) { + setValue(1, value); + } + + /** + * Getter for INFORMATION_SCHEMA.SESSION_STATE.SQL. + */ + public String getSql() { + return (String) getValue(1); + } + + // ------------------------------------------------------------------------- + // Record2 type implementation + // ------------------------------------------------------------------------- + + /** + * {@inheritDoc} + */ + @Override + public Row2 fieldsRow() { + return (Row2) super.fieldsRow(); + } + + /** + * {@inheritDoc} + */ + @Override + public Row2 valuesRow() { + return (Row2) super.valuesRow(); + } + + /** + * {@inheritDoc} + */ + @Override + public Field field1() { + return SessionState.SESSION_STATE.KEY; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field2() { + return SessionState.SESSION_STATE.SQL; + } + + /** + * {@inheritDoc} + */ + @Override + public String value1() { + return getKey(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value2() { + return getSql(); + } + + /** + * {@inheritDoc} + */ + @Override + public SessionStateRecord value1(String value) { + setKey(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public SessionStateRecord value2(String value) { + setSql(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public SessionStateRecord values(String value1, String value2) { + value1(value1); + value2(value2); + return this; + } + + // ------------------------------------------------------------------------- + // Constructors + // ------------------------------------------------------------------------- + + /** + * Create a detached SessionStateRecord + */ + public SessionStateRecord() { + super(SessionState.SESSION_STATE); + } + + /** + * Create a detached, initialised SessionStateRecord + */ + public SessionStateRecord(String key, String sql) { + super(SessionState.SESSION_STATE); + + setValue(0, key); + setValue(1, sql); + } +} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/SessionsRecord.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/SessionsRecord.java new file mode 100644 index 0000000000..13853116b4 --- /dev/null +++ b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/SessionsRecord.java @@ -0,0 +1,324 @@ +/** + * This class is generated by jOOQ + */ +package com.baeldung.jooq.introduction.db.information_schema.tables.records; + + +import com.baeldung.jooq.introduction.db.information_schema.tables.Sessions; + +import javax.annotation.Generated; + +import org.jooq.Field; +import org.jooq.Record6; +import org.jooq.Row6; +import org.jooq.impl.TableRecordImpl; + + +/** + * This class is generated by jOOQ. + */ +@Generated( + value = { + "http://www.jooq.org", + "jOOQ version:3.7.3" + }, + comments = "This class is generated by jOOQ" +) +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class SessionsRecord extends TableRecordImpl implements Record6 { + + private static final long serialVersionUID = -457271018; + + /** + * Setter for INFORMATION_SCHEMA.SESSIONS.ID. + */ + public void setId(Integer value) { + setValue(0, value); + } + + /** + * Getter for INFORMATION_SCHEMA.SESSIONS.ID. + */ + public Integer getId() { + return (Integer) getValue(0); + } + + /** + * Setter for INFORMATION_SCHEMA.SESSIONS.USER_NAME. + */ + public void setUserName(String value) { + setValue(1, value); + } + + /** + * Getter for INFORMATION_SCHEMA.SESSIONS.USER_NAME. + */ + public String getUserName() { + return (String) getValue(1); + } + + /** + * Setter for INFORMATION_SCHEMA.SESSIONS.SESSION_START. + */ + public void setSessionStart(String value) { + setValue(2, value); + } + + /** + * Getter for INFORMATION_SCHEMA.SESSIONS.SESSION_START. + */ + public String getSessionStart() { + return (String) getValue(2); + } + + /** + * Setter for INFORMATION_SCHEMA.SESSIONS.STATEMENT. + */ + public void setStatement(String value) { + setValue(3, value); + } + + /** + * Getter for INFORMATION_SCHEMA.SESSIONS.STATEMENT. + */ + public String getStatement() { + return (String) getValue(3); + } + + /** + * Setter for INFORMATION_SCHEMA.SESSIONS.STATEMENT_START. + */ + public void setStatementStart(String value) { + setValue(4, value); + } + + /** + * Getter for INFORMATION_SCHEMA.SESSIONS.STATEMENT_START. + */ + public String getStatementStart() { + return (String) getValue(4); + } + + /** + * Setter for INFORMATION_SCHEMA.SESSIONS.CONTAINS_UNCOMMITTED. + */ + public void setContainsUncommitted(String value) { + setValue(5, value); + } + + /** + * Getter for INFORMATION_SCHEMA.SESSIONS.CONTAINS_UNCOMMITTED. + */ + public String getContainsUncommitted() { + return (String) getValue(5); + } + + // ------------------------------------------------------------------------- + // Record6 type implementation + // ------------------------------------------------------------------------- + + /** + * {@inheritDoc} + */ + @Override + public Row6 fieldsRow() { + return (Row6) super.fieldsRow(); + } + + /** + * {@inheritDoc} + */ + @Override + public Row6 valuesRow() { + return (Row6) super.valuesRow(); + } + + /** + * {@inheritDoc} + */ + @Override + public Field field1() { + return Sessions.SESSIONS.ID; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field2() { + return Sessions.SESSIONS.USER_NAME; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field3() { + return Sessions.SESSIONS.SESSION_START; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field4() { + return Sessions.SESSIONS.STATEMENT; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field5() { + return Sessions.SESSIONS.STATEMENT_START; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field6() { + return Sessions.SESSIONS.CONTAINS_UNCOMMITTED; + } + + /** + * {@inheritDoc} + */ + @Override + public Integer value1() { + return getId(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value2() { + return getUserName(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value3() { + return getSessionStart(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value4() { + return getStatement(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value5() { + return getStatementStart(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value6() { + return getContainsUncommitted(); + } + + /** + * {@inheritDoc} + */ + @Override + public SessionsRecord value1(Integer value) { + setId(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public SessionsRecord value2(String value) { + setUserName(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public SessionsRecord value3(String value) { + setSessionStart(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public SessionsRecord value4(String value) { + setStatement(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public SessionsRecord value5(String value) { + setStatementStart(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public SessionsRecord value6(String value) { + setContainsUncommitted(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public SessionsRecord values(Integer value1, String value2, String value3, String value4, String value5, String value6) { + value1(value1); + value2(value2); + value3(value3); + value4(value4); + value5(value5); + value6(value6); + return this; + } + + // ------------------------------------------------------------------------- + // Constructors + // ------------------------------------------------------------------------- + + /** + * Create a detached SessionsRecord + */ + public SessionsRecord() { + super(Sessions.SESSIONS); + } + + /** + * Create a detached, initialised SessionsRecord + */ + public SessionsRecord(Integer id, String userName, String sessionStart, String statement, String statementStart, String containsUncommitted) { + super(Sessions.SESSIONS); + + setValue(0, id); + setValue(1, userName); + setValue(2, sessionStart); + setValue(3, statement); + setValue(4, statementStart); + setValue(5, containsUncommitted); + } +} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/SettingsRecord.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/SettingsRecord.java new file mode 100644 index 0000000000..e5f096c510 --- /dev/null +++ b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/SettingsRecord.java @@ -0,0 +1,160 @@ +/** + * This class is generated by jOOQ + */ +package com.baeldung.jooq.introduction.db.information_schema.tables.records; + + +import com.baeldung.jooq.introduction.db.information_schema.tables.Settings; + +import javax.annotation.Generated; + +import org.jooq.Field; +import org.jooq.Record2; +import org.jooq.Row2; +import org.jooq.impl.TableRecordImpl; + + +/** + * This class is generated by jOOQ. + */ +@Generated( + value = { + "http://www.jooq.org", + "jOOQ version:3.7.3" + }, + comments = "This class is generated by jOOQ" +) +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class SettingsRecord extends TableRecordImpl implements Record2 { + + private static final long serialVersionUID = -1656452632; + + /** + * Setter for INFORMATION_SCHEMA.SETTINGS.NAME. + */ + public void setName(String value) { + setValue(0, value); + } + + /** + * Getter for INFORMATION_SCHEMA.SETTINGS.NAME. + */ + public String getName() { + return (String) getValue(0); + } + + /** + * Setter for INFORMATION_SCHEMA.SETTINGS.VALUE. + */ + public void setValue(String value) { + setValue(1, value); + } + + /** + * Getter for INFORMATION_SCHEMA.SETTINGS.VALUE. + */ + public String getValue() { + return (String) getValue(1); + } + + // ------------------------------------------------------------------------- + // Record2 type implementation + // ------------------------------------------------------------------------- + + /** + * {@inheritDoc} + */ + @Override + public Row2 fieldsRow() { + return (Row2) super.fieldsRow(); + } + + /** + * {@inheritDoc} + */ + @Override + public Row2 valuesRow() { + return (Row2) super.valuesRow(); + } + + /** + * {@inheritDoc} + */ + @Override + public Field field1() { + return Settings.SETTINGS.NAME; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field2() { + return Settings.SETTINGS.VALUE; + } + + /** + * {@inheritDoc} + */ + @Override + public String value1() { + return getName(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value2() { + return getValue(); + } + + /** + * {@inheritDoc} + */ + @Override + public SettingsRecord value1(String value) { + setName(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public SettingsRecord value2(String value) { + setValue(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public SettingsRecord values(String value1, String value2) { + value1(value1); + value2(value2); + return this; + } + + // ------------------------------------------------------------------------- + // Constructors + // ------------------------------------------------------------------------- + + /** + * Create a detached SettingsRecord + */ + public SettingsRecord() { + super(Settings.SETTINGS); + } + + /** + * Create a detached, initialised SettingsRecord + */ + public SettingsRecord(String name, String value) { + super(Settings.SETTINGS); + + setValue(0, name); + setValue(1, value); + } +} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/TablePrivilegesRecord.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/TablePrivilegesRecord.java new file mode 100644 index 0000000000..5b2beca1f0 --- /dev/null +++ b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/TablePrivilegesRecord.java @@ -0,0 +1,365 @@ +/** + * This class is generated by jOOQ + */ +package com.baeldung.jooq.introduction.db.information_schema.tables.records; + + +import com.baeldung.jooq.introduction.db.information_schema.tables.TablePrivileges; + +import javax.annotation.Generated; + +import org.jooq.Field; +import org.jooq.Record7; +import org.jooq.Row7; +import org.jooq.impl.TableRecordImpl; + + +/** + * This class is generated by jOOQ. + */ +@Generated( + value = { + "http://www.jooq.org", + "jOOQ version:3.7.3" + }, + comments = "This class is generated by jOOQ" +) +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class TablePrivilegesRecord extends TableRecordImpl implements Record7 { + + private static final long serialVersionUID = 1595034957; + + /** + * Setter for INFORMATION_SCHEMA.TABLE_PRIVILEGES.GRANTOR. + */ + public void setGrantor(String value) { + setValue(0, value); + } + + /** + * Getter for INFORMATION_SCHEMA.TABLE_PRIVILEGES.GRANTOR. + */ + public String getGrantor() { + return (String) getValue(0); + } + + /** + * Setter for INFORMATION_SCHEMA.TABLE_PRIVILEGES.GRANTEE. + */ + public void setGrantee(String value) { + setValue(1, value); + } + + /** + * Getter for INFORMATION_SCHEMA.TABLE_PRIVILEGES.GRANTEE. + */ + public String getGrantee() { + return (String) getValue(1); + } + + /** + * Setter for INFORMATION_SCHEMA.TABLE_PRIVILEGES.TABLE_CATALOG. + */ + public void setTableCatalog(String value) { + setValue(2, value); + } + + /** + * Getter for INFORMATION_SCHEMA.TABLE_PRIVILEGES.TABLE_CATALOG. + */ + public String getTableCatalog() { + return (String) getValue(2); + } + + /** + * Setter for INFORMATION_SCHEMA.TABLE_PRIVILEGES.TABLE_SCHEMA. + */ + public void setTableSchema(String value) { + setValue(3, value); + } + + /** + * Getter for INFORMATION_SCHEMA.TABLE_PRIVILEGES.TABLE_SCHEMA. + */ + public String getTableSchema() { + return (String) getValue(3); + } + + /** + * Setter for INFORMATION_SCHEMA.TABLE_PRIVILEGES.TABLE_NAME. + */ + public void setTableName(String value) { + setValue(4, value); + } + + /** + * Getter for INFORMATION_SCHEMA.TABLE_PRIVILEGES.TABLE_NAME. + */ + public String getTableName() { + return (String) getValue(4); + } + + /** + * Setter for INFORMATION_SCHEMA.TABLE_PRIVILEGES.PRIVILEGE_TYPE. + */ + public void setPrivilegeType(String value) { + setValue(5, value); + } + + /** + * Getter for INFORMATION_SCHEMA.TABLE_PRIVILEGES.PRIVILEGE_TYPE. + */ + public String getPrivilegeType() { + return (String) getValue(5); + } + + /** + * Setter for INFORMATION_SCHEMA.TABLE_PRIVILEGES.IS_GRANTABLE. + */ + public void setIsGrantable(String value) { + setValue(6, value); + } + + /** + * Getter for INFORMATION_SCHEMA.TABLE_PRIVILEGES.IS_GRANTABLE. + */ + public String getIsGrantable() { + return (String) getValue(6); + } + + // ------------------------------------------------------------------------- + // Record7 type implementation + // ------------------------------------------------------------------------- + + /** + * {@inheritDoc} + */ + @Override + public Row7 fieldsRow() { + return (Row7) super.fieldsRow(); + } + + /** + * {@inheritDoc} + */ + @Override + public Row7 valuesRow() { + return (Row7) super.valuesRow(); + } + + /** + * {@inheritDoc} + */ + @Override + public Field field1() { + return TablePrivileges.TABLE_PRIVILEGES.GRANTOR; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field2() { + return TablePrivileges.TABLE_PRIVILEGES.GRANTEE; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field3() { + return TablePrivileges.TABLE_PRIVILEGES.TABLE_CATALOG; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field4() { + return TablePrivileges.TABLE_PRIVILEGES.TABLE_SCHEMA; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field5() { + return TablePrivileges.TABLE_PRIVILEGES.TABLE_NAME; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field6() { + return TablePrivileges.TABLE_PRIVILEGES.PRIVILEGE_TYPE; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field7() { + return TablePrivileges.TABLE_PRIVILEGES.IS_GRANTABLE; + } + + /** + * {@inheritDoc} + */ + @Override + public String value1() { + return getGrantor(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value2() { + return getGrantee(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value3() { + return getTableCatalog(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value4() { + return getTableSchema(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value5() { + return getTableName(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value6() { + return getPrivilegeType(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value7() { + return getIsGrantable(); + } + + /** + * {@inheritDoc} + */ + @Override + public TablePrivilegesRecord value1(String value) { + setGrantor(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public TablePrivilegesRecord value2(String value) { + setGrantee(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public TablePrivilegesRecord value3(String value) { + setTableCatalog(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public TablePrivilegesRecord value4(String value) { + setTableSchema(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public TablePrivilegesRecord value5(String value) { + setTableName(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public TablePrivilegesRecord value6(String value) { + setPrivilegeType(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public TablePrivilegesRecord value7(String value) { + setIsGrantable(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public TablePrivilegesRecord values(String value1, String value2, String value3, String value4, String value5, String value6, String value7) { + value1(value1); + value2(value2); + value3(value3); + value4(value4); + value5(value5); + value6(value6); + value7(value7); + return this; + } + + // ------------------------------------------------------------------------- + // Constructors + // ------------------------------------------------------------------------- + + /** + * Create a detached TablePrivilegesRecord + */ + public TablePrivilegesRecord() { + super(TablePrivileges.TABLE_PRIVILEGES); + } + + /** + * Create a detached, initialised TablePrivilegesRecord + */ + public TablePrivilegesRecord(String grantor, String grantee, String tableCatalog, String tableSchema, String tableName, String privilegeType, String isGrantable) { + super(TablePrivileges.TABLE_PRIVILEGES); + + setValue(0, grantor); + setValue(1, grantee); + setValue(2, tableCatalog); + setValue(3, tableSchema); + setValue(4, tableName); + setValue(5, privilegeType); + setValue(6, isGrantable); + } +} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/TableTypesRecord.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/TableTypesRecord.java new file mode 100644 index 0000000000..3d7eebdfff --- /dev/null +++ b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/TableTypesRecord.java @@ -0,0 +1,119 @@ +/** + * This class is generated by jOOQ + */ +package com.baeldung.jooq.introduction.db.information_schema.tables.records; + + +import com.baeldung.jooq.introduction.db.information_schema.tables.TableTypes; + +import javax.annotation.Generated; + +import org.jooq.Field; +import org.jooq.Record1; +import org.jooq.Row1; +import org.jooq.impl.TableRecordImpl; + + +/** + * This class is generated by jOOQ. + */ +@Generated( + value = { + "http://www.jooq.org", + "jOOQ version:3.7.3" + }, + comments = "This class is generated by jOOQ" +) +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class TableTypesRecord extends TableRecordImpl implements Record1 { + + private static final long serialVersionUID = -645264739; + + /** + * Setter for INFORMATION_SCHEMA.TABLE_TYPES.TYPE. + */ + public void setType(String value) { + setValue(0, value); + } + + /** + * Getter for INFORMATION_SCHEMA.TABLE_TYPES.TYPE. + */ + public String getType() { + return (String) getValue(0); + } + + // ------------------------------------------------------------------------- + // Record1 type implementation + // ------------------------------------------------------------------------- + + /** + * {@inheritDoc} + */ + @Override + public Row1 fieldsRow() { + return (Row1) super.fieldsRow(); + } + + /** + * {@inheritDoc} + */ + @Override + public Row1 valuesRow() { + return (Row1) super.valuesRow(); + } + + /** + * {@inheritDoc} + */ + @Override + public Field field1() { + return TableTypes.TABLE_TYPES.TYPE; + } + + /** + * {@inheritDoc} + */ + @Override + public String value1() { + return getType(); + } + + /** + * {@inheritDoc} + */ + @Override + public TableTypesRecord value1(String value) { + setType(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public TableTypesRecord values(String value1) { + value1(value1); + return this; + } + + // ------------------------------------------------------------------------- + // Constructors + // ------------------------------------------------------------------------- + + /** + * Create a detached TableTypesRecord + */ + public TableTypesRecord() { + super(TableTypes.TABLE_TYPES); + } + + /** + * Create a detached, initialised TableTypesRecord + */ + public TableTypesRecord(String type) { + super(TableTypes.TABLE_TYPES); + + setValue(0, type); + } +} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/TablesRecord.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/TablesRecord.java new file mode 100644 index 0000000000..9542830be7 --- /dev/null +++ b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/TablesRecord.java @@ -0,0 +1,570 @@ +/** + * This class is generated by jOOQ + */ +package com.baeldung.jooq.introduction.db.information_schema.tables.records; + + +import com.baeldung.jooq.introduction.db.information_schema.tables.Tables; + +import javax.annotation.Generated; + +import org.jooq.Field; +import org.jooq.Record12; +import org.jooq.Row12; +import org.jooq.impl.TableRecordImpl; + + +/** + * This class is generated by jOOQ. + */ +@Generated( + value = { + "http://www.jooq.org", + "jOOQ version:3.7.3" + }, + comments = "This class is generated by jOOQ" +) +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class TablesRecord extends TableRecordImpl implements Record12 { + + private static final long serialVersionUID = 850052084; + + /** + * Setter for INFORMATION_SCHEMA.TABLES.TABLE_CATALOG. + */ + public void setTableCatalog(String value) { + setValue(0, value); + } + + /** + * Getter for INFORMATION_SCHEMA.TABLES.TABLE_CATALOG. + */ + public String getTableCatalog() { + return (String) getValue(0); + } + + /** + * Setter for INFORMATION_SCHEMA.TABLES.TABLE_SCHEMA. + */ + public void setTableSchema(String value) { + setValue(1, value); + } + + /** + * Getter for INFORMATION_SCHEMA.TABLES.TABLE_SCHEMA. + */ + public String getTableSchema() { + return (String) getValue(1); + } + + /** + * Setter for INFORMATION_SCHEMA.TABLES.TABLE_NAME. + */ + public void setTableName(String value) { + setValue(2, value); + } + + /** + * Getter for INFORMATION_SCHEMA.TABLES.TABLE_NAME. + */ + public String getTableName() { + return (String) getValue(2); + } + + /** + * Setter for INFORMATION_SCHEMA.TABLES.TABLE_TYPE. + */ + public void setTableType(String value) { + setValue(3, value); + } + + /** + * Getter for INFORMATION_SCHEMA.TABLES.TABLE_TYPE. + */ + public String getTableType() { + return (String) getValue(3); + } + + /** + * Setter for INFORMATION_SCHEMA.TABLES.STORAGE_TYPE. + */ + public void setStorageType(String value) { + setValue(4, value); + } + + /** + * Getter for INFORMATION_SCHEMA.TABLES.STORAGE_TYPE. + */ + public String getStorageType() { + return (String) getValue(4); + } + + /** + * Setter for INFORMATION_SCHEMA.TABLES.SQL. + */ + public void setSql(String value) { + setValue(5, value); + } + + /** + * Getter for INFORMATION_SCHEMA.TABLES.SQL. + */ + public String getSql() { + return (String) getValue(5); + } + + /** + * Setter for INFORMATION_SCHEMA.TABLES.REMARKS. + */ + public void setRemarks(String value) { + setValue(6, value); + } + + /** + * Getter for INFORMATION_SCHEMA.TABLES.REMARKS. + */ + public String getRemarks() { + return (String) getValue(6); + } + + /** + * Setter for INFORMATION_SCHEMA.TABLES.LAST_MODIFICATION. + */ + public void setLastModification(Long value) { + setValue(7, value); + } + + /** + * Getter for INFORMATION_SCHEMA.TABLES.LAST_MODIFICATION. + */ + public Long getLastModification() { + return (Long) getValue(7); + } + + /** + * Setter for INFORMATION_SCHEMA.TABLES.ID. + */ + public void setId(Integer value) { + setValue(8, value); + } + + /** + * Getter for INFORMATION_SCHEMA.TABLES.ID. + */ + public Integer getId() { + return (Integer) getValue(8); + } + + /** + * Setter for INFORMATION_SCHEMA.TABLES.TYPE_NAME. + */ + public void setTypeName(String value) { + setValue(9, value); + } + + /** + * Getter for INFORMATION_SCHEMA.TABLES.TYPE_NAME. + */ + public String getTypeName() { + return (String) getValue(9); + } + + /** + * Setter for INFORMATION_SCHEMA.TABLES.TABLE_CLASS. + */ + public void setTableClass(String value) { + setValue(10, value); + } + + /** + * Getter for INFORMATION_SCHEMA.TABLES.TABLE_CLASS. + */ + public String getTableClass() { + return (String) getValue(10); + } + + /** + * Setter for INFORMATION_SCHEMA.TABLES.ROW_COUNT_ESTIMATE. + */ + public void setRowCountEstimate(Long value) { + setValue(11, value); + } + + /** + * Getter for INFORMATION_SCHEMA.TABLES.ROW_COUNT_ESTIMATE. + */ + public Long getRowCountEstimate() { + return (Long) getValue(11); + } + + // ------------------------------------------------------------------------- + // Record12 type implementation + // ------------------------------------------------------------------------- + + /** + * {@inheritDoc} + */ + @Override + public Row12 fieldsRow() { + return (Row12) super.fieldsRow(); + } + + /** + * {@inheritDoc} + */ + @Override + public Row12 valuesRow() { + return (Row12) super.valuesRow(); + } + + /** + * {@inheritDoc} + */ + @Override + public Field field1() { + return Tables.TABLES.TABLE_CATALOG; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field2() { + return Tables.TABLES.TABLE_SCHEMA; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field3() { + return Tables.TABLES.TABLE_NAME; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field4() { + return Tables.TABLES.TABLE_TYPE; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field5() { + return Tables.TABLES.STORAGE_TYPE; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field6() { + return Tables.TABLES.SQL; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field7() { + return Tables.TABLES.REMARKS; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field8() { + return Tables.TABLES.LAST_MODIFICATION; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field9() { + return Tables.TABLES.ID; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field10() { + return Tables.TABLES.TYPE_NAME; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field11() { + return Tables.TABLES.TABLE_CLASS; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field12() { + return Tables.TABLES.ROW_COUNT_ESTIMATE; + } + + /** + * {@inheritDoc} + */ + @Override + public String value1() { + return getTableCatalog(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value2() { + return getTableSchema(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value3() { + return getTableName(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value4() { + return getTableType(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value5() { + return getStorageType(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value6() { + return getSql(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value7() { + return getRemarks(); + } + + /** + * {@inheritDoc} + */ + @Override + public Long value8() { + return getLastModification(); + } + + /** + * {@inheritDoc} + */ + @Override + public Integer value9() { + return getId(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value10() { + return getTypeName(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value11() { + return getTableClass(); + } + + /** + * {@inheritDoc} + */ + @Override + public Long value12() { + return getRowCountEstimate(); + } + + /** + * {@inheritDoc} + */ + @Override + public TablesRecord value1(String value) { + setTableCatalog(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public TablesRecord value2(String value) { + setTableSchema(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public TablesRecord value3(String value) { + setTableName(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public TablesRecord value4(String value) { + setTableType(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public TablesRecord value5(String value) { + setStorageType(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public TablesRecord value6(String value) { + setSql(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public TablesRecord value7(String value) { + setRemarks(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public TablesRecord value8(Long value) { + setLastModification(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public TablesRecord value9(Integer value) { + setId(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public TablesRecord value10(String value) { + setTypeName(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public TablesRecord value11(String value) { + setTableClass(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public TablesRecord value12(Long value) { + setRowCountEstimate(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public TablesRecord values(String value1, String value2, String value3, String value4, String value5, String value6, String value7, Long value8, Integer value9, String value10, String value11, Long value12) { + value1(value1); + value2(value2); + value3(value3); + value4(value4); + value5(value5); + value6(value6); + value7(value7); + value8(value8); + value9(value9); + value10(value10); + value11(value11); + value12(value12); + return this; + } + + // ------------------------------------------------------------------------- + // Constructors + // ------------------------------------------------------------------------- + + /** + * Create a detached TablesRecord + */ + public TablesRecord() { + super(Tables.TABLES); + } + + /** + * Create a detached, initialised TablesRecord + */ + public TablesRecord(String tableCatalog, String tableSchema, String tableName, String tableType, String storageType, String sql, String remarks, Long lastModification, Integer id, String typeName, String tableClass, Long rowCountEstimate) { + super(Tables.TABLES); + + setValue(0, tableCatalog); + setValue(1, tableSchema); + setValue(2, tableName); + setValue(3, tableType); + setValue(4, storageType); + setValue(5, sql); + setValue(6, remarks); + setValue(7, lastModification); + setValue(8, id); + setValue(9, typeName); + setValue(10, tableClass); + setValue(11, rowCountEstimate); + } +} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/TriggersRecord.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/TriggersRecord.java new file mode 100644 index 0000000000..f0f019e127 --- /dev/null +++ b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/TriggersRecord.java @@ -0,0 +1,652 @@ +/** + * This class is generated by jOOQ + */ +package com.baeldung.jooq.introduction.db.information_schema.tables.records; + + +import com.baeldung.jooq.introduction.db.information_schema.tables.Triggers; + +import javax.annotation.Generated; + +import org.jooq.Field; +import org.jooq.Record14; +import org.jooq.Row14; +import org.jooq.impl.TableRecordImpl; + + +/** + * This class is generated by jOOQ. + */ +@Generated( + value = { + "http://www.jooq.org", + "jOOQ version:3.7.3" + }, + comments = "This class is generated by jOOQ" +) +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class TriggersRecord extends TableRecordImpl implements Record14 { + + private static final long serialVersionUID = 344875511; + + /** + * Setter for INFORMATION_SCHEMA.TRIGGERS.TRIGGER_CATALOG. + */ + public void setTriggerCatalog(String value) { + setValue(0, value); + } + + /** + * Getter for INFORMATION_SCHEMA.TRIGGERS.TRIGGER_CATALOG. + */ + public String getTriggerCatalog() { + return (String) getValue(0); + } + + /** + * Setter for INFORMATION_SCHEMA.TRIGGERS.TRIGGER_SCHEMA. + */ + public void setTriggerSchema(String value) { + setValue(1, value); + } + + /** + * Getter for INFORMATION_SCHEMA.TRIGGERS.TRIGGER_SCHEMA. + */ + public String getTriggerSchema() { + return (String) getValue(1); + } + + /** + * Setter for INFORMATION_SCHEMA.TRIGGERS.TRIGGER_NAME. + */ + public void setTriggerName(String value) { + setValue(2, value); + } + + /** + * Getter for INFORMATION_SCHEMA.TRIGGERS.TRIGGER_NAME. + */ + public String getTriggerName() { + return (String) getValue(2); + } + + /** + * Setter for INFORMATION_SCHEMA.TRIGGERS.TRIGGER_TYPE. + */ + public void setTriggerType(String value) { + setValue(3, value); + } + + /** + * Getter for INFORMATION_SCHEMA.TRIGGERS.TRIGGER_TYPE. + */ + public String getTriggerType() { + return (String) getValue(3); + } + + /** + * Setter for INFORMATION_SCHEMA.TRIGGERS.TABLE_CATALOG. + */ + public void setTableCatalog(String value) { + setValue(4, value); + } + + /** + * Getter for INFORMATION_SCHEMA.TRIGGERS.TABLE_CATALOG. + */ + public String getTableCatalog() { + return (String) getValue(4); + } + + /** + * Setter for INFORMATION_SCHEMA.TRIGGERS.TABLE_SCHEMA. + */ + public void setTableSchema(String value) { + setValue(5, value); + } + + /** + * Getter for INFORMATION_SCHEMA.TRIGGERS.TABLE_SCHEMA. + */ + public String getTableSchema() { + return (String) getValue(5); + } + + /** + * Setter for INFORMATION_SCHEMA.TRIGGERS.TABLE_NAME. + */ + public void setTableName(String value) { + setValue(6, value); + } + + /** + * Getter for INFORMATION_SCHEMA.TRIGGERS.TABLE_NAME. + */ + public String getTableName() { + return (String) getValue(6); + } + + /** + * Setter for INFORMATION_SCHEMA.TRIGGERS.BEFORE. + */ + public void setBefore(Boolean value) { + setValue(7, value); + } + + /** + * Getter for INFORMATION_SCHEMA.TRIGGERS.BEFORE. + */ + public Boolean getBefore() { + return (Boolean) getValue(7); + } + + /** + * Setter for INFORMATION_SCHEMA.TRIGGERS.JAVA_CLASS. + */ + public void setJavaClass(String value) { + setValue(8, value); + } + + /** + * Getter for INFORMATION_SCHEMA.TRIGGERS.JAVA_CLASS. + */ + public String getJavaClass() { + return (String) getValue(8); + } + + /** + * Setter for INFORMATION_SCHEMA.TRIGGERS.QUEUE_SIZE. + */ + public void setQueueSize(Integer value) { + setValue(9, value); + } + + /** + * Getter for INFORMATION_SCHEMA.TRIGGERS.QUEUE_SIZE. + */ + public Integer getQueueSize() { + return (Integer) getValue(9); + } + + /** + * Setter for INFORMATION_SCHEMA.TRIGGERS.NO_WAIT. + */ + public void setNoWait(Boolean value) { + setValue(10, value); + } + + /** + * Getter for INFORMATION_SCHEMA.TRIGGERS.NO_WAIT. + */ + public Boolean getNoWait() { + return (Boolean) getValue(10); + } + + /** + * Setter for INFORMATION_SCHEMA.TRIGGERS.REMARKS. + */ + public void setRemarks(String value) { + setValue(11, value); + } + + /** + * Getter for INFORMATION_SCHEMA.TRIGGERS.REMARKS. + */ + public String getRemarks() { + return (String) getValue(11); + } + + /** + * Setter for INFORMATION_SCHEMA.TRIGGERS.SQL. + */ + public void setSql(String value) { + setValue(12, value); + } + + /** + * Getter for INFORMATION_SCHEMA.TRIGGERS.SQL. + */ + public String getSql() { + return (String) getValue(12); + } + + /** + * Setter for INFORMATION_SCHEMA.TRIGGERS.ID. + */ + public void setId(Integer value) { + setValue(13, value); + } + + /** + * Getter for INFORMATION_SCHEMA.TRIGGERS.ID. + */ + public Integer getId() { + return (Integer) getValue(13); + } + + // ------------------------------------------------------------------------- + // Record14 type implementation + // ------------------------------------------------------------------------- + + /** + * {@inheritDoc} + */ + @Override + public Row14 fieldsRow() { + return (Row14) super.fieldsRow(); + } + + /** + * {@inheritDoc} + */ + @Override + public Row14 valuesRow() { + return (Row14) super.valuesRow(); + } + + /** + * {@inheritDoc} + */ + @Override + public Field field1() { + return Triggers.TRIGGERS.TRIGGER_CATALOG; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field2() { + return Triggers.TRIGGERS.TRIGGER_SCHEMA; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field3() { + return Triggers.TRIGGERS.TRIGGER_NAME; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field4() { + return Triggers.TRIGGERS.TRIGGER_TYPE; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field5() { + return Triggers.TRIGGERS.TABLE_CATALOG; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field6() { + return Triggers.TRIGGERS.TABLE_SCHEMA; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field7() { + return Triggers.TRIGGERS.TABLE_NAME; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field8() { + return Triggers.TRIGGERS.BEFORE; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field9() { + return Triggers.TRIGGERS.JAVA_CLASS; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field10() { + return Triggers.TRIGGERS.QUEUE_SIZE; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field11() { + return Triggers.TRIGGERS.NO_WAIT; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field12() { + return Triggers.TRIGGERS.REMARKS; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field13() { + return Triggers.TRIGGERS.SQL; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field14() { + return Triggers.TRIGGERS.ID; + } + + /** + * {@inheritDoc} + */ + @Override + public String value1() { + return getTriggerCatalog(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value2() { + return getTriggerSchema(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value3() { + return getTriggerName(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value4() { + return getTriggerType(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value5() { + return getTableCatalog(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value6() { + return getTableSchema(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value7() { + return getTableName(); + } + + /** + * {@inheritDoc} + */ + @Override + public Boolean value8() { + return getBefore(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value9() { + return getJavaClass(); + } + + /** + * {@inheritDoc} + */ + @Override + public Integer value10() { + return getQueueSize(); + } + + /** + * {@inheritDoc} + */ + @Override + public Boolean value11() { + return getNoWait(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value12() { + return getRemarks(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value13() { + return getSql(); + } + + /** + * {@inheritDoc} + */ + @Override + public Integer value14() { + return getId(); + } + + /** + * {@inheritDoc} + */ + @Override + public TriggersRecord value1(String value) { + setTriggerCatalog(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public TriggersRecord value2(String value) { + setTriggerSchema(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public TriggersRecord value3(String value) { + setTriggerName(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public TriggersRecord value4(String value) { + setTriggerType(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public TriggersRecord value5(String value) { + setTableCatalog(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public TriggersRecord value6(String value) { + setTableSchema(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public TriggersRecord value7(String value) { + setTableName(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public TriggersRecord value8(Boolean value) { + setBefore(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public TriggersRecord value9(String value) { + setJavaClass(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public TriggersRecord value10(Integer value) { + setQueueSize(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public TriggersRecord value11(Boolean value) { + setNoWait(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public TriggersRecord value12(String value) { + setRemarks(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public TriggersRecord value13(String value) { + setSql(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public TriggersRecord value14(Integer value) { + setId(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public TriggersRecord values(String value1, String value2, String value3, String value4, String value5, String value6, String value7, Boolean value8, String value9, Integer value10, Boolean value11, String value12, String value13, Integer value14) { + value1(value1); + value2(value2); + value3(value3); + value4(value4); + value5(value5); + value6(value6); + value7(value7); + value8(value8); + value9(value9); + value10(value10); + value11(value11); + value12(value12); + value13(value13); + value14(value14); + return this; + } + + // ------------------------------------------------------------------------- + // Constructors + // ------------------------------------------------------------------------- + + /** + * Create a detached TriggersRecord + */ + public TriggersRecord() { + super(Triggers.TRIGGERS); + } + + /** + * Create a detached, initialised TriggersRecord + */ + public TriggersRecord(String triggerCatalog, String triggerSchema, String triggerName, String triggerType, String tableCatalog, String tableSchema, String tableName, Boolean before, String javaClass, Integer queueSize, Boolean noWait, String remarks, String sql, Integer id) { + super(Triggers.TRIGGERS); + + setValue(0, triggerCatalog); + setValue(1, triggerSchema); + setValue(2, triggerName); + setValue(3, triggerType); + setValue(4, tableCatalog); + setValue(5, tableSchema); + setValue(6, tableName); + setValue(7, before); + setValue(8, javaClass); + setValue(9, queueSize); + setValue(10, noWait); + setValue(11, remarks); + setValue(12, sql); + setValue(13, id); + } +} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/TypeInfoRecord.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/TypeInfoRecord.java new file mode 100644 index 0000000000..af3eaee83f --- /dev/null +++ b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/TypeInfoRecord.java @@ -0,0 +1,652 @@ +/** + * This class is generated by jOOQ + */ +package com.baeldung.jooq.introduction.db.information_schema.tables.records; + + +import com.baeldung.jooq.introduction.db.information_schema.tables.TypeInfo; + +import javax.annotation.Generated; + +import org.jooq.Field; +import org.jooq.Record14; +import org.jooq.Row14; +import org.jooq.impl.TableRecordImpl; + + +/** + * This class is generated by jOOQ. + */ +@Generated( + value = { + "http://www.jooq.org", + "jOOQ version:3.7.3" + }, + comments = "This class is generated by jOOQ" +) +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class TypeInfoRecord extends TableRecordImpl implements Record14 { + + private static final long serialVersionUID = -1463889309; + + /** + * Setter for INFORMATION_SCHEMA.TYPE_INFO.TYPE_NAME. + */ + public void setTypeName(String value) { + setValue(0, value); + } + + /** + * Getter for INFORMATION_SCHEMA.TYPE_INFO.TYPE_NAME. + */ + public String getTypeName() { + return (String) getValue(0); + } + + /** + * Setter for INFORMATION_SCHEMA.TYPE_INFO.DATA_TYPE. + */ + public void setDataType(Integer value) { + setValue(1, value); + } + + /** + * Getter for INFORMATION_SCHEMA.TYPE_INFO.DATA_TYPE. + */ + public Integer getDataType() { + return (Integer) getValue(1); + } + + /** + * Setter for INFORMATION_SCHEMA.TYPE_INFO.PRECISION. + */ + public void setPrecision(Integer value) { + setValue(2, value); + } + + /** + * Getter for INFORMATION_SCHEMA.TYPE_INFO.PRECISION. + */ + public Integer getPrecision() { + return (Integer) getValue(2); + } + + /** + * Setter for INFORMATION_SCHEMA.TYPE_INFO.PREFIX. + */ + public void setPrefix(String value) { + setValue(3, value); + } + + /** + * Getter for INFORMATION_SCHEMA.TYPE_INFO.PREFIX. + */ + public String getPrefix() { + return (String) getValue(3); + } + + /** + * Setter for INFORMATION_SCHEMA.TYPE_INFO.SUFFIX. + */ + public void setSuffix(String value) { + setValue(4, value); + } + + /** + * Getter for INFORMATION_SCHEMA.TYPE_INFO.SUFFIX. + */ + public String getSuffix() { + return (String) getValue(4); + } + + /** + * Setter for INFORMATION_SCHEMA.TYPE_INFO.PARAMS. + */ + public void setParams(String value) { + setValue(5, value); + } + + /** + * Getter for INFORMATION_SCHEMA.TYPE_INFO.PARAMS. + */ + public String getParams() { + return (String) getValue(5); + } + + /** + * Setter for INFORMATION_SCHEMA.TYPE_INFO.AUTO_INCREMENT. + */ + public void setAutoIncrement(Boolean value) { + setValue(6, value); + } + + /** + * Getter for INFORMATION_SCHEMA.TYPE_INFO.AUTO_INCREMENT. + */ + public Boolean getAutoIncrement() { + return (Boolean) getValue(6); + } + + /** + * Setter for INFORMATION_SCHEMA.TYPE_INFO.MINIMUM_SCALE. + */ + public void setMinimumScale(Short value) { + setValue(7, value); + } + + /** + * Getter for INFORMATION_SCHEMA.TYPE_INFO.MINIMUM_SCALE. + */ + public Short getMinimumScale() { + return (Short) getValue(7); + } + + /** + * Setter for INFORMATION_SCHEMA.TYPE_INFO.MAXIMUM_SCALE. + */ + public void setMaximumScale(Short value) { + setValue(8, value); + } + + /** + * Getter for INFORMATION_SCHEMA.TYPE_INFO.MAXIMUM_SCALE. + */ + public Short getMaximumScale() { + return (Short) getValue(8); + } + + /** + * Setter for INFORMATION_SCHEMA.TYPE_INFO.RADIX. + */ + public void setRadix(Integer value) { + setValue(9, value); + } + + /** + * Getter for INFORMATION_SCHEMA.TYPE_INFO.RADIX. + */ + public Integer getRadix() { + return (Integer) getValue(9); + } + + /** + * Setter for INFORMATION_SCHEMA.TYPE_INFO.POS. + */ + public void setPos(Integer value) { + setValue(10, value); + } + + /** + * Getter for INFORMATION_SCHEMA.TYPE_INFO.POS. + */ + public Integer getPos() { + return (Integer) getValue(10); + } + + /** + * Setter for INFORMATION_SCHEMA.TYPE_INFO.CASE_SENSITIVE. + */ + public void setCaseSensitive(Boolean value) { + setValue(11, value); + } + + /** + * Getter for INFORMATION_SCHEMA.TYPE_INFO.CASE_SENSITIVE. + */ + public Boolean getCaseSensitive() { + return (Boolean) getValue(11); + } + + /** + * Setter for INFORMATION_SCHEMA.TYPE_INFO.NULLABLE. + */ + public void setNullable(Short value) { + setValue(12, value); + } + + /** + * Getter for INFORMATION_SCHEMA.TYPE_INFO.NULLABLE. + */ + public Short getNullable() { + return (Short) getValue(12); + } + + /** + * Setter for INFORMATION_SCHEMA.TYPE_INFO.SEARCHABLE. + */ + public void setSearchable(Short value) { + setValue(13, value); + } + + /** + * Getter for INFORMATION_SCHEMA.TYPE_INFO.SEARCHABLE. + */ + public Short getSearchable() { + return (Short) getValue(13); + } + + // ------------------------------------------------------------------------- + // Record14 type implementation + // ------------------------------------------------------------------------- + + /** + * {@inheritDoc} + */ + @Override + public Row14 fieldsRow() { + return (Row14) super.fieldsRow(); + } + + /** + * {@inheritDoc} + */ + @Override + public Row14 valuesRow() { + return (Row14) super.valuesRow(); + } + + /** + * {@inheritDoc} + */ + @Override + public Field field1() { + return TypeInfo.TYPE_INFO.TYPE_NAME; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field2() { + return TypeInfo.TYPE_INFO.DATA_TYPE; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field3() { + return TypeInfo.TYPE_INFO.PRECISION; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field4() { + return TypeInfo.TYPE_INFO.PREFIX; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field5() { + return TypeInfo.TYPE_INFO.SUFFIX; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field6() { + return TypeInfo.TYPE_INFO.PARAMS; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field7() { + return TypeInfo.TYPE_INFO.AUTO_INCREMENT; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field8() { + return TypeInfo.TYPE_INFO.MINIMUM_SCALE; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field9() { + return TypeInfo.TYPE_INFO.MAXIMUM_SCALE; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field10() { + return TypeInfo.TYPE_INFO.RADIX; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field11() { + return TypeInfo.TYPE_INFO.POS; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field12() { + return TypeInfo.TYPE_INFO.CASE_SENSITIVE; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field13() { + return TypeInfo.TYPE_INFO.NULLABLE; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field14() { + return TypeInfo.TYPE_INFO.SEARCHABLE; + } + + /** + * {@inheritDoc} + */ + @Override + public String value1() { + return getTypeName(); + } + + /** + * {@inheritDoc} + */ + @Override + public Integer value2() { + return getDataType(); + } + + /** + * {@inheritDoc} + */ + @Override + public Integer value3() { + return getPrecision(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value4() { + return getPrefix(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value5() { + return getSuffix(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value6() { + return getParams(); + } + + /** + * {@inheritDoc} + */ + @Override + public Boolean value7() { + return getAutoIncrement(); + } + + /** + * {@inheritDoc} + */ + @Override + public Short value8() { + return getMinimumScale(); + } + + /** + * {@inheritDoc} + */ + @Override + public Short value9() { + return getMaximumScale(); + } + + /** + * {@inheritDoc} + */ + @Override + public Integer value10() { + return getRadix(); + } + + /** + * {@inheritDoc} + */ + @Override + public Integer value11() { + return getPos(); + } + + /** + * {@inheritDoc} + */ + @Override + public Boolean value12() { + return getCaseSensitive(); + } + + /** + * {@inheritDoc} + */ + @Override + public Short value13() { + return getNullable(); + } + + /** + * {@inheritDoc} + */ + @Override + public Short value14() { + return getSearchable(); + } + + /** + * {@inheritDoc} + */ + @Override + public TypeInfoRecord value1(String value) { + setTypeName(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public TypeInfoRecord value2(Integer value) { + setDataType(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public TypeInfoRecord value3(Integer value) { + setPrecision(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public TypeInfoRecord value4(String value) { + setPrefix(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public TypeInfoRecord value5(String value) { + setSuffix(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public TypeInfoRecord value6(String value) { + setParams(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public TypeInfoRecord value7(Boolean value) { + setAutoIncrement(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public TypeInfoRecord value8(Short value) { + setMinimumScale(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public TypeInfoRecord value9(Short value) { + setMaximumScale(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public TypeInfoRecord value10(Integer value) { + setRadix(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public TypeInfoRecord value11(Integer value) { + setPos(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public TypeInfoRecord value12(Boolean value) { + setCaseSensitive(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public TypeInfoRecord value13(Short value) { + setNullable(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public TypeInfoRecord value14(Short value) { + setSearchable(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public TypeInfoRecord values(String value1, Integer value2, Integer value3, String value4, String value5, String value6, Boolean value7, Short value8, Short value9, Integer value10, Integer value11, Boolean value12, Short value13, Short value14) { + value1(value1); + value2(value2); + value3(value3); + value4(value4); + value5(value5); + value6(value6); + value7(value7); + value8(value8); + value9(value9); + value10(value10); + value11(value11); + value12(value12); + value13(value13); + value14(value14); + return this; + } + + // ------------------------------------------------------------------------- + // Constructors + // ------------------------------------------------------------------------- + + /** + * Create a detached TypeInfoRecord + */ + public TypeInfoRecord() { + super(TypeInfo.TYPE_INFO); + } + + /** + * Create a detached, initialised TypeInfoRecord + */ + public TypeInfoRecord(String typeName, Integer dataType, Integer precision, String prefix, String suffix, String params, Boolean autoIncrement, Short minimumScale, Short maximumScale, Integer radix, Integer pos, Boolean caseSensitive, Short nullable, Short searchable) { + super(TypeInfo.TYPE_INFO); + + setValue(0, typeName); + setValue(1, dataType); + setValue(2, precision); + setValue(3, prefix); + setValue(4, suffix); + setValue(5, params); + setValue(6, autoIncrement); + setValue(7, minimumScale); + setValue(8, maximumScale); + setValue(9, radix); + setValue(10, pos); + setValue(11, caseSensitive); + setValue(12, nullable); + setValue(13, searchable); + } +} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/UsersRecord.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/UsersRecord.java new file mode 100644 index 0000000000..934b0484c8 --- /dev/null +++ b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/UsersRecord.java @@ -0,0 +1,242 @@ +/** + * This class is generated by jOOQ + */ +package com.baeldung.jooq.introduction.db.information_schema.tables.records; + + +import com.baeldung.jooq.introduction.db.information_schema.tables.Users; + +import javax.annotation.Generated; + +import org.jooq.Field; +import org.jooq.Record4; +import org.jooq.Row4; +import org.jooq.impl.TableRecordImpl; + + +/** + * This class is generated by jOOQ. + */ +@Generated( + value = { + "http://www.jooq.org", + "jOOQ version:3.7.3" + }, + comments = "This class is generated by jOOQ" +) +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class UsersRecord extends TableRecordImpl implements Record4 { + + private static final long serialVersionUID = -592508392; + + /** + * Setter for INFORMATION_SCHEMA.USERS.NAME. + */ + public void setName(String value) { + setValue(0, value); + } + + /** + * Getter for INFORMATION_SCHEMA.USERS.NAME. + */ + public String getName() { + return (String) getValue(0); + } + + /** + * Setter for INFORMATION_SCHEMA.USERS.ADMIN. + */ + public void setAdmin(String value) { + setValue(1, value); + } + + /** + * Getter for INFORMATION_SCHEMA.USERS.ADMIN. + */ + public String getAdmin() { + return (String) getValue(1); + } + + /** + * Setter for INFORMATION_SCHEMA.USERS.REMARKS. + */ + public void setRemarks(String value) { + setValue(2, value); + } + + /** + * Getter for INFORMATION_SCHEMA.USERS.REMARKS. + */ + public String getRemarks() { + return (String) getValue(2); + } + + /** + * Setter for INFORMATION_SCHEMA.USERS.ID. + */ + public void setId(Integer value) { + setValue(3, value); + } + + /** + * Getter for INFORMATION_SCHEMA.USERS.ID. + */ + public Integer getId() { + return (Integer) getValue(3); + } + + // ------------------------------------------------------------------------- + // Record4 type implementation + // ------------------------------------------------------------------------- + + /** + * {@inheritDoc} + */ + @Override + public Row4 fieldsRow() { + return (Row4) super.fieldsRow(); + } + + /** + * {@inheritDoc} + */ + @Override + public Row4 valuesRow() { + return (Row4) super.valuesRow(); + } + + /** + * {@inheritDoc} + */ + @Override + public Field field1() { + return Users.USERS.NAME; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field2() { + return Users.USERS.ADMIN; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field3() { + return Users.USERS.REMARKS; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field4() { + return Users.USERS.ID; + } + + /** + * {@inheritDoc} + */ + @Override + public String value1() { + return getName(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value2() { + return getAdmin(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value3() { + return getRemarks(); + } + + /** + * {@inheritDoc} + */ + @Override + public Integer value4() { + return getId(); + } + + /** + * {@inheritDoc} + */ + @Override + public UsersRecord value1(String value) { + setName(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public UsersRecord value2(String value) { + setAdmin(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public UsersRecord value3(String value) { + setRemarks(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public UsersRecord value4(Integer value) { + setId(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public UsersRecord values(String value1, String value2, String value3, Integer value4) { + value1(value1); + value2(value2); + value3(value3); + value4(value4); + return this; + } + + // ------------------------------------------------------------------------- + // Constructors + // ------------------------------------------------------------------------- + + /** + * Create a detached UsersRecord + */ + public UsersRecord() { + super(Users.USERS); + } + + /** + * Create a detached, initialised UsersRecord + */ + public UsersRecord(String name, String admin, String remarks, Integer id) { + super(Users.USERS); + + setValue(0, name); + setValue(1, admin); + setValue(2, remarks); + setValue(3, id); + } +} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/ViewsRecord.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/ViewsRecord.java new file mode 100644 index 0000000000..4b2d66bd73 --- /dev/null +++ b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/ViewsRecord.java @@ -0,0 +1,447 @@ +/** + * This class is generated by jOOQ + */ +package com.baeldung.jooq.introduction.db.information_schema.tables.records; + + +import com.baeldung.jooq.introduction.db.information_schema.tables.Views; + +import javax.annotation.Generated; + +import org.jooq.Field; +import org.jooq.Record9; +import org.jooq.Row9; +import org.jooq.impl.TableRecordImpl; + + +/** + * This class is generated by jOOQ. + */ +@Generated( + value = { + "http://www.jooq.org", + "jOOQ version:3.7.3" + }, + comments = "This class is generated by jOOQ" +) +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class ViewsRecord extends TableRecordImpl implements Record9 { + + private static final long serialVersionUID = -1380031738; + + /** + * Setter for INFORMATION_SCHEMA.VIEWS.TABLE_CATALOG. + */ + public void setTableCatalog(String value) { + setValue(0, value); + } + + /** + * Getter for INFORMATION_SCHEMA.VIEWS.TABLE_CATALOG. + */ + public String getTableCatalog() { + return (String) getValue(0); + } + + /** + * Setter for INFORMATION_SCHEMA.VIEWS.TABLE_SCHEMA. + */ + public void setTableSchema(String value) { + setValue(1, value); + } + + /** + * Getter for INFORMATION_SCHEMA.VIEWS.TABLE_SCHEMA. + */ + public String getTableSchema() { + return (String) getValue(1); + } + + /** + * Setter for INFORMATION_SCHEMA.VIEWS.TABLE_NAME. + */ + public void setTableName(String value) { + setValue(2, value); + } + + /** + * Getter for INFORMATION_SCHEMA.VIEWS.TABLE_NAME. + */ + public String getTableName() { + return (String) getValue(2); + } + + /** + * Setter for INFORMATION_SCHEMA.VIEWS.VIEW_DEFINITION. + */ + public void setViewDefinition(String value) { + setValue(3, value); + } + + /** + * Getter for INFORMATION_SCHEMA.VIEWS.VIEW_DEFINITION. + */ + public String getViewDefinition() { + return (String) getValue(3); + } + + /** + * Setter for INFORMATION_SCHEMA.VIEWS.CHECK_OPTION. + */ + public void setCheckOption(String value) { + setValue(4, value); + } + + /** + * Getter for INFORMATION_SCHEMA.VIEWS.CHECK_OPTION. + */ + public String getCheckOption() { + return (String) getValue(4); + } + + /** + * Setter for INFORMATION_SCHEMA.VIEWS.IS_UPDATABLE. + */ + public void setIsUpdatable(String value) { + setValue(5, value); + } + + /** + * Getter for INFORMATION_SCHEMA.VIEWS.IS_UPDATABLE. + */ + public String getIsUpdatable() { + return (String) getValue(5); + } + + /** + * Setter for INFORMATION_SCHEMA.VIEWS.STATUS. + */ + public void setStatus(String value) { + setValue(6, value); + } + + /** + * Getter for INFORMATION_SCHEMA.VIEWS.STATUS. + */ + public String getStatus() { + return (String) getValue(6); + } + + /** + * Setter for INFORMATION_SCHEMA.VIEWS.REMARKS. + */ + public void setRemarks(String value) { + setValue(7, value); + } + + /** + * Getter for INFORMATION_SCHEMA.VIEWS.REMARKS. + */ + public String getRemarks() { + return (String) getValue(7); + } + + /** + * Setter for INFORMATION_SCHEMA.VIEWS.ID. + */ + public void setId(Integer value) { + setValue(8, value); + } + + /** + * Getter for INFORMATION_SCHEMA.VIEWS.ID. + */ + public Integer getId() { + return (Integer) getValue(8); + } + + // ------------------------------------------------------------------------- + // Record9 type implementation + // ------------------------------------------------------------------------- + + /** + * {@inheritDoc} + */ + @Override + public Row9 fieldsRow() { + return (Row9) super.fieldsRow(); + } + + /** + * {@inheritDoc} + */ + @Override + public Row9 valuesRow() { + return (Row9) super.valuesRow(); + } + + /** + * {@inheritDoc} + */ + @Override + public Field field1() { + return Views.VIEWS.TABLE_CATALOG; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field2() { + return Views.VIEWS.TABLE_SCHEMA; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field3() { + return Views.VIEWS.TABLE_NAME; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field4() { + return Views.VIEWS.VIEW_DEFINITION; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field5() { + return Views.VIEWS.CHECK_OPTION; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field6() { + return Views.VIEWS.IS_UPDATABLE; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field7() { + return Views.VIEWS.STATUS; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field8() { + return Views.VIEWS.REMARKS; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field9() { + return Views.VIEWS.ID; + } + + /** + * {@inheritDoc} + */ + @Override + public String value1() { + return getTableCatalog(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value2() { + return getTableSchema(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value3() { + return getTableName(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value4() { + return getViewDefinition(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value5() { + return getCheckOption(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value6() { + return getIsUpdatable(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value7() { + return getStatus(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value8() { + return getRemarks(); + } + + /** + * {@inheritDoc} + */ + @Override + public Integer value9() { + return getId(); + } + + /** + * {@inheritDoc} + */ + @Override + public ViewsRecord value1(String value) { + setTableCatalog(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public ViewsRecord value2(String value) { + setTableSchema(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public ViewsRecord value3(String value) { + setTableName(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public ViewsRecord value4(String value) { + setViewDefinition(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public ViewsRecord value5(String value) { + setCheckOption(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public ViewsRecord value6(String value) { + setIsUpdatable(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public ViewsRecord value7(String value) { + setStatus(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public ViewsRecord value8(String value) { + setRemarks(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public ViewsRecord value9(Integer value) { + setId(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public ViewsRecord values(String value1, String value2, String value3, String value4, String value5, String value6, String value7, String value8, Integer value9) { + value1(value1); + value2(value2); + value3(value3); + value4(value4); + value5(value5); + value6(value6); + value7(value7); + value8(value8); + value9(value9); + return this; + } + + // ------------------------------------------------------------------------- + // Constructors + // ------------------------------------------------------------------------- + + /** + * Create a detached ViewsRecord + */ + public ViewsRecord() { + super(Views.VIEWS); + } + + /** + * Create a detached, initialised ViewsRecord + */ + public ViewsRecord(String tableCatalog, String tableSchema, String tableName, String viewDefinition, String checkOption, String isUpdatable, String status, String remarks, Integer id) { + super(Views.VIEWS); + + setValue(0, tableCatalog); + setValue(1, tableSchema); + setValue(2, tableName); + setValue(3, viewDefinition); + setValue(4, checkOption); + setValue(5, isUpdatable); + setValue(6, status); + setValue(7, remarks); + setValue(8, id); + } +} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/public_/Keys.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/public_/Keys.java new file mode 100644 index 0000000000..66656c9bbc --- /dev/null +++ b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/public_/Keys.java @@ -0,0 +1,69 @@ +/** + * This class is generated by jOOQ + */ +package com.baeldung.jooq.introduction.db.public_; + + +import com.baeldung.jooq.introduction.db.public_.tables.Author; +import com.baeldung.jooq.introduction.db.public_.tables.AuthorBook; +import com.baeldung.jooq.introduction.db.public_.tables.Book; +import com.baeldung.jooq.introduction.db.public_.tables.records.AuthorBookRecord; +import com.baeldung.jooq.introduction.db.public_.tables.records.AuthorRecord; +import com.baeldung.jooq.introduction.db.public_.tables.records.BookRecord; + +import javax.annotation.Generated; + +import org.jooq.ForeignKey; +import org.jooq.UniqueKey; +import org.jooq.impl.AbstractKeys; + + +/** + * A class modelling foreign key relationships between tables of the PUBLIC + * schema + */ +@Generated( + value = { + "http://www.jooq.org", + "jOOQ version:3.7.3" + }, + comments = "This class is generated by jOOQ" +) +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class Keys { + + // ------------------------------------------------------------------------- + // IDENTITY definitions + // ------------------------------------------------------------------------- + + + // ------------------------------------------------------------------------- + // UNIQUE and PRIMARY KEY definitions + // ------------------------------------------------------------------------- + + public static final UniqueKey CONSTRAINT_7 = UniqueKeys0.CONSTRAINT_7; + public static final UniqueKey CONSTRAINT_1 = UniqueKeys0.CONSTRAINT_1; + public static final UniqueKey CONSTRAINT_A = UniqueKeys0.CONSTRAINT_A; + + // ------------------------------------------------------------------------- + // FOREIGN KEY definitions + // ------------------------------------------------------------------------- + + public static final ForeignKey FK_AB_AUTHOR = ForeignKeys0.FK_AB_AUTHOR; + public static final ForeignKey FK_AB_BOOK = ForeignKeys0.FK_AB_BOOK; + + // ------------------------------------------------------------------------- + // [#1459] distribute members to avoid static initialisers > 64kb + // ------------------------------------------------------------------------- + + private static class UniqueKeys0 extends AbstractKeys { + public static final UniqueKey CONSTRAINT_7 = createUniqueKey(Author.AUTHOR, Author.AUTHOR.ID); + public static final UniqueKey CONSTRAINT_1 = createUniqueKey(Book.BOOK, Book.BOOK.ID); + public static final UniqueKey CONSTRAINT_A = createUniqueKey(AuthorBook.AUTHOR_BOOK, AuthorBook.AUTHOR_BOOK.AUTHOR_ID, AuthorBook.AUTHOR_BOOK.BOOK_ID); + } + + private static class ForeignKeys0 extends AbstractKeys { + public static final ForeignKey FK_AB_AUTHOR = createForeignKey(com.baeldung.jooq.introduction.db.public_.Keys.CONSTRAINT_7, AuthorBook.AUTHOR_BOOK, AuthorBook.AUTHOR_BOOK.AUTHOR_ID); + public static final ForeignKey FK_AB_BOOK = createForeignKey(com.baeldung.jooq.introduction.db.public_.Keys.CONSTRAINT_1, AuthorBook.AUTHOR_BOOK, AuthorBook.AUTHOR_BOOK.BOOK_ID); + } +} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/public_/Public.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/public_/Public.java new file mode 100644 index 0000000000..a681123c94 --- /dev/null +++ b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/public_/Public.java @@ -0,0 +1,61 @@ +/** + * This class is generated by jOOQ + */ +package com.baeldung.jooq.introduction.db.public_; + + +import com.baeldung.jooq.introduction.db.public_.tables.Author; +import com.baeldung.jooq.introduction.db.public_.tables.AuthorBook; +import com.baeldung.jooq.introduction.db.public_.tables.Book; + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; + +import javax.annotation.Generated; + +import org.jooq.Table; +import org.jooq.impl.SchemaImpl; + + +/** + * This class is generated by jOOQ. + */ +@Generated( + value = { + "http://www.jooq.org", + "jOOQ version:3.7.3" + }, + comments = "This class is generated by jOOQ" +) +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class Public extends SchemaImpl { + + private static final long serialVersionUID = 1806497150; + + /** + * The reference instance of PUBLIC + */ + public static final Public PUBLIC = new Public(); + + /** + * No further instances allowed + */ + private Public() { + super("PUBLIC"); + } + + @Override + public final List> getTables() { + List result = new ArrayList(); + result.addAll(getTables0()); + return result; + } + + private final List> getTables0() { + return Arrays.>asList( + Author.AUTHOR, + Book.BOOK, + AuthorBook.AUTHOR_BOOK); + } +} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/public_/Tables.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/public_/Tables.java new file mode 100644 index 0000000000..cbdc08b78f --- /dev/null +++ b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/public_/Tables.java @@ -0,0 +1,41 @@ +/** + * This class is generated by jOOQ + */ +package com.baeldung.jooq.introduction.db.public_; + + +import com.baeldung.jooq.introduction.db.public_.tables.Author; +import com.baeldung.jooq.introduction.db.public_.tables.AuthorBook; +import com.baeldung.jooq.introduction.db.public_.tables.Book; + +import javax.annotation.Generated; + + +/** + * Convenience access to all tables in PUBLIC + */ +@Generated( + value = { + "http://www.jooq.org", + "jOOQ version:3.7.3" + }, + comments = "This class is generated by jOOQ" +) +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class Tables { + + /** + * The table PUBLIC.AUTHOR + */ + public static final Author AUTHOR = com.baeldung.jooq.introduction.db.public_.tables.Author.AUTHOR; + + /** + * The table PUBLIC.BOOK + */ + public static final Book BOOK = com.baeldung.jooq.introduction.db.public_.tables.Book.BOOK; + + /** + * The table PUBLIC.AUTHOR_BOOK + */ + public static final AuthorBook AUTHOR_BOOK = com.baeldung.jooq.introduction.db.public_.tables.AuthorBook.AUTHOR_BOOK; +} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/public_/tables/Author.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/public_/tables/Author.java new file mode 100644 index 0000000000..43d0b4f778 --- /dev/null +++ b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/public_/tables/Author.java @@ -0,0 +1,118 @@ +/** + * This class is generated by jOOQ + */ +package com.baeldung.jooq.introduction.db.public_.tables; + + +import com.baeldung.jooq.introduction.db.public_.Keys; +import com.baeldung.jooq.introduction.db.public_.Public; +import com.baeldung.jooq.introduction.db.public_.tables.records.AuthorRecord; + +import java.util.Arrays; +import java.util.List; + +import javax.annotation.Generated; + +import org.jooq.Field; +import org.jooq.Table; +import org.jooq.TableField; +import org.jooq.UniqueKey; +import org.jooq.impl.TableImpl; + + +/** + * This class is generated by jOOQ. + */ +@Generated( + value = { + "http://www.jooq.org", + "jOOQ version:3.7.3" + }, + comments = "This class is generated by jOOQ" +) +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class Author extends TableImpl { + + private static final long serialVersionUID = 1121046490; + + /** + * The reference instance of PUBLIC.AUTHOR + */ + public static final Author AUTHOR = new Author(); + + /** + * The class holding records for this type + */ + @Override + public Class getRecordType() { + return AuthorRecord.class; + } + + /** + * The column PUBLIC.AUTHOR.ID. + */ + public final TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER.nullable(false), this, ""); + + /** + * The column PUBLIC.AUTHOR.FIRST_NAME. + */ + public final TableField FIRST_NAME = createField("FIRST_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(50), this, ""); + + /** + * The column PUBLIC.AUTHOR.LAST_NAME. + */ + public final TableField LAST_NAME = createField("LAST_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(50).nullable(false), this, ""); + + /** + * Create a PUBLIC.AUTHOR table reference + */ + public Author() { + this("AUTHOR", null); + } + + /** + * Create an aliased PUBLIC.AUTHOR table reference + */ + public Author(String alias) { + this(alias, AUTHOR); + } + + private Author(String alias, Table aliased) { + this(alias, aliased, null); + } + + private Author(String alias, Table aliased, Field[] parameters) { + super(alias, Public.PUBLIC, aliased, parameters, ""); + } + + /** + * {@inheritDoc} + */ + @Override + public UniqueKey getPrimaryKey() { + return Keys.CONSTRAINT_7; + } + + /** + * {@inheritDoc} + */ + @Override + public List> getKeys() { + return Arrays.>asList(Keys.CONSTRAINT_7); + } + + /** + * {@inheritDoc} + */ + @Override + public Author as(String alias) { + return new Author(alias, this); + } + + /** + * Rename this table + */ + public Author rename(String name) { + return new Author(name, null); + } +} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/public_/tables/AuthorBook.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/public_/tables/AuthorBook.java new file mode 100644 index 0000000000..38a0fe2593 --- /dev/null +++ b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/public_/tables/AuthorBook.java @@ -0,0 +1,122 @@ +/** + * This class is generated by jOOQ + */ +package com.baeldung.jooq.introduction.db.public_.tables; + + +import com.baeldung.jooq.introduction.db.public_.Keys; +import com.baeldung.jooq.introduction.db.public_.Public; +import com.baeldung.jooq.introduction.db.public_.tables.records.AuthorBookRecord; + +import java.util.Arrays; +import java.util.List; + +import javax.annotation.Generated; + +import org.jooq.Field; +import org.jooq.ForeignKey; +import org.jooq.Table; +import org.jooq.TableField; +import org.jooq.UniqueKey; +import org.jooq.impl.TableImpl; + + +/** + * This class is generated by jOOQ. + */ +@Generated( + value = { + "http://www.jooq.org", + "jOOQ version:3.7.3" + }, + comments = "This class is generated by jOOQ" +) +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class AuthorBook extends TableImpl { + + private static final long serialVersionUID = -1609247069; + + /** + * The reference instance of PUBLIC.AUTHOR_BOOK + */ + public static final AuthorBook AUTHOR_BOOK = new AuthorBook(); + + /** + * The class holding records for this type + */ + @Override + public Class getRecordType() { + return AuthorBookRecord.class; + } + + /** + * The column PUBLIC.AUTHOR_BOOK.AUTHOR_ID. + */ + public final TableField AUTHOR_ID = createField("AUTHOR_ID", org.jooq.impl.SQLDataType.INTEGER.nullable(false), this, ""); + + /** + * The column PUBLIC.AUTHOR_BOOK.BOOK_ID. + */ + public final TableField BOOK_ID = createField("BOOK_ID", org.jooq.impl.SQLDataType.INTEGER.nullable(false), this, ""); + + /** + * Create a PUBLIC.AUTHOR_BOOK table reference + */ + public AuthorBook() { + this("AUTHOR_BOOK", null); + } + + /** + * Create an aliased PUBLIC.AUTHOR_BOOK table reference + */ + public AuthorBook(String alias) { + this(alias, AUTHOR_BOOK); + } + + private AuthorBook(String alias, Table aliased) { + this(alias, aliased, null); + } + + private AuthorBook(String alias, Table aliased, Field[] parameters) { + super(alias, Public.PUBLIC, aliased, parameters, ""); + } + + /** + * {@inheritDoc} + */ + @Override + public UniqueKey getPrimaryKey() { + return Keys.CONSTRAINT_A; + } + + /** + * {@inheritDoc} + */ + @Override + public List> getKeys() { + return Arrays.>asList(Keys.CONSTRAINT_A); + } + + /** + * {@inheritDoc} + */ + @Override + public List> getReferences() { + return Arrays.>asList(Keys.FK_AB_AUTHOR, Keys.FK_AB_BOOK); + } + + /** + * {@inheritDoc} + */ + @Override + public AuthorBook as(String alias) { + return new AuthorBook(alias, this); + } + + /** + * Rename this table + */ + public AuthorBook rename(String name) { + return new AuthorBook(name, null); + } +} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/public_/tables/Book.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/public_/tables/Book.java new file mode 100644 index 0000000000..33b38e1eb5 --- /dev/null +++ b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/public_/tables/Book.java @@ -0,0 +1,113 @@ +/** + * This class is generated by jOOQ + */ +package com.baeldung.jooq.introduction.db.public_.tables; + + +import com.baeldung.jooq.introduction.db.public_.Keys; +import com.baeldung.jooq.introduction.db.public_.Public; +import com.baeldung.jooq.introduction.db.public_.tables.records.BookRecord; + +import java.util.Arrays; +import java.util.List; + +import javax.annotation.Generated; + +import org.jooq.Field; +import org.jooq.Table; +import org.jooq.TableField; +import org.jooq.UniqueKey; +import org.jooq.impl.TableImpl; + + +/** + * This class is generated by jOOQ. + */ +@Generated( + value = { + "http://www.jooq.org", + "jOOQ version:3.7.3" + }, + comments = "This class is generated by jOOQ" +) +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class Book extends TableImpl { + + private static final long serialVersionUID = -1685336167; + + /** + * The reference instance of PUBLIC.BOOK + */ + public static final Book BOOK = new Book(); + + /** + * The class holding records for this type + */ + @Override + public Class getRecordType() { + return BookRecord.class; + } + + /** + * The column PUBLIC.BOOK.ID. + */ + public final TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER.nullable(false), this, ""); + + /** + * The column PUBLIC.BOOK.TITLE. + */ + public final TableField TITLE = createField("TITLE", org.jooq.impl.SQLDataType.VARCHAR.length(100).nullable(false), this, ""); + + /** + * Create a PUBLIC.BOOK table reference + */ + public Book() { + this("BOOK", null); + } + + /** + * Create an aliased PUBLIC.BOOK table reference + */ + public Book(String alias) { + this(alias, BOOK); + } + + private Book(String alias, Table aliased) { + this(alias, aliased, null); + } + + private Book(String alias, Table aliased, Field[] parameters) { + super(alias, Public.PUBLIC, aliased, parameters, ""); + } + + /** + * {@inheritDoc} + */ + @Override + public UniqueKey getPrimaryKey() { + return Keys.CONSTRAINT_1; + } + + /** + * {@inheritDoc} + */ + @Override + public List> getKeys() { + return Arrays.>asList(Keys.CONSTRAINT_1); + } + + /** + * {@inheritDoc} + */ + @Override + public Book as(String alias) { + return new Book(alias, this); + } + + /** + * Rename this table + */ + public Book rename(String name) { + return new Book(name, null); + } +} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/public_/tables/records/AuthorBookRecord.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/public_/tables/records/AuthorBookRecord.java new file mode 100644 index 0000000000..2e9a07ba4f --- /dev/null +++ b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/public_/tables/records/AuthorBookRecord.java @@ -0,0 +1,172 @@ +/** + * This class is generated by jOOQ + */ +package com.baeldung.jooq.introduction.db.public_.tables.records; + + +import com.baeldung.jooq.introduction.db.public_.tables.AuthorBook; + +import javax.annotation.Generated; + +import org.jooq.Field; +import org.jooq.Record2; +import org.jooq.Row2; +import org.jooq.impl.UpdatableRecordImpl; + + +/** + * This class is generated by jOOQ. + */ +@Generated( + value = { + "http://www.jooq.org", + "jOOQ version:3.7.3" + }, + comments = "This class is generated by jOOQ" +) +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class AuthorBookRecord extends UpdatableRecordImpl implements Record2 { + + private static final long serialVersionUID = -1057354033; + + /** + * Setter for PUBLIC.AUTHOR_BOOK.AUTHOR_ID. + */ + public void setAuthorId(Integer value) { + setValue(0, value); + } + + /** + * Getter for PUBLIC.AUTHOR_BOOK.AUTHOR_ID. + */ + public Integer getAuthorId() { + return (Integer) getValue(0); + } + + /** + * Setter for PUBLIC.AUTHOR_BOOK.BOOK_ID. + */ + public void setBookId(Integer value) { + setValue(1, value); + } + + /** + * Getter for PUBLIC.AUTHOR_BOOK.BOOK_ID. + */ + public Integer getBookId() { + return (Integer) getValue(1); + } + + // ------------------------------------------------------------------------- + // Primary key information + // ------------------------------------------------------------------------- + + /** + * {@inheritDoc} + */ + @Override + public Record2 key() { + return (Record2) super.key(); + } + + // ------------------------------------------------------------------------- + // Record2 type implementation + // ------------------------------------------------------------------------- + + /** + * {@inheritDoc} + */ + @Override + public Row2 fieldsRow() { + return (Row2) super.fieldsRow(); + } + + /** + * {@inheritDoc} + */ + @Override + public Row2 valuesRow() { + return (Row2) super.valuesRow(); + } + + /** + * {@inheritDoc} + */ + @Override + public Field field1() { + return AuthorBook.AUTHOR_BOOK.AUTHOR_ID; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field2() { + return AuthorBook.AUTHOR_BOOK.BOOK_ID; + } + + /** + * {@inheritDoc} + */ + @Override + public Integer value1() { + return getAuthorId(); + } + + /** + * {@inheritDoc} + */ + @Override + public Integer value2() { + return getBookId(); + } + + /** + * {@inheritDoc} + */ + @Override + public AuthorBookRecord value1(Integer value) { + setAuthorId(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public AuthorBookRecord value2(Integer value) { + setBookId(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public AuthorBookRecord values(Integer value1, Integer value2) { + value1(value1); + value2(value2); + return this; + } + + // ------------------------------------------------------------------------- + // Constructors + // ------------------------------------------------------------------------- + + /** + * Create a detached AuthorBookRecord + */ + public AuthorBookRecord() { + super(AuthorBook.AUTHOR_BOOK); + } + + /** + * Create a detached, initialised AuthorBookRecord + */ + public AuthorBookRecord(Integer authorId, Integer bookId) { + super(AuthorBook.AUTHOR_BOOK); + + setValue(0, authorId); + setValue(1, bookId); + } +} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/public_/tables/records/AuthorRecord.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/public_/tables/records/AuthorRecord.java new file mode 100644 index 0000000000..5d6d88b0c3 --- /dev/null +++ b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/public_/tables/records/AuthorRecord.java @@ -0,0 +1,214 @@ +/** + * This class is generated by jOOQ + */ +package com.baeldung.jooq.introduction.db.public_.tables.records; + + +import com.baeldung.jooq.introduction.db.public_.tables.Author; + +import javax.annotation.Generated; + +import org.jooq.Field; +import org.jooq.Record1; +import org.jooq.Record3; +import org.jooq.Row3; +import org.jooq.impl.UpdatableRecordImpl; + + +/** + * This class is generated by jOOQ. + */ +@Generated( + value = { + "http://www.jooq.org", + "jOOQ version:3.7.3" + }, + comments = "This class is generated by jOOQ" +) +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class AuthorRecord extends UpdatableRecordImpl implements Record3 { + + private static final long serialVersionUID = 253757039; + + /** + * Setter for PUBLIC.AUTHOR.ID. + */ + public void setId(Integer value) { + setValue(0, value); + } + + /** + * Getter for PUBLIC.AUTHOR.ID. + */ + public Integer getId() { + return (Integer) getValue(0); + } + + /** + * Setter for PUBLIC.AUTHOR.FIRST_NAME. + */ + public void setFirstName(String value) { + setValue(1, value); + } + + /** + * Getter for PUBLIC.AUTHOR.FIRST_NAME. + */ + public String getFirstName() { + return (String) getValue(1); + } + + /** + * Setter for PUBLIC.AUTHOR.LAST_NAME. + */ + public void setLastName(String value) { + setValue(2, value); + } + + /** + * Getter for PUBLIC.AUTHOR.LAST_NAME. + */ + public String getLastName() { + return (String) getValue(2); + } + + // ------------------------------------------------------------------------- + // Primary key information + // ------------------------------------------------------------------------- + + /** + * {@inheritDoc} + */ + @Override + public Record1 key() { + return (Record1) super.key(); + } + + // ------------------------------------------------------------------------- + // Record3 type implementation + // ------------------------------------------------------------------------- + + /** + * {@inheritDoc} + */ + @Override + public Row3 fieldsRow() { + return (Row3) super.fieldsRow(); + } + + /** + * {@inheritDoc} + */ + @Override + public Row3 valuesRow() { + return (Row3) super.valuesRow(); + } + + /** + * {@inheritDoc} + */ + @Override + public Field field1() { + return Author.AUTHOR.ID; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field2() { + return Author.AUTHOR.FIRST_NAME; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field3() { + return Author.AUTHOR.LAST_NAME; + } + + /** + * {@inheritDoc} + */ + @Override + public Integer value1() { + return getId(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value2() { + return getFirstName(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value3() { + return getLastName(); + } + + /** + * {@inheritDoc} + */ + @Override + public AuthorRecord value1(Integer value) { + setId(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public AuthorRecord value2(String value) { + setFirstName(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public AuthorRecord value3(String value) { + setLastName(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public AuthorRecord values(Integer value1, String value2, String value3) { + value1(value1); + value2(value2); + value3(value3); + return this; + } + + // ------------------------------------------------------------------------- + // Constructors + // ------------------------------------------------------------------------- + + /** + * Create a detached AuthorRecord + */ + public AuthorRecord() { + super(Author.AUTHOR); + } + + /** + * Create a detached, initialised AuthorRecord + */ + public AuthorRecord(Integer id, String firstName, String lastName) { + super(Author.AUTHOR); + + setValue(0, id); + setValue(1, firstName); + setValue(2, lastName); + } +} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/public_/tables/records/BookRecord.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/public_/tables/records/BookRecord.java new file mode 100644 index 0000000000..1725dccff0 --- /dev/null +++ b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/public_/tables/records/BookRecord.java @@ -0,0 +1,173 @@ +/** + * This class is generated by jOOQ + */ +package com.baeldung.jooq.introduction.db.public_.tables.records; + + +import com.baeldung.jooq.introduction.db.public_.tables.Book; + +import javax.annotation.Generated; + +import org.jooq.Field; +import org.jooq.Record1; +import org.jooq.Record2; +import org.jooq.Row2; +import org.jooq.impl.UpdatableRecordImpl; + + +/** + * This class is generated by jOOQ. + */ +@Generated( + value = { + "http://www.jooq.org", + "jOOQ version:3.7.3" + }, + comments = "This class is generated by jOOQ" +) +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class BookRecord extends UpdatableRecordImpl implements Record2 { + + private static final long serialVersionUID = -434165872; + + /** + * Setter for PUBLIC.BOOK.ID. + */ + public void setId(Integer value) { + setValue(0, value); + } + + /** + * Getter for PUBLIC.BOOK.ID. + */ + public Integer getId() { + return (Integer) getValue(0); + } + + /** + * Setter for PUBLIC.BOOK.TITLE. + */ + public void setTitle(String value) { + setValue(1, value); + } + + /** + * Getter for PUBLIC.BOOK.TITLE. + */ + public String getTitle() { + return (String) getValue(1); + } + + // ------------------------------------------------------------------------- + // Primary key information + // ------------------------------------------------------------------------- + + /** + * {@inheritDoc} + */ + @Override + public Record1 key() { + return (Record1) super.key(); + } + + // ------------------------------------------------------------------------- + // Record2 type implementation + // ------------------------------------------------------------------------- + + /** + * {@inheritDoc} + */ + @Override + public Row2 fieldsRow() { + return (Row2) super.fieldsRow(); + } + + /** + * {@inheritDoc} + */ + @Override + public Row2 valuesRow() { + return (Row2) super.valuesRow(); + } + + /** + * {@inheritDoc} + */ + @Override + public Field field1() { + return Book.BOOK.ID; + } + + /** + * {@inheritDoc} + */ + @Override + public Field field2() { + return Book.BOOK.TITLE; + } + + /** + * {@inheritDoc} + */ + @Override + public Integer value1() { + return getId(); + } + + /** + * {@inheritDoc} + */ + @Override + public String value2() { + return getTitle(); + } + + /** + * {@inheritDoc} + */ + @Override + public BookRecord value1(Integer value) { + setId(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public BookRecord value2(String value) { + setTitle(value); + return this; + } + + /** + * {@inheritDoc} + */ + @Override + public BookRecord values(Integer value1, String value2) { + value1(value1); + value2(value2); + return this; + } + + // ------------------------------------------------------------------------- + // Constructors + // ------------------------------------------------------------------------- + + /** + * Create a detached BookRecord + */ + public BookRecord() { + super(Book.BOOK); + } + + /** + * Create a detached, initialised BookRecord + */ + public BookRecord(Integer id, String title) { + super(Book.BOOK); + + setValue(0, id); + setValue(1, title); + } +} diff --git a/jooq-spring/src/main/resources/application.properties b/jooq-spring/src/main/resources/application.properties new file mode 100644 index 0000000000..2b32da2356 --- /dev/null +++ b/jooq-spring/src/main/resources/application.properties @@ -0,0 +1,3 @@ +spring.datasource.url=jdbc:h2:~/jooq +spring.datasource.username=sa +spring.datasource.password= \ No newline at end of file diff --git a/jooq-spring/src/test/java/com/baeldung/jooq/springboot/Application.java b/jooq-spring/src/test/java/com/baeldung/jooq/springboot/Application.java new file mode 100644 index 0000000000..a52f0a0ef3 --- /dev/null +++ b/jooq-spring/src/test/java/com/baeldung/jooq/springboot/Application.java @@ -0,0 +1,68 @@ +package com.baeldung.jooq.springboot; + +import javax.sql.DataSource; + +import org.jooq.impl.DataSourceConnectionProvider; +import org.jooq.impl.DefaultConfiguration; +import org.jooq.impl.DefaultDSLContext; +import org.jooq.impl.DefaultExecuteListenerProvider; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.autoconfigure.SpringBootApplication; +import org.springframework.context.annotation.Bean; +import org.springframework.core.env.Environment; +import org.springframework.jdbc.datasource.DataSourceTransactionManager; +import org.springframework.jdbc.datasource.DriverManagerDataSource; +import org.springframework.jdbc.datasource.TransactionAwareDataSourceProxy; +import org.springframework.transaction.annotation.EnableTransactionManagement; + +import com.baeldung.jooq.introduction.ExceptionTranslator; + +@SpringBootApplication +@EnableTransactionManagement +public class Application { + @Autowired + private Environment environment; + private DataSource dataSource; + + public DataSource dataSource() { + DriverManagerDataSource dataSource = new DriverManagerDataSource(); + + dataSource.setUrl(environment.getRequiredProperty("spring.datasource.url")); + dataSource.setUsername(environment.getRequiredProperty("spring.datasource.username")); + dataSource.setPassword(environment.getRequiredProperty("spring.datasource.password")); + + return dataSource; + } + + @Bean + public TransactionAwareDataSourceProxy transactionAwareDataSource() { + return new TransactionAwareDataSourceProxy(dataSource()); + } + + public DataSourceTransactionManager transactionManager() { + return new DataSourceTransactionManager(dataSource); + } + + @Bean + public DataSourceConnectionProvider connectionProvider() { + return new DataSourceConnectionProvider(transactionAwareDataSource()); + } + + public ExceptionTranslator exceptionTransformer() { + return new ExceptionTranslator(); + } + + @Bean + public DefaultDSLContext dsl() { + return new DefaultDSLContext(configuration()); + } + + public DefaultConfiguration configuration() { + DefaultConfiguration jooqConfiguration = new DefaultConfiguration(); + jooqConfiguration.set(connectionProvider()); + jooqConfiguration.set(new DefaultExecuteListenerProvider(exceptionTransformer())); + + return jooqConfiguration; + } +} \ No newline at end of file diff --git a/jooq-spring/src/test/java/com/baeldung/jooq/springboot/SpringBootTest.java b/jooq-spring/src/test/java/com/baeldung/jooq/springboot/SpringBootTest.java new file mode 100644 index 0000000000..bf5cc250a8 --- /dev/null +++ b/jooq-spring/src/test/java/com/baeldung/jooq/springboot/SpringBootTest.java @@ -0,0 +1,85 @@ +package com.baeldung.jooq.springboot; + +import static org.junit.Assert.*; + +import org.jooq.DSLContext; +import org.jooq.Record3; +import org.jooq.Result; +import org.jooq.impl.DSL; +import org.junit.Test; +import org.junit.runner.RunWith; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.test.SpringApplicationConfiguration; +import org.springframework.dao.DataAccessException; +import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; +import org.springframework.transaction.annotation.Transactional; + +import com.baeldung.jooq.introduction.db.public_.tables.Author; +import com.baeldung.jooq.introduction.db.public_.tables.AuthorBook; +import com.baeldung.jooq.introduction.db.public_.tables.Book; + +@SpringApplicationConfiguration(Application.class) +@Transactional("transactionManager") +@RunWith(SpringJUnit4ClassRunner.class) +public class SpringBootTest { + @Autowired + private DSLContext dsl; + + Author author = Author.AUTHOR; + Book book = Book.BOOK; + AuthorBook authorBook = AuthorBook.AUTHOR_BOOK; + + @Test + public void givenValidData_whenInserting_thenSucceed() { + dsl.insertInto(author).set(author.ID, 4).set(author.FIRST_NAME, "Herbert").set(author.LAST_NAME, "Schildt").execute(); + dsl.insertInto(book).set(book.ID, 4).set(book.TITLE, "A Beginner's Guide").execute(); + dsl.insertInto(authorBook).set(authorBook.AUTHOR_ID, 4).set(authorBook.BOOK_ID, 4).execute(); + Result> result = dsl.select(author.ID, author.LAST_NAME, DSL.count()).from(author).join(authorBook).on(author.ID.equal(authorBook.AUTHOR_ID)).join(book).on(authorBook.BOOK_ID.equal(book.ID)).groupBy(author.LAST_NAME) + .fetch(); + + assertEquals(3, result.size()); + assertEquals("Sierra", result.getValue(0, author.LAST_NAME)); + assertEquals(Integer.valueOf(2), result.getValue(0, DSL.count())); + assertEquals("Schildt", result.getValue(2, author.LAST_NAME)); + assertEquals(Integer.valueOf(1), result.getValue(2, DSL.count())); + } + + @Test(expected = DataAccessException.class) + public void givenInvalidData_whenInserting_thenFail() { + dsl.insertInto(authorBook).set(authorBook.AUTHOR_ID, 4).set(authorBook.BOOK_ID, 5).execute(); + } + + @Test + public void givenValidData_whenUpdating_thenSucceed() { + dsl.update(author).set(author.LAST_NAME, "Baeldung").where(author.ID.equal(3)).execute(); + dsl.update(book).set(book.TITLE, "Building your REST API with Spring").where(book.ID.equal(3)).execute(); + dsl.insertInto(authorBook).set(authorBook.AUTHOR_ID, 3).set(authorBook.BOOK_ID, 3).execute(); + Result> result = dsl.select(author.ID, author.LAST_NAME, book.TITLE).from(author).join(authorBook).on(author.ID.equal(authorBook.AUTHOR_ID)).join(book).on(authorBook.BOOK_ID.equal(book.ID)).where(author.ID.equal(3)) + .fetch(); + + assertEquals(1, result.size()); + assertEquals(Integer.valueOf(3), result.getValue(0, author.ID)); + assertEquals("Baeldung", result.getValue(0, author.LAST_NAME)); + assertEquals("Building your REST API with Spring", result.getValue(0, book.TITLE)); + } + + @Test(expected = DataAccessException.class) + public void givenInvalidData_whenUpdating_thenFail() { + dsl.update(authorBook).set(authorBook.AUTHOR_ID, 4).set(authorBook.BOOK_ID, 5).execute(); + } + + @Test + public void givenValidData_whenDeleting_thenSucceed() { + dsl.delete(author).where(author.ID.lt(3)).execute(); + Result> result = dsl.select(author.ID, author.FIRST_NAME, author.LAST_NAME).from(author).fetch(); + + assertEquals(1, result.size()); + assertEquals("Bryan", result.getValue(0, author.FIRST_NAME)); + assertEquals("Basham", result.getValue(0, author.LAST_NAME)); + } + + @Test(expected = DataAccessException.class) + public void givenInvalidData_whenDeleting_thenFail() { + dsl.delete(book).where(book.ID.equal(1)).execute(); + } +} \ No newline at end of file From eadbde5c2de168847516f5a3cff2e0ad07842d5c Mon Sep 17 00:00:00 2001 From: Grzegorz Piwowarek Date: Tue, 7 Jun 2016 17:49:15 +0200 Subject: [PATCH 09/26] Remove autogenerated jOOQ files --- .gitignore | 5 + .../information_schema/InformationSchema.java | 113 --- .../db/information_schema/Keys.java | 42 - .../db/information_schema/Tables.java | 196 ---- .../information_schema/tables/Catalogs.java | 87 -- .../information_schema/tables/Collations.java | 92 -- .../tables/ColumnPrivileges.java | 122 --- .../db/information_schema/tables/Columns.java | 197 ---- .../information_schema/tables/Constants.java | 117 --- .../tables/Constraints.java | 147 --- .../tables/CrossReferences.java | 152 --- .../db/information_schema/tables/Domains.java | 152 --- .../tables/FunctionAliases.java | 142 --- .../tables/FunctionColumns.java | 167 ---- .../db/information_schema/tables/Help.java | 107 -- .../db/information_schema/tables/InDoubt.java | 92 -- .../db/information_schema/tables/Indexes.java | 187 ---- .../db/information_schema/tables/Locks.java | 102 -- .../tables/QueryStatistics.java | 142 --- .../db/information_schema/tables/Rights.java | 117 --- .../db/information_schema/tables/Roles.java | 97 -- .../information_schema/tables/Schemata.java | 122 --- .../information_schema/tables/Sequences.java | 142 --- .../tables/SessionState.java | 92 -- .../information_schema/tables/Sessions.java | 112 --- .../information_schema/tables/Settings.java | 92 -- .../tables/TablePrivileges.java | 117 --- .../information_schema/tables/TableTypes.java | 87 -- .../db/information_schema/tables/Tables.java | 142 --- .../information_schema/tables/Triggers.java | 152 --- .../information_schema/tables/TypeInfo.java | 152 --- .../db/information_schema/tables/Users.java | 102 -- .../db/information_schema/tables/Views.java | 127 --- .../tables/records/CatalogsRecord.java | 119 --- .../tables/records/CollationsRecord.java | 160 --- .../records/ColumnPrivilegesRecord.java | 406 -------- .../tables/records/ColumnsRecord.java | 392 -------- .../tables/records/ConstantsRecord.java | 365 ------- .../tables/records/ConstraintsRecord.java | 611 ------------ .../tables/records/CrossReferencesRecord.java | 652 ------------ .../tables/records/DomainsRecord.java | 652 ------------ .../tables/records/FunctionAliasesRecord.java | 570 ----------- .../tables/records/FunctionColumnsRecord.java | 775 --------------- .../tables/records/HelpRecord.java | 283 ------ .../tables/records/InDoubtRecord.java | 160 --- .../tables/records/IndexesRecord.java | 939 ------------------ .../tables/records/LocksRecord.java | 242 ----- .../tables/records/QueryStatisticsRecord.java | 570 ----------- .../tables/records/RightsRecord.java | 365 ------- .../tables/records/RolesRecord.java | 201 ---- .../tables/records/SchemataRecord.java | 406 -------- .../tables/records/SequencesRecord.java | 570 ----------- .../tables/records/SessionStateRecord.java | 160 --- .../tables/records/SessionsRecord.java | 324 ------ .../tables/records/SettingsRecord.java | 160 --- .../tables/records/TablePrivilegesRecord.java | 365 ------- .../tables/records/TableTypesRecord.java | 119 --- .../tables/records/TablesRecord.java | 570 ----------- .../tables/records/TriggersRecord.java | 652 ------------ .../tables/records/TypeInfoRecord.java | 652 ------------ .../tables/records/UsersRecord.java | 242 ----- .../tables/records/ViewsRecord.java | 447 --------- .../jooq/introduction/db/public_/Keys.java | 69 -- .../jooq/introduction/db/public_/Public.java | 61 -- .../jooq/introduction/db/public_/Tables.java | 41 - .../db/public_/tables/Author.java | 118 --- .../db/public_/tables/AuthorBook.java | 122 --- .../introduction/db/public_/tables/Book.java | 113 --- .../tables/records/AuthorBookRecord.java | 172 ---- .../public_/tables/records/AuthorRecord.java | 214 ---- .../db/public_/tables/records/BookRecord.java | 173 ---- 71 files changed, 5 insertions(+), 17221 deletions(-) delete mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/InformationSchema.java delete mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/Keys.java delete mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/Tables.java delete mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Catalogs.java delete mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Collations.java delete mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/ColumnPrivileges.java delete mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Columns.java delete mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Constants.java delete mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Constraints.java delete mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/CrossReferences.java delete mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Domains.java delete mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/FunctionAliases.java delete mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/FunctionColumns.java delete mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Help.java delete mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/InDoubt.java delete mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Indexes.java delete mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Locks.java delete mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/QueryStatistics.java delete mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Rights.java delete mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Roles.java delete mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Schemata.java delete mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Sequences.java delete mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/SessionState.java delete mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Sessions.java delete mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Settings.java delete mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/TablePrivileges.java delete mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/TableTypes.java delete mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Tables.java delete mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Triggers.java delete mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/TypeInfo.java delete mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Users.java delete mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Views.java delete mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/CatalogsRecord.java delete mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/CollationsRecord.java delete mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/ColumnPrivilegesRecord.java delete mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/ColumnsRecord.java delete mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/ConstantsRecord.java delete mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/ConstraintsRecord.java delete mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/CrossReferencesRecord.java delete mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/DomainsRecord.java delete mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/FunctionAliasesRecord.java delete mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/FunctionColumnsRecord.java delete mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/HelpRecord.java delete mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/InDoubtRecord.java delete mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/IndexesRecord.java delete mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/LocksRecord.java delete mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/QueryStatisticsRecord.java delete mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/RightsRecord.java delete mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/RolesRecord.java delete mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/SchemataRecord.java delete mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/SequencesRecord.java delete mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/SessionStateRecord.java delete mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/SessionsRecord.java delete mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/SettingsRecord.java delete mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/TablePrivilegesRecord.java delete mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/TableTypesRecord.java delete mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/TablesRecord.java delete mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/TriggersRecord.java delete mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/TypeInfoRecord.java delete mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/UsersRecord.java delete mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/ViewsRecord.java delete mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/public_/Keys.java delete mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/public_/Public.java delete mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/public_/Tables.java delete mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/public_/tables/Author.java delete mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/public_/tables/AuthorBook.java delete mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/public_/tables/Book.java delete mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/public_/tables/records/AuthorBookRecord.java delete mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/public_/tables/records/AuthorRecord.java delete mode 100644 jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/public_/tables/records/BookRecord.java diff --git a/.gitignore b/.gitignore index 210807d09e..1a67437a83 100644 --- a/.gitignore +++ b/.gitignore @@ -7,6 +7,8 @@ # Eclipse .settings/ +*.project +*.classpath .prefs *.prefs @@ -23,3 +25,6 @@ log/ target/ spring-openid/src/main/resources/application.properties + +# Autogenerated jOOQ files +jooq-spring/src/main/java/com/baeldung/jooq/introduction/db diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/InformationSchema.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/InformationSchema.java deleted file mode 100644 index 94138a9ebe..0000000000 --- a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/InformationSchema.java +++ /dev/null @@ -1,113 +0,0 @@ -/** - * This class is generated by jOOQ - */ -package com.baeldung.jooq.introduction.db.information_schema; - - -import com.baeldung.jooq.introduction.db.information_schema.tables.Catalogs; -import com.baeldung.jooq.introduction.db.information_schema.tables.Collations; -import com.baeldung.jooq.introduction.db.information_schema.tables.ColumnPrivileges; -import com.baeldung.jooq.introduction.db.information_schema.tables.Columns; -import com.baeldung.jooq.introduction.db.information_schema.tables.Constants; -import com.baeldung.jooq.introduction.db.information_schema.tables.Constraints; -import com.baeldung.jooq.introduction.db.information_schema.tables.CrossReferences; -import com.baeldung.jooq.introduction.db.information_schema.tables.Domains; -import com.baeldung.jooq.introduction.db.information_schema.tables.FunctionAliases; -import com.baeldung.jooq.introduction.db.information_schema.tables.FunctionColumns; -import com.baeldung.jooq.introduction.db.information_schema.tables.Help; -import com.baeldung.jooq.introduction.db.information_schema.tables.InDoubt; -import com.baeldung.jooq.introduction.db.information_schema.tables.Indexes; -import com.baeldung.jooq.introduction.db.information_schema.tables.Locks; -import com.baeldung.jooq.introduction.db.information_schema.tables.QueryStatistics; -import com.baeldung.jooq.introduction.db.information_schema.tables.Rights; -import com.baeldung.jooq.introduction.db.information_schema.tables.Roles; -import com.baeldung.jooq.introduction.db.information_schema.tables.Schemata; -import com.baeldung.jooq.introduction.db.information_schema.tables.Sequences; -import com.baeldung.jooq.introduction.db.information_schema.tables.SessionState; -import com.baeldung.jooq.introduction.db.information_schema.tables.Sessions; -import com.baeldung.jooq.introduction.db.information_schema.tables.Settings; -import com.baeldung.jooq.introduction.db.information_schema.tables.TablePrivileges; -import com.baeldung.jooq.introduction.db.information_schema.tables.TableTypes; -import com.baeldung.jooq.introduction.db.information_schema.tables.Tables; -import com.baeldung.jooq.introduction.db.information_schema.tables.Triggers; -import com.baeldung.jooq.introduction.db.information_schema.tables.TypeInfo; -import com.baeldung.jooq.introduction.db.information_schema.tables.Users; -import com.baeldung.jooq.introduction.db.information_schema.tables.Views; - -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; - -import javax.annotation.Generated; - -import org.jooq.Table; -import org.jooq.impl.SchemaImpl; - - -/** - * This class is generated by jOOQ. - */ -@Generated( - value = { - "http://www.jooq.org", - "jOOQ version:3.7.3" - }, - comments = "This class is generated by jOOQ" -) -@SuppressWarnings({ "all", "unchecked", "rawtypes" }) -public class InformationSchema extends SchemaImpl { - - private static final long serialVersionUID = 436617961; - - /** - * The reference instance of INFORMATION_SCHEMA - */ - public static final InformationSchema INFORMATION_SCHEMA = new InformationSchema(); - - /** - * No further instances allowed - */ - private InformationSchema() { - super("INFORMATION_SCHEMA"); - } - - @Override - public final List> getTables() { - List result = new ArrayList(); - result.addAll(getTables0()); - return result; - } - - private final List> getTables0() { - return Arrays.>asList( - QueryStatistics.QUERY_STATISTICS, - SessionState.SESSION_STATE, - Locks.LOCKS, - Sessions.SESSIONS, - Triggers.TRIGGERS, - Domains.DOMAINS, - Constants.CONSTANTS, - FunctionColumns.FUNCTION_COLUMNS, - Constraints.CONSTRAINTS, - CrossReferences.CROSS_REFERENCES, - InDoubt.IN_DOUBT, - Views.VIEWS, - Collations.COLLATIONS, - ColumnPrivileges.COLUMN_PRIVILEGES, - TablePrivileges.TABLE_PRIVILEGES, - Schemata.SCHEMATA, - FunctionAliases.FUNCTION_ALIASES, - Rights.RIGHTS, - Roles.ROLES, - Users.USERS, - Sequences.SEQUENCES, - Help.HELP, - Settings.SETTINGS, - Catalogs.CATALOGS, - TypeInfo.TYPE_INFO, - TableTypes.TABLE_TYPES, - Indexes.INDEXES, - Columns.COLUMNS, - Tables.TABLES); - } -} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/Keys.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/Keys.java deleted file mode 100644 index 87a1a03e55..0000000000 --- a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/Keys.java +++ /dev/null @@ -1,42 +0,0 @@ -/** - * This class is generated by jOOQ - */ -package com.baeldung.jooq.introduction.db.information_schema; - - -import javax.annotation.Generated; - - -/** - * A class modelling foreign key relationships between tables of the INFORMATION_SCHEMA - * schema - */ -@Generated( - value = { - "http://www.jooq.org", - "jOOQ version:3.7.3" - }, - comments = "This class is generated by jOOQ" -) -@SuppressWarnings({ "all", "unchecked", "rawtypes" }) -public class Keys { - - // ------------------------------------------------------------------------- - // IDENTITY definitions - // ------------------------------------------------------------------------- - - - // ------------------------------------------------------------------------- - // UNIQUE and PRIMARY KEY definitions - // ------------------------------------------------------------------------- - - - // ------------------------------------------------------------------------- - // FOREIGN KEY definitions - // ------------------------------------------------------------------------- - - - // ------------------------------------------------------------------------- - // [#1459] distribute members to avoid static initialisers > 64kb - // ------------------------------------------------------------------------- -} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/Tables.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/Tables.java deleted file mode 100644 index 9d66776232..0000000000 --- a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/Tables.java +++ /dev/null @@ -1,196 +0,0 @@ -/** - * This class is generated by jOOQ - */ -package com.baeldung.jooq.introduction.db.information_schema; - - -import com.baeldung.jooq.introduction.db.information_schema.tables.Catalogs; -import com.baeldung.jooq.introduction.db.information_schema.tables.Collations; -import com.baeldung.jooq.introduction.db.information_schema.tables.ColumnPrivileges; -import com.baeldung.jooq.introduction.db.information_schema.tables.Columns; -import com.baeldung.jooq.introduction.db.information_schema.tables.Constants; -import com.baeldung.jooq.introduction.db.information_schema.tables.Constraints; -import com.baeldung.jooq.introduction.db.information_schema.tables.CrossReferences; -import com.baeldung.jooq.introduction.db.information_schema.tables.Domains; -import com.baeldung.jooq.introduction.db.information_schema.tables.FunctionAliases; -import com.baeldung.jooq.introduction.db.information_schema.tables.FunctionColumns; -import com.baeldung.jooq.introduction.db.information_schema.tables.Help; -import com.baeldung.jooq.introduction.db.information_schema.tables.InDoubt; -import com.baeldung.jooq.introduction.db.information_schema.tables.Indexes; -import com.baeldung.jooq.introduction.db.information_schema.tables.Locks; -import com.baeldung.jooq.introduction.db.information_schema.tables.QueryStatistics; -import com.baeldung.jooq.introduction.db.information_schema.tables.Rights; -import com.baeldung.jooq.introduction.db.information_schema.tables.Roles; -import com.baeldung.jooq.introduction.db.information_schema.tables.Schemata; -import com.baeldung.jooq.introduction.db.information_schema.tables.Sequences; -import com.baeldung.jooq.introduction.db.information_schema.tables.SessionState; -import com.baeldung.jooq.introduction.db.information_schema.tables.Sessions; -import com.baeldung.jooq.introduction.db.information_schema.tables.Settings; -import com.baeldung.jooq.introduction.db.information_schema.tables.TablePrivileges; -import com.baeldung.jooq.introduction.db.information_schema.tables.TableTypes; -import com.baeldung.jooq.introduction.db.information_schema.tables.Triggers; -import com.baeldung.jooq.introduction.db.information_schema.tables.TypeInfo; -import com.baeldung.jooq.introduction.db.information_schema.tables.Users; -import com.baeldung.jooq.introduction.db.information_schema.tables.Views; - -import javax.annotation.Generated; - - -/** - * Convenience access to all tables in INFORMATION_SCHEMA - */ -@Generated( - value = { - "http://www.jooq.org", - "jOOQ version:3.7.3" - }, - comments = "This class is generated by jOOQ" -) -@SuppressWarnings({ "all", "unchecked", "rawtypes" }) -public class Tables { - - /** - * The table INFORMATION_SCHEMA.QUERY_STATISTICS - */ - public static final QueryStatistics QUERY_STATISTICS = com.baeldung.jooq.introduction.db.information_schema.tables.QueryStatistics.QUERY_STATISTICS; - - /** - * The table INFORMATION_SCHEMA.SESSION_STATE - */ - public static final SessionState SESSION_STATE = com.baeldung.jooq.introduction.db.information_schema.tables.SessionState.SESSION_STATE; - - /** - * The table INFORMATION_SCHEMA.LOCKS - */ - public static final Locks LOCKS = com.baeldung.jooq.introduction.db.information_schema.tables.Locks.LOCKS; - - /** - * The table INFORMATION_SCHEMA.SESSIONS - */ - public static final Sessions SESSIONS = com.baeldung.jooq.introduction.db.information_schema.tables.Sessions.SESSIONS; - - /** - * The table INFORMATION_SCHEMA.TRIGGERS - */ - public static final Triggers TRIGGERS = com.baeldung.jooq.introduction.db.information_schema.tables.Triggers.TRIGGERS; - - /** - * The table INFORMATION_SCHEMA.DOMAINS - */ - public static final Domains DOMAINS = com.baeldung.jooq.introduction.db.information_schema.tables.Domains.DOMAINS; - - /** - * The table INFORMATION_SCHEMA.CONSTANTS - */ - public static final Constants CONSTANTS = com.baeldung.jooq.introduction.db.information_schema.tables.Constants.CONSTANTS; - - /** - * The table INFORMATION_SCHEMA.FUNCTION_COLUMNS - */ - public static final FunctionColumns FUNCTION_COLUMNS = com.baeldung.jooq.introduction.db.information_schema.tables.FunctionColumns.FUNCTION_COLUMNS; - - /** - * The table INFORMATION_SCHEMA.CONSTRAINTS - */ - public static final Constraints CONSTRAINTS = com.baeldung.jooq.introduction.db.information_schema.tables.Constraints.CONSTRAINTS; - - /** - * The table INFORMATION_SCHEMA.CROSS_REFERENCES - */ - public static final CrossReferences CROSS_REFERENCES = com.baeldung.jooq.introduction.db.information_schema.tables.CrossReferences.CROSS_REFERENCES; - - /** - * The table INFORMATION_SCHEMA.IN_DOUBT - */ - public static final InDoubt IN_DOUBT = com.baeldung.jooq.introduction.db.information_schema.tables.InDoubt.IN_DOUBT; - - /** - * The table INFORMATION_SCHEMA.VIEWS - */ - public static final Views VIEWS = com.baeldung.jooq.introduction.db.information_schema.tables.Views.VIEWS; - - /** - * The table INFORMATION_SCHEMA.COLLATIONS - */ - public static final Collations COLLATIONS = com.baeldung.jooq.introduction.db.information_schema.tables.Collations.COLLATIONS; - - /** - * The table INFORMATION_SCHEMA.COLUMN_PRIVILEGES - */ - public static final ColumnPrivileges COLUMN_PRIVILEGES = com.baeldung.jooq.introduction.db.information_schema.tables.ColumnPrivileges.COLUMN_PRIVILEGES; - - /** - * The table INFORMATION_SCHEMA.TABLE_PRIVILEGES - */ - public static final TablePrivileges TABLE_PRIVILEGES = com.baeldung.jooq.introduction.db.information_schema.tables.TablePrivileges.TABLE_PRIVILEGES; - - /** - * The table INFORMATION_SCHEMA.SCHEMATA - */ - public static final Schemata SCHEMATA = com.baeldung.jooq.introduction.db.information_schema.tables.Schemata.SCHEMATA; - - /** - * The table INFORMATION_SCHEMA.FUNCTION_ALIASES - */ - public static final FunctionAliases FUNCTION_ALIASES = com.baeldung.jooq.introduction.db.information_schema.tables.FunctionAliases.FUNCTION_ALIASES; - - /** - * The table INFORMATION_SCHEMA.RIGHTS - */ - public static final Rights RIGHTS = com.baeldung.jooq.introduction.db.information_schema.tables.Rights.RIGHTS; - - /** - * The table INFORMATION_SCHEMA.ROLES - */ - public static final Roles ROLES = com.baeldung.jooq.introduction.db.information_schema.tables.Roles.ROLES; - - /** - * The table INFORMATION_SCHEMA.USERS - */ - public static final Users USERS = com.baeldung.jooq.introduction.db.information_schema.tables.Users.USERS; - - /** - * The table INFORMATION_SCHEMA.SEQUENCES - */ - public static final Sequences SEQUENCES = com.baeldung.jooq.introduction.db.information_schema.tables.Sequences.SEQUENCES; - - /** - * The table INFORMATION_SCHEMA.HELP - */ - public static final Help HELP = com.baeldung.jooq.introduction.db.information_schema.tables.Help.HELP; - - /** - * The table INFORMATION_SCHEMA.SETTINGS - */ - public static final Settings SETTINGS = com.baeldung.jooq.introduction.db.information_schema.tables.Settings.SETTINGS; - - /** - * The table INFORMATION_SCHEMA.CATALOGS - */ - public static final Catalogs CATALOGS = com.baeldung.jooq.introduction.db.information_schema.tables.Catalogs.CATALOGS; - - /** - * The table INFORMATION_SCHEMA.TYPE_INFO - */ - public static final TypeInfo TYPE_INFO = com.baeldung.jooq.introduction.db.information_schema.tables.TypeInfo.TYPE_INFO; - - /** - * The table INFORMATION_SCHEMA.TABLE_TYPES - */ - public static final TableTypes TABLE_TYPES = com.baeldung.jooq.introduction.db.information_schema.tables.TableTypes.TABLE_TYPES; - - /** - * The table INFORMATION_SCHEMA.INDEXES - */ - public static final Indexes INDEXES = com.baeldung.jooq.introduction.db.information_schema.tables.Indexes.INDEXES; - - /** - * The table INFORMATION_SCHEMA.COLUMNS - */ - public static final Columns COLUMNS = com.baeldung.jooq.introduction.db.information_schema.tables.Columns.COLUMNS; - - /** - * The table INFORMATION_SCHEMA.TABLES - */ - public static final com.baeldung.jooq.introduction.db.information_schema.tables.Tables TABLES = com.baeldung.jooq.introduction.db.information_schema.tables.Tables.TABLES; -} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Catalogs.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Catalogs.java deleted file mode 100644 index f7091cfbe4..0000000000 --- a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Catalogs.java +++ /dev/null @@ -1,87 +0,0 @@ -/** - * This class is generated by jOOQ - */ -package com.baeldung.jooq.introduction.db.information_schema.tables; - - -import com.baeldung.jooq.introduction.db.information_schema.InformationSchema; -import com.baeldung.jooq.introduction.db.information_schema.tables.records.CatalogsRecord; - -import javax.annotation.Generated; - -import org.jooq.Field; -import org.jooq.Table; -import org.jooq.TableField; -import org.jooq.impl.TableImpl; - - -/** - * This class is generated by jOOQ. - */ -@Generated( - value = { - "http://www.jooq.org", - "jOOQ version:3.7.3" - }, - comments = "This class is generated by jOOQ" -) -@SuppressWarnings({ "all", "unchecked", "rawtypes" }) -public class Catalogs extends TableImpl { - - private static final long serialVersionUID = 1558896306; - - /** - * The reference instance of INFORMATION_SCHEMA.CATALOGS - */ - public static final Catalogs CATALOGS = new Catalogs(); - - /** - * The class holding records for this type - */ - @Override - public Class getRecordType() { - return CatalogsRecord.class; - } - - /** - * The column INFORMATION_SCHEMA.CATALOGS.CATALOG_NAME. - */ - public final TableField CATALOG_NAME = createField("CATALOG_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * Create a INFORMATION_SCHEMA.CATALOGS table reference - */ - public Catalogs() { - this("CATALOGS", null); - } - - /** - * Create an aliased INFORMATION_SCHEMA.CATALOGS table reference - */ - public Catalogs(String alias) { - this(alias, CATALOGS); - } - - private Catalogs(String alias, Table aliased) { - this(alias, aliased, null); - } - - private Catalogs(String alias, Table aliased, Field[] parameters) { - super(alias, InformationSchema.INFORMATION_SCHEMA, aliased, parameters, ""); - } - - /** - * {@inheritDoc} - */ - @Override - public Catalogs as(String alias) { - return new Catalogs(alias, this); - } - - /** - * Rename this table - */ - public Catalogs rename(String name) { - return new Catalogs(name, null); - } -} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Collations.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Collations.java deleted file mode 100644 index e16ed17605..0000000000 --- a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Collations.java +++ /dev/null @@ -1,92 +0,0 @@ -/** - * This class is generated by jOOQ - */ -package com.baeldung.jooq.introduction.db.information_schema.tables; - - -import com.baeldung.jooq.introduction.db.information_schema.InformationSchema; -import com.baeldung.jooq.introduction.db.information_schema.tables.records.CollationsRecord; - -import javax.annotation.Generated; - -import org.jooq.Field; -import org.jooq.Table; -import org.jooq.TableField; -import org.jooq.impl.TableImpl; - - -/** - * This class is generated by jOOQ. - */ -@Generated( - value = { - "http://www.jooq.org", - "jOOQ version:3.7.3" - }, - comments = "This class is generated by jOOQ" -) -@SuppressWarnings({ "all", "unchecked", "rawtypes" }) -public class Collations extends TableImpl { - - private static final long serialVersionUID = 1978393146; - - /** - * The reference instance of INFORMATION_SCHEMA.COLLATIONS - */ - public static final Collations COLLATIONS = new Collations(); - - /** - * The class holding records for this type - */ - @Override - public Class getRecordType() { - return CollationsRecord.class; - } - - /** - * The column INFORMATION_SCHEMA.COLLATIONS.NAME. - */ - public final TableField NAME = createField("NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.COLLATIONS.KEY. - */ - public final TableField KEY = createField("KEY", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * Create a INFORMATION_SCHEMA.COLLATIONS table reference - */ - public Collations() { - this("COLLATIONS", null); - } - - /** - * Create an aliased INFORMATION_SCHEMA.COLLATIONS table reference - */ - public Collations(String alias) { - this(alias, COLLATIONS); - } - - private Collations(String alias, Table aliased) { - this(alias, aliased, null); - } - - private Collations(String alias, Table aliased, Field[] parameters) { - super(alias, InformationSchema.INFORMATION_SCHEMA, aliased, parameters, ""); - } - - /** - * {@inheritDoc} - */ - @Override - public Collations as(String alias) { - return new Collations(alias, this); - } - - /** - * Rename this table - */ - public Collations rename(String name) { - return new Collations(name, null); - } -} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/ColumnPrivileges.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/ColumnPrivileges.java deleted file mode 100644 index 307682f434..0000000000 --- a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/ColumnPrivileges.java +++ /dev/null @@ -1,122 +0,0 @@ -/** - * This class is generated by jOOQ - */ -package com.baeldung.jooq.introduction.db.information_schema.tables; - - -import com.baeldung.jooq.introduction.db.information_schema.InformationSchema; -import com.baeldung.jooq.introduction.db.information_schema.tables.records.ColumnPrivilegesRecord; - -import javax.annotation.Generated; - -import org.jooq.Field; -import org.jooq.Table; -import org.jooq.TableField; -import org.jooq.impl.TableImpl; - - -/** - * This class is generated by jOOQ. - */ -@Generated( - value = { - "http://www.jooq.org", - "jOOQ version:3.7.3" - }, - comments = "This class is generated by jOOQ" -) -@SuppressWarnings({ "all", "unchecked", "rawtypes" }) -public class ColumnPrivileges extends TableImpl { - - private static final long serialVersionUID = -282101680; - - /** - * The reference instance of INFORMATION_SCHEMA.COLUMN_PRIVILEGES - */ - public static final ColumnPrivileges COLUMN_PRIVILEGES = new ColumnPrivileges(); - - /** - * The class holding records for this type - */ - @Override - public Class getRecordType() { - return ColumnPrivilegesRecord.class; - } - - /** - * The column INFORMATION_SCHEMA.COLUMN_PRIVILEGES.GRANTOR. - */ - public final TableField GRANTOR = createField("GRANTOR", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.COLUMN_PRIVILEGES.GRANTEE. - */ - public final TableField GRANTEE = createField("GRANTEE", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.COLUMN_PRIVILEGES.TABLE_CATALOG. - */ - public final TableField TABLE_CATALOG = createField("TABLE_CATALOG", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.COLUMN_PRIVILEGES.TABLE_SCHEMA. - */ - public final TableField TABLE_SCHEMA = createField("TABLE_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.COLUMN_PRIVILEGES.TABLE_NAME. - */ - public final TableField TABLE_NAME = createField("TABLE_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.COLUMN_PRIVILEGES.COLUMN_NAME. - */ - public final TableField COLUMN_NAME = createField("COLUMN_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.COLUMN_PRIVILEGES.PRIVILEGE_TYPE. - */ - public final TableField PRIVILEGE_TYPE = createField("PRIVILEGE_TYPE", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.COLUMN_PRIVILEGES.IS_GRANTABLE. - */ - public final TableField IS_GRANTABLE = createField("IS_GRANTABLE", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * Create a INFORMATION_SCHEMA.COLUMN_PRIVILEGES table reference - */ - public ColumnPrivileges() { - this("COLUMN_PRIVILEGES", null); - } - - /** - * Create an aliased INFORMATION_SCHEMA.COLUMN_PRIVILEGES table reference - */ - public ColumnPrivileges(String alias) { - this(alias, COLUMN_PRIVILEGES); - } - - private ColumnPrivileges(String alias, Table aliased) { - this(alias, aliased, null); - } - - private ColumnPrivileges(String alias, Table aliased, Field[] parameters) { - super(alias, InformationSchema.INFORMATION_SCHEMA, aliased, parameters, ""); - } - - /** - * {@inheritDoc} - */ - @Override - public ColumnPrivileges as(String alias) { - return new ColumnPrivileges(alias, this); - } - - /** - * Rename this table - */ - public ColumnPrivileges rename(String name) { - return new ColumnPrivileges(name, null); - } -} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Columns.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Columns.java deleted file mode 100644 index d95a518c1f..0000000000 --- a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Columns.java +++ /dev/null @@ -1,197 +0,0 @@ -/** - * This class is generated by jOOQ - */ -package com.baeldung.jooq.introduction.db.information_schema.tables; - - -import com.baeldung.jooq.introduction.db.information_schema.InformationSchema; -import com.baeldung.jooq.introduction.db.information_schema.tables.records.ColumnsRecord; - -import javax.annotation.Generated; - -import org.jooq.Field; -import org.jooq.Table; -import org.jooq.TableField; -import org.jooq.impl.TableImpl; - - -/** - * This class is generated by jOOQ. - */ -@Generated( - value = { - "http://www.jooq.org", - "jOOQ version:3.7.3" - }, - comments = "This class is generated by jOOQ" -) -@SuppressWarnings({ "all", "unchecked", "rawtypes" }) -public class Columns extends TableImpl { - - private static final long serialVersionUID = 1721995161; - - /** - * The reference instance of INFORMATION_SCHEMA.COLUMNS - */ - public static final Columns COLUMNS = new Columns(); - - /** - * The class holding records for this type - */ - @Override - public Class getRecordType() { - return ColumnsRecord.class; - } - - /** - * The column INFORMATION_SCHEMA.COLUMNS.TABLE_CATALOG. - */ - public final TableField TABLE_CATALOG = createField("TABLE_CATALOG", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.COLUMNS.TABLE_SCHEMA. - */ - public final TableField TABLE_SCHEMA = createField("TABLE_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.COLUMNS.TABLE_NAME. - */ - public final TableField TABLE_NAME = createField("TABLE_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.COLUMNS.COLUMN_NAME. - */ - public final TableField COLUMN_NAME = createField("COLUMN_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.COLUMNS.ORDINAL_POSITION. - */ - public final TableField ORDINAL_POSITION = createField("ORDINAL_POSITION", org.jooq.impl.SQLDataType.INTEGER, this, ""); - - /** - * The column INFORMATION_SCHEMA.COLUMNS.COLUMN_DEFAULT. - */ - public final TableField COLUMN_DEFAULT = createField("COLUMN_DEFAULT", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.COLUMNS.IS_NULLABLE. - */ - public final TableField IS_NULLABLE = createField("IS_NULLABLE", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.COLUMNS.DATA_TYPE. - */ - public final TableField DATA_TYPE = createField("DATA_TYPE", org.jooq.impl.SQLDataType.INTEGER, this, ""); - - /** - * The column INFORMATION_SCHEMA.COLUMNS.CHARACTER_MAXIMUM_LENGTH. - */ - public final TableField CHARACTER_MAXIMUM_LENGTH = createField("CHARACTER_MAXIMUM_LENGTH", org.jooq.impl.SQLDataType.INTEGER, this, ""); - - /** - * The column INFORMATION_SCHEMA.COLUMNS.CHARACTER_OCTET_LENGTH. - */ - public final TableField CHARACTER_OCTET_LENGTH = createField("CHARACTER_OCTET_LENGTH", org.jooq.impl.SQLDataType.INTEGER, this, ""); - - /** - * The column INFORMATION_SCHEMA.COLUMNS.NUMERIC_PRECISION. - */ - public final TableField NUMERIC_PRECISION = createField("NUMERIC_PRECISION", org.jooq.impl.SQLDataType.INTEGER, this, ""); - - /** - * The column INFORMATION_SCHEMA.COLUMNS.NUMERIC_PRECISION_RADIX. - */ - public final TableField NUMERIC_PRECISION_RADIX = createField("NUMERIC_PRECISION_RADIX", org.jooq.impl.SQLDataType.INTEGER, this, ""); - - /** - * The column INFORMATION_SCHEMA.COLUMNS.NUMERIC_SCALE. - */ - public final TableField NUMERIC_SCALE = createField("NUMERIC_SCALE", org.jooq.impl.SQLDataType.INTEGER, this, ""); - - /** - * The column INFORMATION_SCHEMA.COLUMNS.CHARACTER_SET_NAME. - */ - public final TableField CHARACTER_SET_NAME = createField("CHARACTER_SET_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.COLUMNS.COLLATION_NAME. - */ - public final TableField COLLATION_NAME = createField("COLLATION_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.COLUMNS.TYPE_NAME. - */ - public final TableField TYPE_NAME = createField("TYPE_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.COLUMNS.NULLABLE. - */ - public final TableField NULLABLE = createField("NULLABLE", org.jooq.impl.SQLDataType.INTEGER, this, ""); - - /** - * The column INFORMATION_SCHEMA.COLUMNS.IS_COMPUTED. - */ - public final TableField IS_COMPUTED = createField("IS_COMPUTED", org.jooq.impl.SQLDataType.BOOLEAN, this, ""); - - /** - * The column INFORMATION_SCHEMA.COLUMNS.SELECTIVITY. - */ - public final TableField SELECTIVITY = createField("SELECTIVITY", org.jooq.impl.SQLDataType.INTEGER, this, ""); - - /** - * The column INFORMATION_SCHEMA.COLUMNS.CHECK_CONSTRAINT. - */ - public final TableField CHECK_CONSTRAINT = createField("CHECK_CONSTRAINT", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.COLUMNS.SEQUENCE_NAME. - */ - public final TableField SEQUENCE_NAME = createField("SEQUENCE_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.COLUMNS.REMARKS. - */ - public final TableField REMARKS = createField("REMARKS", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.COLUMNS.SOURCE_DATA_TYPE. - */ - public final TableField SOURCE_DATA_TYPE = createField("SOURCE_DATA_TYPE", org.jooq.impl.SQLDataType.SMALLINT, this, ""); - - /** - * Create a INFORMATION_SCHEMA.COLUMNS table reference - */ - public Columns() { - this("COLUMNS", null); - } - - /** - * Create an aliased INFORMATION_SCHEMA.COLUMNS table reference - */ - public Columns(String alias) { - this(alias, COLUMNS); - } - - private Columns(String alias, Table aliased) { - this(alias, aliased, null); - } - - private Columns(String alias, Table aliased, Field[] parameters) { - super(alias, InformationSchema.INFORMATION_SCHEMA, aliased, parameters, ""); - } - - /** - * {@inheritDoc} - */ - @Override - public Columns as(String alias) { - return new Columns(alias, this); - } - - /** - * Rename this table - */ - public Columns rename(String name) { - return new Columns(name, null); - } -} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Constants.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Constants.java deleted file mode 100644 index 7d2d97f5f8..0000000000 --- a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Constants.java +++ /dev/null @@ -1,117 +0,0 @@ -/** - * This class is generated by jOOQ - */ -package com.baeldung.jooq.introduction.db.information_schema.tables; - - -import com.baeldung.jooq.introduction.db.information_schema.InformationSchema; -import com.baeldung.jooq.introduction.db.information_schema.tables.records.ConstantsRecord; - -import javax.annotation.Generated; - -import org.jooq.Field; -import org.jooq.Table; -import org.jooq.TableField; -import org.jooq.impl.TableImpl; - - -/** - * This class is generated by jOOQ. - */ -@Generated( - value = { - "http://www.jooq.org", - "jOOQ version:3.7.3" - }, - comments = "This class is generated by jOOQ" -) -@SuppressWarnings({ "all", "unchecked", "rawtypes" }) -public class Constants extends TableImpl { - - private static final long serialVersionUID = 107996087; - - /** - * The reference instance of INFORMATION_SCHEMA.CONSTANTS - */ - public static final Constants CONSTANTS = new Constants(); - - /** - * The class holding records for this type - */ - @Override - public Class getRecordType() { - return ConstantsRecord.class; - } - - /** - * The column INFORMATION_SCHEMA.CONSTANTS.CONSTANT_CATALOG. - */ - public final TableField CONSTANT_CATALOG = createField("CONSTANT_CATALOG", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.CONSTANTS.CONSTANT_SCHEMA. - */ - public final TableField CONSTANT_SCHEMA = createField("CONSTANT_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.CONSTANTS.CONSTANT_NAME. - */ - public final TableField CONSTANT_NAME = createField("CONSTANT_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.CONSTANTS.DATA_TYPE. - */ - public final TableField DATA_TYPE = createField("DATA_TYPE", org.jooq.impl.SQLDataType.INTEGER, this, ""); - - /** - * The column INFORMATION_SCHEMA.CONSTANTS.REMARKS. - */ - public final TableField REMARKS = createField("REMARKS", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.CONSTANTS.SQL. - */ - public final TableField SQL = createField("SQL", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.CONSTANTS.ID. - */ - public final TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this, ""); - - /** - * Create a INFORMATION_SCHEMA.CONSTANTS table reference - */ - public Constants() { - this("CONSTANTS", null); - } - - /** - * Create an aliased INFORMATION_SCHEMA.CONSTANTS table reference - */ - public Constants(String alias) { - this(alias, CONSTANTS); - } - - private Constants(String alias, Table aliased) { - this(alias, aliased, null); - } - - private Constants(String alias, Table aliased, Field[] parameters) { - super(alias, InformationSchema.INFORMATION_SCHEMA, aliased, parameters, ""); - } - - /** - * {@inheritDoc} - */ - @Override - public Constants as(String alias) { - return new Constants(alias, this); - } - - /** - * Rename this table - */ - public Constants rename(String name) { - return new Constants(name, null); - } -} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Constraints.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Constraints.java deleted file mode 100644 index 1c95f369ec..0000000000 --- a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Constraints.java +++ /dev/null @@ -1,147 +0,0 @@ -/** - * This class is generated by jOOQ - */ -package com.baeldung.jooq.introduction.db.information_schema.tables; - - -import com.baeldung.jooq.introduction.db.information_schema.InformationSchema; -import com.baeldung.jooq.introduction.db.information_schema.tables.records.ConstraintsRecord; - -import javax.annotation.Generated; - -import org.jooq.Field; -import org.jooq.Table; -import org.jooq.TableField; -import org.jooq.impl.TableImpl; - - -/** - * This class is generated by jOOQ. - */ -@Generated( - value = { - "http://www.jooq.org", - "jOOQ version:3.7.3" - }, - comments = "This class is generated by jOOQ" -) -@SuppressWarnings({ "all", "unchecked", "rawtypes" }) -public class Constraints extends TableImpl { - - private static final long serialVersionUID = 529190017; - - /** - * The reference instance of INFORMATION_SCHEMA.CONSTRAINTS - */ - public static final Constraints CONSTRAINTS = new Constraints(); - - /** - * The class holding records for this type - */ - @Override - public Class getRecordType() { - return ConstraintsRecord.class; - } - - /** - * The column INFORMATION_SCHEMA.CONSTRAINTS.CONSTRAINT_CATALOG. - */ - public final TableField CONSTRAINT_CATALOG = createField("CONSTRAINT_CATALOG", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.CONSTRAINTS.CONSTRAINT_SCHEMA. - */ - public final TableField CONSTRAINT_SCHEMA = createField("CONSTRAINT_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.CONSTRAINTS.CONSTRAINT_NAME. - */ - public final TableField CONSTRAINT_NAME = createField("CONSTRAINT_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.CONSTRAINTS.CONSTRAINT_TYPE. - */ - public final TableField CONSTRAINT_TYPE = createField("CONSTRAINT_TYPE", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.CONSTRAINTS.TABLE_CATALOG. - */ - public final TableField TABLE_CATALOG = createField("TABLE_CATALOG", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.CONSTRAINTS.TABLE_SCHEMA. - */ - public final TableField TABLE_SCHEMA = createField("TABLE_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.CONSTRAINTS.TABLE_NAME. - */ - public final TableField TABLE_NAME = createField("TABLE_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.CONSTRAINTS.UNIQUE_INDEX_NAME. - */ - public final TableField UNIQUE_INDEX_NAME = createField("UNIQUE_INDEX_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.CONSTRAINTS.CHECK_EXPRESSION. - */ - public final TableField CHECK_EXPRESSION = createField("CHECK_EXPRESSION", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.CONSTRAINTS.COLUMN_LIST. - */ - public final TableField COLUMN_LIST = createField("COLUMN_LIST", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.CONSTRAINTS.REMARKS. - */ - public final TableField REMARKS = createField("REMARKS", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.CONSTRAINTS.SQL. - */ - public final TableField SQL = createField("SQL", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.CONSTRAINTS.ID. - */ - public final TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this, ""); - - /** - * Create a INFORMATION_SCHEMA.CONSTRAINTS table reference - */ - public Constraints() { - this("CONSTRAINTS", null); - } - - /** - * Create an aliased INFORMATION_SCHEMA.CONSTRAINTS table reference - */ - public Constraints(String alias) { - this(alias, CONSTRAINTS); - } - - private Constraints(String alias, Table aliased) { - this(alias, aliased, null); - } - - private Constraints(String alias, Table aliased, Field[] parameters) { - super(alias, InformationSchema.INFORMATION_SCHEMA, aliased, parameters, ""); - } - - /** - * {@inheritDoc} - */ - @Override - public Constraints as(String alias) { - return new Constraints(alias, this); - } - - /** - * Rename this table - */ - public Constraints rename(String name) { - return new Constraints(name, null); - } -} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/CrossReferences.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/CrossReferences.java deleted file mode 100644 index d3d9cebded..0000000000 --- a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/CrossReferences.java +++ /dev/null @@ -1,152 +0,0 @@ -/** - * This class is generated by jOOQ - */ -package com.baeldung.jooq.introduction.db.information_schema.tables; - - -import com.baeldung.jooq.introduction.db.information_schema.InformationSchema; -import com.baeldung.jooq.introduction.db.information_schema.tables.records.CrossReferencesRecord; - -import javax.annotation.Generated; - -import org.jooq.Field; -import org.jooq.Table; -import org.jooq.TableField; -import org.jooq.impl.TableImpl; - - -/** - * This class is generated by jOOQ. - */ -@Generated( - value = { - "http://www.jooq.org", - "jOOQ version:3.7.3" - }, - comments = "This class is generated by jOOQ" -) -@SuppressWarnings({ "all", "unchecked", "rawtypes" }) -public class CrossReferences extends TableImpl { - - private static final long serialVersionUID = 846378739; - - /** - * The reference instance of INFORMATION_SCHEMA.CROSS_REFERENCES - */ - public static final CrossReferences CROSS_REFERENCES = new CrossReferences(); - - /** - * The class holding records for this type - */ - @Override - public Class getRecordType() { - return CrossReferencesRecord.class; - } - - /** - * The column INFORMATION_SCHEMA.CROSS_REFERENCES.PKTABLE_CATALOG. - */ - public final TableField PKTABLE_CATALOG = createField("PKTABLE_CATALOG", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.CROSS_REFERENCES.PKTABLE_SCHEMA. - */ - public final TableField PKTABLE_SCHEMA = createField("PKTABLE_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.CROSS_REFERENCES.PKTABLE_NAME. - */ - public final TableField PKTABLE_NAME = createField("PKTABLE_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.CROSS_REFERENCES.PKCOLUMN_NAME. - */ - public final TableField PKCOLUMN_NAME = createField("PKCOLUMN_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.CROSS_REFERENCES.FKTABLE_CATALOG. - */ - public final TableField FKTABLE_CATALOG = createField("FKTABLE_CATALOG", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.CROSS_REFERENCES.FKTABLE_SCHEMA. - */ - public final TableField FKTABLE_SCHEMA = createField("FKTABLE_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.CROSS_REFERENCES.FKTABLE_NAME. - */ - public final TableField FKTABLE_NAME = createField("FKTABLE_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.CROSS_REFERENCES.FKCOLUMN_NAME. - */ - public final TableField FKCOLUMN_NAME = createField("FKCOLUMN_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.CROSS_REFERENCES.ORDINAL_POSITION. - */ - public final TableField ORDINAL_POSITION = createField("ORDINAL_POSITION", org.jooq.impl.SQLDataType.SMALLINT, this, ""); - - /** - * The column INFORMATION_SCHEMA.CROSS_REFERENCES.UPDATE_RULE. - */ - public final TableField UPDATE_RULE = createField("UPDATE_RULE", org.jooq.impl.SQLDataType.SMALLINT, this, ""); - - /** - * The column INFORMATION_SCHEMA.CROSS_REFERENCES.DELETE_RULE. - */ - public final TableField DELETE_RULE = createField("DELETE_RULE", org.jooq.impl.SQLDataType.SMALLINT, this, ""); - - /** - * The column INFORMATION_SCHEMA.CROSS_REFERENCES.FK_NAME. - */ - public final TableField FK_NAME = createField("FK_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.CROSS_REFERENCES.PK_NAME. - */ - public final TableField PK_NAME = createField("PK_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.CROSS_REFERENCES.DEFERRABILITY. - */ - public final TableField DEFERRABILITY = createField("DEFERRABILITY", org.jooq.impl.SQLDataType.SMALLINT, this, ""); - - /** - * Create a INFORMATION_SCHEMA.CROSS_REFERENCES table reference - */ - public CrossReferences() { - this("CROSS_REFERENCES", null); - } - - /** - * Create an aliased INFORMATION_SCHEMA.CROSS_REFERENCES table reference - */ - public CrossReferences(String alias) { - this(alias, CROSS_REFERENCES); - } - - private CrossReferences(String alias, Table aliased) { - this(alias, aliased, null); - } - - private CrossReferences(String alias, Table aliased, Field[] parameters) { - super(alias, InformationSchema.INFORMATION_SCHEMA, aliased, parameters, ""); - } - - /** - * {@inheritDoc} - */ - @Override - public CrossReferences as(String alias) { - return new CrossReferences(alias, this); - } - - /** - * Rename this table - */ - public CrossReferences rename(String name) { - return new CrossReferences(name, null); - } -} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Domains.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Domains.java deleted file mode 100644 index 597f3d2e2b..0000000000 --- a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Domains.java +++ /dev/null @@ -1,152 +0,0 @@ -/** - * This class is generated by jOOQ - */ -package com.baeldung.jooq.introduction.db.information_schema.tables; - - -import com.baeldung.jooq.introduction.db.information_schema.InformationSchema; -import com.baeldung.jooq.introduction.db.information_schema.tables.records.DomainsRecord; - -import javax.annotation.Generated; - -import org.jooq.Field; -import org.jooq.Table; -import org.jooq.TableField; -import org.jooq.impl.TableImpl; - - -/** - * This class is generated by jOOQ. - */ -@Generated( - value = { - "http://www.jooq.org", - "jOOQ version:3.7.3" - }, - comments = "This class is generated by jOOQ" -) -@SuppressWarnings({ "all", "unchecked", "rawtypes" }) -public class Domains extends TableImpl { - - private static final long serialVersionUID = -742107682; - - /** - * The reference instance of INFORMATION_SCHEMA.DOMAINS - */ - public static final Domains DOMAINS = new Domains(); - - /** - * The class holding records for this type - */ - @Override - public Class getRecordType() { - return DomainsRecord.class; - } - - /** - * The column INFORMATION_SCHEMA.DOMAINS.DOMAIN_CATALOG. - */ - public final TableField DOMAIN_CATALOG = createField("DOMAIN_CATALOG", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.DOMAINS.DOMAIN_SCHEMA. - */ - public final TableField DOMAIN_SCHEMA = createField("DOMAIN_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.DOMAINS.DOMAIN_NAME. - */ - public final TableField DOMAIN_NAME = createField("DOMAIN_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.DOMAINS.COLUMN_DEFAULT. - */ - public final TableField COLUMN_DEFAULT = createField("COLUMN_DEFAULT", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.DOMAINS.IS_NULLABLE. - */ - public final TableField IS_NULLABLE = createField("IS_NULLABLE", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.DOMAINS.DATA_TYPE. - */ - public final TableField DATA_TYPE = createField("DATA_TYPE", org.jooq.impl.SQLDataType.INTEGER, this, ""); - - /** - * The column INFORMATION_SCHEMA.DOMAINS.PRECISION. - */ - public final TableField PRECISION = createField("PRECISION", org.jooq.impl.SQLDataType.INTEGER, this, ""); - - /** - * The column INFORMATION_SCHEMA.DOMAINS.SCALE. - */ - public final TableField SCALE = createField("SCALE", org.jooq.impl.SQLDataType.INTEGER, this, ""); - - /** - * The column INFORMATION_SCHEMA.DOMAINS.TYPE_NAME. - */ - public final TableField TYPE_NAME = createField("TYPE_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.DOMAINS.SELECTIVITY. - */ - public final TableField SELECTIVITY = createField("SELECTIVITY", org.jooq.impl.SQLDataType.INTEGER, this, ""); - - /** - * The column INFORMATION_SCHEMA.DOMAINS.CHECK_CONSTRAINT. - */ - public final TableField CHECK_CONSTRAINT = createField("CHECK_CONSTRAINT", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.DOMAINS.REMARKS. - */ - public final TableField REMARKS = createField("REMARKS", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.DOMAINS.SQL. - */ - public final TableField SQL = createField("SQL", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.DOMAINS.ID. - */ - public final TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this, ""); - - /** - * Create a INFORMATION_SCHEMA.DOMAINS table reference - */ - public Domains() { - this("DOMAINS", null); - } - - /** - * Create an aliased INFORMATION_SCHEMA.DOMAINS table reference - */ - public Domains(String alias) { - this(alias, DOMAINS); - } - - private Domains(String alias, Table aliased) { - this(alias, aliased, null); - } - - private Domains(String alias, Table aliased, Field[] parameters) { - super(alias, InformationSchema.INFORMATION_SCHEMA, aliased, parameters, ""); - } - - /** - * {@inheritDoc} - */ - @Override - public Domains as(String alias) { - return new Domains(alias, this); - } - - /** - * Rename this table - */ - public Domains rename(String name) { - return new Domains(name, null); - } -} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/FunctionAliases.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/FunctionAliases.java deleted file mode 100644 index 8b85980d38..0000000000 --- a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/FunctionAliases.java +++ /dev/null @@ -1,142 +0,0 @@ -/** - * This class is generated by jOOQ - */ -package com.baeldung.jooq.introduction.db.information_schema.tables; - - -import com.baeldung.jooq.introduction.db.information_schema.InformationSchema; -import com.baeldung.jooq.introduction.db.information_schema.tables.records.FunctionAliasesRecord; - -import javax.annotation.Generated; - -import org.jooq.Field; -import org.jooq.Table; -import org.jooq.TableField; -import org.jooq.impl.TableImpl; - - -/** - * This class is generated by jOOQ. - */ -@Generated( - value = { - "http://www.jooq.org", - "jOOQ version:3.7.3" - }, - comments = "This class is generated by jOOQ" -) -@SuppressWarnings({ "all", "unchecked", "rawtypes" }) -public class FunctionAliases extends TableImpl { - - private static final long serialVersionUID = -232882186; - - /** - * The reference instance of INFORMATION_SCHEMA.FUNCTION_ALIASES - */ - public static final FunctionAliases FUNCTION_ALIASES = new FunctionAliases(); - - /** - * The class holding records for this type - */ - @Override - public Class getRecordType() { - return FunctionAliasesRecord.class; - } - - /** - * The column INFORMATION_SCHEMA.FUNCTION_ALIASES.ALIAS_CATALOG. - */ - public final TableField ALIAS_CATALOG = createField("ALIAS_CATALOG", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.FUNCTION_ALIASES.ALIAS_SCHEMA. - */ - public final TableField ALIAS_SCHEMA = createField("ALIAS_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.FUNCTION_ALIASES.ALIAS_NAME. - */ - public final TableField ALIAS_NAME = createField("ALIAS_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.FUNCTION_ALIASES.JAVA_CLASS. - */ - public final TableField JAVA_CLASS = createField("JAVA_CLASS", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.FUNCTION_ALIASES.JAVA_METHOD. - */ - public final TableField JAVA_METHOD = createField("JAVA_METHOD", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.FUNCTION_ALIASES.DATA_TYPE. - */ - public final TableField DATA_TYPE = createField("DATA_TYPE", org.jooq.impl.SQLDataType.INTEGER, this, ""); - - /** - * The column INFORMATION_SCHEMA.FUNCTION_ALIASES.TYPE_NAME. - */ - public final TableField TYPE_NAME = createField("TYPE_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.FUNCTION_ALIASES.COLUMN_COUNT. - */ - public final TableField COLUMN_COUNT = createField("COLUMN_COUNT", org.jooq.impl.SQLDataType.INTEGER, this, ""); - - /** - * The column INFORMATION_SCHEMA.FUNCTION_ALIASES.RETURNS_RESULT. - */ - public final TableField RETURNS_RESULT = createField("RETURNS_RESULT", org.jooq.impl.SQLDataType.SMALLINT, this, ""); - - /** - * The column INFORMATION_SCHEMA.FUNCTION_ALIASES.REMARKS. - */ - public final TableField REMARKS = createField("REMARKS", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.FUNCTION_ALIASES.ID. - */ - public final TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this, ""); - - /** - * The column INFORMATION_SCHEMA.FUNCTION_ALIASES.SOURCE. - */ - public final TableField SOURCE = createField("SOURCE", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * Create a INFORMATION_SCHEMA.FUNCTION_ALIASES table reference - */ - public FunctionAliases() { - this("FUNCTION_ALIASES", null); - } - - /** - * Create an aliased INFORMATION_SCHEMA.FUNCTION_ALIASES table reference - */ - public FunctionAliases(String alias) { - this(alias, FUNCTION_ALIASES); - } - - private FunctionAliases(String alias, Table aliased) { - this(alias, aliased, null); - } - - private FunctionAliases(String alias, Table aliased, Field[] parameters) { - super(alias, InformationSchema.INFORMATION_SCHEMA, aliased, parameters, ""); - } - - /** - * {@inheritDoc} - */ - @Override - public FunctionAliases as(String alias) { - return new FunctionAliases(alias, this); - } - - /** - * Rename this table - */ - public FunctionAliases rename(String name) { - return new FunctionAliases(name, null); - } -} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/FunctionColumns.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/FunctionColumns.java deleted file mode 100644 index b5df94b4f0..0000000000 --- a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/FunctionColumns.java +++ /dev/null @@ -1,167 +0,0 @@ -/** - * This class is generated by jOOQ - */ -package com.baeldung.jooq.introduction.db.information_schema.tables; - - -import com.baeldung.jooq.introduction.db.information_schema.InformationSchema; -import com.baeldung.jooq.introduction.db.information_schema.tables.records.FunctionColumnsRecord; - -import javax.annotation.Generated; - -import org.jooq.Field; -import org.jooq.Table; -import org.jooq.TableField; -import org.jooq.impl.TableImpl; - - -/** - * This class is generated by jOOQ. - */ -@Generated( - value = { - "http://www.jooq.org", - "jOOQ version:3.7.3" - }, - comments = "This class is generated by jOOQ" -) -@SuppressWarnings({ "all", "unchecked", "rawtypes" }) -public class FunctionColumns extends TableImpl { - - private static final long serialVersionUID = -406719584; - - /** - * The reference instance of INFORMATION_SCHEMA.FUNCTION_COLUMNS - */ - public static final FunctionColumns FUNCTION_COLUMNS = new FunctionColumns(); - - /** - * The class holding records for this type - */ - @Override - public Class getRecordType() { - return FunctionColumnsRecord.class; - } - - /** - * The column INFORMATION_SCHEMA.FUNCTION_COLUMNS.ALIAS_CATALOG. - */ - public final TableField ALIAS_CATALOG = createField("ALIAS_CATALOG", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.FUNCTION_COLUMNS.ALIAS_SCHEMA. - */ - public final TableField ALIAS_SCHEMA = createField("ALIAS_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.FUNCTION_COLUMNS.ALIAS_NAME. - */ - public final TableField ALIAS_NAME = createField("ALIAS_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.FUNCTION_COLUMNS.JAVA_CLASS. - */ - public final TableField JAVA_CLASS = createField("JAVA_CLASS", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.FUNCTION_COLUMNS.JAVA_METHOD. - */ - public final TableField JAVA_METHOD = createField("JAVA_METHOD", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.FUNCTION_COLUMNS.COLUMN_COUNT. - */ - public final TableField COLUMN_COUNT = createField("COLUMN_COUNT", org.jooq.impl.SQLDataType.INTEGER, this, ""); - - /** - * The column INFORMATION_SCHEMA.FUNCTION_COLUMNS.POS. - */ - public final TableField POS = createField("POS", org.jooq.impl.SQLDataType.INTEGER, this, ""); - - /** - * The column INFORMATION_SCHEMA.FUNCTION_COLUMNS.COLUMN_NAME. - */ - public final TableField COLUMN_NAME = createField("COLUMN_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.FUNCTION_COLUMNS.DATA_TYPE. - */ - public final TableField DATA_TYPE = createField("DATA_TYPE", org.jooq.impl.SQLDataType.INTEGER, this, ""); - - /** - * The column INFORMATION_SCHEMA.FUNCTION_COLUMNS.TYPE_NAME. - */ - public final TableField TYPE_NAME = createField("TYPE_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.FUNCTION_COLUMNS.PRECISION. - */ - public final TableField PRECISION = createField("PRECISION", org.jooq.impl.SQLDataType.INTEGER, this, ""); - - /** - * The column INFORMATION_SCHEMA.FUNCTION_COLUMNS.SCALE. - */ - public final TableField SCALE = createField("SCALE", org.jooq.impl.SQLDataType.SMALLINT, this, ""); - - /** - * The column INFORMATION_SCHEMA.FUNCTION_COLUMNS.RADIX. - */ - public final TableField RADIX = createField("RADIX", org.jooq.impl.SQLDataType.SMALLINT, this, ""); - - /** - * The column INFORMATION_SCHEMA.FUNCTION_COLUMNS.NULLABLE. - */ - public final TableField NULLABLE = createField("NULLABLE", org.jooq.impl.SQLDataType.SMALLINT, this, ""); - - /** - * The column INFORMATION_SCHEMA.FUNCTION_COLUMNS.COLUMN_TYPE. - */ - public final TableField COLUMN_TYPE = createField("COLUMN_TYPE", org.jooq.impl.SQLDataType.SMALLINT, this, ""); - - /** - * The column INFORMATION_SCHEMA.FUNCTION_COLUMNS.REMARKS. - */ - public final TableField REMARKS = createField("REMARKS", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.FUNCTION_COLUMNS.COLUMN_DEFAULT. - */ - public final TableField COLUMN_DEFAULT = createField("COLUMN_DEFAULT", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * Create a INFORMATION_SCHEMA.FUNCTION_COLUMNS table reference - */ - public FunctionColumns() { - this("FUNCTION_COLUMNS", null); - } - - /** - * Create an aliased INFORMATION_SCHEMA.FUNCTION_COLUMNS table reference - */ - public FunctionColumns(String alias) { - this(alias, FUNCTION_COLUMNS); - } - - private FunctionColumns(String alias, Table aliased) { - this(alias, aliased, null); - } - - private FunctionColumns(String alias, Table aliased, Field[] parameters) { - super(alias, InformationSchema.INFORMATION_SCHEMA, aliased, parameters, ""); - } - - /** - * {@inheritDoc} - */ - @Override - public FunctionColumns as(String alias) { - return new FunctionColumns(alias, this); - } - - /** - * Rename this table - */ - public FunctionColumns rename(String name) { - return new FunctionColumns(name, null); - } -} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Help.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Help.java deleted file mode 100644 index 449eed4f72..0000000000 --- a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Help.java +++ /dev/null @@ -1,107 +0,0 @@ -/** - * This class is generated by jOOQ - */ -package com.baeldung.jooq.introduction.db.information_schema.tables; - - -import com.baeldung.jooq.introduction.db.information_schema.InformationSchema; -import com.baeldung.jooq.introduction.db.information_schema.tables.records.HelpRecord; - -import javax.annotation.Generated; - -import org.jooq.Field; -import org.jooq.Table; -import org.jooq.TableField; -import org.jooq.impl.TableImpl; - - -/** - * This class is generated by jOOQ. - */ -@Generated( - value = { - "http://www.jooq.org", - "jOOQ version:3.7.3" - }, - comments = "This class is generated by jOOQ" -) -@SuppressWarnings({ "all", "unchecked", "rawtypes" }) -public class Help extends TableImpl { - - private static final long serialVersionUID = 1402170374; - - /** - * The reference instance of INFORMATION_SCHEMA.HELP - */ - public static final Help HELP = new Help(); - - /** - * The class holding records for this type - */ - @Override - public Class getRecordType() { - return HelpRecord.class; - } - - /** - * The column INFORMATION_SCHEMA.HELP.ID. - */ - public final TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this, ""); - - /** - * The column INFORMATION_SCHEMA.HELP.SECTION. - */ - public final TableField SECTION = createField("SECTION", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.HELP.TOPIC. - */ - public final TableField TOPIC = createField("TOPIC", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.HELP.SYNTAX. - */ - public final TableField SYNTAX = createField("SYNTAX", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.HELP.TEXT. - */ - public final TableField TEXT = createField("TEXT", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * Create a INFORMATION_SCHEMA.HELP table reference - */ - public Help() { - this("HELP", null); - } - - /** - * Create an aliased INFORMATION_SCHEMA.HELP table reference - */ - public Help(String alias) { - this(alias, HELP); - } - - private Help(String alias, Table aliased) { - this(alias, aliased, null); - } - - private Help(String alias, Table aliased, Field[] parameters) { - super(alias, InformationSchema.INFORMATION_SCHEMA, aliased, parameters, ""); - } - - /** - * {@inheritDoc} - */ - @Override - public Help as(String alias) { - return new Help(alias, this); - } - - /** - * Rename this table - */ - public Help rename(String name) { - return new Help(name, null); - } -} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/InDoubt.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/InDoubt.java deleted file mode 100644 index c37e06e47e..0000000000 --- a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/InDoubt.java +++ /dev/null @@ -1,92 +0,0 @@ -/** - * This class is generated by jOOQ - */ -package com.baeldung.jooq.introduction.db.information_schema.tables; - - -import com.baeldung.jooq.introduction.db.information_schema.InformationSchema; -import com.baeldung.jooq.introduction.db.information_schema.tables.records.InDoubtRecord; - -import javax.annotation.Generated; - -import org.jooq.Field; -import org.jooq.Table; -import org.jooq.TableField; -import org.jooq.impl.TableImpl; - - -/** - * This class is generated by jOOQ. - */ -@Generated( - value = { - "http://www.jooq.org", - "jOOQ version:3.7.3" - }, - comments = "This class is generated by jOOQ" -) -@SuppressWarnings({ "all", "unchecked", "rawtypes" }) -public class InDoubt extends TableImpl { - - private static final long serialVersionUID = 284524946; - - /** - * The reference instance of INFORMATION_SCHEMA.IN_DOUBT - */ - public static final InDoubt IN_DOUBT = new InDoubt(); - - /** - * The class holding records for this type - */ - @Override - public Class getRecordType() { - return InDoubtRecord.class; - } - - /** - * The column INFORMATION_SCHEMA.IN_DOUBT.TRANSACTION. - */ - public final TableField TRANSACTION = createField("TRANSACTION", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.IN_DOUBT.STATE. - */ - public final TableField STATE = createField("STATE", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * Create a INFORMATION_SCHEMA.IN_DOUBT table reference - */ - public InDoubt() { - this("IN_DOUBT", null); - } - - /** - * Create an aliased INFORMATION_SCHEMA.IN_DOUBT table reference - */ - public InDoubt(String alias) { - this(alias, IN_DOUBT); - } - - private InDoubt(String alias, Table aliased) { - this(alias, aliased, null); - } - - private InDoubt(String alias, Table aliased, Field[] parameters) { - super(alias, InformationSchema.INFORMATION_SCHEMA, aliased, parameters, ""); - } - - /** - * {@inheritDoc} - */ - @Override - public InDoubt as(String alias) { - return new InDoubt(alias, this); - } - - /** - * Rename this table - */ - public InDoubt rename(String name) { - return new InDoubt(name, null); - } -} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Indexes.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Indexes.java deleted file mode 100644 index 1cc3b176a2..0000000000 --- a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Indexes.java +++ /dev/null @@ -1,187 +0,0 @@ -/** - * This class is generated by jOOQ - */ -package com.baeldung.jooq.introduction.db.information_schema.tables; - - -import com.baeldung.jooq.introduction.db.information_schema.InformationSchema; -import com.baeldung.jooq.introduction.db.information_schema.tables.records.IndexesRecord; - -import javax.annotation.Generated; - -import org.jooq.Field; -import org.jooq.Table; -import org.jooq.TableField; -import org.jooq.impl.TableImpl; - - -/** - * This class is generated by jOOQ. - */ -@Generated( - value = { - "http://www.jooq.org", - "jOOQ version:3.7.3" - }, - comments = "This class is generated by jOOQ" -) -@SuppressWarnings({ "all", "unchecked", "rawtypes" }) -public class Indexes extends TableImpl { - - private static final long serialVersionUID = 2077967696; - - /** - * The reference instance of INFORMATION_SCHEMA.INDEXES - */ - public static final Indexes INDEXES = new Indexes(); - - /** - * The class holding records for this type - */ - @Override - public Class getRecordType() { - return IndexesRecord.class; - } - - /** - * The column INFORMATION_SCHEMA.INDEXES.TABLE_CATALOG. - */ - public final TableField TABLE_CATALOG = createField("TABLE_CATALOG", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.INDEXES.TABLE_SCHEMA. - */ - public final TableField TABLE_SCHEMA = createField("TABLE_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.INDEXES.TABLE_NAME. - */ - public final TableField TABLE_NAME = createField("TABLE_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.INDEXES.NON_UNIQUE. - */ - public final TableField NON_UNIQUE = createField("NON_UNIQUE", org.jooq.impl.SQLDataType.BOOLEAN, this, ""); - - /** - * The column INFORMATION_SCHEMA.INDEXES.INDEX_NAME. - */ - public final TableField INDEX_NAME = createField("INDEX_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.INDEXES.ORDINAL_POSITION. - */ - public final TableField ORDINAL_POSITION = createField("ORDINAL_POSITION", org.jooq.impl.SQLDataType.SMALLINT, this, ""); - - /** - * The column INFORMATION_SCHEMA.INDEXES.COLUMN_NAME. - */ - public final TableField COLUMN_NAME = createField("COLUMN_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.INDEXES.CARDINALITY. - */ - public final TableField CARDINALITY = createField("CARDINALITY", org.jooq.impl.SQLDataType.INTEGER, this, ""); - - /** - * The column INFORMATION_SCHEMA.INDEXES.PRIMARY_KEY. - */ - public final TableField PRIMARY_KEY = createField("PRIMARY_KEY", org.jooq.impl.SQLDataType.BOOLEAN, this, ""); - - /** - * The column INFORMATION_SCHEMA.INDEXES.INDEX_TYPE_NAME. - */ - public final TableField INDEX_TYPE_NAME = createField("INDEX_TYPE_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.INDEXES.IS_GENERATED. - */ - public final TableField IS_GENERATED = createField("IS_GENERATED", org.jooq.impl.SQLDataType.BOOLEAN, this, ""); - - /** - * The column INFORMATION_SCHEMA.INDEXES.INDEX_TYPE. - */ - public final TableField INDEX_TYPE = createField("INDEX_TYPE", org.jooq.impl.SQLDataType.SMALLINT, this, ""); - - /** - * The column INFORMATION_SCHEMA.INDEXES.ASC_OR_DESC. - */ - public final TableField ASC_OR_DESC = createField("ASC_OR_DESC", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.INDEXES.PAGES. - */ - public final TableField PAGES = createField("PAGES", org.jooq.impl.SQLDataType.INTEGER, this, ""); - - /** - * The column INFORMATION_SCHEMA.INDEXES.FILTER_CONDITION. - */ - public final TableField FILTER_CONDITION = createField("FILTER_CONDITION", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.INDEXES.REMARKS. - */ - public final TableField REMARKS = createField("REMARKS", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.INDEXES.SQL. - */ - public final TableField SQL = createField("SQL", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.INDEXES.ID. - */ - public final TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this, ""); - - /** - * The column INFORMATION_SCHEMA.INDEXES.SORT_TYPE. - */ - public final TableField SORT_TYPE = createField("SORT_TYPE", org.jooq.impl.SQLDataType.INTEGER, this, ""); - - /** - * The column INFORMATION_SCHEMA.INDEXES.CONSTRAINT_NAME. - */ - public final TableField CONSTRAINT_NAME = createField("CONSTRAINT_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.INDEXES.INDEX_CLASS. - */ - public final TableField INDEX_CLASS = createField("INDEX_CLASS", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * Create a INFORMATION_SCHEMA.INDEXES table reference - */ - public Indexes() { - this("INDEXES", null); - } - - /** - * Create an aliased INFORMATION_SCHEMA.INDEXES table reference - */ - public Indexes(String alias) { - this(alias, INDEXES); - } - - private Indexes(String alias, Table aliased) { - this(alias, aliased, null); - } - - private Indexes(String alias, Table aliased, Field[] parameters) { - super(alias, InformationSchema.INFORMATION_SCHEMA, aliased, parameters, ""); - } - - /** - * {@inheritDoc} - */ - @Override - public Indexes as(String alias) { - return new Indexes(alias, this); - } - - /** - * Rename this table - */ - public Indexes rename(String name) { - return new Indexes(name, null); - } -} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Locks.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Locks.java deleted file mode 100644 index df9f900f5c..0000000000 --- a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Locks.java +++ /dev/null @@ -1,102 +0,0 @@ -/** - * This class is generated by jOOQ - */ -package com.baeldung.jooq.introduction.db.information_schema.tables; - - -import com.baeldung.jooq.introduction.db.information_schema.InformationSchema; -import com.baeldung.jooq.introduction.db.information_schema.tables.records.LocksRecord; - -import javax.annotation.Generated; - -import org.jooq.Field; -import org.jooq.Table; -import org.jooq.TableField; -import org.jooq.impl.TableImpl; - - -/** - * This class is generated by jOOQ. - */ -@Generated( - value = { - "http://www.jooq.org", - "jOOQ version:3.7.3" - }, - comments = "This class is generated by jOOQ" -) -@SuppressWarnings({ "all", "unchecked", "rawtypes" }) -public class Locks extends TableImpl { - - private static final long serialVersionUID = 169116031; - - /** - * The reference instance of INFORMATION_SCHEMA.LOCKS - */ - public static final Locks LOCKS = new Locks(); - - /** - * The class holding records for this type - */ - @Override - public Class getRecordType() { - return LocksRecord.class; - } - - /** - * The column INFORMATION_SCHEMA.LOCKS.TABLE_SCHEMA. - */ - public final TableField TABLE_SCHEMA = createField("TABLE_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.LOCKS.TABLE_NAME. - */ - public final TableField TABLE_NAME = createField("TABLE_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.LOCKS.SESSION_ID. - */ - public final TableField SESSION_ID = createField("SESSION_ID", org.jooq.impl.SQLDataType.INTEGER, this, ""); - - /** - * The column INFORMATION_SCHEMA.LOCKS.LOCK_TYPE. - */ - public final TableField LOCK_TYPE = createField("LOCK_TYPE", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * Create a INFORMATION_SCHEMA.LOCKS table reference - */ - public Locks() { - this("LOCKS", null); - } - - /** - * Create an aliased INFORMATION_SCHEMA.LOCKS table reference - */ - public Locks(String alias) { - this(alias, LOCKS); - } - - private Locks(String alias, Table aliased) { - this(alias, aliased, null); - } - - private Locks(String alias, Table aliased, Field[] parameters) { - super(alias, InformationSchema.INFORMATION_SCHEMA, aliased, parameters, ""); - } - - /** - * {@inheritDoc} - */ - @Override - public Locks as(String alias) { - return new Locks(alias, this); - } - - /** - * Rename this table - */ - public Locks rename(String name) { - return new Locks(name, null); - } -} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/QueryStatistics.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/QueryStatistics.java deleted file mode 100644 index 6c65dd7de8..0000000000 --- a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/QueryStatistics.java +++ /dev/null @@ -1,142 +0,0 @@ -/** - * This class is generated by jOOQ - */ -package com.baeldung.jooq.introduction.db.information_schema.tables; - - -import com.baeldung.jooq.introduction.db.information_schema.InformationSchema; -import com.baeldung.jooq.introduction.db.information_schema.tables.records.QueryStatisticsRecord; - -import javax.annotation.Generated; - -import org.jooq.Field; -import org.jooq.Table; -import org.jooq.TableField; -import org.jooq.impl.TableImpl; - - -/** - * This class is generated by jOOQ. - */ -@Generated( - value = { - "http://www.jooq.org", - "jOOQ version:3.7.3" - }, - comments = "This class is generated by jOOQ" -) -@SuppressWarnings({ "all", "unchecked", "rawtypes" }) -public class QueryStatistics extends TableImpl { - - private static final long serialVersionUID = -1610174414; - - /** - * The reference instance of INFORMATION_SCHEMA.QUERY_STATISTICS - */ - public static final QueryStatistics QUERY_STATISTICS = new QueryStatistics(); - - /** - * The class holding records for this type - */ - @Override - public Class getRecordType() { - return QueryStatisticsRecord.class; - } - - /** - * The column INFORMATION_SCHEMA.QUERY_STATISTICS.SQL_STATEMENT. - */ - public final TableField SQL_STATEMENT = createField("SQL_STATEMENT", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.QUERY_STATISTICS.EXECUTION_COUNT. - */ - public final TableField EXECUTION_COUNT = createField("EXECUTION_COUNT", org.jooq.impl.SQLDataType.INTEGER, this, ""); - - /** - * The column INFORMATION_SCHEMA.QUERY_STATISTICS.MIN_EXECUTION_TIME. - */ - public final TableField MIN_EXECUTION_TIME = createField("MIN_EXECUTION_TIME", org.jooq.impl.SQLDataType.BIGINT, this, ""); - - /** - * The column INFORMATION_SCHEMA.QUERY_STATISTICS.MAX_EXECUTION_TIME. - */ - public final TableField MAX_EXECUTION_TIME = createField("MAX_EXECUTION_TIME", org.jooq.impl.SQLDataType.BIGINT, this, ""); - - /** - * The column INFORMATION_SCHEMA.QUERY_STATISTICS.CUMULATIVE_EXECUTION_TIME. - */ - public final TableField CUMULATIVE_EXECUTION_TIME = createField("CUMULATIVE_EXECUTION_TIME", org.jooq.impl.SQLDataType.BIGINT, this, ""); - - /** - * The column INFORMATION_SCHEMA.QUERY_STATISTICS.AVERAGE_EXECUTION_TIME. - */ - public final TableField AVERAGE_EXECUTION_TIME = createField("AVERAGE_EXECUTION_TIME", org.jooq.impl.SQLDataType.DOUBLE, this, ""); - - /** - * The column INFORMATION_SCHEMA.QUERY_STATISTICS.STD_DEV_EXECUTION_TIME. - */ - public final TableField STD_DEV_EXECUTION_TIME = createField("STD_DEV_EXECUTION_TIME", org.jooq.impl.SQLDataType.DOUBLE, this, ""); - - /** - * The column INFORMATION_SCHEMA.QUERY_STATISTICS.MIN_ROW_COUNT. - */ - public final TableField MIN_ROW_COUNT = createField("MIN_ROW_COUNT", org.jooq.impl.SQLDataType.INTEGER, this, ""); - - /** - * The column INFORMATION_SCHEMA.QUERY_STATISTICS.MAX_ROW_COUNT. - */ - public final TableField MAX_ROW_COUNT = createField("MAX_ROW_COUNT", org.jooq.impl.SQLDataType.INTEGER, this, ""); - - /** - * The column INFORMATION_SCHEMA.QUERY_STATISTICS.CUMULATIVE_ROW_COUNT. - */ - public final TableField CUMULATIVE_ROW_COUNT = createField("CUMULATIVE_ROW_COUNT", org.jooq.impl.SQLDataType.BIGINT, this, ""); - - /** - * The column INFORMATION_SCHEMA.QUERY_STATISTICS.AVERAGE_ROW_COUNT. - */ - public final TableField AVERAGE_ROW_COUNT = createField("AVERAGE_ROW_COUNT", org.jooq.impl.SQLDataType.DOUBLE, this, ""); - - /** - * The column INFORMATION_SCHEMA.QUERY_STATISTICS.STD_DEV_ROW_COUNT. - */ - public final TableField STD_DEV_ROW_COUNT = createField("STD_DEV_ROW_COUNT", org.jooq.impl.SQLDataType.DOUBLE, this, ""); - - /** - * Create a INFORMATION_SCHEMA.QUERY_STATISTICS table reference - */ - public QueryStatistics() { - this("QUERY_STATISTICS", null); - } - - /** - * Create an aliased INFORMATION_SCHEMA.QUERY_STATISTICS table reference - */ - public QueryStatistics(String alias) { - this(alias, QUERY_STATISTICS); - } - - private QueryStatistics(String alias, Table aliased) { - this(alias, aliased, null); - } - - private QueryStatistics(String alias, Table aliased, Field[] parameters) { - super(alias, InformationSchema.INFORMATION_SCHEMA, aliased, parameters, ""); - } - - /** - * {@inheritDoc} - */ - @Override - public QueryStatistics as(String alias) { - return new QueryStatistics(alias, this); - } - - /** - * Rename this table - */ - public QueryStatistics rename(String name) { - return new QueryStatistics(name, null); - } -} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Rights.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Rights.java deleted file mode 100644 index e00c2d336e..0000000000 --- a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Rights.java +++ /dev/null @@ -1,117 +0,0 @@ -/** - * This class is generated by jOOQ - */ -package com.baeldung.jooq.introduction.db.information_schema.tables; - - -import com.baeldung.jooq.introduction.db.information_schema.InformationSchema; -import com.baeldung.jooq.introduction.db.information_schema.tables.records.RightsRecord; - -import javax.annotation.Generated; - -import org.jooq.Field; -import org.jooq.Table; -import org.jooq.TableField; -import org.jooq.impl.TableImpl; - - -/** - * This class is generated by jOOQ. - */ -@Generated( - value = { - "http://www.jooq.org", - "jOOQ version:3.7.3" - }, - comments = "This class is generated by jOOQ" -) -@SuppressWarnings({ "all", "unchecked", "rawtypes" }) -public class Rights extends TableImpl { - - private static final long serialVersionUID = -2076280081; - - /** - * The reference instance of INFORMATION_SCHEMA.RIGHTS - */ - public static final Rights RIGHTS = new Rights(); - - /** - * The class holding records for this type - */ - @Override - public Class getRecordType() { - return RightsRecord.class; - } - - /** - * The column INFORMATION_SCHEMA.RIGHTS.GRANTEE. - */ - public final TableField GRANTEE = createField("GRANTEE", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.RIGHTS.GRANTEETYPE. - */ - public final TableField GRANTEETYPE = createField("GRANTEETYPE", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.RIGHTS.GRANTEDROLE. - */ - public final TableField GRANTEDROLE = createField("GRANTEDROLE", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.RIGHTS.RIGHTS. - */ - public final TableField RIGHTS_ = createField("RIGHTS", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.RIGHTS.TABLE_SCHEMA. - */ - public final TableField TABLE_SCHEMA = createField("TABLE_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.RIGHTS.TABLE_NAME. - */ - public final TableField TABLE_NAME = createField("TABLE_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.RIGHTS.ID. - */ - public final TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this, ""); - - /** - * Create a INFORMATION_SCHEMA.RIGHTS table reference - */ - public Rights() { - this("RIGHTS", null); - } - - /** - * Create an aliased INFORMATION_SCHEMA.RIGHTS table reference - */ - public Rights(String alias) { - this(alias, RIGHTS); - } - - private Rights(String alias, Table aliased) { - this(alias, aliased, null); - } - - private Rights(String alias, Table aliased, Field[] parameters) { - super(alias, InformationSchema.INFORMATION_SCHEMA, aliased, parameters, ""); - } - - /** - * {@inheritDoc} - */ - @Override - public Rights as(String alias) { - return new Rights(alias, this); - } - - /** - * Rename this table - */ - public Rights rename(String name) { - return new Rights(name, null); - } -} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Roles.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Roles.java deleted file mode 100644 index 74a394945a..0000000000 --- a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Roles.java +++ /dev/null @@ -1,97 +0,0 @@ -/** - * This class is generated by jOOQ - */ -package com.baeldung.jooq.introduction.db.information_schema.tables; - - -import com.baeldung.jooq.introduction.db.information_schema.InformationSchema; -import com.baeldung.jooq.introduction.db.information_schema.tables.records.RolesRecord; - -import javax.annotation.Generated; - -import org.jooq.Field; -import org.jooq.Table; -import org.jooq.TableField; -import org.jooq.impl.TableImpl; - - -/** - * This class is generated by jOOQ. - */ -@Generated( - value = { - "http://www.jooq.org", - "jOOQ version:3.7.3" - }, - comments = "This class is generated by jOOQ" -) -@SuppressWarnings({ "all", "unchecked", "rawtypes" }) -public class Roles extends TableImpl { - - private static final long serialVersionUID = 1847269376; - - /** - * The reference instance of INFORMATION_SCHEMA.ROLES - */ - public static final Roles ROLES = new Roles(); - - /** - * The class holding records for this type - */ - @Override - public Class getRecordType() { - return RolesRecord.class; - } - - /** - * The column INFORMATION_SCHEMA.ROLES.NAME. - */ - public final TableField NAME = createField("NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.ROLES.REMARKS. - */ - public final TableField REMARKS = createField("REMARKS", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.ROLES.ID. - */ - public final TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this, ""); - - /** - * Create a INFORMATION_SCHEMA.ROLES table reference - */ - public Roles() { - this("ROLES", null); - } - - /** - * Create an aliased INFORMATION_SCHEMA.ROLES table reference - */ - public Roles(String alias) { - this(alias, ROLES); - } - - private Roles(String alias, Table aliased) { - this(alias, aliased, null); - } - - private Roles(String alias, Table aliased, Field[] parameters) { - super(alias, InformationSchema.INFORMATION_SCHEMA, aliased, parameters, ""); - } - - /** - * {@inheritDoc} - */ - @Override - public Roles as(String alias) { - return new Roles(alias, this); - } - - /** - * Rename this table - */ - public Roles rename(String name) { - return new Roles(name, null); - } -} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Schemata.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Schemata.java deleted file mode 100644 index b084c3501c..0000000000 --- a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Schemata.java +++ /dev/null @@ -1,122 +0,0 @@ -/** - * This class is generated by jOOQ - */ -package com.baeldung.jooq.introduction.db.information_schema.tables; - - -import com.baeldung.jooq.introduction.db.information_schema.InformationSchema; -import com.baeldung.jooq.introduction.db.information_schema.tables.records.SchemataRecord; - -import javax.annotation.Generated; - -import org.jooq.Field; -import org.jooq.Table; -import org.jooq.TableField; -import org.jooq.impl.TableImpl; - - -/** - * This class is generated by jOOQ. - */ -@Generated( - value = { - "http://www.jooq.org", - "jOOQ version:3.7.3" - }, - comments = "This class is generated by jOOQ" -) -@SuppressWarnings({ "all", "unchecked", "rawtypes" }) -public class Schemata extends TableImpl { - - private static final long serialVersionUID = -1029782582; - - /** - * The reference instance of INFORMATION_SCHEMA.SCHEMATA - */ - public static final Schemata SCHEMATA = new Schemata(); - - /** - * The class holding records for this type - */ - @Override - public Class getRecordType() { - return SchemataRecord.class; - } - - /** - * The column INFORMATION_SCHEMA.SCHEMATA.CATALOG_NAME. - */ - public final TableField CATALOG_NAME = createField("CATALOG_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.SCHEMATA.SCHEMA_NAME. - */ - public final TableField SCHEMA_NAME = createField("SCHEMA_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.SCHEMATA.SCHEMA_OWNER. - */ - public final TableField SCHEMA_OWNER = createField("SCHEMA_OWNER", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.SCHEMATA.DEFAULT_CHARACTER_SET_NAME. - */ - public final TableField DEFAULT_CHARACTER_SET_NAME = createField("DEFAULT_CHARACTER_SET_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.SCHEMATA.DEFAULT_COLLATION_NAME. - */ - public final TableField DEFAULT_COLLATION_NAME = createField("DEFAULT_COLLATION_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.SCHEMATA.IS_DEFAULT. - */ - public final TableField IS_DEFAULT = createField("IS_DEFAULT", org.jooq.impl.SQLDataType.BOOLEAN, this, ""); - - /** - * The column INFORMATION_SCHEMA.SCHEMATA.REMARKS. - */ - public final TableField REMARKS = createField("REMARKS", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.SCHEMATA.ID. - */ - public final TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this, ""); - - /** - * Create a INFORMATION_SCHEMA.SCHEMATA table reference - */ - public Schemata() { - this("SCHEMATA", null); - } - - /** - * Create an aliased INFORMATION_SCHEMA.SCHEMATA table reference - */ - public Schemata(String alias) { - this(alias, SCHEMATA); - } - - private Schemata(String alias, Table aliased) { - this(alias, aliased, null); - } - - private Schemata(String alias, Table aliased, Field[] parameters) { - super(alias, InformationSchema.INFORMATION_SCHEMA, aliased, parameters, ""); - } - - /** - * {@inheritDoc} - */ - @Override - public Schemata as(String alias) { - return new Schemata(alias, this); - } - - /** - * Rename this table - */ - public Schemata rename(String name) { - return new Schemata(name, null); - } -} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Sequences.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Sequences.java deleted file mode 100644 index 26c2da9080..0000000000 --- a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Sequences.java +++ /dev/null @@ -1,142 +0,0 @@ -/** - * This class is generated by jOOQ - */ -package com.baeldung.jooq.introduction.db.information_schema.tables; - - -import com.baeldung.jooq.introduction.db.information_schema.InformationSchema; -import com.baeldung.jooq.introduction.db.information_schema.tables.records.SequencesRecord; - -import javax.annotation.Generated; - -import org.jooq.Field; -import org.jooq.Table; -import org.jooq.TableField; -import org.jooq.impl.TableImpl; - - -/** - * This class is generated by jOOQ. - */ -@Generated( - value = { - "http://www.jooq.org", - "jOOQ version:3.7.3" - }, - comments = "This class is generated by jOOQ" -) -@SuppressWarnings({ "all", "unchecked", "rawtypes" }) -public class Sequences extends TableImpl { - - private static final long serialVersionUID = -1302373749; - - /** - * The reference instance of INFORMATION_SCHEMA.SEQUENCES - */ - public static final Sequences SEQUENCES = new Sequences(); - - /** - * The class holding records for this type - */ - @Override - public Class getRecordType() { - return SequencesRecord.class; - } - - /** - * The column INFORMATION_SCHEMA.SEQUENCES.SEQUENCE_CATALOG. - */ - public final TableField SEQUENCE_CATALOG = createField("SEQUENCE_CATALOG", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.SEQUENCES.SEQUENCE_SCHEMA. - */ - public final TableField SEQUENCE_SCHEMA = createField("SEQUENCE_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.SEQUENCES.SEQUENCE_NAME. - */ - public final TableField SEQUENCE_NAME = createField("SEQUENCE_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.SEQUENCES.CURRENT_VALUE. - */ - public final TableField CURRENT_VALUE = createField("CURRENT_VALUE", org.jooq.impl.SQLDataType.BIGINT, this, ""); - - /** - * The column INFORMATION_SCHEMA.SEQUENCES.INCREMENT. - */ - public final TableField INCREMENT = createField("INCREMENT", org.jooq.impl.SQLDataType.BIGINT, this, ""); - - /** - * The column INFORMATION_SCHEMA.SEQUENCES.IS_GENERATED. - */ - public final TableField IS_GENERATED = createField("IS_GENERATED", org.jooq.impl.SQLDataType.BOOLEAN, this, ""); - - /** - * The column INFORMATION_SCHEMA.SEQUENCES.REMARKS. - */ - public final TableField REMARKS = createField("REMARKS", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.SEQUENCES.CACHE. - */ - public final TableField CACHE = createField("CACHE", org.jooq.impl.SQLDataType.BIGINT, this, ""); - - /** - * The column INFORMATION_SCHEMA.SEQUENCES.MIN_VALUE. - */ - public final TableField MIN_VALUE = createField("MIN_VALUE", org.jooq.impl.SQLDataType.BIGINT, this, ""); - - /** - * The column INFORMATION_SCHEMA.SEQUENCES.MAX_VALUE. - */ - public final TableField MAX_VALUE = createField("MAX_VALUE", org.jooq.impl.SQLDataType.BIGINT, this, ""); - - /** - * The column INFORMATION_SCHEMA.SEQUENCES.IS_CYCLE. - */ - public final TableField IS_CYCLE = createField("IS_CYCLE", org.jooq.impl.SQLDataType.BOOLEAN, this, ""); - - /** - * The column INFORMATION_SCHEMA.SEQUENCES.ID. - */ - public final TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this, ""); - - /** - * Create a INFORMATION_SCHEMA.SEQUENCES table reference - */ - public Sequences() { - this("SEQUENCES", null); - } - - /** - * Create an aliased INFORMATION_SCHEMA.SEQUENCES table reference - */ - public Sequences(String alias) { - this(alias, SEQUENCES); - } - - private Sequences(String alias, Table aliased) { - this(alias, aliased, null); - } - - private Sequences(String alias, Table aliased, Field[] parameters) { - super(alias, InformationSchema.INFORMATION_SCHEMA, aliased, parameters, ""); - } - - /** - * {@inheritDoc} - */ - @Override - public Sequences as(String alias) { - return new Sequences(alias, this); - } - - /** - * Rename this table - */ - public Sequences rename(String name) { - return new Sequences(name, null); - } -} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/SessionState.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/SessionState.java deleted file mode 100644 index 78e0ff743a..0000000000 --- a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/SessionState.java +++ /dev/null @@ -1,92 +0,0 @@ -/** - * This class is generated by jOOQ - */ -package com.baeldung.jooq.introduction.db.information_schema.tables; - - -import com.baeldung.jooq.introduction.db.information_schema.InformationSchema; -import com.baeldung.jooq.introduction.db.information_schema.tables.records.SessionStateRecord; - -import javax.annotation.Generated; - -import org.jooq.Field; -import org.jooq.Table; -import org.jooq.TableField; -import org.jooq.impl.TableImpl; - - -/** - * This class is generated by jOOQ. - */ -@Generated( - value = { - "http://www.jooq.org", - "jOOQ version:3.7.3" - }, - comments = "This class is generated by jOOQ" -) -@SuppressWarnings({ "all", "unchecked", "rawtypes" }) -public class SessionState extends TableImpl { - - private static final long serialVersionUID = 919891380; - - /** - * The reference instance of INFORMATION_SCHEMA.SESSION_STATE - */ - public static final SessionState SESSION_STATE = new SessionState(); - - /** - * The class holding records for this type - */ - @Override - public Class getRecordType() { - return SessionStateRecord.class; - } - - /** - * The column INFORMATION_SCHEMA.SESSION_STATE.KEY. - */ - public final TableField KEY = createField("KEY", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.SESSION_STATE.SQL. - */ - public final TableField SQL = createField("SQL", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * Create a INFORMATION_SCHEMA.SESSION_STATE table reference - */ - public SessionState() { - this("SESSION_STATE", null); - } - - /** - * Create an aliased INFORMATION_SCHEMA.SESSION_STATE table reference - */ - public SessionState(String alias) { - this(alias, SESSION_STATE); - } - - private SessionState(String alias, Table aliased) { - this(alias, aliased, null); - } - - private SessionState(String alias, Table aliased, Field[] parameters) { - super(alias, InformationSchema.INFORMATION_SCHEMA, aliased, parameters, ""); - } - - /** - * {@inheritDoc} - */ - @Override - public SessionState as(String alias) { - return new SessionState(alias, this); - } - - /** - * Rename this table - */ - public SessionState rename(String name) { - return new SessionState(name, null); - } -} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Sessions.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Sessions.java deleted file mode 100644 index 22166987d9..0000000000 --- a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Sessions.java +++ /dev/null @@ -1,112 +0,0 @@ -/** - * This class is generated by jOOQ - */ -package com.baeldung.jooq.introduction.db.information_schema.tables; - - -import com.baeldung.jooq.introduction.db.information_schema.InformationSchema; -import com.baeldung.jooq.introduction.db.information_schema.tables.records.SessionsRecord; - -import javax.annotation.Generated; - -import org.jooq.Field; -import org.jooq.Table; -import org.jooq.TableField; -import org.jooq.impl.TableImpl; - - -/** - * This class is generated by jOOQ. - */ -@Generated( - value = { - "http://www.jooq.org", - "jOOQ version:3.7.3" - }, - comments = "This class is generated by jOOQ" -) -@SuppressWarnings({ "all", "unchecked", "rawtypes" }) -public class Sessions extends TableImpl { - - private static final long serialVersionUID = -975884629; - - /** - * The reference instance of INFORMATION_SCHEMA.SESSIONS - */ - public static final Sessions SESSIONS = new Sessions(); - - /** - * The class holding records for this type - */ - @Override - public Class getRecordType() { - return SessionsRecord.class; - } - - /** - * The column INFORMATION_SCHEMA.SESSIONS.ID. - */ - public final TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this, ""); - - /** - * The column INFORMATION_SCHEMA.SESSIONS.USER_NAME. - */ - public final TableField USER_NAME = createField("USER_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.SESSIONS.SESSION_START. - */ - public final TableField SESSION_START = createField("SESSION_START", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.SESSIONS.STATEMENT. - */ - public final TableField STATEMENT = createField("STATEMENT", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.SESSIONS.STATEMENT_START. - */ - public final TableField STATEMENT_START = createField("STATEMENT_START", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.SESSIONS.CONTAINS_UNCOMMITTED. - */ - public final TableField CONTAINS_UNCOMMITTED = createField("CONTAINS_UNCOMMITTED", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * Create a INFORMATION_SCHEMA.SESSIONS table reference - */ - public Sessions() { - this("SESSIONS", null); - } - - /** - * Create an aliased INFORMATION_SCHEMA.SESSIONS table reference - */ - public Sessions(String alias) { - this(alias, SESSIONS); - } - - private Sessions(String alias, Table aliased) { - this(alias, aliased, null); - } - - private Sessions(String alias, Table aliased, Field[] parameters) { - super(alias, InformationSchema.INFORMATION_SCHEMA, aliased, parameters, ""); - } - - /** - * {@inheritDoc} - */ - @Override - public Sessions as(String alias) { - return new Sessions(alias, this); - } - - /** - * Rename this table - */ - public Sessions rename(String name) { - return new Sessions(name, null); - } -} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Settings.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Settings.java deleted file mode 100644 index caca515c67..0000000000 --- a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Settings.java +++ /dev/null @@ -1,92 +0,0 @@ -/** - * This class is generated by jOOQ - */ -package com.baeldung.jooq.introduction.db.information_schema.tables; - - -import com.baeldung.jooq.introduction.db.information_schema.InformationSchema; -import com.baeldung.jooq.introduction.db.information_schema.tables.records.SettingsRecord; - -import javax.annotation.Generated; - -import org.jooq.Field; -import org.jooq.Table; -import org.jooq.TableField; -import org.jooq.impl.TableImpl; - - -/** - * This class is generated by jOOQ. - */ -@Generated( - value = { - "http://www.jooq.org", - "jOOQ version:3.7.3" - }, - comments = "This class is generated by jOOQ" -) -@SuppressWarnings({ "all", "unchecked", "rawtypes" }) -public class Settings extends TableImpl { - - private static final long serialVersionUID = -1983664507; - - /** - * The reference instance of INFORMATION_SCHEMA.SETTINGS - */ - public static final Settings SETTINGS = new Settings(); - - /** - * The class holding records for this type - */ - @Override - public Class getRecordType() { - return SettingsRecord.class; - } - - /** - * The column INFORMATION_SCHEMA.SETTINGS.NAME. - */ - public final TableField NAME = createField("NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.SETTINGS.VALUE. - */ - public final TableField VALUE = createField("VALUE", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * Create a INFORMATION_SCHEMA.SETTINGS table reference - */ - public Settings() { - this("SETTINGS", null); - } - - /** - * Create an aliased INFORMATION_SCHEMA.SETTINGS table reference - */ - public Settings(String alias) { - this(alias, SETTINGS); - } - - private Settings(String alias, Table aliased) { - this(alias, aliased, null); - } - - private Settings(String alias, Table aliased, Field[] parameters) { - super(alias, InformationSchema.INFORMATION_SCHEMA, aliased, parameters, ""); - } - - /** - * {@inheritDoc} - */ - @Override - public Settings as(String alias) { - return new Settings(alias, this); - } - - /** - * Rename this table - */ - public Settings rename(String name) { - return new Settings(name, null); - } -} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/TablePrivileges.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/TablePrivileges.java deleted file mode 100644 index 16104aa4bb..0000000000 --- a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/TablePrivileges.java +++ /dev/null @@ -1,117 +0,0 @@ -/** - * This class is generated by jOOQ - */ -package com.baeldung.jooq.introduction.db.information_schema.tables; - - -import com.baeldung.jooq.introduction.db.information_schema.InformationSchema; -import com.baeldung.jooq.introduction.db.information_schema.tables.records.TablePrivilegesRecord; - -import javax.annotation.Generated; - -import org.jooq.Field; -import org.jooq.Table; -import org.jooq.TableField; -import org.jooq.impl.TableImpl; - - -/** - * This class is generated by jOOQ. - */ -@Generated( - value = { - "http://www.jooq.org", - "jOOQ version:3.7.3" - }, - comments = "This class is generated by jOOQ" -) -@SuppressWarnings({ "all", "unchecked", "rawtypes" }) -public class TablePrivileges extends TableImpl { - - private static final long serialVersionUID = -270543696; - - /** - * The reference instance of INFORMATION_SCHEMA.TABLE_PRIVILEGES - */ - public static final TablePrivileges TABLE_PRIVILEGES = new TablePrivileges(); - - /** - * The class holding records for this type - */ - @Override - public Class getRecordType() { - return TablePrivilegesRecord.class; - } - - /** - * The column INFORMATION_SCHEMA.TABLE_PRIVILEGES.GRANTOR. - */ - public final TableField GRANTOR = createField("GRANTOR", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.TABLE_PRIVILEGES.GRANTEE. - */ - public final TableField GRANTEE = createField("GRANTEE", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.TABLE_PRIVILEGES.TABLE_CATALOG. - */ - public final TableField TABLE_CATALOG = createField("TABLE_CATALOG", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.TABLE_PRIVILEGES.TABLE_SCHEMA. - */ - public final TableField TABLE_SCHEMA = createField("TABLE_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.TABLE_PRIVILEGES.TABLE_NAME. - */ - public final TableField TABLE_NAME = createField("TABLE_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.TABLE_PRIVILEGES.PRIVILEGE_TYPE. - */ - public final TableField PRIVILEGE_TYPE = createField("PRIVILEGE_TYPE", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.TABLE_PRIVILEGES.IS_GRANTABLE. - */ - public final TableField IS_GRANTABLE = createField("IS_GRANTABLE", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * Create a INFORMATION_SCHEMA.TABLE_PRIVILEGES table reference - */ - public TablePrivileges() { - this("TABLE_PRIVILEGES", null); - } - - /** - * Create an aliased INFORMATION_SCHEMA.TABLE_PRIVILEGES table reference - */ - public TablePrivileges(String alias) { - this(alias, TABLE_PRIVILEGES); - } - - private TablePrivileges(String alias, Table aliased) { - this(alias, aliased, null); - } - - private TablePrivileges(String alias, Table aliased, Field[] parameters) { - super(alias, InformationSchema.INFORMATION_SCHEMA, aliased, parameters, ""); - } - - /** - * {@inheritDoc} - */ - @Override - public TablePrivileges as(String alias) { - return new TablePrivileges(alias, this); - } - - /** - * Rename this table - */ - public TablePrivileges rename(String name) { - return new TablePrivileges(name, null); - } -} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/TableTypes.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/TableTypes.java deleted file mode 100644 index 6901b10786..0000000000 --- a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/TableTypes.java +++ /dev/null @@ -1,87 +0,0 @@ -/** - * This class is generated by jOOQ - */ -package com.baeldung.jooq.introduction.db.information_schema.tables; - - -import com.baeldung.jooq.introduction.db.information_schema.InformationSchema; -import com.baeldung.jooq.introduction.db.information_schema.tables.records.TableTypesRecord; - -import javax.annotation.Generated; - -import org.jooq.Field; -import org.jooq.Table; -import org.jooq.TableField; -import org.jooq.impl.TableImpl; - - -/** - * This class is generated by jOOQ. - */ -@Generated( - value = { - "http://www.jooq.org", - "jOOQ version:3.7.3" - }, - comments = "This class is generated by jOOQ" -) -@SuppressWarnings({ "all", "unchecked", "rawtypes" }) -public class TableTypes extends TableImpl { - - private static final long serialVersionUID = 676525061; - - /** - * The reference instance of INFORMATION_SCHEMA.TABLE_TYPES - */ - public static final TableTypes TABLE_TYPES = new TableTypes(); - - /** - * The class holding records for this type - */ - @Override - public Class getRecordType() { - return TableTypesRecord.class; - } - - /** - * The column INFORMATION_SCHEMA.TABLE_TYPES.TYPE. - */ - public final TableField TYPE = createField("TYPE", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * Create a INFORMATION_SCHEMA.TABLE_TYPES table reference - */ - public TableTypes() { - this("TABLE_TYPES", null); - } - - /** - * Create an aliased INFORMATION_SCHEMA.TABLE_TYPES table reference - */ - public TableTypes(String alias) { - this(alias, TABLE_TYPES); - } - - private TableTypes(String alias, Table aliased) { - this(alias, aliased, null); - } - - private TableTypes(String alias, Table aliased, Field[] parameters) { - super(alias, InformationSchema.INFORMATION_SCHEMA, aliased, parameters, ""); - } - - /** - * {@inheritDoc} - */ - @Override - public TableTypes as(String alias) { - return new TableTypes(alias, this); - } - - /** - * Rename this table - */ - public TableTypes rename(String name) { - return new TableTypes(name, null); - } -} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Tables.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Tables.java deleted file mode 100644 index f0927166a5..0000000000 --- a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Tables.java +++ /dev/null @@ -1,142 +0,0 @@ -/** - * This class is generated by jOOQ - */ -package com.baeldung.jooq.introduction.db.information_schema.tables; - - -import com.baeldung.jooq.introduction.db.information_schema.InformationSchema; -import com.baeldung.jooq.introduction.db.information_schema.tables.records.TablesRecord; - -import javax.annotation.Generated; - -import org.jooq.Field; -import org.jooq.Table; -import org.jooq.TableField; -import org.jooq.impl.TableImpl; - - -/** - * This class is generated by jOOQ. - */ -@Generated( - value = { - "http://www.jooq.org", - "jOOQ version:3.7.3" - }, - comments = "This class is generated by jOOQ" -) -@SuppressWarnings({ "all", "unchecked", "rawtypes" }) -public class Tables extends TableImpl { - - private static final long serialVersionUID = 123051350; - - /** - * The reference instance of INFORMATION_SCHEMA.TABLES - */ - public static final Tables TABLES = new Tables(); - - /** - * The class holding records for this type - */ - @Override - public Class getRecordType() { - return TablesRecord.class; - } - - /** - * The column INFORMATION_SCHEMA.TABLES.TABLE_CATALOG. - */ - public final TableField TABLE_CATALOG = createField("TABLE_CATALOG", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.TABLES.TABLE_SCHEMA. - */ - public final TableField TABLE_SCHEMA = createField("TABLE_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.TABLES.TABLE_NAME. - */ - public final TableField TABLE_NAME = createField("TABLE_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.TABLES.TABLE_TYPE. - */ - public final TableField TABLE_TYPE = createField("TABLE_TYPE", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.TABLES.STORAGE_TYPE. - */ - public final TableField STORAGE_TYPE = createField("STORAGE_TYPE", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.TABLES.SQL. - */ - public final TableField SQL = createField("SQL", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.TABLES.REMARKS. - */ - public final TableField REMARKS = createField("REMARKS", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.TABLES.LAST_MODIFICATION. - */ - public final TableField LAST_MODIFICATION = createField("LAST_MODIFICATION", org.jooq.impl.SQLDataType.BIGINT, this, ""); - - /** - * The column INFORMATION_SCHEMA.TABLES.ID. - */ - public final TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this, ""); - - /** - * The column INFORMATION_SCHEMA.TABLES.TYPE_NAME. - */ - public final TableField TYPE_NAME = createField("TYPE_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.TABLES.TABLE_CLASS. - */ - public final TableField TABLE_CLASS = createField("TABLE_CLASS", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.TABLES.ROW_COUNT_ESTIMATE. - */ - public final TableField ROW_COUNT_ESTIMATE = createField("ROW_COUNT_ESTIMATE", org.jooq.impl.SQLDataType.BIGINT, this, ""); - - /** - * Create a INFORMATION_SCHEMA.TABLES table reference - */ - public Tables() { - this("TABLES", null); - } - - /** - * Create an aliased INFORMATION_SCHEMA.TABLES table reference - */ - public Tables(String alias) { - this(alias, TABLES); - } - - private Tables(String alias, Table aliased) { - this(alias, aliased, null); - } - - private Tables(String alias, Table aliased, Field[] parameters) { - super(alias, InformationSchema.INFORMATION_SCHEMA, aliased, parameters, ""); - } - - /** - * {@inheritDoc} - */ - @Override - public Tables as(String alias) { - return new Tables(alias, this); - } - - /** - * Rename this table - */ - public Tables rename(String name) { - return new Tables(name, null); - } -} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Triggers.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Triggers.java deleted file mode 100644 index 375478af7a..0000000000 --- a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Triggers.java +++ /dev/null @@ -1,152 +0,0 @@ -/** - * This class is generated by jOOQ - */ -package com.baeldung.jooq.introduction.db.information_schema.tables; - - -import com.baeldung.jooq.introduction.db.information_schema.InformationSchema; -import com.baeldung.jooq.introduction.db.information_schema.tables.records.TriggersRecord; - -import javax.annotation.Generated; - -import org.jooq.Field; -import org.jooq.Table; -import org.jooq.TableField; -import org.jooq.impl.TableImpl; - - -/** - * This class is generated by jOOQ. - */ -@Generated( - value = { - "http://www.jooq.org", - "jOOQ version:3.7.3" - }, - comments = "This class is generated by jOOQ" -) -@SuppressWarnings({ "all", "unchecked", "rawtypes" }) -public class Triggers extends TableImpl { - - private static final long serialVersionUID = 376103066; - - /** - * The reference instance of INFORMATION_SCHEMA.TRIGGERS - */ - public static final Triggers TRIGGERS = new Triggers(); - - /** - * The class holding records for this type - */ - @Override - public Class getRecordType() { - return TriggersRecord.class; - } - - /** - * The column INFORMATION_SCHEMA.TRIGGERS.TRIGGER_CATALOG. - */ - public final TableField TRIGGER_CATALOG = createField("TRIGGER_CATALOG", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.TRIGGERS.TRIGGER_SCHEMA. - */ - public final TableField TRIGGER_SCHEMA = createField("TRIGGER_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.TRIGGERS.TRIGGER_NAME. - */ - public final TableField TRIGGER_NAME = createField("TRIGGER_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.TRIGGERS.TRIGGER_TYPE. - */ - public final TableField TRIGGER_TYPE = createField("TRIGGER_TYPE", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.TRIGGERS.TABLE_CATALOG. - */ - public final TableField TABLE_CATALOG = createField("TABLE_CATALOG", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.TRIGGERS.TABLE_SCHEMA. - */ - public final TableField TABLE_SCHEMA = createField("TABLE_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.TRIGGERS.TABLE_NAME. - */ - public final TableField TABLE_NAME = createField("TABLE_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.TRIGGERS.BEFORE. - */ - public final TableField BEFORE = createField("BEFORE", org.jooq.impl.SQLDataType.BOOLEAN, this, ""); - - /** - * The column INFORMATION_SCHEMA.TRIGGERS.JAVA_CLASS. - */ - public final TableField JAVA_CLASS = createField("JAVA_CLASS", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.TRIGGERS.QUEUE_SIZE. - */ - public final TableField QUEUE_SIZE = createField("QUEUE_SIZE", org.jooq.impl.SQLDataType.INTEGER, this, ""); - - /** - * The column INFORMATION_SCHEMA.TRIGGERS.NO_WAIT. - */ - public final TableField NO_WAIT = createField("NO_WAIT", org.jooq.impl.SQLDataType.BOOLEAN, this, ""); - - /** - * The column INFORMATION_SCHEMA.TRIGGERS.REMARKS. - */ - public final TableField REMARKS = createField("REMARKS", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.TRIGGERS.SQL. - */ - public final TableField SQL = createField("SQL", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.TRIGGERS.ID. - */ - public final TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this, ""); - - /** - * Create a INFORMATION_SCHEMA.TRIGGERS table reference - */ - public Triggers() { - this("TRIGGERS", null); - } - - /** - * Create an aliased INFORMATION_SCHEMA.TRIGGERS table reference - */ - public Triggers(String alias) { - this(alias, TRIGGERS); - } - - private Triggers(String alias, Table aliased) { - this(alias, aliased, null); - } - - private Triggers(String alias, Table aliased, Field[] parameters) { - super(alias, InformationSchema.INFORMATION_SCHEMA, aliased, parameters, ""); - } - - /** - * {@inheritDoc} - */ - @Override - public Triggers as(String alias) { - return new Triggers(alias, this); - } - - /** - * Rename this table - */ - public Triggers rename(String name) { - return new Triggers(name, null); - } -} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/TypeInfo.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/TypeInfo.java deleted file mode 100644 index 3db18ebee4..0000000000 --- a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/TypeInfo.java +++ /dev/null @@ -1,152 +0,0 @@ -/** - * This class is generated by jOOQ - */ -package com.baeldung.jooq.introduction.db.information_schema.tables; - - -import com.baeldung.jooq.introduction.db.information_schema.InformationSchema; -import com.baeldung.jooq.introduction.db.information_schema.tables.records.TypeInfoRecord; - -import javax.annotation.Generated; - -import org.jooq.Field; -import org.jooq.Table; -import org.jooq.TableField; -import org.jooq.impl.TableImpl; - - -/** - * This class is generated by jOOQ. - */ -@Generated( - value = { - "http://www.jooq.org", - "jOOQ version:3.7.3" - }, - comments = "This class is generated by jOOQ" -) -@SuppressWarnings({ "all", "unchecked", "rawtypes" }) -public class TypeInfo extends TableImpl { - - private static final long serialVersionUID = -242556633; - - /** - * The reference instance of INFORMATION_SCHEMA.TYPE_INFO - */ - public static final TypeInfo TYPE_INFO = new TypeInfo(); - - /** - * The class holding records for this type - */ - @Override - public Class getRecordType() { - return TypeInfoRecord.class; - } - - /** - * The column INFORMATION_SCHEMA.TYPE_INFO.TYPE_NAME. - */ - public final TableField TYPE_NAME = createField("TYPE_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.TYPE_INFO.DATA_TYPE. - */ - public final TableField DATA_TYPE = createField("DATA_TYPE", org.jooq.impl.SQLDataType.INTEGER, this, ""); - - /** - * The column INFORMATION_SCHEMA.TYPE_INFO.PRECISION. - */ - public final TableField PRECISION = createField("PRECISION", org.jooq.impl.SQLDataType.INTEGER, this, ""); - - /** - * The column INFORMATION_SCHEMA.TYPE_INFO.PREFIX. - */ - public final TableField PREFIX = createField("PREFIX", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.TYPE_INFO.SUFFIX. - */ - public final TableField SUFFIX = createField("SUFFIX", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.TYPE_INFO.PARAMS. - */ - public final TableField PARAMS = createField("PARAMS", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.TYPE_INFO.AUTO_INCREMENT. - */ - public final TableField AUTO_INCREMENT = createField("AUTO_INCREMENT", org.jooq.impl.SQLDataType.BOOLEAN, this, ""); - - /** - * The column INFORMATION_SCHEMA.TYPE_INFO.MINIMUM_SCALE. - */ - public final TableField MINIMUM_SCALE = createField("MINIMUM_SCALE", org.jooq.impl.SQLDataType.SMALLINT, this, ""); - - /** - * The column INFORMATION_SCHEMA.TYPE_INFO.MAXIMUM_SCALE. - */ - public final TableField MAXIMUM_SCALE = createField("MAXIMUM_SCALE", org.jooq.impl.SQLDataType.SMALLINT, this, ""); - - /** - * The column INFORMATION_SCHEMA.TYPE_INFO.RADIX. - */ - public final TableField RADIX = createField("RADIX", org.jooq.impl.SQLDataType.INTEGER, this, ""); - - /** - * The column INFORMATION_SCHEMA.TYPE_INFO.POS. - */ - public final TableField POS = createField("POS", org.jooq.impl.SQLDataType.INTEGER, this, ""); - - /** - * The column INFORMATION_SCHEMA.TYPE_INFO.CASE_SENSITIVE. - */ - public final TableField CASE_SENSITIVE = createField("CASE_SENSITIVE", org.jooq.impl.SQLDataType.BOOLEAN, this, ""); - - /** - * The column INFORMATION_SCHEMA.TYPE_INFO.NULLABLE. - */ - public final TableField NULLABLE = createField("NULLABLE", org.jooq.impl.SQLDataType.SMALLINT, this, ""); - - /** - * The column INFORMATION_SCHEMA.TYPE_INFO.SEARCHABLE. - */ - public final TableField SEARCHABLE = createField("SEARCHABLE", org.jooq.impl.SQLDataType.SMALLINT, this, ""); - - /** - * Create a INFORMATION_SCHEMA.TYPE_INFO table reference - */ - public TypeInfo() { - this("TYPE_INFO", null); - } - - /** - * Create an aliased INFORMATION_SCHEMA.TYPE_INFO table reference - */ - public TypeInfo(String alias) { - this(alias, TYPE_INFO); - } - - private TypeInfo(String alias, Table aliased) { - this(alias, aliased, null); - } - - private TypeInfo(String alias, Table aliased, Field[] parameters) { - super(alias, InformationSchema.INFORMATION_SCHEMA, aliased, parameters, ""); - } - - /** - * {@inheritDoc} - */ - @Override - public TypeInfo as(String alias) { - return new TypeInfo(alias, this); - } - - /** - * Rename this table - */ - public TypeInfo rename(String name) { - return new TypeInfo(name, null); - } -} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Users.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Users.java deleted file mode 100644 index 417382aed0..0000000000 --- a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Users.java +++ /dev/null @@ -1,102 +0,0 @@ -/** - * This class is generated by jOOQ - */ -package com.baeldung.jooq.introduction.db.information_schema.tables; - - -import com.baeldung.jooq.introduction.db.information_schema.InformationSchema; -import com.baeldung.jooq.introduction.db.information_schema.tables.records.UsersRecord; - -import javax.annotation.Generated; - -import org.jooq.Field; -import org.jooq.Table; -import org.jooq.TableField; -import org.jooq.impl.TableImpl; - - -/** - * This class is generated by jOOQ. - */ -@Generated( - value = { - "http://www.jooq.org", - "jOOQ version:3.7.3" - }, - comments = "This class is generated by jOOQ" -) -@SuppressWarnings({ "all", "unchecked", "rawtypes" }) -public class Users extends TableImpl { - - private static final long serialVersionUID = 1971797833; - - /** - * The reference instance of INFORMATION_SCHEMA.USERS - */ - public static final Users USERS = new Users(); - - /** - * The class holding records for this type - */ - @Override - public Class getRecordType() { - return UsersRecord.class; - } - - /** - * The column INFORMATION_SCHEMA.USERS.NAME. - */ - public final TableField NAME = createField("NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.USERS.ADMIN. - */ - public final TableField ADMIN = createField("ADMIN", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.USERS.REMARKS. - */ - public final TableField REMARKS = createField("REMARKS", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.USERS.ID. - */ - public final TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this, ""); - - /** - * Create a INFORMATION_SCHEMA.USERS table reference - */ - public Users() { - this("USERS", null); - } - - /** - * Create an aliased INFORMATION_SCHEMA.USERS table reference - */ - public Users(String alias) { - this(alias, USERS); - } - - private Users(String alias, Table aliased) { - this(alias, aliased, null); - } - - private Users(String alias, Table aliased, Field[] parameters) { - super(alias, InformationSchema.INFORMATION_SCHEMA, aliased, parameters, ""); - } - - /** - * {@inheritDoc} - */ - @Override - public Users as(String alias) { - return new Users(alias, this); - } - - /** - * Rename this table - */ - public Users rename(String name) { - return new Users(name, null); - } -} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Views.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Views.java deleted file mode 100644 index 54ffe377d7..0000000000 --- a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/Views.java +++ /dev/null @@ -1,127 +0,0 @@ -/** - * This class is generated by jOOQ - */ -package com.baeldung.jooq.introduction.db.information_schema.tables; - - -import com.baeldung.jooq.introduction.db.information_schema.InformationSchema; -import com.baeldung.jooq.introduction.db.information_schema.tables.records.ViewsRecord; - -import javax.annotation.Generated; - -import org.jooq.Field; -import org.jooq.Table; -import org.jooq.TableField; -import org.jooq.impl.TableImpl; - - -/** - * This class is generated by jOOQ. - */ -@Generated( - value = { - "http://www.jooq.org", - "jOOQ version:3.7.3" - }, - comments = "This class is generated by jOOQ" -) -@SuppressWarnings({ "all", "unchecked", "rawtypes" }) -public class Views extends TableImpl { - - private static final long serialVersionUID = 1565009994; - - /** - * The reference instance of INFORMATION_SCHEMA.VIEWS - */ - public static final Views VIEWS = new Views(); - - /** - * The class holding records for this type - */ - @Override - public Class getRecordType() { - return ViewsRecord.class; - } - - /** - * The column INFORMATION_SCHEMA.VIEWS.TABLE_CATALOG. - */ - public final TableField TABLE_CATALOG = createField("TABLE_CATALOG", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.VIEWS.TABLE_SCHEMA. - */ - public final TableField TABLE_SCHEMA = createField("TABLE_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.VIEWS.TABLE_NAME. - */ - public final TableField TABLE_NAME = createField("TABLE_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.VIEWS.VIEW_DEFINITION. - */ - public final TableField VIEW_DEFINITION = createField("VIEW_DEFINITION", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.VIEWS.CHECK_OPTION. - */ - public final TableField CHECK_OPTION = createField("CHECK_OPTION", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.VIEWS.IS_UPDATABLE. - */ - public final TableField IS_UPDATABLE = createField("IS_UPDATABLE", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.VIEWS.STATUS. - */ - public final TableField STATUS = createField("STATUS", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.VIEWS.REMARKS. - */ - public final TableField REMARKS = createField("REMARKS", org.jooq.impl.SQLDataType.VARCHAR.length(2147483647), this, ""); - - /** - * The column INFORMATION_SCHEMA.VIEWS.ID. - */ - public final TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this, ""); - - /** - * Create a INFORMATION_SCHEMA.VIEWS table reference - */ - public Views() { - this("VIEWS", null); - } - - /** - * Create an aliased INFORMATION_SCHEMA.VIEWS table reference - */ - public Views(String alias) { - this(alias, VIEWS); - } - - private Views(String alias, Table aliased) { - this(alias, aliased, null); - } - - private Views(String alias, Table aliased, Field[] parameters) { - super(alias, InformationSchema.INFORMATION_SCHEMA, aliased, parameters, ""); - } - - /** - * {@inheritDoc} - */ - @Override - public Views as(String alias) { - return new Views(alias, this); - } - - /** - * Rename this table - */ - public Views rename(String name) { - return new Views(name, null); - } -} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/CatalogsRecord.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/CatalogsRecord.java deleted file mode 100644 index d59728bf01..0000000000 --- a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/CatalogsRecord.java +++ /dev/null @@ -1,119 +0,0 @@ -/** - * This class is generated by jOOQ - */ -package com.baeldung.jooq.introduction.db.information_schema.tables.records; - - -import com.baeldung.jooq.introduction.db.information_schema.tables.Catalogs; - -import javax.annotation.Generated; - -import org.jooq.Field; -import org.jooq.Record1; -import org.jooq.Row1; -import org.jooq.impl.TableRecordImpl; - - -/** - * This class is generated by jOOQ. - */ -@Generated( - value = { - "http://www.jooq.org", - "jOOQ version:3.7.3" - }, - comments = "This class is generated by jOOQ" -) -@SuppressWarnings({ "all", "unchecked", "rawtypes" }) -public class CatalogsRecord extends TableRecordImpl implements Record1 { - - private static final long serialVersionUID = -2119003002; - - /** - * Setter for INFORMATION_SCHEMA.CATALOGS.CATALOG_NAME. - */ - public void setCatalogName(String value) { - setValue(0, value); - } - - /** - * Getter for INFORMATION_SCHEMA.CATALOGS.CATALOG_NAME. - */ - public String getCatalogName() { - return (String) getValue(0); - } - - // ------------------------------------------------------------------------- - // Record1 type implementation - // ------------------------------------------------------------------------- - - /** - * {@inheritDoc} - */ - @Override - public Row1 fieldsRow() { - return (Row1) super.fieldsRow(); - } - - /** - * {@inheritDoc} - */ - @Override - public Row1 valuesRow() { - return (Row1) super.valuesRow(); - } - - /** - * {@inheritDoc} - */ - @Override - public Field field1() { - return Catalogs.CATALOGS.CATALOG_NAME; - } - - /** - * {@inheritDoc} - */ - @Override - public String value1() { - return getCatalogName(); - } - - /** - * {@inheritDoc} - */ - @Override - public CatalogsRecord value1(String value) { - setCatalogName(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public CatalogsRecord values(String value1) { - value1(value1); - return this; - } - - // ------------------------------------------------------------------------- - // Constructors - // ------------------------------------------------------------------------- - - /** - * Create a detached CatalogsRecord - */ - public CatalogsRecord() { - super(Catalogs.CATALOGS); - } - - /** - * Create a detached, initialised CatalogsRecord - */ - public CatalogsRecord(String catalogName) { - super(Catalogs.CATALOGS); - - setValue(0, catalogName); - } -} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/CollationsRecord.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/CollationsRecord.java deleted file mode 100644 index e0abb49012..0000000000 --- a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/CollationsRecord.java +++ /dev/null @@ -1,160 +0,0 @@ -/** - * This class is generated by jOOQ - */ -package com.baeldung.jooq.introduction.db.information_schema.tables.records; - - -import com.baeldung.jooq.introduction.db.information_schema.tables.Collations; - -import javax.annotation.Generated; - -import org.jooq.Field; -import org.jooq.Record2; -import org.jooq.Row2; -import org.jooq.impl.TableRecordImpl; - - -/** - * This class is generated by jOOQ. - */ -@Generated( - value = { - "http://www.jooq.org", - "jOOQ version:3.7.3" - }, - comments = "This class is generated by jOOQ" -) -@SuppressWarnings({ "all", "unchecked", "rawtypes" }) -public class CollationsRecord extends TableRecordImpl implements Record2 { - - private static final long serialVersionUID = -890210086; - - /** - * Setter for INFORMATION_SCHEMA.COLLATIONS.NAME. - */ - public void setName(String value) { - setValue(0, value); - } - - /** - * Getter for INFORMATION_SCHEMA.COLLATIONS.NAME. - */ - public String getName() { - return (String) getValue(0); - } - - /** - * Setter for INFORMATION_SCHEMA.COLLATIONS.KEY. - */ - public void setKey(String value) { - setValue(1, value); - } - - /** - * Getter for INFORMATION_SCHEMA.COLLATIONS.KEY. - */ - public String getKey() { - return (String) getValue(1); - } - - // ------------------------------------------------------------------------- - // Record2 type implementation - // ------------------------------------------------------------------------- - - /** - * {@inheritDoc} - */ - @Override - public Row2 fieldsRow() { - return (Row2) super.fieldsRow(); - } - - /** - * {@inheritDoc} - */ - @Override - public Row2 valuesRow() { - return (Row2) super.valuesRow(); - } - - /** - * {@inheritDoc} - */ - @Override - public Field field1() { - return Collations.COLLATIONS.NAME; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field2() { - return Collations.COLLATIONS.KEY; - } - - /** - * {@inheritDoc} - */ - @Override - public String value1() { - return getName(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value2() { - return getKey(); - } - - /** - * {@inheritDoc} - */ - @Override - public CollationsRecord value1(String value) { - setName(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public CollationsRecord value2(String value) { - setKey(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public CollationsRecord values(String value1, String value2) { - value1(value1); - value2(value2); - return this; - } - - // ------------------------------------------------------------------------- - // Constructors - // ------------------------------------------------------------------------- - - /** - * Create a detached CollationsRecord - */ - public CollationsRecord() { - super(Collations.COLLATIONS); - } - - /** - * Create a detached, initialised CollationsRecord - */ - public CollationsRecord(String name, String key) { - super(Collations.COLLATIONS); - - setValue(0, name); - setValue(1, key); - } -} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/ColumnPrivilegesRecord.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/ColumnPrivilegesRecord.java deleted file mode 100644 index 105348a339..0000000000 --- a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/ColumnPrivilegesRecord.java +++ /dev/null @@ -1,406 +0,0 @@ -/** - * This class is generated by jOOQ - */ -package com.baeldung.jooq.introduction.db.information_schema.tables.records; - - -import com.baeldung.jooq.introduction.db.information_schema.tables.ColumnPrivileges; - -import javax.annotation.Generated; - -import org.jooq.Field; -import org.jooq.Record8; -import org.jooq.Row8; -import org.jooq.impl.TableRecordImpl; - - -/** - * This class is generated by jOOQ. - */ -@Generated( - value = { - "http://www.jooq.org", - "jOOQ version:3.7.3" - }, - comments = "This class is generated by jOOQ" -) -@SuppressWarnings({ "all", "unchecked", "rawtypes" }) -public class ColumnPrivilegesRecord extends TableRecordImpl implements Record8 { - - private static final long serialVersionUID = 1884367853; - - /** - * Setter for INFORMATION_SCHEMA.COLUMN_PRIVILEGES.GRANTOR. - */ - public void setGrantor(String value) { - setValue(0, value); - } - - /** - * Getter for INFORMATION_SCHEMA.COLUMN_PRIVILEGES.GRANTOR. - */ - public String getGrantor() { - return (String) getValue(0); - } - - /** - * Setter for INFORMATION_SCHEMA.COLUMN_PRIVILEGES.GRANTEE. - */ - public void setGrantee(String value) { - setValue(1, value); - } - - /** - * Getter for INFORMATION_SCHEMA.COLUMN_PRIVILEGES.GRANTEE. - */ - public String getGrantee() { - return (String) getValue(1); - } - - /** - * Setter for INFORMATION_SCHEMA.COLUMN_PRIVILEGES.TABLE_CATALOG. - */ - public void setTableCatalog(String value) { - setValue(2, value); - } - - /** - * Getter for INFORMATION_SCHEMA.COLUMN_PRIVILEGES.TABLE_CATALOG. - */ - public String getTableCatalog() { - return (String) getValue(2); - } - - /** - * Setter for INFORMATION_SCHEMA.COLUMN_PRIVILEGES.TABLE_SCHEMA. - */ - public void setTableSchema(String value) { - setValue(3, value); - } - - /** - * Getter for INFORMATION_SCHEMA.COLUMN_PRIVILEGES.TABLE_SCHEMA. - */ - public String getTableSchema() { - return (String) getValue(3); - } - - /** - * Setter for INFORMATION_SCHEMA.COLUMN_PRIVILEGES.TABLE_NAME. - */ - public void setTableName(String value) { - setValue(4, value); - } - - /** - * Getter for INFORMATION_SCHEMA.COLUMN_PRIVILEGES.TABLE_NAME. - */ - public String getTableName() { - return (String) getValue(4); - } - - /** - * Setter for INFORMATION_SCHEMA.COLUMN_PRIVILEGES.COLUMN_NAME. - */ - public void setColumnName(String value) { - setValue(5, value); - } - - /** - * Getter for INFORMATION_SCHEMA.COLUMN_PRIVILEGES.COLUMN_NAME. - */ - public String getColumnName() { - return (String) getValue(5); - } - - /** - * Setter for INFORMATION_SCHEMA.COLUMN_PRIVILEGES.PRIVILEGE_TYPE. - */ - public void setPrivilegeType(String value) { - setValue(6, value); - } - - /** - * Getter for INFORMATION_SCHEMA.COLUMN_PRIVILEGES.PRIVILEGE_TYPE. - */ - public String getPrivilegeType() { - return (String) getValue(6); - } - - /** - * Setter for INFORMATION_SCHEMA.COLUMN_PRIVILEGES.IS_GRANTABLE. - */ - public void setIsGrantable(String value) { - setValue(7, value); - } - - /** - * Getter for INFORMATION_SCHEMA.COLUMN_PRIVILEGES.IS_GRANTABLE. - */ - public String getIsGrantable() { - return (String) getValue(7); - } - - // ------------------------------------------------------------------------- - // Record8 type implementation - // ------------------------------------------------------------------------- - - /** - * {@inheritDoc} - */ - @Override - public Row8 fieldsRow() { - return (Row8) super.fieldsRow(); - } - - /** - * {@inheritDoc} - */ - @Override - public Row8 valuesRow() { - return (Row8) super.valuesRow(); - } - - /** - * {@inheritDoc} - */ - @Override - public Field field1() { - return ColumnPrivileges.COLUMN_PRIVILEGES.GRANTOR; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field2() { - return ColumnPrivileges.COLUMN_PRIVILEGES.GRANTEE; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field3() { - return ColumnPrivileges.COLUMN_PRIVILEGES.TABLE_CATALOG; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field4() { - return ColumnPrivileges.COLUMN_PRIVILEGES.TABLE_SCHEMA; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field5() { - return ColumnPrivileges.COLUMN_PRIVILEGES.TABLE_NAME; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field6() { - return ColumnPrivileges.COLUMN_PRIVILEGES.COLUMN_NAME; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field7() { - return ColumnPrivileges.COLUMN_PRIVILEGES.PRIVILEGE_TYPE; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field8() { - return ColumnPrivileges.COLUMN_PRIVILEGES.IS_GRANTABLE; - } - - /** - * {@inheritDoc} - */ - @Override - public String value1() { - return getGrantor(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value2() { - return getGrantee(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value3() { - return getTableCatalog(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value4() { - return getTableSchema(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value5() { - return getTableName(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value6() { - return getColumnName(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value7() { - return getPrivilegeType(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value8() { - return getIsGrantable(); - } - - /** - * {@inheritDoc} - */ - @Override - public ColumnPrivilegesRecord value1(String value) { - setGrantor(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public ColumnPrivilegesRecord value2(String value) { - setGrantee(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public ColumnPrivilegesRecord value3(String value) { - setTableCatalog(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public ColumnPrivilegesRecord value4(String value) { - setTableSchema(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public ColumnPrivilegesRecord value5(String value) { - setTableName(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public ColumnPrivilegesRecord value6(String value) { - setColumnName(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public ColumnPrivilegesRecord value7(String value) { - setPrivilegeType(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public ColumnPrivilegesRecord value8(String value) { - setIsGrantable(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public ColumnPrivilegesRecord values(String value1, String value2, String value3, String value4, String value5, String value6, String value7, String value8) { - value1(value1); - value2(value2); - value3(value3); - value4(value4); - value5(value5); - value6(value6); - value7(value7); - value8(value8); - return this; - } - - // ------------------------------------------------------------------------- - // Constructors - // ------------------------------------------------------------------------- - - /** - * Create a detached ColumnPrivilegesRecord - */ - public ColumnPrivilegesRecord() { - super(ColumnPrivileges.COLUMN_PRIVILEGES); - } - - /** - * Create a detached, initialised ColumnPrivilegesRecord - */ - public ColumnPrivilegesRecord(String grantor, String grantee, String tableCatalog, String tableSchema, String tableName, String columnName, String privilegeType, String isGrantable) { - super(ColumnPrivileges.COLUMN_PRIVILEGES); - - setValue(0, grantor); - setValue(1, grantee); - setValue(2, tableCatalog); - setValue(3, tableSchema); - setValue(4, tableName); - setValue(5, columnName); - setValue(6, privilegeType); - setValue(7, isGrantable); - } -} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/ColumnsRecord.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/ColumnsRecord.java deleted file mode 100644 index 63a83b0056..0000000000 --- a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/ColumnsRecord.java +++ /dev/null @@ -1,392 +0,0 @@ -/** - * This class is generated by jOOQ - */ -package com.baeldung.jooq.introduction.db.information_schema.tables.records; - - -import com.baeldung.jooq.introduction.db.information_schema.tables.Columns; - -import javax.annotation.Generated; - -import org.jooq.impl.TableRecordImpl; - - -/** - * This class is generated by jOOQ. - */ -@Generated( - value = { - "http://www.jooq.org", - "jOOQ version:3.7.3" - }, - comments = "This class is generated by jOOQ" -) -@SuppressWarnings({ "all", "unchecked", "rawtypes" }) -public class ColumnsRecord extends TableRecordImpl { - - private static final long serialVersionUID = 1850723283; - - /** - * Setter for INFORMATION_SCHEMA.COLUMNS.TABLE_CATALOG. - */ - public void setTableCatalog(String value) { - setValue(0, value); - } - - /** - * Getter for INFORMATION_SCHEMA.COLUMNS.TABLE_CATALOG. - */ - public String getTableCatalog() { - return (String) getValue(0); - } - - /** - * Setter for INFORMATION_SCHEMA.COLUMNS.TABLE_SCHEMA. - */ - public void setTableSchema(String value) { - setValue(1, value); - } - - /** - * Getter for INFORMATION_SCHEMA.COLUMNS.TABLE_SCHEMA. - */ - public String getTableSchema() { - return (String) getValue(1); - } - - /** - * Setter for INFORMATION_SCHEMA.COLUMNS.TABLE_NAME. - */ - public void setTableName(String value) { - setValue(2, value); - } - - /** - * Getter for INFORMATION_SCHEMA.COLUMNS.TABLE_NAME. - */ - public String getTableName() { - return (String) getValue(2); - } - - /** - * Setter for INFORMATION_SCHEMA.COLUMNS.COLUMN_NAME. - */ - public void setColumnName(String value) { - setValue(3, value); - } - - /** - * Getter for INFORMATION_SCHEMA.COLUMNS.COLUMN_NAME. - */ - public String getColumnName() { - return (String) getValue(3); - } - - /** - * Setter for INFORMATION_SCHEMA.COLUMNS.ORDINAL_POSITION. - */ - public void setOrdinalPosition(Integer value) { - setValue(4, value); - } - - /** - * Getter for INFORMATION_SCHEMA.COLUMNS.ORDINAL_POSITION. - */ - public Integer getOrdinalPosition() { - return (Integer) getValue(4); - } - - /** - * Setter for INFORMATION_SCHEMA.COLUMNS.COLUMN_DEFAULT. - */ - public void setColumnDefault(String value) { - setValue(5, value); - } - - /** - * Getter for INFORMATION_SCHEMA.COLUMNS.COLUMN_DEFAULT. - */ - public String getColumnDefault() { - return (String) getValue(5); - } - - /** - * Setter for INFORMATION_SCHEMA.COLUMNS.IS_NULLABLE. - */ - public void setIsNullable(String value) { - setValue(6, value); - } - - /** - * Getter for INFORMATION_SCHEMA.COLUMNS.IS_NULLABLE. - */ - public String getIsNullable() { - return (String) getValue(6); - } - - /** - * Setter for INFORMATION_SCHEMA.COLUMNS.DATA_TYPE. - */ - public void setDataType(Integer value) { - setValue(7, value); - } - - /** - * Getter for INFORMATION_SCHEMA.COLUMNS.DATA_TYPE. - */ - public Integer getDataType() { - return (Integer) getValue(7); - } - - /** - * Setter for INFORMATION_SCHEMA.COLUMNS.CHARACTER_MAXIMUM_LENGTH. - */ - public void setCharacterMaximumLength(Integer value) { - setValue(8, value); - } - - /** - * Getter for INFORMATION_SCHEMA.COLUMNS.CHARACTER_MAXIMUM_LENGTH. - */ - public Integer getCharacterMaximumLength() { - return (Integer) getValue(8); - } - - /** - * Setter for INFORMATION_SCHEMA.COLUMNS.CHARACTER_OCTET_LENGTH. - */ - public void setCharacterOctetLength(Integer value) { - setValue(9, value); - } - - /** - * Getter for INFORMATION_SCHEMA.COLUMNS.CHARACTER_OCTET_LENGTH. - */ - public Integer getCharacterOctetLength() { - return (Integer) getValue(9); - } - - /** - * Setter for INFORMATION_SCHEMA.COLUMNS.NUMERIC_PRECISION. - */ - public void setNumericPrecision(Integer value) { - setValue(10, value); - } - - /** - * Getter for INFORMATION_SCHEMA.COLUMNS.NUMERIC_PRECISION. - */ - public Integer getNumericPrecision() { - return (Integer) getValue(10); - } - - /** - * Setter for INFORMATION_SCHEMA.COLUMNS.NUMERIC_PRECISION_RADIX. - */ - public void setNumericPrecisionRadix(Integer value) { - setValue(11, value); - } - - /** - * Getter for INFORMATION_SCHEMA.COLUMNS.NUMERIC_PRECISION_RADIX. - */ - public Integer getNumericPrecisionRadix() { - return (Integer) getValue(11); - } - - /** - * Setter for INFORMATION_SCHEMA.COLUMNS.NUMERIC_SCALE. - */ - public void setNumericScale(Integer value) { - setValue(12, value); - } - - /** - * Getter for INFORMATION_SCHEMA.COLUMNS.NUMERIC_SCALE. - */ - public Integer getNumericScale() { - return (Integer) getValue(12); - } - - /** - * Setter for INFORMATION_SCHEMA.COLUMNS.CHARACTER_SET_NAME. - */ - public void setCharacterSetName(String value) { - setValue(13, value); - } - - /** - * Getter for INFORMATION_SCHEMA.COLUMNS.CHARACTER_SET_NAME. - */ - public String getCharacterSetName() { - return (String) getValue(13); - } - - /** - * Setter for INFORMATION_SCHEMA.COLUMNS.COLLATION_NAME. - */ - public void setCollationName(String value) { - setValue(14, value); - } - - /** - * Getter for INFORMATION_SCHEMA.COLUMNS.COLLATION_NAME. - */ - public String getCollationName() { - return (String) getValue(14); - } - - /** - * Setter for INFORMATION_SCHEMA.COLUMNS.TYPE_NAME. - */ - public void setTypeName(String value) { - setValue(15, value); - } - - /** - * Getter for INFORMATION_SCHEMA.COLUMNS.TYPE_NAME. - */ - public String getTypeName() { - return (String) getValue(15); - } - - /** - * Setter for INFORMATION_SCHEMA.COLUMNS.NULLABLE. - */ - public void setNullable(Integer value) { - setValue(16, value); - } - - /** - * Getter for INFORMATION_SCHEMA.COLUMNS.NULLABLE. - */ - public Integer getNullable() { - return (Integer) getValue(16); - } - - /** - * Setter for INFORMATION_SCHEMA.COLUMNS.IS_COMPUTED. - */ - public void setIsComputed(Boolean value) { - setValue(17, value); - } - - /** - * Getter for INFORMATION_SCHEMA.COLUMNS.IS_COMPUTED. - */ - public Boolean getIsComputed() { - return (Boolean) getValue(17); - } - - /** - * Setter for INFORMATION_SCHEMA.COLUMNS.SELECTIVITY. - */ - public void setSelectivity(Integer value) { - setValue(18, value); - } - - /** - * Getter for INFORMATION_SCHEMA.COLUMNS.SELECTIVITY. - */ - public Integer getSelectivity() { - return (Integer) getValue(18); - } - - /** - * Setter for INFORMATION_SCHEMA.COLUMNS.CHECK_CONSTRAINT. - */ - public void setCheckConstraint(String value) { - setValue(19, value); - } - - /** - * Getter for INFORMATION_SCHEMA.COLUMNS.CHECK_CONSTRAINT. - */ - public String getCheckConstraint() { - return (String) getValue(19); - } - - /** - * Setter for INFORMATION_SCHEMA.COLUMNS.SEQUENCE_NAME. - */ - public void setSequenceName(String value) { - setValue(20, value); - } - - /** - * Getter for INFORMATION_SCHEMA.COLUMNS.SEQUENCE_NAME. - */ - public String getSequenceName() { - return (String) getValue(20); - } - - /** - * Setter for INFORMATION_SCHEMA.COLUMNS.REMARKS. - */ - public void setRemarks(String value) { - setValue(21, value); - } - - /** - * Getter for INFORMATION_SCHEMA.COLUMNS.REMARKS. - */ - public String getRemarks() { - return (String) getValue(21); - } - - /** - * Setter for INFORMATION_SCHEMA.COLUMNS.SOURCE_DATA_TYPE. - */ - public void setSourceDataType(Short value) { - setValue(22, value); - } - - /** - * Getter for INFORMATION_SCHEMA.COLUMNS.SOURCE_DATA_TYPE. - */ - public Short getSourceDataType() { - return (Short) getValue(22); - } - - // ------------------------------------------------------------------------- - // Constructors - // ------------------------------------------------------------------------- - - /** - * Create a detached ColumnsRecord - */ - public ColumnsRecord() { - super(Columns.COLUMNS); - } - - /** - * Create a detached, initialised ColumnsRecord - */ - public ColumnsRecord(String tableCatalog, String tableSchema, String tableName, String columnName, Integer ordinalPosition, String columnDefault, String isNullable, Integer dataType, Integer characterMaximumLength, Integer characterOctetLength, Integer numericPrecision, Integer numericPrecisionRadix, Integer numericScale, String characterSetName, String collationName, String typeName, Integer nullable, Boolean isComputed, Integer selectivity, String checkConstraint, String sequenceName, String remarks, Short sourceDataType) { - super(Columns.COLUMNS); - - setValue(0, tableCatalog); - setValue(1, tableSchema); - setValue(2, tableName); - setValue(3, columnName); - setValue(4, ordinalPosition); - setValue(5, columnDefault); - setValue(6, isNullable); - setValue(7, dataType); - setValue(8, characterMaximumLength); - setValue(9, characterOctetLength); - setValue(10, numericPrecision); - setValue(11, numericPrecisionRadix); - setValue(12, numericScale); - setValue(13, characterSetName); - setValue(14, collationName); - setValue(15, typeName); - setValue(16, nullable); - setValue(17, isComputed); - setValue(18, selectivity); - setValue(19, checkConstraint); - setValue(20, sequenceName); - setValue(21, remarks); - setValue(22, sourceDataType); - } -} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/ConstantsRecord.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/ConstantsRecord.java deleted file mode 100644 index b1225bd747..0000000000 --- a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/ConstantsRecord.java +++ /dev/null @@ -1,365 +0,0 @@ -/** - * This class is generated by jOOQ - */ -package com.baeldung.jooq.introduction.db.information_schema.tables.records; - - -import com.baeldung.jooq.introduction.db.information_schema.tables.Constants; - -import javax.annotation.Generated; - -import org.jooq.Field; -import org.jooq.Record7; -import org.jooq.Row7; -import org.jooq.impl.TableRecordImpl; - - -/** - * This class is generated by jOOQ. - */ -@Generated( - value = { - "http://www.jooq.org", - "jOOQ version:3.7.3" - }, - comments = "This class is generated by jOOQ" -) -@SuppressWarnings({ "all", "unchecked", "rawtypes" }) -public class ConstantsRecord extends TableRecordImpl implements Record7 { - - private static final long serialVersionUID = -775500532; - - /** - * Setter for INFORMATION_SCHEMA.CONSTANTS.CONSTANT_CATALOG. - */ - public void setConstantCatalog(String value) { - setValue(0, value); - } - - /** - * Getter for INFORMATION_SCHEMA.CONSTANTS.CONSTANT_CATALOG. - */ - public String getConstantCatalog() { - return (String) getValue(0); - } - - /** - * Setter for INFORMATION_SCHEMA.CONSTANTS.CONSTANT_SCHEMA. - */ - public void setConstantSchema(String value) { - setValue(1, value); - } - - /** - * Getter for INFORMATION_SCHEMA.CONSTANTS.CONSTANT_SCHEMA. - */ - public String getConstantSchema() { - return (String) getValue(1); - } - - /** - * Setter for INFORMATION_SCHEMA.CONSTANTS.CONSTANT_NAME. - */ - public void setConstantName(String value) { - setValue(2, value); - } - - /** - * Getter for INFORMATION_SCHEMA.CONSTANTS.CONSTANT_NAME. - */ - public String getConstantName() { - return (String) getValue(2); - } - - /** - * Setter for INFORMATION_SCHEMA.CONSTANTS.DATA_TYPE. - */ - public void setDataType(Integer value) { - setValue(3, value); - } - - /** - * Getter for INFORMATION_SCHEMA.CONSTANTS.DATA_TYPE. - */ - public Integer getDataType() { - return (Integer) getValue(3); - } - - /** - * Setter for INFORMATION_SCHEMA.CONSTANTS.REMARKS. - */ - public void setRemarks(String value) { - setValue(4, value); - } - - /** - * Getter for INFORMATION_SCHEMA.CONSTANTS.REMARKS. - */ - public String getRemarks() { - return (String) getValue(4); - } - - /** - * Setter for INFORMATION_SCHEMA.CONSTANTS.SQL. - */ - public void setSql(String value) { - setValue(5, value); - } - - /** - * Getter for INFORMATION_SCHEMA.CONSTANTS.SQL. - */ - public String getSql() { - return (String) getValue(5); - } - - /** - * Setter for INFORMATION_SCHEMA.CONSTANTS.ID. - */ - public void setId(Integer value) { - setValue(6, value); - } - - /** - * Getter for INFORMATION_SCHEMA.CONSTANTS.ID. - */ - public Integer getId() { - return (Integer) getValue(6); - } - - // ------------------------------------------------------------------------- - // Record7 type implementation - // ------------------------------------------------------------------------- - - /** - * {@inheritDoc} - */ - @Override - public Row7 fieldsRow() { - return (Row7) super.fieldsRow(); - } - - /** - * {@inheritDoc} - */ - @Override - public Row7 valuesRow() { - return (Row7) super.valuesRow(); - } - - /** - * {@inheritDoc} - */ - @Override - public Field field1() { - return Constants.CONSTANTS.CONSTANT_CATALOG; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field2() { - return Constants.CONSTANTS.CONSTANT_SCHEMA; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field3() { - return Constants.CONSTANTS.CONSTANT_NAME; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field4() { - return Constants.CONSTANTS.DATA_TYPE; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field5() { - return Constants.CONSTANTS.REMARKS; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field6() { - return Constants.CONSTANTS.SQL; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field7() { - return Constants.CONSTANTS.ID; - } - - /** - * {@inheritDoc} - */ - @Override - public String value1() { - return getConstantCatalog(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value2() { - return getConstantSchema(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value3() { - return getConstantName(); - } - - /** - * {@inheritDoc} - */ - @Override - public Integer value4() { - return getDataType(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value5() { - return getRemarks(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value6() { - return getSql(); - } - - /** - * {@inheritDoc} - */ - @Override - public Integer value7() { - return getId(); - } - - /** - * {@inheritDoc} - */ - @Override - public ConstantsRecord value1(String value) { - setConstantCatalog(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public ConstantsRecord value2(String value) { - setConstantSchema(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public ConstantsRecord value3(String value) { - setConstantName(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public ConstantsRecord value4(Integer value) { - setDataType(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public ConstantsRecord value5(String value) { - setRemarks(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public ConstantsRecord value6(String value) { - setSql(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public ConstantsRecord value7(Integer value) { - setId(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public ConstantsRecord values(String value1, String value2, String value3, Integer value4, String value5, String value6, Integer value7) { - value1(value1); - value2(value2); - value3(value3); - value4(value4); - value5(value5); - value6(value6); - value7(value7); - return this; - } - - // ------------------------------------------------------------------------- - // Constructors - // ------------------------------------------------------------------------- - - /** - * Create a detached ConstantsRecord - */ - public ConstantsRecord() { - super(Constants.CONSTANTS); - } - - /** - * Create a detached, initialised ConstantsRecord - */ - public ConstantsRecord(String constantCatalog, String constantSchema, String constantName, Integer dataType, String remarks, String sql, Integer id) { - super(Constants.CONSTANTS); - - setValue(0, constantCatalog); - setValue(1, constantSchema); - setValue(2, constantName); - setValue(3, dataType); - setValue(4, remarks); - setValue(5, sql); - setValue(6, id); - } -} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/ConstraintsRecord.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/ConstraintsRecord.java deleted file mode 100644 index f1727739a2..0000000000 --- a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/ConstraintsRecord.java +++ /dev/null @@ -1,611 +0,0 @@ -/** - * This class is generated by jOOQ - */ -package com.baeldung.jooq.introduction.db.information_schema.tables.records; - - -import com.baeldung.jooq.introduction.db.information_schema.tables.Constraints; - -import javax.annotation.Generated; - -import org.jooq.Field; -import org.jooq.Record13; -import org.jooq.Row13; -import org.jooq.impl.TableRecordImpl; - - -/** - * This class is generated by jOOQ. - */ -@Generated( - value = { - "http://www.jooq.org", - "jOOQ version:3.7.3" - }, - comments = "This class is generated by jOOQ" -) -@SuppressWarnings({ "all", "unchecked", "rawtypes" }) -public class ConstraintsRecord extends TableRecordImpl implements Record13 { - - private static final long serialVersionUID = 759662490; - - /** - * Setter for INFORMATION_SCHEMA.CONSTRAINTS.CONSTRAINT_CATALOG. - */ - public void setConstraintCatalog(String value) { - setValue(0, value); - } - - /** - * Getter for INFORMATION_SCHEMA.CONSTRAINTS.CONSTRAINT_CATALOG. - */ - public String getConstraintCatalog() { - return (String) getValue(0); - } - - /** - * Setter for INFORMATION_SCHEMA.CONSTRAINTS.CONSTRAINT_SCHEMA. - */ - public void setConstraintSchema(String value) { - setValue(1, value); - } - - /** - * Getter for INFORMATION_SCHEMA.CONSTRAINTS.CONSTRAINT_SCHEMA. - */ - public String getConstraintSchema() { - return (String) getValue(1); - } - - /** - * Setter for INFORMATION_SCHEMA.CONSTRAINTS.CONSTRAINT_NAME. - */ - public void setConstraintName(String value) { - setValue(2, value); - } - - /** - * Getter for INFORMATION_SCHEMA.CONSTRAINTS.CONSTRAINT_NAME. - */ - public String getConstraintName() { - return (String) getValue(2); - } - - /** - * Setter for INFORMATION_SCHEMA.CONSTRAINTS.CONSTRAINT_TYPE. - */ - public void setConstraintType(String value) { - setValue(3, value); - } - - /** - * Getter for INFORMATION_SCHEMA.CONSTRAINTS.CONSTRAINT_TYPE. - */ - public String getConstraintType() { - return (String) getValue(3); - } - - /** - * Setter for INFORMATION_SCHEMA.CONSTRAINTS.TABLE_CATALOG. - */ - public void setTableCatalog(String value) { - setValue(4, value); - } - - /** - * Getter for INFORMATION_SCHEMA.CONSTRAINTS.TABLE_CATALOG. - */ - public String getTableCatalog() { - return (String) getValue(4); - } - - /** - * Setter for INFORMATION_SCHEMA.CONSTRAINTS.TABLE_SCHEMA. - */ - public void setTableSchema(String value) { - setValue(5, value); - } - - /** - * Getter for INFORMATION_SCHEMA.CONSTRAINTS.TABLE_SCHEMA. - */ - public String getTableSchema() { - return (String) getValue(5); - } - - /** - * Setter for INFORMATION_SCHEMA.CONSTRAINTS.TABLE_NAME. - */ - public void setTableName(String value) { - setValue(6, value); - } - - /** - * Getter for INFORMATION_SCHEMA.CONSTRAINTS.TABLE_NAME. - */ - public String getTableName() { - return (String) getValue(6); - } - - /** - * Setter for INFORMATION_SCHEMA.CONSTRAINTS.UNIQUE_INDEX_NAME. - */ - public void setUniqueIndexName(String value) { - setValue(7, value); - } - - /** - * Getter for INFORMATION_SCHEMA.CONSTRAINTS.UNIQUE_INDEX_NAME. - */ - public String getUniqueIndexName() { - return (String) getValue(7); - } - - /** - * Setter for INFORMATION_SCHEMA.CONSTRAINTS.CHECK_EXPRESSION. - */ - public void setCheckExpression(String value) { - setValue(8, value); - } - - /** - * Getter for INFORMATION_SCHEMA.CONSTRAINTS.CHECK_EXPRESSION. - */ - public String getCheckExpression() { - return (String) getValue(8); - } - - /** - * Setter for INFORMATION_SCHEMA.CONSTRAINTS.COLUMN_LIST. - */ - public void setColumnList(String value) { - setValue(9, value); - } - - /** - * Getter for INFORMATION_SCHEMA.CONSTRAINTS.COLUMN_LIST. - */ - public String getColumnList() { - return (String) getValue(9); - } - - /** - * Setter for INFORMATION_SCHEMA.CONSTRAINTS.REMARKS. - */ - public void setRemarks(String value) { - setValue(10, value); - } - - /** - * Getter for INFORMATION_SCHEMA.CONSTRAINTS.REMARKS. - */ - public String getRemarks() { - return (String) getValue(10); - } - - /** - * Setter for INFORMATION_SCHEMA.CONSTRAINTS.SQL. - */ - public void setSql(String value) { - setValue(11, value); - } - - /** - * Getter for INFORMATION_SCHEMA.CONSTRAINTS.SQL. - */ - public String getSql() { - return (String) getValue(11); - } - - /** - * Setter for INFORMATION_SCHEMA.CONSTRAINTS.ID. - */ - public void setId(Integer value) { - setValue(12, value); - } - - /** - * Getter for INFORMATION_SCHEMA.CONSTRAINTS.ID. - */ - public Integer getId() { - return (Integer) getValue(12); - } - - // ------------------------------------------------------------------------- - // Record13 type implementation - // ------------------------------------------------------------------------- - - /** - * {@inheritDoc} - */ - @Override - public Row13 fieldsRow() { - return (Row13) super.fieldsRow(); - } - - /** - * {@inheritDoc} - */ - @Override - public Row13 valuesRow() { - return (Row13) super.valuesRow(); - } - - /** - * {@inheritDoc} - */ - @Override - public Field field1() { - return Constraints.CONSTRAINTS.CONSTRAINT_CATALOG; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field2() { - return Constraints.CONSTRAINTS.CONSTRAINT_SCHEMA; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field3() { - return Constraints.CONSTRAINTS.CONSTRAINT_NAME; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field4() { - return Constraints.CONSTRAINTS.CONSTRAINT_TYPE; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field5() { - return Constraints.CONSTRAINTS.TABLE_CATALOG; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field6() { - return Constraints.CONSTRAINTS.TABLE_SCHEMA; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field7() { - return Constraints.CONSTRAINTS.TABLE_NAME; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field8() { - return Constraints.CONSTRAINTS.UNIQUE_INDEX_NAME; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field9() { - return Constraints.CONSTRAINTS.CHECK_EXPRESSION; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field10() { - return Constraints.CONSTRAINTS.COLUMN_LIST; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field11() { - return Constraints.CONSTRAINTS.REMARKS; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field12() { - return Constraints.CONSTRAINTS.SQL; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field13() { - return Constraints.CONSTRAINTS.ID; - } - - /** - * {@inheritDoc} - */ - @Override - public String value1() { - return getConstraintCatalog(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value2() { - return getConstraintSchema(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value3() { - return getConstraintName(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value4() { - return getConstraintType(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value5() { - return getTableCatalog(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value6() { - return getTableSchema(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value7() { - return getTableName(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value8() { - return getUniqueIndexName(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value9() { - return getCheckExpression(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value10() { - return getColumnList(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value11() { - return getRemarks(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value12() { - return getSql(); - } - - /** - * {@inheritDoc} - */ - @Override - public Integer value13() { - return getId(); - } - - /** - * {@inheritDoc} - */ - @Override - public ConstraintsRecord value1(String value) { - setConstraintCatalog(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public ConstraintsRecord value2(String value) { - setConstraintSchema(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public ConstraintsRecord value3(String value) { - setConstraintName(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public ConstraintsRecord value4(String value) { - setConstraintType(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public ConstraintsRecord value5(String value) { - setTableCatalog(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public ConstraintsRecord value6(String value) { - setTableSchema(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public ConstraintsRecord value7(String value) { - setTableName(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public ConstraintsRecord value8(String value) { - setUniqueIndexName(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public ConstraintsRecord value9(String value) { - setCheckExpression(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public ConstraintsRecord value10(String value) { - setColumnList(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public ConstraintsRecord value11(String value) { - setRemarks(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public ConstraintsRecord value12(String value) { - setSql(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public ConstraintsRecord value13(Integer value) { - setId(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public ConstraintsRecord values(String value1, String value2, String value3, String value4, String value5, String value6, String value7, String value8, String value9, String value10, String value11, String value12, Integer value13) { - value1(value1); - value2(value2); - value3(value3); - value4(value4); - value5(value5); - value6(value6); - value7(value7); - value8(value8); - value9(value9); - value10(value10); - value11(value11); - value12(value12); - value13(value13); - return this; - } - - // ------------------------------------------------------------------------- - // Constructors - // ------------------------------------------------------------------------- - - /** - * Create a detached ConstraintsRecord - */ - public ConstraintsRecord() { - super(Constraints.CONSTRAINTS); - } - - /** - * Create a detached, initialised ConstraintsRecord - */ - public ConstraintsRecord(String constraintCatalog, String constraintSchema, String constraintName, String constraintType, String tableCatalog, String tableSchema, String tableName, String uniqueIndexName, String checkExpression, String columnList, String remarks, String sql, Integer id) { - super(Constraints.CONSTRAINTS); - - setValue(0, constraintCatalog); - setValue(1, constraintSchema); - setValue(2, constraintName); - setValue(3, constraintType); - setValue(4, tableCatalog); - setValue(5, tableSchema); - setValue(6, tableName); - setValue(7, uniqueIndexName); - setValue(8, checkExpression); - setValue(9, columnList); - setValue(10, remarks); - setValue(11, sql); - setValue(12, id); - } -} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/CrossReferencesRecord.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/CrossReferencesRecord.java deleted file mode 100644 index ab5ae9c2a3..0000000000 --- a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/CrossReferencesRecord.java +++ /dev/null @@ -1,652 +0,0 @@ -/** - * This class is generated by jOOQ - */ -package com.baeldung.jooq.introduction.db.information_schema.tables.records; - - -import com.baeldung.jooq.introduction.db.information_schema.tables.CrossReferences; - -import javax.annotation.Generated; - -import org.jooq.Field; -import org.jooq.Record14; -import org.jooq.Row14; -import org.jooq.impl.TableRecordImpl; - - -/** - * This class is generated by jOOQ. - */ -@Generated( - value = { - "http://www.jooq.org", - "jOOQ version:3.7.3" - }, - comments = "This class is generated by jOOQ" -) -@SuppressWarnings({ "all", "unchecked", "rawtypes" }) -public class CrossReferencesRecord extends TableRecordImpl implements Record14 { - - private static final long serialVersionUID = -328289893; - - /** - * Setter for INFORMATION_SCHEMA.CROSS_REFERENCES.PKTABLE_CATALOG. - */ - public void setPktableCatalog(String value) { - setValue(0, value); - } - - /** - * Getter for INFORMATION_SCHEMA.CROSS_REFERENCES.PKTABLE_CATALOG. - */ - public String getPktableCatalog() { - return (String) getValue(0); - } - - /** - * Setter for INFORMATION_SCHEMA.CROSS_REFERENCES.PKTABLE_SCHEMA. - */ - public void setPktableSchema(String value) { - setValue(1, value); - } - - /** - * Getter for INFORMATION_SCHEMA.CROSS_REFERENCES.PKTABLE_SCHEMA. - */ - public String getPktableSchema() { - return (String) getValue(1); - } - - /** - * Setter for INFORMATION_SCHEMA.CROSS_REFERENCES.PKTABLE_NAME. - */ - public void setPktableName(String value) { - setValue(2, value); - } - - /** - * Getter for INFORMATION_SCHEMA.CROSS_REFERENCES.PKTABLE_NAME. - */ - public String getPktableName() { - return (String) getValue(2); - } - - /** - * Setter for INFORMATION_SCHEMA.CROSS_REFERENCES.PKCOLUMN_NAME. - */ - public void setPkcolumnName(String value) { - setValue(3, value); - } - - /** - * Getter for INFORMATION_SCHEMA.CROSS_REFERENCES.PKCOLUMN_NAME. - */ - public String getPkcolumnName() { - return (String) getValue(3); - } - - /** - * Setter for INFORMATION_SCHEMA.CROSS_REFERENCES.FKTABLE_CATALOG. - */ - public void setFktableCatalog(String value) { - setValue(4, value); - } - - /** - * Getter for INFORMATION_SCHEMA.CROSS_REFERENCES.FKTABLE_CATALOG. - */ - public String getFktableCatalog() { - return (String) getValue(4); - } - - /** - * Setter for INFORMATION_SCHEMA.CROSS_REFERENCES.FKTABLE_SCHEMA. - */ - public void setFktableSchema(String value) { - setValue(5, value); - } - - /** - * Getter for INFORMATION_SCHEMA.CROSS_REFERENCES.FKTABLE_SCHEMA. - */ - public String getFktableSchema() { - return (String) getValue(5); - } - - /** - * Setter for INFORMATION_SCHEMA.CROSS_REFERENCES.FKTABLE_NAME. - */ - public void setFktableName(String value) { - setValue(6, value); - } - - /** - * Getter for INFORMATION_SCHEMA.CROSS_REFERENCES.FKTABLE_NAME. - */ - public String getFktableName() { - return (String) getValue(6); - } - - /** - * Setter for INFORMATION_SCHEMA.CROSS_REFERENCES.FKCOLUMN_NAME. - */ - public void setFkcolumnName(String value) { - setValue(7, value); - } - - /** - * Getter for INFORMATION_SCHEMA.CROSS_REFERENCES.FKCOLUMN_NAME. - */ - public String getFkcolumnName() { - return (String) getValue(7); - } - - /** - * Setter for INFORMATION_SCHEMA.CROSS_REFERENCES.ORDINAL_POSITION. - */ - public void setOrdinalPosition(Short value) { - setValue(8, value); - } - - /** - * Getter for INFORMATION_SCHEMA.CROSS_REFERENCES.ORDINAL_POSITION. - */ - public Short getOrdinalPosition() { - return (Short) getValue(8); - } - - /** - * Setter for INFORMATION_SCHEMA.CROSS_REFERENCES.UPDATE_RULE. - */ - public void setUpdateRule(Short value) { - setValue(9, value); - } - - /** - * Getter for INFORMATION_SCHEMA.CROSS_REFERENCES.UPDATE_RULE. - */ - public Short getUpdateRule() { - return (Short) getValue(9); - } - - /** - * Setter for INFORMATION_SCHEMA.CROSS_REFERENCES.DELETE_RULE. - */ - public void setDeleteRule(Short value) { - setValue(10, value); - } - - /** - * Getter for INFORMATION_SCHEMA.CROSS_REFERENCES.DELETE_RULE. - */ - public Short getDeleteRule() { - return (Short) getValue(10); - } - - /** - * Setter for INFORMATION_SCHEMA.CROSS_REFERENCES.FK_NAME. - */ - public void setFkName(String value) { - setValue(11, value); - } - - /** - * Getter for INFORMATION_SCHEMA.CROSS_REFERENCES.FK_NAME. - */ - public String getFkName() { - return (String) getValue(11); - } - - /** - * Setter for INFORMATION_SCHEMA.CROSS_REFERENCES.PK_NAME. - */ - public void setPkName(String value) { - setValue(12, value); - } - - /** - * Getter for INFORMATION_SCHEMA.CROSS_REFERENCES.PK_NAME. - */ - public String getPkName() { - return (String) getValue(12); - } - - /** - * Setter for INFORMATION_SCHEMA.CROSS_REFERENCES.DEFERRABILITY. - */ - public void setDeferrability(Short value) { - setValue(13, value); - } - - /** - * Getter for INFORMATION_SCHEMA.CROSS_REFERENCES.DEFERRABILITY. - */ - public Short getDeferrability() { - return (Short) getValue(13); - } - - // ------------------------------------------------------------------------- - // Record14 type implementation - // ------------------------------------------------------------------------- - - /** - * {@inheritDoc} - */ - @Override - public Row14 fieldsRow() { - return (Row14) super.fieldsRow(); - } - - /** - * {@inheritDoc} - */ - @Override - public Row14 valuesRow() { - return (Row14) super.valuesRow(); - } - - /** - * {@inheritDoc} - */ - @Override - public Field field1() { - return CrossReferences.CROSS_REFERENCES.PKTABLE_CATALOG; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field2() { - return CrossReferences.CROSS_REFERENCES.PKTABLE_SCHEMA; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field3() { - return CrossReferences.CROSS_REFERENCES.PKTABLE_NAME; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field4() { - return CrossReferences.CROSS_REFERENCES.PKCOLUMN_NAME; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field5() { - return CrossReferences.CROSS_REFERENCES.FKTABLE_CATALOG; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field6() { - return CrossReferences.CROSS_REFERENCES.FKTABLE_SCHEMA; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field7() { - return CrossReferences.CROSS_REFERENCES.FKTABLE_NAME; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field8() { - return CrossReferences.CROSS_REFERENCES.FKCOLUMN_NAME; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field9() { - return CrossReferences.CROSS_REFERENCES.ORDINAL_POSITION; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field10() { - return CrossReferences.CROSS_REFERENCES.UPDATE_RULE; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field11() { - return CrossReferences.CROSS_REFERENCES.DELETE_RULE; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field12() { - return CrossReferences.CROSS_REFERENCES.FK_NAME; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field13() { - return CrossReferences.CROSS_REFERENCES.PK_NAME; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field14() { - return CrossReferences.CROSS_REFERENCES.DEFERRABILITY; - } - - /** - * {@inheritDoc} - */ - @Override - public String value1() { - return getPktableCatalog(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value2() { - return getPktableSchema(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value3() { - return getPktableName(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value4() { - return getPkcolumnName(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value5() { - return getFktableCatalog(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value6() { - return getFktableSchema(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value7() { - return getFktableName(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value8() { - return getFkcolumnName(); - } - - /** - * {@inheritDoc} - */ - @Override - public Short value9() { - return getOrdinalPosition(); - } - - /** - * {@inheritDoc} - */ - @Override - public Short value10() { - return getUpdateRule(); - } - - /** - * {@inheritDoc} - */ - @Override - public Short value11() { - return getDeleteRule(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value12() { - return getFkName(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value13() { - return getPkName(); - } - - /** - * {@inheritDoc} - */ - @Override - public Short value14() { - return getDeferrability(); - } - - /** - * {@inheritDoc} - */ - @Override - public CrossReferencesRecord value1(String value) { - setPktableCatalog(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public CrossReferencesRecord value2(String value) { - setPktableSchema(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public CrossReferencesRecord value3(String value) { - setPktableName(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public CrossReferencesRecord value4(String value) { - setPkcolumnName(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public CrossReferencesRecord value5(String value) { - setFktableCatalog(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public CrossReferencesRecord value6(String value) { - setFktableSchema(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public CrossReferencesRecord value7(String value) { - setFktableName(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public CrossReferencesRecord value8(String value) { - setFkcolumnName(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public CrossReferencesRecord value9(Short value) { - setOrdinalPosition(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public CrossReferencesRecord value10(Short value) { - setUpdateRule(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public CrossReferencesRecord value11(Short value) { - setDeleteRule(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public CrossReferencesRecord value12(String value) { - setFkName(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public CrossReferencesRecord value13(String value) { - setPkName(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public CrossReferencesRecord value14(Short value) { - setDeferrability(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public CrossReferencesRecord values(String value1, String value2, String value3, String value4, String value5, String value6, String value7, String value8, Short value9, Short value10, Short value11, String value12, String value13, Short value14) { - value1(value1); - value2(value2); - value3(value3); - value4(value4); - value5(value5); - value6(value6); - value7(value7); - value8(value8); - value9(value9); - value10(value10); - value11(value11); - value12(value12); - value13(value13); - value14(value14); - return this; - } - - // ------------------------------------------------------------------------- - // Constructors - // ------------------------------------------------------------------------- - - /** - * Create a detached CrossReferencesRecord - */ - public CrossReferencesRecord() { - super(CrossReferences.CROSS_REFERENCES); - } - - /** - * Create a detached, initialised CrossReferencesRecord - */ - public CrossReferencesRecord(String pktableCatalog, String pktableSchema, String pktableName, String pkcolumnName, String fktableCatalog, String fktableSchema, String fktableName, String fkcolumnName, Short ordinalPosition, Short updateRule, Short deleteRule, String fkName, String pkName, Short deferrability) { - super(CrossReferences.CROSS_REFERENCES); - - setValue(0, pktableCatalog); - setValue(1, pktableSchema); - setValue(2, pktableName); - setValue(3, pkcolumnName); - setValue(4, fktableCatalog); - setValue(5, fktableSchema); - setValue(6, fktableName); - setValue(7, fkcolumnName); - setValue(8, ordinalPosition); - setValue(9, updateRule); - setValue(10, deleteRule); - setValue(11, fkName); - setValue(12, pkName); - setValue(13, deferrability); - } -} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/DomainsRecord.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/DomainsRecord.java deleted file mode 100644 index 7f3b812750..0000000000 --- a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/DomainsRecord.java +++ /dev/null @@ -1,652 +0,0 @@ -/** - * This class is generated by jOOQ - */ -package com.baeldung.jooq.introduction.db.information_schema.tables.records; - - -import com.baeldung.jooq.introduction.db.information_schema.tables.Domains; - -import javax.annotation.Generated; - -import org.jooq.Field; -import org.jooq.Record14; -import org.jooq.Row14; -import org.jooq.impl.TableRecordImpl; - - -/** - * This class is generated by jOOQ. - */ -@Generated( - value = { - "http://www.jooq.org", - "jOOQ version:3.7.3" - }, - comments = "This class is generated by jOOQ" -) -@SuppressWarnings({ "all", "unchecked", "rawtypes" }) -public class DomainsRecord extends TableRecordImpl implements Record14 { - - private static final long serialVersionUID = 1750298997; - - /** - * Setter for INFORMATION_SCHEMA.DOMAINS.DOMAIN_CATALOG. - */ - public void setDomainCatalog(String value) { - setValue(0, value); - } - - /** - * Getter for INFORMATION_SCHEMA.DOMAINS.DOMAIN_CATALOG. - */ - public String getDomainCatalog() { - return (String) getValue(0); - } - - /** - * Setter for INFORMATION_SCHEMA.DOMAINS.DOMAIN_SCHEMA. - */ - public void setDomainSchema(String value) { - setValue(1, value); - } - - /** - * Getter for INFORMATION_SCHEMA.DOMAINS.DOMAIN_SCHEMA. - */ - public String getDomainSchema() { - return (String) getValue(1); - } - - /** - * Setter for INFORMATION_SCHEMA.DOMAINS.DOMAIN_NAME. - */ - public void setDomainName(String value) { - setValue(2, value); - } - - /** - * Getter for INFORMATION_SCHEMA.DOMAINS.DOMAIN_NAME. - */ - public String getDomainName() { - return (String) getValue(2); - } - - /** - * Setter for INFORMATION_SCHEMA.DOMAINS.COLUMN_DEFAULT. - */ - public void setColumnDefault(String value) { - setValue(3, value); - } - - /** - * Getter for INFORMATION_SCHEMA.DOMAINS.COLUMN_DEFAULT. - */ - public String getColumnDefault() { - return (String) getValue(3); - } - - /** - * Setter for INFORMATION_SCHEMA.DOMAINS.IS_NULLABLE. - */ - public void setIsNullable(String value) { - setValue(4, value); - } - - /** - * Getter for INFORMATION_SCHEMA.DOMAINS.IS_NULLABLE. - */ - public String getIsNullable() { - return (String) getValue(4); - } - - /** - * Setter for INFORMATION_SCHEMA.DOMAINS.DATA_TYPE. - */ - public void setDataType(Integer value) { - setValue(5, value); - } - - /** - * Getter for INFORMATION_SCHEMA.DOMAINS.DATA_TYPE. - */ - public Integer getDataType() { - return (Integer) getValue(5); - } - - /** - * Setter for INFORMATION_SCHEMA.DOMAINS.PRECISION. - */ - public void setPrecision(Integer value) { - setValue(6, value); - } - - /** - * Getter for INFORMATION_SCHEMA.DOMAINS.PRECISION. - */ - public Integer getPrecision() { - return (Integer) getValue(6); - } - - /** - * Setter for INFORMATION_SCHEMA.DOMAINS.SCALE. - */ - public void setScale(Integer value) { - setValue(7, value); - } - - /** - * Getter for INFORMATION_SCHEMA.DOMAINS.SCALE. - */ - public Integer getScale() { - return (Integer) getValue(7); - } - - /** - * Setter for INFORMATION_SCHEMA.DOMAINS.TYPE_NAME. - */ - public void setTypeName(String value) { - setValue(8, value); - } - - /** - * Getter for INFORMATION_SCHEMA.DOMAINS.TYPE_NAME. - */ - public String getTypeName() { - return (String) getValue(8); - } - - /** - * Setter for INFORMATION_SCHEMA.DOMAINS.SELECTIVITY. - */ - public void setSelectivity(Integer value) { - setValue(9, value); - } - - /** - * Getter for INFORMATION_SCHEMA.DOMAINS.SELECTIVITY. - */ - public Integer getSelectivity() { - return (Integer) getValue(9); - } - - /** - * Setter for INFORMATION_SCHEMA.DOMAINS.CHECK_CONSTRAINT. - */ - public void setCheckConstraint(String value) { - setValue(10, value); - } - - /** - * Getter for INFORMATION_SCHEMA.DOMAINS.CHECK_CONSTRAINT. - */ - public String getCheckConstraint() { - return (String) getValue(10); - } - - /** - * Setter for INFORMATION_SCHEMA.DOMAINS.REMARKS. - */ - public void setRemarks(String value) { - setValue(11, value); - } - - /** - * Getter for INFORMATION_SCHEMA.DOMAINS.REMARKS. - */ - public String getRemarks() { - return (String) getValue(11); - } - - /** - * Setter for INFORMATION_SCHEMA.DOMAINS.SQL. - */ - public void setSql(String value) { - setValue(12, value); - } - - /** - * Getter for INFORMATION_SCHEMA.DOMAINS.SQL. - */ - public String getSql() { - return (String) getValue(12); - } - - /** - * Setter for INFORMATION_SCHEMA.DOMAINS.ID. - */ - public void setId(Integer value) { - setValue(13, value); - } - - /** - * Getter for INFORMATION_SCHEMA.DOMAINS.ID. - */ - public Integer getId() { - return (Integer) getValue(13); - } - - // ------------------------------------------------------------------------- - // Record14 type implementation - // ------------------------------------------------------------------------- - - /** - * {@inheritDoc} - */ - @Override - public Row14 fieldsRow() { - return (Row14) super.fieldsRow(); - } - - /** - * {@inheritDoc} - */ - @Override - public Row14 valuesRow() { - return (Row14) super.valuesRow(); - } - - /** - * {@inheritDoc} - */ - @Override - public Field field1() { - return Domains.DOMAINS.DOMAIN_CATALOG; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field2() { - return Domains.DOMAINS.DOMAIN_SCHEMA; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field3() { - return Domains.DOMAINS.DOMAIN_NAME; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field4() { - return Domains.DOMAINS.COLUMN_DEFAULT; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field5() { - return Domains.DOMAINS.IS_NULLABLE; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field6() { - return Domains.DOMAINS.DATA_TYPE; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field7() { - return Domains.DOMAINS.PRECISION; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field8() { - return Domains.DOMAINS.SCALE; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field9() { - return Domains.DOMAINS.TYPE_NAME; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field10() { - return Domains.DOMAINS.SELECTIVITY; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field11() { - return Domains.DOMAINS.CHECK_CONSTRAINT; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field12() { - return Domains.DOMAINS.REMARKS; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field13() { - return Domains.DOMAINS.SQL; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field14() { - return Domains.DOMAINS.ID; - } - - /** - * {@inheritDoc} - */ - @Override - public String value1() { - return getDomainCatalog(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value2() { - return getDomainSchema(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value3() { - return getDomainName(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value4() { - return getColumnDefault(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value5() { - return getIsNullable(); - } - - /** - * {@inheritDoc} - */ - @Override - public Integer value6() { - return getDataType(); - } - - /** - * {@inheritDoc} - */ - @Override - public Integer value7() { - return getPrecision(); - } - - /** - * {@inheritDoc} - */ - @Override - public Integer value8() { - return getScale(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value9() { - return getTypeName(); - } - - /** - * {@inheritDoc} - */ - @Override - public Integer value10() { - return getSelectivity(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value11() { - return getCheckConstraint(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value12() { - return getRemarks(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value13() { - return getSql(); - } - - /** - * {@inheritDoc} - */ - @Override - public Integer value14() { - return getId(); - } - - /** - * {@inheritDoc} - */ - @Override - public DomainsRecord value1(String value) { - setDomainCatalog(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public DomainsRecord value2(String value) { - setDomainSchema(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public DomainsRecord value3(String value) { - setDomainName(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public DomainsRecord value4(String value) { - setColumnDefault(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public DomainsRecord value5(String value) { - setIsNullable(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public DomainsRecord value6(Integer value) { - setDataType(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public DomainsRecord value7(Integer value) { - setPrecision(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public DomainsRecord value8(Integer value) { - setScale(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public DomainsRecord value9(String value) { - setTypeName(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public DomainsRecord value10(Integer value) { - setSelectivity(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public DomainsRecord value11(String value) { - setCheckConstraint(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public DomainsRecord value12(String value) { - setRemarks(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public DomainsRecord value13(String value) { - setSql(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public DomainsRecord value14(Integer value) { - setId(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public DomainsRecord values(String value1, String value2, String value3, String value4, String value5, Integer value6, Integer value7, Integer value8, String value9, Integer value10, String value11, String value12, String value13, Integer value14) { - value1(value1); - value2(value2); - value3(value3); - value4(value4); - value5(value5); - value6(value6); - value7(value7); - value8(value8); - value9(value9); - value10(value10); - value11(value11); - value12(value12); - value13(value13); - value14(value14); - return this; - } - - // ------------------------------------------------------------------------- - // Constructors - // ------------------------------------------------------------------------- - - /** - * Create a detached DomainsRecord - */ - public DomainsRecord() { - super(Domains.DOMAINS); - } - - /** - * Create a detached, initialised DomainsRecord - */ - public DomainsRecord(String domainCatalog, String domainSchema, String domainName, String columnDefault, String isNullable, Integer dataType, Integer precision, Integer scale, String typeName, Integer selectivity, String checkConstraint, String remarks, String sql, Integer id) { - super(Domains.DOMAINS); - - setValue(0, domainCatalog); - setValue(1, domainSchema); - setValue(2, domainName); - setValue(3, columnDefault); - setValue(4, isNullable); - setValue(5, dataType); - setValue(6, precision); - setValue(7, scale); - setValue(8, typeName); - setValue(9, selectivity); - setValue(10, checkConstraint); - setValue(11, remarks); - setValue(12, sql); - setValue(13, id); - } -} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/FunctionAliasesRecord.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/FunctionAliasesRecord.java deleted file mode 100644 index 7c095555bc..0000000000 --- a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/FunctionAliasesRecord.java +++ /dev/null @@ -1,570 +0,0 @@ -/** - * This class is generated by jOOQ - */ -package com.baeldung.jooq.introduction.db.information_schema.tables.records; - - -import com.baeldung.jooq.introduction.db.information_schema.tables.FunctionAliases; - -import javax.annotation.Generated; - -import org.jooq.Field; -import org.jooq.Record12; -import org.jooq.Row12; -import org.jooq.impl.TableRecordImpl; - - -/** - * This class is generated by jOOQ. - */ -@Generated( - value = { - "http://www.jooq.org", - "jOOQ version:3.7.3" - }, - comments = "This class is generated by jOOQ" -) -@SuppressWarnings({ "all", "unchecked", "rawtypes" }) -public class FunctionAliasesRecord extends TableRecordImpl implements Record12 { - - private static final long serialVersionUID = -788602015; - - /** - * Setter for INFORMATION_SCHEMA.FUNCTION_ALIASES.ALIAS_CATALOG. - */ - public void setAliasCatalog(String value) { - setValue(0, value); - } - - /** - * Getter for INFORMATION_SCHEMA.FUNCTION_ALIASES.ALIAS_CATALOG. - */ - public String getAliasCatalog() { - return (String) getValue(0); - } - - /** - * Setter for INFORMATION_SCHEMA.FUNCTION_ALIASES.ALIAS_SCHEMA. - */ - public void setAliasSchema(String value) { - setValue(1, value); - } - - /** - * Getter for INFORMATION_SCHEMA.FUNCTION_ALIASES.ALIAS_SCHEMA. - */ - public String getAliasSchema() { - return (String) getValue(1); - } - - /** - * Setter for INFORMATION_SCHEMA.FUNCTION_ALIASES.ALIAS_NAME. - */ - public void setAliasName(String value) { - setValue(2, value); - } - - /** - * Getter for INFORMATION_SCHEMA.FUNCTION_ALIASES.ALIAS_NAME. - */ - public String getAliasName() { - return (String) getValue(2); - } - - /** - * Setter for INFORMATION_SCHEMA.FUNCTION_ALIASES.JAVA_CLASS. - */ - public void setJavaClass(String value) { - setValue(3, value); - } - - /** - * Getter for INFORMATION_SCHEMA.FUNCTION_ALIASES.JAVA_CLASS. - */ - public String getJavaClass() { - return (String) getValue(3); - } - - /** - * Setter for INFORMATION_SCHEMA.FUNCTION_ALIASES.JAVA_METHOD. - */ - public void setJavaMethod(String value) { - setValue(4, value); - } - - /** - * Getter for INFORMATION_SCHEMA.FUNCTION_ALIASES.JAVA_METHOD. - */ - public String getJavaMethod() { - return (String) getValue(4); - } - - /** - * Setter for INFORMATION_SCHEMA.FUNCTION_ALIASES.DATA_TYPE. - */ - public void setDataType(Integer value) { - setValue(5, value); - } - - /** - * Getter for INFORMATION_SCHEMA.FUNCTION_ALIASES.DATA_TYPE. - */ - public Integer getDataType() { - return (Integer) getValue(5); - } - - /** - * Setter for INFORMATION_SCHEMA.FUNCTION_ALIASES.TYPE_NAME. - */ - public void setTypeName(String value) { - setValue(6, value); - } - - /** - * Getter for INFORMATION_SCHEMA.FUNCTION_ALIASES.TYPE_NAME. - */ - public String getTypeName() { - return (String) getValue(6); - } - - /** - * Setter for INFORMATION_SCHEMA.FUNCTION_ALIASES.COLUMN_COUNT. - */ - public void setColumnCount(Integer value) { - setValue(7, value); - } - - /** - * Getter for INFORMATION_SCHEMA.FUNCTION_ALIASES.COLUMN_COUNT. - */ - public Integer getColumnCount() { - return (Integer) getValue(7); - } - - /** - * Setter for INFORMATION_SCHEMA.FUNCTION_ALIASES.RETURNS_RESULT. - */ - public void setReturnsResult(Short value) { - setValue(8, value); - } - - /** - * Getter for INFORMATION_SCHEMA.FUNCTION_ALIASES.RETURNS_RESULT. - */ - public Short getReturnsResult() { - return (Short) getValue(8); - } - - /** - * Setter for INFORMATION_SCHEMA.FUNCTION_ALIASES.REMARKS. - */ - public void setRemarks(String value) { - setValue(9, value); - } - - /** - * Getter for INFORMATION_SCHEMA.FUNCTION_ALIASES.REMARKS. - */ - public String getRemarks() { - return (String) getValue(9); - } - - /** - * Setter for INFORMATION_SCHEMA.FUNCTION_ALIASES.ID. - */ - public void setId(Integer value) { - setValue(10, value); - } - - /** - * Getter for INFORMATION_SCHEMA.FUNCTION_ALIASES.ID. - */ - public Integer getId() { - return (Integer) getValue(10); - } - - /** - * Setter for INFORMATION_SCHEMA.FUNCTION_ALIASES.SOURCE. - */ - public void setSource(String value) { - setValue(11, value); - } - - /** - * Getter for INFORMATION_SCHEMA.FUNCTION_ALIASES.SOURCE. - */ - public String getSource() { - return (String) getValue(11); - } - - // ------------------------------------------------------------------------- - // Record12 type implementation - // ------------------------------------------------------------------------- - - /** - * {@inheritDoc} - */ - @Override - public Row12 fieldsRow() { - return (Row12) super.fieldsRow(); - } - - /** - * {@inheritDoc} - */ - @Override - public Row12 valuesRow() { - return (Row12) super.valuesRow(); - } - - /** - * {@inheritDoc} - */ - @Override - public Field field1() { - return FunctionAliases.FUNCTION_ALIASES.ALIAS_CATALOG; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field2() { - return FunctionAliases.FUNCTION_ALIASES.ALIAS_SCHEMA; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field3() { - return FunctionAliases.FUNCTION_ALIASES.ALIAS_NAME; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field4() { - return FunctionAliases.FUNCTION_ALIASES.JAVA_CLASS; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field5() { - return FunctionAliases.FUNCTION_ALIASES.JAVA_METHOD; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field6() { - return FunctionAliases.FUNCTION_ALIASES.DATA_TYPE; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field7() { - return FunctionAliases.FUNCTION_ALIASES.TYPE_NAME; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field8() { - return FunctionAliases.FUNCTION_ALIASES.COLUMN_COUNT; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field9() { - return FunctionAliases.FUNCTION_ALIASES.RETURNS_RESULT; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field10() { - return FunctionAliases.FUNCTION_ALIASES.REMARKS; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field11() { - return FunctionAliases.FUNCTION_ALIASES.ID; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field12() { - return FunctionAliases.FUNCTION_ALIASES.SOURCE; - } - - /** - * {@inheritDoc} - */ - @Override - public String value1() { - return getAliasCatalog(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value2() { - return getAliasSchema(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value3() { - return getAliasName(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value4() { - return getJavaClass(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value5() { - return getJavaMethod(); - } - - /** - * {@inheritDoc} - */ - @Override - public Integer value6() { - return getDataType(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value7() { - return getTypeName(); - } - - /** - * {@inheritDoc} - */ - @Override - public Integer value8() { - return getColumnCount(); - } - - /** - * {@inheritDoc} - */ - @Override - public Short value9() { - return getReturnsResult(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value10() { - return getRemarks(); - } - - /** - * {@inheritDoc} - */ - @Override - public Integer value11() { - return getId(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value12() { - return getSource(); - } - - /** - * {@inheritDoc} - */ - @Override - public FunctionAliasesRecord value1(String value) { - setAliasCatalog(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public FunctionAliasesRecord value2(String value) { - setAliasSchema(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public FunctionAliasesRecord value3(String value) { - setAliasName(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public FunctionAliasesRecord value4(String value) { - setJavaClass(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public FunctionAliasesRecord value5(String value) { - setJavaMethod(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public FunctionAliasesRecord value6(Integer value) { - setDataType(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public FunctionAliasesRecord value7(String value) { - setTypeName(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public FunctionAliasesRecord value8(Integer value) { - setColumnCount(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public FunctionAliasesRecord value9(Short value) { - setReturnsResult(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public FunctionAliasesRecord value10(String value) { - setRemarks(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public FunctionAliasesRecord value11(Integer value) { - setId(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public FunctionAliasesRecord value12(String value) { - setSource(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public FunctionAliasesRecord values(String value1, String value2, String value3, String value4, String value5, Integer value6, String value7, Integer value8, Short value9, String value10, Integer value11, String value12) { - value1(value1); - value2(value2); - value3(value3); - value4(value4); - value5(value5); - value6(value6); - value7(value7); - value8(value8); - value9(value9); - value10(value10); - value11(value11); - value12(value12); - return this; - } - - // ------------------------------------------------------------------------- - // Constructors - // ------------------------------------------------------------------------- - - /** - * Create a detached FunctionAliasesRecord - */ - public FunctionAliasesRecord() { - super(FunctionAliases.FUNCTION_ALIASES); - } - - /** - * Create a detached, initialised FunctionAliasesRecord - */ - public FunctionAliasesRecord(String aliasCatalog, String aliasSchema, String aliasName, String javaClass, String javaMethod, Integer dataType, String typeName, Integer columnCount, Short returnsResult, String remarks, Integer id, String source) { - super(FunctionAliases.FUNCTION_ALIASES); - - setValue(0, aliasCatalog); - setValue(1, aliasSchema); - setValue(2, aliasName); - setValue(3, javaClass); - setValue(4, javaMethod); - setValue(5, dataType); - setValue(6, typeName); - setValue(7, columnCount); - setValue(8, returnsResult); - setValue(9, remarks); - setValue(10, id); - setValue(11, source); - } -} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/FunctionColumnsRecord.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/FunctionColumnsRecord.java deleted file mode 100644 index 3d0c81d2cd..0000000000 --- a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/FunctionColumnsRecord.java +++ /dev/null @@ -1,775 +0,0 @@ -/** - * This class is generated by jOOQ - */ -package com.baeldung.jooq.introduction.db.information_schema.tables.records; - - -import com.baeldung.jooq.introduction.db.information_schema.tables.FunctionColumns; - -import javax.annotation.Generated; - -import org.jooq.Field; -import org.jooq.Record17; -import org.jooq.Row17; -import org.jooq.impl.TableRecordImpl; - - -/** - * This class is generated by jOOQ. - */ -@Generated( - value = { - "http://www.jooq.org", - "jOOQ version:3.7.3" - }, - comments = "This class is generated by jOOQ" -) -@SuppressWarnings({ "all", "unchecked", "rawtypes" }) -public class FunctionColumnsRecord extends TableRecordImpl implements Record17 { - - private static final long serialVersionUID = 1196004173; - - /** - * Setter for INFORMATION_SCHEMA.FUNCTION_COLUMNS.ALIAS_CATALOG. - */ - public void setAliasCatalog(String value) { - setValue(0, value); - } - - /** - * Getter for INFORMATION_SCHEMA.FUNCTION_COLUMNS.ALIAS_CATALOG. - */ - public String getAliasCatalog() { - return (String) getValue(0); - } - - /** - * Setter for INFORMATION_SCHEMA.FUNCTION_COLUMNS.ALIAS_SCHEMA. - */ - public void setAliasSchema(String value) { - setValue(1, value); - } - - /** - * Getter for INFORMATION_SCHEMA.FUNCTION_COLUMNS.ALIAS_SCHEMA. - */ - public String getAliasSchema() { - return (String) getValue(1); - } - - /** - * Setter for INFORMATION_SCHEMA.FUNCTION_COLUMNS.ALIAS_NAME. - */ - public void setAliasName(String value) { - setValue(2, value); - } - - /** - * Getter for INFORMATION_SCHEMA.FUNCTION_COLUMNS.ALIAS_NAME. - */ - public String getAliasName() { - return (String) getValue(2); - } - - /** - * Setter for INFORMATION_SCHEMA.FUNCTION_COLUMNS.JAVA_CLASS. - */ - public void setJavaClass(String value) { - setValue(3, value); - } - - /** - * Getter for INFORMATION_SCHEMA.FUNCTION_COLUMNS.JAVA_CLASS. - */ - public String getJavaClass() { - return (String) getValue(3); - } - - /** - * Setter for INFORMATION_SCHEMA.FUNCTION_COLUMNS.JAVA_METHOD. - */ - public void setJavaMethod(String value) { - setValue(4, value); - } - - /** - * Getter for INFORMATION_SCHEMA.FUNCTION_COLUMNS.JAVA_METHOD. - */ - public String getJavaMethod() { - return (String) getValue(4); - } - - /** - * Setter for INFORMATION_SCHEMA.FUNCTION_COLUMNS.COLUMN_COUNT. - */ - public void setColumnCount(Integer value) { - setValue(5, value); - } - - /** - * Getter for INFORMATION_SCHEMA.FUNCTION_COLUMNS.COLUMN_COUNT. - */ - public Integer getColumnCount() { - return (Integer) getValue(5); - } - - /** - * Setter for INFORMATION_SCHEMA.FUNCTION_COLUMNS.POS. - */ - public void setPos(Integer value) { - setValue(6, value); - } - - /** - * Getter for INFORMATION_SCHEMA.FUNCTION_COLUMNS.POS. - */ - public Integer getPos() { - return (Integer) getValue(6); - } - - /** - * Setter for INFORMATION_SCHEMA.FUNCTION_COLUMNS.COLUMN_NAME. - */ - public void setColumnName(String value) { - setValue(7, value); - } - - /** - * Getter for INFORMATION_SCHEMA.FUNCTION_COLUMNS.COLUMN_NAME. - */ - public String getColumnName() { - return (String) getValue(7); - } - - /** - * Setter for INFORMATION_SCHEMA.FUNCTION_COLUMNS.DATA_TYPE. - */ - public void setDataType(Integer value) { - setValue(8, value); - } - - /** - * Getter for INFORMATION_SCHEMA.FUNCTION_COLUMNS.DATA_TYPE. - */ - public Integer getDataType() { - return (Integer) getValue(8); - } - - /** - * Setter for INFORMATION_SCHEMA.FUNCTION_COLUMNS.TYPE_NAME. - */ - public void setTypeName(String value) { - setValue(9, value); - } - - /** - * Getter for INFORMATION_SCHEMA.FUNCTION_COLUMNS.TYPE_NAME. - */ - public String getTypeName() { - return (String) getValue(9); - } - - /** - * Setter for INFORMATION_SCHEMA.FUNCTION_COLUMNS.PRECISION. - */ - public void setPrecision(Integer value) { - setValue(10, value); - } - - /** - * Getter for INFORMATION_SCHEMA.FUNCTION_COLUMNS.PRECISION. - */ - public Integer getPrecision() { - return (Integer) getValue(10); - } - - /** - * Setter for INFORMATION_SCHEMA.FUNCTION_COLUMNS.SCALE. - */ - public void setScale(Short value) { - setValue(11, value); - } - - /** - * Getter for INFORMATION_SCHEMA.FUNCTION_COLUMNS.SCALE. - */ - public Short getScale() { - return (Short) getValue(11); - } - - /** - * Setter for INFORMATION_SCHEMA.FUNCTION_COLUMNS.RADIX. - */ - public void setRadix(Short value) { - setValue(12, value); - } - - /** - * Getter for INFORMATION_SCHEMA.FUNCTION_COLUMNS.RADIX. - */ - public Short getRadix() { - return (Short) getValue(12); - } - - /** - * Setter for INFORMATION_SCHEMA.FUNCTION_COLUMNS.NULLABLE. - */ - public void setNullable(Short value) { - setValue(13, value); - } - - /** - * Getter for INFORMATION_SCHEMA.FUNCTION_COLUMNS.NULLABLE. - */ - public Short getNullable() { - return (Short) getValue(13); - } - - /** - * Setter for INFORMATION_SCHEMA.FUNCTION_COLUMNS.COLUMN_TYPE. - */ - public void setColumnType(Short value) { - setValue(14, value); - } - - /** - * Getter for INFORMATION_SCHEMA.FUNCTION_COLUMNS.COLUMN_TYPE. - */ - public Short getColumnType() { - return (Short) getValue(14); - } - - /** - * Setter for INFORMATION_SCHEMA.FUNCTION_COLUMNS.REMARKS. - */ - public void setRemarks(String value) { - setValue(15, value); - } - - /** - * Getter for INFORMATION_SCHEMA.FUNCTION_COLUMNS.REMARKS. - */ - public String getRemarks() { - return (String) getValue(15); - } - - /** - * Setter for INFORMATION_SCHEMA.FUNCTION_COLUMNS.COLUMN_DEFAULT. - */ - public void setColumnDefault(String value) { - setValue(16, value); - } - - /** - * Getter for INFORMATION_SCHEMA.FUNCTION_COLUMNS.COLUMN_DEFAULT. - */ - public String getColumnDefault() { - return (String) getValue(16); - } - - // ------------------------------------------------------------------------- - // Record17 type implementation - // ------------------------------------------------------------------------- - - /** - * {@inheritDoc} - */ - @Override - public Row17 fieldsRow() { - return (Row17) super.fieldsRow(); - } - - /** - * {@inheritDoc} - */ - @Override - public Row17 valuesRow() { - return (Row17) super.valuesRow(); - } - - /** - * {@inheritDoc} - */ - @Override - public Field field1() { - return FunctionColumns.FUNCTION_COLUMNS.ALIAS_CATALOG; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field2() { - return FunctionColumns.FUNCTION_COLUMNS.ALIAS_SCHEMA; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field3() { - return FunctionColumns.FUNCTION_COLUMNS.ALIAS_NAME; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field4() { - return FunctionColumns.FUNCTION_COLUMNS.JAVA_CLASS; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field5() { - return FunctionColumns.FUNCTION_COLUMNS.JAVA_METHOD; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field6() { - return FunctionColumns.FUNCTION_COLUMNS.COLUMN_COUNT; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field7() { - return FunctionColumns.FUNCTION_COLUMNS.POS; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field8() { - return FunctionColumns.FUNCTION_COLUMNS.COLUMN_NAME; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field9() { - return FunctionColumns.FUNCTION_COLUMNS.DATA_TYPE; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field10() { - return FunctionColumns.FUNCTION_COLUMNS.TYPE_NAME; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field11() { - return FunctionColumns.FUNCTION_COLUMNS.PRECISION; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field12() { - return FunctionColumns.FUNCTION_COLUMNS.SCALE; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field13() { - return FunctionColumns.FUNCTION_COLUMNS.RADIX; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field14() { - return FunctionColumns.FUNCTION_COLUMNS.NULLABLE; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field15() { - return FunctionColumns.FUNCTION_COLUMNS.COLUMN_TYPE; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field16() { - return FunctionColumns.FUNCTION_COLUMNS.REMARKS; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field17() { - return FunctionColumns.FUNCTION_COLUMNS.COLUMN_DEFAULT; - } - - /** - * {@inheritDoc} - */ - @Override - public String value1() { - return getAliasCatalog(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value2() { - return getAliasSchema(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value3() { - return getAliasName(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value4() { - return getJavaClass(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value5() { - return getJavaMethod(); - } - - /** - * {@inheritDoc} - */ - @Override - public Integer value6() { - return getColumnCount(); - } - - /** - * {@inheritDoc} - */ - @Override - public Integer value7() { - return getPos(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value8() { - return getColumnName(); - } - - /** - * {@inheritDoc} - */ - @Override - public Integer value9() { - return getDataType(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value10() { - return getTypeName(); - } - - /** - * {@inheritDoc} - */ - @Override - public Integer value11() { - return getPrecision(); - } - - /** - * {@inheritDoc} - */ - @Override - public Short value12() { - return getScale(); - } - - /** - * {@inheritDoc} - */ - @Override - public Short value13() { - return getRadix(); - } - - /** - * {@inheritDoc} - */ - @Override - public Short value14() { - return getNullable(); - } - - /** - * {@inheritDoc} - */ - @Override - public Short value15() { - return getColumnType(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value16() { - return getRemarks(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value17() { - return getColumnDefault(); - } - - /** - * {@inheritDoc} - */ - @Override - public FunctionColumnsRecord value1(String value) { - setAliasCatalog(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public FunctionColumnsRecord value2(String value) { - setAliasSchema(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public FunctionColumnsRecord value3(String value) { - setAliasName(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public FunctionColumnsRecord value4(String value) { - setJavaClass(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public FunctionColumnsRecord value5(String value) { - setJavaMethod(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public FunctionColumnsRecord value6(Integer value) { - setColumnCount(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public FunctionColumnsRecord value7(Integer value) { - setPos(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public FunctionColumnsRecord value8(String value) { - setColumnName(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public FunctionColumnsRecord value9(Integer value) { - setDataType(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public FunctionColumnsRecord value10(String value) { - setTypeName(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public FunctionColumnsRecord value11(Integer value) { - setPrecision(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public FunctionColumnsRecord value12(Short value) { - setScale(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public FunctionColumnsRecord value13(Short value) { - setRadix(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public FunctionColumnsRecord value14(Short value) { - setNullable(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public FunctionColumnsRecord value15(Short value) { - setColumnType(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public FunctionColumnsRecord value16(String value) { - setRemarks(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public FunctionColumnsRecord value17(String value) { - setColumnDefault(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public FunctionColumnsRecord values(String value1, String value2, String value3, String value4, String value5, Integer value6, Integer value7, String value8, Integer value9, String value10, Integer value11, Short value12, Short value13, Short value14, Short value15, String value16, String value17) { - value1(value1); - value2(value2); - value3(value3); - value4(value4); - value5(value5); - value6(value6); - value7(value7); - value8(value8); - value9(value9); - value10(value10); - value11(value11); - value12(value12); - value13(value13); - value14(value14); - value15(value15); - value16(value16); - value17(value17); - return this; - } - - // ------------------------------------------------------------------------- - // Constructors - // ------------------------------------------------------------------------- - - /** - * Create a detached FunctionColumnsRecord - */ - public FunctionColumnsRecord() { - super(FunctionColumns.FUNCTION_COLUMNS); - } - - /** - * Create a detached, initialised FunctionColumnsRecord - */ - public FunctionColumnsRecord(String aliasCatalog, String aliasSchema, String aliasName, String javaClass, String javaMethod, Integer columnCount, Integer pos, String columnName, Integer dataType, String typeName, Integer precision, Short scale, Short radix, Short nullable, Short columnType, String remarks, String columnDefault) { - super(FunctionColumns.FUNCTION_COLUMNS); - - setValue(0, aliasCatalog); - setValue(1, aliasSchema); - setValue(2, aliasName); - setValue(3, javaClass); - setValue(4, javaMethod); - setValue(5, columnCount); - setValue(6, pos); - setValue(7, columnName); - setValue(8, dataType); - setValue(9, typeName); - setValue(10, precision); - setValue(11, scale); - setValue(12, radix); - setValue(13, nullable); - setValue(14, columnType); - setValue(15, remarks); - setValue(16, columnDefault); - } -} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/HelpRecord.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/HelpRecord.java deleted file mode 100644 index 1ed95e2ff7..0000000000 --- a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/HelpRecord.java +++ /dev/null @@ -1,283 +0,0 @@ -/** - * This class is generated by jOOQ - */ -package com.baeldung.jooq.introduction.db.information_schema.tables.records; - - -import com.baeldung.jooq.introduction.db.information_schema.tables.Help; - -import javax.annotation.Generated; - -import org.jooq.Field; -import org.jooq.Record5; -import org.jooq.Row5; -import org.jooq.impl.TableRecordImpl; - - -/** - * This class is generated by jOOQ. - */ -@Generated( - value = { - "http://www.jooq.org", - "jOOQ version:3.7.3" - }, - comments = "This class is generated by jOOQ" -) -@SuppressWarnings({ "all", "unchecked", "rawtypes" }) -public class HelpRecord extends TableRecordImpl implements Record5 { - - private static final long serialVersionUID = -1612064442; - - /** - * Setter for INFORMATION_SCHEMA.HELP.ID. - */ - public void setId(Integer value) { - setValue(0, value); - } - - /** - * Getter for INFORMATION_SCHEMA.HELP.ID. - */ - public Integer getId() { - return (Integer) getValue(0); - } - - /** - * Setter for INFORMATION_SCHEMA.HELP.SECTION. - */ - public void setSection(String value) { - setValue(1, value); - } - - /** - * Getter for INFORMATION_SCHEMA.HELP.SECTION. - */ - public String getSection() { - return (String) getValue(1); - } - - /** - * Setter for INFORMATION_SCHEMA.HELP.TOPIC. - */ - public void setTopic(String value) { - setValue(2, value); - } - - /** - * Getter for INFORMATION_SCHEMA.HELP.TOPIC. - */ - public String getTopic() { - return (String) getValue(2); - } - - /** - * Setter for INFORMATION_SCHEMA.HELP.SYNTAX. - */ - public void setSyntax(String value) { - setValue(3, value); - } - - /** - * Getter for INFORMATION_SCHEMA.HELP.SYNTAX. - */ - public String getSyntax() { - return (String) getValue(3); - } - - /** - * Setter for INFORMATION_SCHEMA.HELP.TEXT. - */ - public void setText(String value) { - setValue(4, value); - } - - /** - * Getter for INFORMATION_SCHEMA.HELP.TEXT. - */ - public String getText() { - return (String) getValue(4); - } - - // ------------------------------------------------------------------------- - // Record5 type implementation - // ------------------------------------------------------------------------- - - /** - * {@inheritDoc} - */ - @Override - public Row5 fieldsRow() { - return (Row5) super.fieldsRow(); - } - - /** - * {@inheritDoc} - */ - @Override - public Row5 valuesRow() { - return (Row5) super.valuesRow(); - } - - /** - * {@inheritDoc} - */ - @Override - public Field field1() { - return Help.HELP.ID; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field2() { - return Help.HELP.SECTION; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field3() { - return Help.HELP.TOPIC; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field4() { - return Help.HELP.SYNTAX; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field5() { - return Help.HELP.TEXT; - } - - /** - * {@inheritDoc} - */ - @Override - public Integer value1() { - return getId(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value2() { - return getSection(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value3() { - return getTopic(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value4() { - return getSyntax(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value5() { - return getText(); - } - - /** - * {@inheritDoc} - */ - @Override - public HelpRecord value1(Integer value) { - setId(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public HelpRecord value2(String value) { - setSection(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public HelpRecord value3(String value) { - setTopic(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public HelpRecord value4(String value) { - setSyntax(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public HelpRecord value5(String value) { - setText(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public HelpRecord values(Integer value1, String value2, String value3, String value4, String value5) { - value1(value1); - value2(value2); - value3(value3); - value4(value4); - value5(value5); - return this; - } - - // ------------------------------------------------------------------------- - // Constructors - // ------------------------------------------------------------------------- - - /** - * Create a detached HelpRecord - */ - public HelpRecord() { - super(Help.HELP); - } - - /** - * Create a detached, initialised HelpRecord - */ - public HelpRecord(Integer id, String section, String topic, String syntax, String text) { - super(Help.HELP); - - setValue(0, id); - setValue(1, section); - setValue(2, topic); - setValue(3, syntax); - setValue(4, text); - } -} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/InDoubtRecord.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/InDoubtRecord.java deleted file mode 100644 index dd33d014fb..0000000000 --- a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/InDoubtRecord.java +++ /dev/null @@ -1,160 +0,0 @@ -/** - * This class is generated by jOOQ - */ -package com.baeldung.jooq.introduction.db.information_schema.tables.records; - - -import com.baeldung.jooq.introduction.db.information_schema.tables.InDoubt; - -import javax.annotation.Generated; - -import org.jooq.Field; -import org.jooq.Record2; -import org.jooq.Row2; -import org.jooq.impl.TableRecordImpl; - - -/** - * This class is generated by jOOQ. - */ -@Generated( - value = { - "http://www.jooq.org", - "jOOQ version:3.7.3" - }, - comments = "This class is generated by jOOQ" -) -@SuppressWarnings({ "all", "unchecked", "rawtypes" }) -public class InDoubtRecord extends TableRecordImpl implements Record2 { - - private static final long serialVersionUID = 115858325; - - /** - * Setter for INFORMATION_SCHEMA.IN_DOUBT.TRANSACTION. - */ - public void setTransaction(String value) { - setValue(0, value); - } - - /** - * Getter for INFORMATION_SCHEMA.IN_DOUBT.TRANSACTION. - */ - public String getTransaction() { - return (String) getValue(0); - } - - /** - * Setter for INFORMATION_SCHEMA.IN_DOUBT.STATE. - */ - public void setState(String value) { - setValue(1, value); - } - - /** - * Getter for INFORMATION_SCHEMA.IN_DOUBT.STATE. - */ - public String getState() { - return (String) getValue(1); - } - - // ------------------------------------------------------------------------- - // Record2 type implementation - // ------------------------------------------------------------------------- - - /** - * {@inheritDoc} - */ - @Override - public Row2 fieldsRow() { - return (Row2) super.fieldsRow(); - } - - /** - * {@inheritDoc} - */ - @Override - public Row2 valuesRow() { - return (Row2) super.valuesRow(); - } - - /** - * {@inheritDoc} - */ - @Override - public Field field1() { - return InDoubt.IN_DOUBT.TRANSACTION; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field2() { - return InDoubt.IN_DOUBT.STATE; - } - - /** - * {@inheritDoc} - */ - @Override - public String value1() { - return getTransaction(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value2() { - return getState(); - } - - /** - * {@inheritDoc} - */ - @Override - public InDoubtRecord value1(String value) { - setTransaction(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public InDoubtRecord value2(String value) { - setState(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public InDoubtRecord values(String value1, String value2) { - value1(value1); - value2(value2); - return this; - } - - // ------------------------------------------------------------------------- - // Constructors - // ------------------------------------------------------------------------- - - /** - * Create a detached InDoubtRecord - */ - public InDoubtRecord() { - super(InDoubt.IN_DOUBT); - } - - /** - * Create a detached, initialised InDoubtRecord - */ - public InDoubtRecord(String transaction, String state) { - super(InDoubt.IN_DOUBT); - - setValue(0, transaction); - setValue(1, state); - } -} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/IndexesRecord.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/IndexesRecord.java deleted file mode 100644 index 87a34b2473..0000000000 --- a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/IndexesRecord.java +++ /dev/null @@ -1,939 +0,0 @@ -/** - * This class is generated by jOOQ - */ -package com.baeldung.jooq.introduction.db.information_schema.tables.records; - - -import com.baeldung.jooq.introduction.db.information_schema.tables.Indexes; - -import javax.annotation.Generated; - -import org.jooq.Field; -import org.jooq.Record21; -import org.jooq.Row21; -import org.jooq.impl.TableRecordImpl; - - -/** - * This class is generated by jOOQ. - */ -@Generated( - value = { - "http://www.jooq.org", - "jOOQ version:3.7.3" - }, - comments = "This class is generated by jOOQ" -) -@SuppressWarnings({ "all", "unchecked", "rawtypes" }) -public class IndexesRecord extends TableRecordImpl implements Record21 { - - private static final long serialVersionUID = -1683028432; - - /** - * Setter for INFORMATION_SCHEMA.INDEXES.TABLE_CATALOG. - */ - public void setTableCatalog(String value) { - setValue(0, value); - } - - /** - * Getter for INFORMATION_SCHEMA.INDEXES.TABLE_CATALOG. - */ - public String getTableCatalog() { - return (String) getValue(0); - } - - /** - * Setter for INFORMATION_SCHEMA.INDEXES.TABLE_SCHEMA. - */ - public void setTableSchema(String value) { - setValue(1, value); - } - - /** - * Getter for INFORMATION_SCHEMA.INDEXES.TABLE_SCHEMA. - */ - public String getTableSchema() { - return (String) getValue(1); - } - - /** - * Setter for INFORMATION_SCHEMA.INDEXES.TABLE_NAME. - */ - public void setTableName(String value) { - setValue(2, value); - } - - /** - * Getter for INFORMATION_SCHEMA.INDEXES.TABLE_NAME. - */ - public String getTableName() { - return (String) getValue(2); - } - - /** - * Setter for INFORMATION_SCHEMA.INDEXES.NON_UNIQUE. - */ - public void setNonUnique(Boolean value) { - setValue(3, value); - } - - /** - * Getter for INFORMATION_SCHEMA.INDEXES.NON_UNIQUE. - */ - public Boolean getNonUnique() { - return (Boolean) getValue(3); - } - - /** - * Setter for INFORMATION_SCHEMA.INDEXES.INDEX_NAME. - */ - public void setIndexName(String value) { - setValue(4, value); - } - - /** - * Getter for INFORMATION_SCHEMA.INDEXES.INDEX_NAME. - */ - public String getIndexName() { - return (String) getValue(4); - } - - /** - * Setter for INFORMATION_SCHEMA.INDEXES.ORDINAL_POSITION. - */ - public void setOrdinalPosition(Short value) { - setValue(5, value); - } - - /** - * Getter for INFORMATION_SCHEMA.INDEXES.ORDINAL_POSITION. - */ - public Short getOrdinalPosition() { - return (Short) getValue(5); - } - - /** - * Setter for INFORMATION_SCHEMA.INDEXES.COLUMN_NAME. - */ - public void setColumnName(String value) { - setValue(6, value); - } - - /** - * Getter for INFORMATION_SCHEMA.INDEXES.COLUMN_NAME. - */ - public String getColumnName() { - return (String) getValue(6); - } - - /** - * Setter for INFORMATION_SCHEMA.INDEXES.CARDINALITY. - */ - public void setCardinality(Integer value) { - setValue(7, value); - } - - /** - * Getter for INFORMATION_SCHEMA.INDEXES.CARDINALITY. - */ - public Integer getCardinality() { - return (Integer) getValue(7); - } - - /** - * Setter for INFORMATION_SCHEMA.INDEXES.PRIMARY_KEY. - */ - public void setPrimaryKey_(Boolean value) { - setValue(8, value); - } - - /** - * Getter for INFORMATION_SCHEMA.INDEXES.PRIMARY_KEY. - */ - public Boolean getPrimaryKey_() { - return (Boolean) getValue(8); - } - - /** - * Setter for INFORMATION_SCHEMA.INDEXES.INDEX_TYPE_NAME. - */ - public void setIndexTypeName(String value) { - setValue(9, value); - } - - /** - * Getter for INFORMATION_SCHEMA.INDEXES.INDEX_TYPE_NAME. - */ - public String getIndexTypeName() { - return (String) getValue(9); - } - - /** - * Setter for INFORMATION_SCHEMA.INDEXES.IS_GENERATED. - */ - public void setIsGenerated(Boolean value) { - setValue(10, value); - } - - /** - * Getter for INFORMATION_SCHEMA.INDEXES.IS_GENERATED. - */ - public Boolean getIsGenerated() { - return (Boolean) getValue(10); - } - - /** - * Setter for INFORMATION_SCHEMA.INDEXES.INDEX_TYPE. - */ - public void setIndexType(Short value) { - setValue(11, value); - } - - /** - * Getter for INFORMATION_SCHEMA.INDEXES.INDEX_TYPE. - */ - public Short getIndexType() { - return (Short) getValue(11); - } - - /** - * Setter for INFORMATION_SCHEMA.INDEXES.ASC_OR_DESC. - */ - public void setAscOrDesc(String value) { - setValue(12, value); - } - - /** - * Getter for INFORMATION_SCHEMA.INDEXES.ASC_OR_DESC. - */ - public String getAscOrDesc() { - return (String) getValue(12); - } - - /** - * Setter for INFORMATION_SCHEMA.INDEXES.PAGES. - */ - public void setPages(Integer value) { - setValue(13, value); - } - - /** - * Getter for INFORMATION_SCHEMA.INDEXES.PAGES. - */ - public Integer getPages() { - return (Integer) getValue(13); - } - - /** - * Setter for INFORMATION_SCHEMA.INDEXES.FILTER_CONDITION. - */ - public void setFilterCondition(String value) { - setValue(14, value); - } - - /** - * Getter for INFORMATION_SCHEMA.INDEXES.FILTER_CONDITION. - */ - public String getFilterCondition() { - return (String) getValue(14); - } - - /** - * Setter for INFORMATION_SCHEMA.INDEXES.REMARKS. - */ - public void setRemarks(String value) { - setValue(15, value); - } - - /** - * Getter for INFORMATION_SCHEMA.INDEXES.REMARKS. - */ - public String getRemarks() { - return (String) getValue(15); - } - - /** - * Setter for INFORMATION_SCHEMA.INDEXES.SQL. - */ - public void setSql(String value) { - setValue(16, value); - } - - /** - * Getter for INFORMATION_SCHEMA.INDEXES.SQL. - */ - public String getSql() { - return (String) getValue(16); - } - - /** - * Setter for INFORMATION_SCHEMA.INDEXES.ID. - */ - public void setId(Integer value) { - setValue(17, value); - } - - /** - * Getter for INFORMATION_SCHEMA.INDEXES.ID. - */ - public Integer getId() { - return (Integer) getValue(17); - } - - /** - * Setter for INFORMATION_SCHEMA.INDEXES.SORT_TYPE. - */ - public void setSortType(Integer value) { - setValue(18, value); - } - - /** - * Getter for INFORMATION_SCHEMA.INDEXES.SORT_TYPE. - */ - public Integer getSortType() { - return (Integer) getValue(18); - } - - /** - * Setter for INFORMATION_SCHEMA.INDEXES.CONSTRAINT_NAME. - */ - public void setConstraintName(String value) { - setValue(19, value); - } - - /** - * Getter for INFORMATION_SCHEMA.INDEXES.CONSTRAINT_NAME. - */ - public String getConstraintName() { - return (String) getValue(19); - } - - /** - * Setter for INFORMATION_SCHEMA.INDEXES.INDEX_CLASS. - */ - public void setIndexClass(String value) { - setValue(20, value); - } - - /** - * Getter for INFORMATION_SCHEMA.INDEXES.INDEX_CLASS. - */ - public String getIndexClass() { - return (String) getValue(20); - } - - // ------------------------------------------------------------------------- - // Record21 type implementation - // ------------------------------------------------------------------------- - - /** - * {@inheritDoc} - */ - @Override - public Row21 fieldsRow() { - return (Row21) super.fieldsRow(); - } - - /** - * {@inheritDoc} - */ - @Override - public Row21 valuesRow() { - return (Row21) super.valuesRow(); - } - - /** - * {@inheritDoc} - */ - @Override - public Field field1() { - return Indexes.INDEXES.TABLE_CATALOG; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field2() { - return Indexes.INDEXES.TABLE_SCHEMA; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field3() { - return Indexes.INDEXES.TABLE_NAME; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field4() { - return Indexes.INDEXES.NON_UNIQUE; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field5() { - return Indexes.INDEXES.INDEX_NAME; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field6() { - return Indexes.INDEXES.ORDINAL_POSITION; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field7() { - return Indexes.INDEXES.COLUMN_NAME; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field8() { - return Indexes.INDEXES.CARDINALITY; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field9() { - return Indexes.INDEXES.PRIMARY_KEY; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field10() { - return Indexes.INDEXES.INDEX_TYPE_NAME; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field11() { - return Indexes.INDEXES.IS_GENERATED; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field12() { - return Indexes.INDEXES.INDEX_TYPE; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field13() { - return Indexes.INDEXES.ASC_OR_DESC; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field14() { - return Indexes.INDEXES.PAGES; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field15() { - return Indexes.INDEXES.FILTER_CONDITION; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field16() { - return Indexes.INDEXES.REMARKS; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field17() { - return Indexes.INDEXES.SQL; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field18() { - return Indexes.INDEXES.ID; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field19() { - return Indexes.INDEXES.SORT_TYPE; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field20() { - return Indexes.INDEXES.CONSTRAINT_NAME; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field21() { - return Indexes.INDEXES.INDEX_CLASS; - } - - /** - * {@inheritDoc} - */ - @Override - public String value1() { - return getTableCatalog(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value2() { - return getTableSchema(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value3() { - return getTableName(); - } - - /** - * {@inheritDoc} - */ - @Override - public Boolean value4() { - return getNonUnique(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value5() { - return getIndexName(); - } - - /** - * {@inheritDoc} - */ - @Override - public Short value6() { - return getOrdinalPosition(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value7() { - return getColumnName(); - } - - /** - * {@inheritDoc} - */ - @Override - public Integer value8() { - return getCardinality(); - } - - /** - * {@inheritDoc} - */ - @Override - public Boolean value9() { - return getPrimaryKey_(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value10() { - return getIndexTypeName(); - } - - /** - * {@inheritDoc} - */ - @Override - public Boolean value11() { - return getIsGenerated(); - } - - /** - * {@inheritDoc} - */ - @Override - public Short value12() { - return getIndexType(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value13() { - return getAscOrDesc(); - } - - /** - * {@inheritDoc} - */ - @Override - public Integer value14() { - return getPages(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value15() { - return getFilterCondition(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value16() { - return getRemarks(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value17() { - return getSql(); - } - - /** - * {@inheritDoc} - */ - @Override - public Integer value18() { - return getId(); - } - - /** - * {@inheritDoc} - */ - @Override - public Integer value19() { - return getSortType(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value20() { - return getConstraintName(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value21() { - return getIndexClass(); - } - - /** - * {@inheritDoc} - */ - @Override - public IndexesRecord value1(String value) { - setTableCatalog(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public IndexesRecord value2(String value) { - setTableSchema(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public IndexesRecord value3(String value) { - setTableName(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public IndexesRecord value4(Boolean value) { - setNonUnique(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public IndexesRecord value5(String value) { - setIndexName(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public IndexesRecord value6(Short value) { - setOrdinalPosition(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public IndexesRecord value7(String value) { - setColumnName(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public IndexesRecord value8(Integer value) { - setCardinality(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public IndexesRecord value9(Boolean value) { - setPrimaryKey_(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public IndexesRecord value10(String value) { - setIndexTypeName(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public IndexesRecord value11(Boolean value) { - setIsGenerated(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public IndexesRecord value12(Short value) { - setIndexType(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public IndexesRecord value13(String value) { - setAscOrDesc(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public IndexesRecord value14(Integer value) { - setPages(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public IndexesRecord value15(String value) { - setFilterCondition(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public IndexesRecord value16(String value) { - setRemarks(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public IndexesRecord value17(String value) { - setSql(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public IndexesRecord value18(Integer value) { - setId(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public IndexesRecord value19(Integer value) { - setSortType(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public IndexesRecord value20(String value) { - setConstraintName(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public IndexesRecord value21(String value) { - setIndexClass(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public IndexesRecord values(String value1, String value2, String value3, Boolean value4, String value5, Short value6, String value7, Integer value8, Boolean value9, String value10, Boolean value11, Short value12, String value13, Integer value14, String value15, String value16, String value17, Integer value18, Integer value19, String value20, String value21) { - value1(value1); - value2(value2); - value3(value3); - value4(value4); - value5(value5); - value6(value6); - value7(value7); - value8(value8); - value9(value9); - value10(value10); - value11(value11); - value12(value12); - value13(value13); - value14(value14); - value15(value15); - value16(value16); - value17(value17); - value18(value18); - value19(value19); - value20(value20); - value21(value21); - return this; - } - - // ------------------------------------------------------------------------- - // Constructors - // ------------------------------------------------------------------------- - - /** - * Create a detached IndexesRecord - */ - public IndexesRecord() { - super(Indexes.INDEXES); - } - - /** - * Create a detached, initialised IndexesRecord - */ - public IndexesRecord(String tableCatalog, String tableSchema, String tableName, Boolean nonUnique, String indexName, Short ordinalPosition, String columnName, Integer cardinality, Boolean primaryKey, String indexTypeName, Boolean isGenerated, Short indexType, String ascOrDesc, Integer pages, String filterCondition, String remarks, String sql, Integer id, Integer sortType, String constraintName, String indexClass) { - super(Indexes.INDEXES); - - setValue(0, tableCatalog); - setValue(1, tableSchema); - setValue(2, tableName); - setValue(3, nonUnique); - setValue(4, indexName); - setValue(5, ordinalPosition); - setValue(6, columnName); - setValue(7, cardinality); - setValue(8, primaryKey); - setValue(9, indexTypeName); - setValue(10, isGenerated); - setValue(11, indexType); - setValue(12, ascOrDesc); - setValue(13, pages); - setValue(14, filterCondition); - setValue(15, remarks); - setValue(16, sql); - setValue(17, id); - setValue(18, sortType); - setValue(19, constraintName); - setValue(20, indexClass); - } -} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/LocksRecord.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/LocksRecord.java deleted file mode 100644 index 23cbf780e6..0000000000 --- a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/LocksRecord.java +++ /dev/null @@ -1,242 +0,0 @@ -/** - * This class is generated by jOOQ - */ -package com.baeldung.jooq.introduction.db.information_schema.tables.records; - - -import com.baeldung.jooq.introduction.db.information_schema.tables.Locks; - -import javax.annotation.Generated; - -import org.jooq.Field; -import org.jooq.Record4; -import org.jooq.Row4; -import org.jooq.impl.TableRecordImpl; - - -/** - * This class is generated by jOOQ. - */ -@Generated( - value = { - "http://www.jooq.org", - "jOOQ version:3.7.3" - }, - comments = "This class is generated by jOOQ" -) -@SuppressWarnings({ "all", "unchecked", "rawtypes" }) -public class LocksRecord extends TableRecordImpl implements Record4 { - - private static final long serialVersionUID = 1548907854; - - /** - * Setter for INFORMATION_SCHEMA.LOCKS.TABLE_SCHEMA. - */ - public void setTableSchema(String value) { - setValue(0, value); - } - - /** - * Getter for INFORMATION_SCHEMA.LOCKS.TABLE_SCHEMA. - */ - public String getTableSchema() { - return (String) getValue(0); - } - - /** - * Setter for INFORMATION_SCHEMA.LOCKS.TABLE_NAME. - */ - public void setTableName(String value) { - setValue(1, value); - } - - /** - * Getter for INFORMATION_SCHEMA.LOCKS.TABLE_NAME. - */ - public String getTableName() { - return (String) getValue(1); - } - - /** - * Setter for INFORMATION_SCHEMA.LOCKS.SESSION_ID. - */ - public void setSessionId(Integer value) { - setValue(2, value); - } - - /** - * Getter for INFORMATION_SCHEMA.LOCKS.SESSION_ID. - */ - public Integer getSessionId() { - return (Integer) getValue(2); - } - - /** - * Setter for INFORMATION_SCHEMA.LOCKS.LOCK_TYPE. - */ - public void setLockType(String value) { - setValue(3, value); - } - - /** - * Getter for INFORMATION_SCHEMA.LOCKS.LOCK_TYPE. - */ - public String getLockType() { - return (String) getValue(3); - } - - // ------------------------------------------------------------------------- - // Record4 type implementation - // ------------------------------------------------------------------------- - - /** - * {@inheritDoc} - */ - @Override - public Row4 fieldsRow() { - return (Row4) super.fieldsRow(); - } - - /** - * {@inheritDoc} - */ - @Override - public Row4 valuesRow() { - return (Row4) super.valuesRow(); - } - - /** - * {@inheritDoc} - */ - @Override - public Field field1() { - return Locks.LOCKS.TABLE_SCHEMA; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field2() { - return Locks.LOCKS.TABLE_NAME; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field3() { - return Locks.LOCKS.SESSION_ID; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field4() { - return Locks.LOCKS.LOCK_TYPE; - } - - /** - * {@inheritDoc} - */ - @Override - public String value1() { - return getTableSchema(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value2() { - return getTableName(); - } - - /** - * {@inheritDoc} - */ - @Override - public Integer value3() { - return getSessionId(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value4() { - return getLockType(); - } - - /** - * {@inheritDoc} - */ - @Override - public LocksRecord value1(String value) { - setTableSchema(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public LocksRecord value2(String value) { - setTableName(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public LocksRecord value3(Integer value) { - setSessionId(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public LocksRecord value4(String value) { - setLockType(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public LocksRecord values(String value1, String value2, Integer value3, String value4) { - value1(value1); - value2(value2); - value3(value3); - value4(value4); - return this; - } - - // ------------------------------------------------------------------------- - // Constructors - // ------------------------------------------------------------------------- - - /** - * Create a detached LocksRecord - */ - public LocksRecord() { - super(Locks.LOCKS); - } - - /** - * Create a detached, initialised LocksRecord - */ - public LocksRecord(String tableSchema, String tableName, Integer sessionId, String lockType) { - super(Locks.LOCKS); - - setValue(0, tableSchema); - setValue(1, tableName); - setValue(2, sessionId); - setValue(3, lockType); - } -} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/QueryStatisticsRecord.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/QueryStatisticsRecord.java deleted file mode 100644 index 56cd9d15c4..0000000000 --- a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/QueryStatisticsRecord.java +++ /dev/null @@ -1,570 +0,0 @@ -/** - * This class is generated by jOOQ - */ -package com.baeldung.jooq.introduction.db.information_schema.tables.records; - - -import com.baeldung.jooq.introduction.db.information_schema.tables.QueryStatistics; - -import javax.annotation.Generated; - -import org.jooq.Field; -import org.jooq.Record12; -import org.jooq.Row12; -import org.jooq.impl.TableRecordImpl; - - -/** - * This class is generated by jOOQ. - */ -@Generated( - value = { - "http://www.jooq.org", - "jOOQ version:3.7.3" - }, - comments = "This class is generated by jOOQ" -) -@SuppressWarnings({ "all", "unchecked", "rawtypes" }) -public class QueryStatisticsRecord extends TableRecordImpl implements Record12 { - - private static final long serialVersionUID = -1608090322; - - /** - * Setter for INFORMATION_SCHEMA.QUERY_STATISTICS.SQL_STATEMENT. - */ - public void setSqlStatement(String value) { - setValue(0, value); - } - - /** - * Getter for INFORMATION_SCHEMA.QUERY_STATISTICS.SQL_STATEMENT. - */ - public String getSqlStatement() { - return (String) getValue(0); - } - - /** - * Setter for INFORMATION_SCHEMA.QUERY_STATISTICS.EXECUTION_COUNT. - */ - public void setExecutionCount(Integer value) { - setValue(1, value); - } - - /** - * Getter for INFORMATION_SCHEMA.QUERY_STATISTICS.EXECUTION_COUNT. - */ - public Integer getExecutionCount() { - return (Integer) getValue(1); - } - - /** - * Setter for INFORMATION_SCHEMA.QUERY_STATISTICS.MIN_EXECUTION_TIME. - */ - public void setMinExecutionTime(Long value) { - setValue(2, value); - } - - /** - * Getter for INFORMATION_SCHEMA.QUERY_STATISTICS.MIN_EXECUTION_TIME. - */ - public Long getMinExecutionTime() { - return (Long) getValue(2); - } - - /** - * Setter for INFORMATION_SCHEMA.QUERY_STATISTICS.MAX_EXECUTION_TIME. - */ - public void setMaxExecutionTime(Long value) { - setValue(3, value); - } - - /** - * Getter for INFORMATION_SCHEMA.QUERY_STATISTICS.MAX_EXECUTION_TIME. - */ - public Long getMaxExecutionTime() { - return (Long) getValue(3); - } - - /** - * Setter for INFORMATION_SCHEMA.QUERY_STATISTICS.CUMULATIVE_EXECUTION_TIME. - */ - public void setCumulativeExecutionTime(Long value) { - setValue(4, value); - } - - /** - * Getter for INFORMATION_SCHEMA.QUERY_STATISTICS.CUMULATIVE_EXECUTION_TIME. - */ - public Long getCumulativeExecutionTime() { - return (Long) getValue(4); - } - - /** - * Setter for INFORMATION_SCHEMA.QUERY_STATISTICS.AVERAGE_EXECUTION_TIME. - */ - public void setAverageExecutionTime(Double value) { - setValue(5, value); - } - - /** - * Getter for INFORMATION_SCHEMA.QUERY_STATISTICS.AVERAGE_EXECUTION_TIME. - */ - public Double getAverageExecutionTime() { - return (Double) getValue(5); - } - - /** - * Setter for INFORMATION_SCHEMA.QUERY_STATISTICS.STD_DEV_EXECUTION_TIME. - */ - public void setStdDevExecutionTime(Double value) { - setValue(6, value); - } - - /** - * Getter for INFORMATION_SCHEMA.QUERY_STATISTICS.STD_DEV_EXECUTION_TIME. - */ - public Double getStdDevExecutionTime() { - return (Double) getValue(6); - } - - /** - * Setter for INFORMATION_SCHEMA.QUERY_STATISTICS.MIN_ROW_COUNT. - */ - public void setMinRowCount(Integer value) { - setValue(7, value); - } - - /** - * Getter for INFORMATION_SCHEMA.QUERY_STATISTICS.MIN_ROW_COUNT. - */ - public Integer getMinRowCount() { - return (Integer) getValue(7); - } - - /** - * Setter for INFORMATION_SCHEMA.QUERY_STATISTICS.MAX_ROW_COUNT. - */ - public void setMaxRowCount(Integer value) { - setValue(8, value); - } - - /** - * Getter for INFORMATION_SCHEMA.QUERY_STATISTICS.MAX_ROW_COUNT. - */ - public Integer getMaxRowCount() { - return (Integer) getValue(8); - } - - /** - * Setter for INFORMATION_SCHEMA.QUERY_STATISTICS.CUMULATIVE_ROW_COUNT. - */ - public void setCumulativeRowCount(Long value) { - setValue(9, value); - } - - /** - * Getter for INFORMATION_SCHEMA.QUERY_STATISTICS.CUMULATIVE_ROW_COUNT. - */ - public Long getCumulativeRowCount() { - return (Long) getValue(9); - } - - /** - * Setter for INFORMATION_SCHEMA.QUERY_STATISTICS.AVERAGE_ROW_COUNT. - */ - public void setAverageRowCount(Double value) { - setValue(10, value); - } - - /** - * Getter for INFORMATION_SCHEMA.QUERY_STATISTICS.AVERAGE_ROW_COUNT. - */ - public Double getAverageRowCount() { - return (Double) getValue(10); - } - - /** - * Setter for INFORMATION_SCHEMA.QUERY_STATISTICS.STD_DEV_ROW_COUNT. - */ - public void setStdDevRowCount(Double value) { - setValue(11, value); - } - - /** - * Getter for INFORMATION_SCHEMA.QUERY_STATISTICS.STD_DEV_ROW_COUNT. - */ - public Double getStdDevRowCount() { - return (Double) getValue(11); - } - - // ------------------------------------------------------------------------- - // Record12 type implementation - // ------------------------------------------------------------------------- - - /** - * {@inheritDoc} - */ - @Override - public Row12 fieldsRow() { - return (Row12) super.fieldsRow(); - } - - /** - * {@inheritDoc} - */ - @Override - public Row12 valuesRow() { - return (Row12) super.valuesRow(); - } - - /** - * {@inheritDoc} - */ - @Override - public Field field1() { - return QueryStatistics.QUERY_STATISTICS.SQL_STATEMENT; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field2() { - return QueryStatistics.QUERY_STATISTICS.EXECUTION_COUNT; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field3() { - return QueryStatistics.QUERY_STATISTICS.MIN_EXECUTION_TIME; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field4() { - return QueryStatistics.QUERY_STATISTICS.MAX_EXECUTION_TIME; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field5() { - return QueryStatistics.QUERY_STATISTICS.CUMULATIVE_EXECUTION_TIME; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field6() { - return QueryStatistics.QUERY_STATISTICS.AVERAGE_EXECUTION_TIME; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field7() { - return QueryStatistics.QUERY_STATISTICS.STD_DEV_EXECUTION_TIME; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field8() { - return QueryStatistics.QUERY_STATISTICS.MIN_ROW_COUNT; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field9() { - return QueryStatistics.QUERY_STATISTICS.MAX_ROW_COUNT; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field10() { - return QueryStatistics.QUERY_STATISTICS.CUMULATIVE_ROW_COUNT; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field11() { - return QueryStatistics.QUERY_STATISTICS.AVERAGE_ROW_COUNT; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field12() { - return QueryStatistics.QUERY_STATISTICS.STD_DEV_ROW_COUNT; - } - - /** - * {@inheritDoc} - */ - @Override - public String value1() { - return getSqlStatement(); - } - - /** - * {@inheritDoc} - */ - @Override - public Integer value2() { - return getExecutionCount(); - } - - /** - * {@inheritDoc} - */ - @Override - public Long value3() { - return getMinExecutionTime(); - } - - /** - * {@inheritDoc} - */ - @Override - public Long value4() { - return getMaxExecutionTime(); - } - - /** - * {@inheritDoc} - */ - @Override - public Long value5() { - return getCumulativeExecutionTime(); - } - - /** - * {@inheritDoc} - */ - @Override - public Double value6() { - return getAverageExecutionTime(); - } - - /** - * {@inheritDoc} - */ - @Override - public Double value7() { - return getStdDevExecutionTime(); - } - - /** - * {@inheritDoc} - */ - @Override - public Integer value8() { - return getMinRowCount(); - } - - /** - * {@inheritDoc} - */ - @Override - public Integer value9() { - return getMaxRowCount(); - } - - /** - * {@inheritDoc} - */ - @Override - public Long value10() { - return getCumulativeRowCount(); - } - - /** - * {@inheritDoc} - */ - @Override - public Double value11() { - return getAverageRowCount(); - } - - /** - * {@inheritDoc} - */ - @Override - public Double value12() { - return getStdDevRowCount(); - } - - /** - * {@inheritDoc} - */ - @Override - public QueryStatisticsRecord value1(String value) { - setSqlStatement(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public QueryStatisticsRecord value2(Integer value) { - setExecutionCount(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public QueryStatisticsRecord value3(Long value) { - setMinExecutionTime(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public QueryStatisticsRecord value4(Long value) { - setMaxExecutionTime(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public QueryStatisticsRecord value5(Long value) { - setCumulativeExecutionTime(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public QueryStatisticsRecord value6(Double value) { - setAverageExecutionTime(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public QueryStatisticsRecord value7(Double value) { - setStdDevExecutionTime(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public QueryStatisticsRecord value8(Integer value) { - setMinRowCount(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public QueryStatisticsRecord value9(Integer value) { - setMaxRowCount(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public QueryStatisticsRecord value10(Long value) { - setCumulativeRowCount(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public QueryStatisticsRecord value11(Double value) { - setAverageRowCount(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public QueryStatisticsRecord value12(Double value) { - setStdDevRowCount(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public QueryStatisticsRecord values(String value1, Integer value2, Long value3, Long value4, Long value5, Double value6, Double value7, Integer value8, Integer value9, Long value10, Double value11, Double value12) { - value1(value1); - value2(value2); - value3(value3); - value4(value4); - value5(value5); - value6(value6); - value7(value7); - value8(value8); - value9(value9); - value10(value10); - value11(value11); - value12(value12); - return this; - } - - // ------------------------------------------------------------------------- - // Constructors - // ------------------------------------------------------------------------- - - /** - * Create a detached QueryStatisticsRecord - */ - public QueryStatisticsRecord() { - super(QueryStatistics.QUERY_STATISTICS); - } - - /** - * Create a detached, initialised QueryStatisticsRecord - */ - public QueryStatisticsRecord(String sqlStatement, Integer executionCount, Long minExecutionTime, Long maxExecutionTime, Long cumulativeExecutionTime, Double averageExecutionTime, Double stdDevExecutionTime, Integer minRowCount, Integer maxRowCount, Long cumulativeRowCount, Double averageRowCount, Double stdDevRowCount) { - super(QueryStatistics.QUERY_STATISTICS); - - setValue(0, sqlStatement); - setValue(1, executionCount); - setValue(2, minExecutionTime); - setValue(3, maxExecutionTime); - setValue(4, cumulativeExecutionTime); - setValue(5, averageExecutionTime); - setValue(6, stdDevExecutionTime); - setValue(7, minRowCount); - setValue(8, maxRowCount); - setValue(9, cumulativeRowCount); - setValue(10, averageRowCount); - setValue(11, stdDevRowCount); - } -} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/RightsRecord.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/RightsRecord.java deleted file mode 100644 index a9c50817c7..0000000000 --- a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/RightsRecord.java +++ /dev/null @@ -1,365 +0,0 @@ -/** - * This class is generated by jOOQ - */ -package com.baeldung.jooq.introduction.db.information_schema.tables.records; - - -import com.baeldung.jooq.introduction.db.information_schema.tables.Rights; - -import javax.annotation.Generated; - -import org.jooq.Field; -import org.jooq.Record7; -import org.jooq.Row7; -import org.jooq.impl.TableRecordImpl; - - -/** - * This class is generated by jOOQ. - */ -@Generated( - value = { - "http://www.jooq.org", - "jOOQ version:3.7.3" - }, - comments = "This class is generated by jOOQ" -) -@SuppressWarnings({ "all", "unchecked", "rawtypes" }) -public class RightsRecord extends TableRecordImpl implements Record7 { - - private static final long serialVersionUID = 269610816; - - /** - * Setter for INFORMATION_SCHEMA.RIGHTS.GRANTEE. - */ - public void setGrantee(String value) { - setValue(0, value); - } - - /** - * Getter for INFORMATION_SCHEMA.RIGHTS.GRANTEE. - */ - public String getGrantee() { - return (String) getValue(0); - } - - /** - * Setter for INFORMATION_SCHEMA.RIGHTS.GRANTEETYPE. - */ - public void setGranteetype(String value) { - setValue(1, value); - } - - /** - * Getter for INFORMATION_SCHEMA.RIGHTS.GRANTEETYPE. - */ - public String getGranteetype() { - return (String) getValue(1); - } - - /** - * Setter for INFORMATION_SCHEMA.RIGHTS.GRANTEDROLE. - */ - public void setGrantedrole(String value) { - setValue(2, value); - } - - /** - * Getter for INFORMATION_SCHEMA.RIGHTS.GRANTEDROLE. - */ - public String getGrantedrole() { - return (String) getValue(2); - } - - /** - * Setter for INFORMATION_SCHEMA.RIGHTS.RIGHTS. - */ - public void setRights(String value) { - setValue(3, value); - } - - /** - * Getter for INFORMATION_SCHEMA.RIGHTS.RIGHTS. - */ - public String getRights() { - return (String) getValue(3); - } - - /** - * Setter for INFORMATION_SCHEMA.RIGHTS.TABLE_SCHEMA. - */ - public void setTableSchema(String value) { - setValue(4, value); - } - - /** - * Getter for INFORMATION_SCHEMA.RIGHTS.TABLE_SCHEMA. - */ - public String getTableSchema() { - return (String) getValue(4); - } - - /** - * Setter for INFORMATION_SCHEMA.RIGHTS.TABLE_NAME. - */ - public void setTableName(String value) { - setValue(5, value); - } - - /** - * Getter for INFORMATION_SCHEMA.RIGHTS.TABLE_NAME. - */ - public String getTableName() { - return (String) getValue(5); - } - - /** - * Setter for INFORMATION_SCHEMA.RIGHTS.ID. - */ - public void setId(Integer value) { - setValue(6, value); - } - - /** - * Getter for INFORMATION_SCHEMA.RIGHTS.ID. - */ - public Integer getId() { - return (Integer) getValue(6); - } - - // ------------------------------------------------------------------------- - // Record7 type implementation - // ------------------------------------------------------------------------- - - /** - * {@inheritDoc} - */ - @Override - public Row7 fieldsRow() { - return (Row7) super.fieldsRow(); - } - - /** - * {@inheritDoc} - */ - @Override - public Row7 valuesRow() { - return (Row7) super.valuesRow(); - } - - /** - * {@inheritDoc} - */ - @Override - public Field field1() { - return Rights.RIGHTS.GRANTEE; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field2() { - return Rights.RIGHTS.GRANTEETYPE; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field3() { - return Rights.RIGHTS.GRANTEDROLE; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field4() { - return Rights.RIGHTS.RIGHTS_; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field5() { - return Rights.RIGHTS.TABLE_SCHEMA; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field6() { - return Rights.RIGHTS.TABLE_NAME; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field7() { - return Rights.RIGHTS.ID; - } - - /** - * {@inheritDoc} - */ - @Override - public String value1() { - return getGrantee(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value2() { - return getGranteetype(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value3() { - return getGrantedrole(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value4() { - return getRights(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value5() { - return getTableSchema(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value6() { - return getTableName(); - } - - /** - * {@inheritDoc} - */ - @Override - public Integer value7() { - return getId(); - } - - /** - * {@inheritDoc} - */ - @Override - public RightsRecord value1(String value) { - setGrantee(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public RightsRecord value2(String value) { - setGranteetype(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public RightsRecord value3(String value) { - setGrantedrole(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public RightsRecord value4(String value) { - setRights(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public RightsRecord value5(String value) { - setTableSchema(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public RightsRecord value6(String value) { - setTableName(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public RightsRecord value7(Integer value) { - setId(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public RightsRecord values(String value1, String value2, String value3, String value4, String value5, String value6, Integer value7) { - value1(value1); - value2(value2); - value3(value3); - value4(value4); - value5(value5); - value6(value6); - value7(value7); - return this; - } - - // ------------------------------------------------------------------------- - // Constructors - // ------------------------------------------------------------------------- - - /** - * Create a detached RightsRecord - */ - public RightsRecord() { - super(Rights.RIGHTS); - } - - /** - * Create a detached, initialised RightsRecord - */ - public RightsRecord(String grantee, String granteetype, String grantedrole, String rights, String tableSchema, String tableName, Integer id) { - super(Rights.RIGHTS); - - setValue(0, grantee); - setValue(1, granteetype); - setValue(2, grantedrole); - setValue(3, rights); - setValue(4, tableSchema); - setValue(5, tableName); - setValue(6, id); - } -} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/RolesRecord.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/RolesRecord.java deleted file mode 100644 index a648165fc5..0000000000 --- a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/RolesRecord.java +++ /dev/null @@ -1,201 +0,0 @@ -/** - * This class is generated by jOOQ - */ -package com.baeldung.jooq.introduction.db.information_schema.tables.records; - - -import com.baeldung.jooq.introduction.db.information_schema.tables.Roles; - -import javax.annotation.Generated; - -import org.jooq.Field; -import org.jooq.Record3; -import org.jooq.Row3; -import org.jooq.impl.TableRecordImpl; - - -/** - * This class is generated by jOOQ. - */ -@Generated( - value = { - "http://www.jooq.org", - "jOOQ version:3.7.3" - }, - comments = "This class is generated by jOOQ" -) -@SuppressWarnings({ "all", "unchecked", "rawtypes" }) -public class RolesRecord extends TableRecordImpl implements Record3 { - - private static final long serialVersionUID = -579805711; - - /** - * Setter for INFORMATION_SCHEMA.ROLES.NAME. - */ - public void setName(String value) { - setValue(0, value); - } - - /** - * Getter for INFORMATION_SCHEMA.ROLES.NAME. - */ - public String getName() { - return (String) getValue(0); - } - - /** - * Setter for INFORMATION_SCHEMA.ROLES.REMARKS. - */ - public void setRemarks(String value) { - setValue(1, value); - } - - /** - * Getter for INFORMATION_SCHEMA.ROLES.REMARKS. - */ - public String getRemarks() { - return (String) getValue(1); - } - - /** - * Setter for INFORMATION_SCHEMA.ROLES.ID. - */ - public void setId(Integer value) { - setValue(2, value); - } - - /** - * Getter for INFORMATION_SCHEMA.ROLES.ID. - */ - public Integer getId() { - return (Integer) getValue(2); - } - - // ------------------------------------------------------------------------- - // Record3 type implementation - // ------------------------------------------------------------------------- - - /** - * {@inheritDoc} - */ - @Override - public Row3 fieldsRow() { - return (Row3) super.fieldsRow(); - } - - /** - * {@inheritDoc} - */ - @Override - public Row3 valuesRow() { - return (Row3) super.valuesRow(); - } - - /** - * {@inheritDoc} - */ - @Override - public Field field1() { - return Roles.ROLES.NAME; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field2() { - return Roles.ROLES.REMARKS; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field3() { - return Roles.ROLES.ID; - } - - /** - * {@inheritDoc} - */ - @Override - public String value1() { - return getName(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value2() { - return getRemarks(); - } - - /** - * {@inheritDoc} - */ - @Override - public Integer value3() { - return getId(); - } - - /** - * {@inheritDoc} - */ - @Override - public RolesRecord value1(String value) { - setName(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public RolesRecord value2(String value) { - setRemarks(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public RolesRecord value3(Integer value) { - setId(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public RolesRecord values(String value1, String value2, Integer value3) { - value1(value1); - value2(value2); - value3(value3); - return this; - } - - // ------------------------------------------------------------------------- - // Constructors - // ------------------------------------------------------------------------- - - /** - * Create a detached RolesRecord - */ - public RolesRecord() { - super(Roles.ROLES); - } - - /** - * Create a detached, initialised RolesRecord - */ - public RolesRecord(String name, String remarks, Integer id) { - super(Roles.ROLES); - - setValue(0, name); - setValue(1, remarks); - setValue(2, id); - } -} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/SchemataRecord.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/SchemataRecord.java deleted file mode 100644 index 21ae1edfb4..0000000000 --- a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/SchemataRecord.java +++ /dev/null @@ -1,406 +0,0 @@ -/** - * This class is generated by jOOQ - */ -package com.baeldung.jooq.introduction.db.information_schema.tables.records; - - -import com.baeldung.jooq.introduction.db.information_schema.tables.Schemata; - -import javax.annotation.Generated; - -import org.jooq.Field; -import org.jooq.Record8; -import org.jooq.Row8; -import org.jooq.impl.TableRecordImpl; - - -/** - * This class is generated by jOOQ. - */ -@Generated( - value = { - "http://www.jooq.org", - "jOOQ version:3.7.3" - }, - comments = "This class is generated by jOOQ" -) -@SuppressWarnings({ "all", "unchecked", "rawtypes" }) -public class SchemataRecord extends TableRecordImpl implements Record8 { - - private static final long serialVersionUID = -163519189; - - /** - * Setter for INFORMATION_SCHEMA.SCHEMATA.CATALOG_NAME. - */ - public void setCatalogName(String value) { - setValue(0, value); - } - - /** - * Getter for INFORMATION_SCHEMA.SCHEMATA.CATALOG_NAME. - */ - public String getCatalogName() { - return (String) getValue(0); - } - - /** - * Setter for INFORMATION_SCHEMA.SCHEMATA.SCHEMA_NAME. - */ - public void setSchemaName(String value) { - setValue(1, value); - } - - /** - * Getter for INFORMATION_SCHEMA.SCHEMATA.SCHEMA_NAME. - */ - public String getSchemaName() { - return (String) getValue(1); - } - - /** - * Setter for INFORMATION_SCHEMA.SCHEMATA.SCHEMA_OWNER. - */ - public void setSchemaOwner(String value) { - setValue(2, value); - } - - /** - * Getter for INFORMATION_SCHEMA.SCHEMATA.SCHEMA_OWNER. - */ - public String getSchemaOwner() { - return (String) getValue(2); - } - - /** - * Setter for INFORMATION_SCHEMA.SCHEMATA.DEFAULT_CHARACTER_SET_NAME. - */ - public void setDefaultCharacterSetName(String value) { - setValue(3, value); - } - - /** - * Getter for INFORMATION_SCHEMA.SCHEMATA.DEFAULT_CHARACTER_SET_NAME. - */ - public String getDefaultCharacterSetName() { - return (String) getValue(3); - } - - /** - * Setter for INFORMATION_SCHEMA.SCHEMATA.DEFAULT_COLLATION_NAME. - */ - public void setDefaultCollationName(String value) { - setValue(4, value); - } - - /** - * Getter for INFORMATION_SCHEMA.SCHEMATA.DEFAULT_COLLATION_NAME. - */ - public String getDefaultCollationName() { - return (String) getValue(4); - } - - /** - * Setter for INFORMATION_SCHEMA.SCHEMATA.IS_DEFAULT. - */ - public void setIsDefault(Boolean value) { - setValue(5, value); - } - - /** - * Getter for INFORMATION_SCHEMA.SCHEMATA.IS_DEFAULT. - */ - public Boolean getIsDefault() { - return (Boolean) getValue(5); - } - - /** - * Setter for INFORMATION_SCHEMA.SCHEMATA.REMARKS. - */ - public void setRemarks(String value) { - setValue(6, value); - } - - /** - * Getter for INFORMATION_SCHEMA.SCHEMATA.REMARKS. - */ - public String getRemarks() { - return (String) getValue(6); - } - - /** - * Setter for INFORMATION_SCHEMA.SCHEMATA.ID. - */ - public void setId(Integer value) { - setValue(7, value); - } - - /** - * Getter for INFORMATION_SCHEMA.SCHEMATA.ID. - */ - public Integer getId() { - return (Integer) getValue(7); - } - - // ------------------------------------------------------------------------- - // Record8 type implementation - // ------------------------------------------------------------------------- - - /** - * {@inheritDoc} - */ - @Override - public Row8 fieldsRow() { - return (Row8) super.fieldsRow(); - } - - /** - * {@inheritDoc} - */ - @Override - public Row8 valuesRow() { - return (Row8) super.valuesRow(); - } - - /** - * {@inheritDoc} - */ - @Override - public Field field1() { - return Schemata.SCHEMATA.CATALOG_NAME; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field2() { - return Schemata.SCHEMATA.SCHEMA_NAME; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field3() { - return Schemata.SCHEMATA.SCHEMA_OWNER; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field4() { - return Schemata.SCHEMATA.DEFAULT_CHARACTER_SET_NAME; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field5() { - return Schemata.SCHEMATA.DEFAULT_COLLATION_NAME; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field6() { - return Schemata.SCHEMATA.IS_DEFAULT; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field7() { - return Schemata.SCHEMATA.REMARKS; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field8() { - return Schemata.SCHEMATA.ID; - } - - /** - * {@inheritDoc} - */ - @Override - public String value1() { - return getCatalogName(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value2() { - return getSchemaName(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value3() { - return getSchemaOwner(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value4() { - return getDefaultCharacterSetName(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value5() { - return getDefaultCollationName(); - } - - /** - * {@inheritDoc} - */ - @Override - public Boolean value6() { - return getIsDefault(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value7() { - return getRemarks(); - } - - /** - * {@inheritDoc} - */ - @Override - public Integer value8() { - return getId(); - } - - /** - * {@inheritDoc} - */ - @Override - public SchemataRecord value1(String value) { - setCatalogName(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public SchemataRecord value2(String value) { - setSchemaName(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public SchemataRecord value3(String value) { - setSchemaOwner(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public SchemataRecord value4(String value) { - setDefaultCharacterSetName(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public SchemataRecord value5(String value) { - setDefaultCollationName(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public SchemataRecord value6(Boolean value) { - setIsDefault(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public SchemataRecord value7(String value) { - setRemarks(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public SchemataRecord value8(Integer value) { - setId(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public SchemataRecord values(String value1, String value2, String value3, String value4, String value5, Boolean value6, String value7, Integer value8) { - value1(value1); - value2(value2); - value3(value3); - value4(value4); - value5(value5); - value6(value6); - value7(value7); - value8(value8); - return this; - } - - // ------------------------------------------------------------------------- - // Constructors - // ------------------------------------------------------------------------- - - /** - * Create a detached SchemataRecord - */ - public SchemataRecord() { - super(Schemata.SCHEMATA); - } - - /** - * Create a detached, initialised SchemataRecord - */ - public SchemataRecord(String catalogName, String schemaName, String schemaOwner, String defaultCharacterSetName, String defaultCollationName, Boolean isDefault, String remarks, Integer id) { - super(Schemata.SCHEMATA); - - setValue(0, catalogName); - setValue(1, schemaName); - setValue(2, schemaOwner); - setValue(3, defaultCharacterSetName); - setValue(4, defaultCollationName); - setValue(5, isDefault); - setValue(6, remarks); - setValue(7, id); - } -} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/SequencesRecord.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/SequencesRecord.java deleted file mode 100644 index cc8285599f..0000000000 --- a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/SequencesRecord.java +++ /dev/null @@ -1,570 +0,0 @@ -/** - * This class is generated by jOOQ - */ -package com.baeldung.jooq.introduction.db.information_schema.tables.records; - - -import com.baeldung.jooq.introduction.db.information_schema.tables.Sequences; - -import javax.annotation.Generated; - -import org.jooq.Field; -import org.jooq.Record12; -import org.jooq.Row12; -import org.jooq.impl.TableRecordImpl; - - -/** - * This class is generated by jOOQ. - */ -@Generated( - value = { - "http://www.jooq.org", - "jOOQ version:3.7.3" - }, - comments = "This class is generated by jOOQ" -) -@SuppressWarnings({ "all", "unchecked", "rawtypes" }) -public class SequencesRecord extends TableRecordImpl implements Record12 { - - private static final long serialVersionUID = -1861251627; - - /** - * Setter for INFORMATION_SCHEMA.SEQUENCES.SEQUENCE_CATALOG. - */ - public void setSequenceCatalog(String value) { - setValue(0, value); - } - - /** - * Getter for INFORMATION_SCHEMA.SEQUENCES.SEQUENCE_CATALOG. - */ - public String getSequenceCatalog() { - return (String) getValue(0); - } - - /** - * Setter for INFORMATION_SCHEMA.SEQUENCES.SEQUENCE_SCHEMA. - */ - public void setSequenceSchema(String value) { - setValue(1, value); - } - - /** - * Getter for INFORMATION_SCHEMA.SEQUENCES.SEQUENCE_SCHEMA. - */ - public String getSequenceSchema() { - return (String) getValue(1); - } - - /** - * Setter for INFORMATION_SCHEMA.SEQUENCES.SEQUENCE_NAME. - */ - public void setSequenceName(String value) { - setValue(2, value); - } - - /** - * Getter for INFORMATION_SCHEMA.SEQUENCES.SEQUENCE_NAME. - */ - public String getSequenceName() { - return (String) getValue(2); - } - - /** - * Setter for INFORMATION_SCHEMA.SEQUENCES.CURRENT_VALUE. - */ - public void setCurrentValue(Long value) { - setValue(3, value); - } - - /** - * Getter for INFORMATION_SCHEMA.SEQUENCES.CURRENT_VALUE. - */ - public Long getCurrentValue() { - return (Long) getValue(3); - } - - /** - * Setter for INFORMATION_SCHEMA.SEQUENCES.INCREMENT. - */ - public void setIncrement(Long value) { - setValue(4, value); - } - - /** - * Getter for INFORMATION_SCHEMA.SEQUENCES.INCREMENT. - */ - public Long getIncrement() { - return (Long) getValue(4); - } - - /** - * Setter for INFORMATION_SCHEMA.SEQUENCES.IS_GENERATED. - */ - public void setIsGenerated(Boolean value) { - setValue(5, value); - } - - /** - * Getter for INFORMATION_SCHEMA.SEQUENCES.IS_GENERATED. - */ - public Boolean getIsGenerated() { - return (Boolean) getValue(5); - } - - /** - * Setter for INFORMATION_SCHEMA.SEQUENCES.REMARKS. - */ - public void setRemarks(String value) { - setValue(6, value); - } - - /** - * Getter for INFORMATION_SCHEMA.SEQUENCES.REMARKS. - */ - public String getRemarks() { - return (String) getValue(6); - } - - /** - * Setter for INFORMATION_SCHEMA.SEQUENCES.CACHE. - */ - public void setCache(Long value) { - setValue(7, value); - } - - /** - * Getter for INFORMATION_SCHEMA.SEQUENCES.CACHE. - */ - public Long getCache() { - return (Long) getValue(7); - } - - /** - * Setter for INFORMATION_SCHEMA.SEQUENCES.MIN_VALUE. - */ - public void setMinValue(Long value) { - setValue(8, value); - } - - /** - * Getter for INFORMATION_SCHEMA.SEQUENCES.MIN_VALUE. - */ - public Long getMinValue() { - return (Long) getValue(8); - } - - /** - * Setter for INFORMATION_SCHEMA.SEQUENCES.MAX_VALUE. - */ - public void setMaxValue(Long value) { - setValue(9, value); - } - - /** - * Getter for INFORMATION_SCHEMA.SEQUENCES.MAX_VALUE. - */ - public Long getMaxValue() { - return (Long) getValue(9); - } - - /** - * Setter for INFORMATION_SCHEMA.SEQUENCES.IS_CYCLE. - */ - public void setIsCycle(Boolean value) { - setValue(10, value); - } - - /** - * Getter for INFORMATION_SCHEMA.SEQUENCES.IS_CYCLE. - */ - public Boolean getIsCycle() { - return (Boolean) getValue(10); - } - - /** - * Setter for INFORMATION_SCHEMA.SEQUENCES.ID. - */ - public void setId(Integer value) { - setValue(11, value); - } - - /** - * Getter for INFORMATION_SCHEMA.SEQUENCES.ID. - */ - public Integer getId() { - return (Integer) getValue(11); - } - - // ------------------------------------------------------------------------- - // Record12 type implementation - // ------------------------------------------------------------------------- - - /** - * {@inheritDoc} - */ - @Override - public Row12 fieldsRow() { - return (Row12) super.fieldsRow(); - } - - /** - * {@inheritDoc} - */ - @Override - public Row12 valuesRow() { - return (Row12) super.valuesRow(); - } - - /** - * {@inheritDoc} - */ - @Override - public Field field1() { - return Sequences.SEQUENCES.SEQUENCE_CATALOG; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field2() { - return Sequences.SEQUENCES.SEQUENCE_SCHEMA; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field3() { - return Sequences.SEQUENCES.SEQUENCE_NAME; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field4() { - return Sequences.SEQUENCES.CURRENT_VALUE; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field5() { - return Sequences.SEQUENCES.INCREMENT; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field6() { - return Sequences.SEQUENCES.IS_GENERATED; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field7() { - return Sequences.SEQUENCES.REMARKS; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field8() { - return Sequences.SEQUENCES.CACHE; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field9() { - return Sequences.SEQUENCES.MIN_VALUE; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field10() { - return Sequences.SEQUENCES.MAX_VALUE; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field11() { - return Sequences.SEQUENCES.IS_CYCLE; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field12() { - return Sequences.SEQUENCES.ID; - } - - /** - * {@inheritDoc} - */ - @Override - public String value1() { - return getSequenceCatalog(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value2() { - return getSequenceSchema(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value3() { - return getSequenceName(); - } - - /** - * {@inheritDoc} - */ - @Override - public Long value4() { - return getCurrentValue(); - } - - /** - * {@inheritDoc} - */ - @Override - public Long value5() { - return getIncrement(); - } - - /** - * {@inheritDoc} - */ - @Override - public Boolean value6() { - return getIsGenerated(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value7() { - return getRemarks(); - } - - /** - * {@inheritDoc} - */ - @Override - public Long value8() { - return getCache(); - } - - /** - * {@inheritDoc} - */ - @Override - public Long value9() { - return getMinValue(); - } - - /** - * {@inheritDoc} - */ - @Override - public Long value10() { - return getMaxValue(); - } - - /** - * {@inheritDoc} - */ - @Override - public Boolean value11() { - return getIsCycle(); - } - - /** - * {@inheritDoc} - */ - @Override - public Integer value12() { - return getId(); - } - - /** - * {@inheritDoc} - */ - @Override - public SequencesRecord value1(String value) { - setSequenceCatalog(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public SequencesRecord value2(String value) { - setSequenceSchema(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public SequencesRecord value3(String value) { - setSequenceName(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public SequencesRecord value4(Long value) { - setCurrentValue(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public SequencesRecord value5(Long value) { - setIncrement(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public SequencesRecord value6(Boolean value) { - setIsGenerated(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public SequencesRecord value7(String value) { - setRemarks(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public SequencesRecord value8(Long value) { - setCache(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public SequencesRecord value9(Long value) { - setMinValue(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public SequencesRecord value10(Long value) { - setMaxValue(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public SequencesRecord value11(Boolean value) { - setIsCycle(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public SequencesRecord value12(Integer value) { - setId(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public SequencesRecord values(String value1, String value2, String value3, Long value4, Long value5, Boolean value6, String value7, Long value8, Long value9, Long value10, Boolean value11, Integer value12) { - value1(value1); - value2(value2); - value3(value3); - value4(value4); - value5(value5); - value6(value6); - value7(value7); - value8(value8); - value9(value9); - value10(value10); - value11(value11); - value12(value12); - return this; - } - - // ------------------------------------------------------------------------- - // Constructors - // ------------------------------------------------------------------------- - - /** - * Create a detached SequencesRecord - */ - public SequencesRecord() { - super(Sequences.SEQUENCES); - } - - /** - * Create a detached, initialised SequencesRecord - */ - public SequencesRecord(String sequenceCatalog, String sequenceSchema, String sequenceName, Long currentValue, Long increment, Boolean isGenerated, String remarks, Long cache, Long minValue, Long maxValue, Boolean isCycle, Integer id) { - super(Sequences.SEQUENCES); - - setValue(0, sequenceCatalog); - setValue(1, sequenceSchema); - setValue(2, sequenceName); - setValue(3, currentValue); - setValue(4, increment); - setValue(5, isGenerated); - setValue(6, remarks); - setValue(7, cache); - setValue(8, minValue); - setValue(9, maxValue); - setValue(10, isCycle); - setValue(11, id); - } -} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/SessionStateRecord.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/SessionStateRecord.java deleted file mode 100644 index b25800ae65..0000000000 --- a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/SessionStateRecord.java +++ /dev/null @@ -1,160 +0,0 @@ -/** - * This class is generated by jOOQ - */ -package com.baeldung.jooq.introduction.db.information_schema.tables.records; - - -import com.baeldung.jooq.introduction.db.information_schema.tables.SessionState; - -import javax.annotation.Generated; - -import org.jooq.Field; -import org.jooq.Record2; -import org.jooq.Row2; -import org.jooq.impl.TableRecordImpl; - - -/** - * This class is generated by jOOQ. - */ -@Generated( - value = { - "http://www.jooq.org", - "jOOQ version:3.7.3" - }, - comments = "This class is generated by jOOQ" -) -@SuppressWarnings({ "all", "unchecked", "rawtypes" }) -public class SessionStateRecord extends TableRecordImpl implements Record2 { - - private static final long serialVersionUID = -1306764107; - - /** - * Setter for INFORMATION_SCHEMA.SESSION_STATE.KEY. - */ - public void setKey(String value) { - setValue(0, value); - } - - /** - * Getter for INFORMATION_SCHEMA.SESSION_STATE.KEY. - */ - public String getKey() { - return (String) getValue(0); - } - - /** - * Setter for INFORMATION_SCHEMA.SESSION_STATE.SQL. - */ - public void setSql(String value) { - setValue(1, value); - } - - /** - * Getter for INFORMATION_SCHEMA.SESSION_STATE.SQL. - */ - public String getSql() { - return (String) getValue(1); - } - - // ------------------------------------------------------------------------- - // Record2 type implementation - // ------------------------------------------------------------------------- - - /** - * {@inheritDoc} - */ - @Override - public Row2 fieldsRow() { - return (Row2) super.fieldsRow(); - } - - /** - * {@inheritDoc} - */ - @Override - public Row2 valuesRow() { - return (Row2) super.valuesRow(); - } - - /** - * {@inheritDoc} - */ - @Override - public Field field1() { - return SessionState.SESSION_STATE.KEY; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field2() { - return SessionState.SESSION_STATE.SQL; - } - - /** - * {@inheritDoc} - */ - @Override - public String value1() { - return getKey(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value2() { - return getSql(); - } - - /** - * {@inheritDoc} - */ - @Override - public SessionStateRecord value1(String value) { - setKey(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public SessionStateRecord value2(String value) { - setSql(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public SessionStateRecord values(String value1, String value2) { - value1(value1); - value2(value2); - return this; - } - - // ------------------------------------------------------------------------- - // Constructors - // ------------------------------------------------------------------------- - - /** - * Create a detached SessionStateRecord - */ - public SessionStateRecord() { - super(SessionState.SESSION_STATE); - } - - /** - * Create a detached, initialised SessionStateRecord - */ - public SessionStateRecord(String key, String sql) { - super(SessionState.SESSION_STATE); - - setValue(0, key); - setValue(1, sql); - } -} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/SessionsRecord.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/SessionsRecord.java deleted file mode 100644 index 13853116b4..0000000000 --- a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/SessionsRecord.java +++ /dev/null @@ -1,324 +0,0 @@ -/** - * This class is generated by jOOQ - */ -package com.baeldung.jooq.introduction.db.information_schema.tables.records; - - -import com.baeldung.jooq.introduction.db.information_schema.tables.Sessions; - -import javax.annotation.Generated; - -import org.jooq.Field; -import org.jooq.Record6; -import org.jooq.Row6; -import org.jooq.impl.TableRecordImpl; - - -/** - * This class is generated by jOOQ. - */ -@Generated( - value = { - "http://www.jooq.org", - "jOOQ version:3.7.3" - }, - comments = "This class is generated by jOOQ" -) -@SuppressWarnings({ "all", "unchecked", "rawtypes" }) -public class SessionsRecord extends TableRecordImpl implements Record6 { - - private static final long serialVersionUID = -457271018; - - /** - * Setter for INFORMATION_SCHEMA.SESSIONS.ID. - */ - public void setId(Integer value) { - setValue(0, value); - } - - /** - * Getter for INFORMATION_SCHEMA.SESSIONS.ID. - */ - public Integer getId() { - return (Integer) getValue(0); - } - - /** - * Setter for INFORMATION_SCHEMA.SESSIONS.USER_NAME. - */ - public void setUserName(String value) { - setValue(1, value); - } - - /** - * Getter for INFORMATION_SCHEMA.SESSIONS.USER_NAME. - */ - public String getUserName() { - return (String) getValue(1); - } - - /** - * Setter for INFORMATION_SCHEMA.SESSIONS.SESSION_START. - */ - public void setSessionStart(String value) { - setValue(2, value); - } - - /** - * Getter for INFORMATION_SCHEMA.SESSIONS.SESSION_START. - */ - public String getSessionStart() { - return (String) getValue(2); - } - - /** - * Setter for INFORMATION_SCHEMA.SESSIONS.STATEMENT. - */ - public void setStatement(String value) { - setValue(3, value); - } - - /** - * Getter for INFORMATION_SCHEMA.SESSIONS.STATEMENT. - */ - public String getStatement() { - return (String) getValue(3); - } - - /** - * Setter for INFORMATION_SCHEMA.SESSIONS.STATEMENT_START. - */ - public void setStatementStart(String value) { - setValue(4, value); - } - - /** - * Getter for INFORMATION_SCHEMA.SESSIONS.STATEMENT_START. - */ - public String getStatementStart() { - return (String) getValue(4); - } - - /** - * Setter for INFORMATION_SCHEMA.SESSIONS.CONTAINS_UNCOMMITTED. - */ - public void setContainsUncommitted(String value) { - setValue(5, value); - } - - /** - * Getter for INFORMATION_SCHEMA.SESSIONS.CONTAINS_UNCOMMITTED. - */ - public String getContainsUncommitted() { - return (String) getValue(5); - } - - // ------------------------------------------------------------------------- - // Record6 type implementation - // ------------------------------------------------------------------------- - - /** - * {@inheritDoc} - */ - @Override - public Row6 fieldsRow() { - return (Row6) super.fieldsRow(); - } - - /** - * {@inheritDoc} - */ - @Override - public Row6 valuesRow() { - return (Row6) super.valuesRow(); - } - - /** - * {@inheritDoc} - */ - @Override - public Field field1() { - return Sessions.SESSIONS.ID; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field2() { - return Sessions.SESSIONS.USER_NAME; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field3() { - return Sessions.SESSIONS.SESSION_START; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field4() { - return Sessions.SESSIONS.STATEMENT; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field5() { - return Sessions.SESSIONS.STATEMENT_START; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field6() { - return Sessions.SESSIONS.CONTAINS_UNCOMMITTED; - } - - /** - * {@inheritDoc} - */ - @Override - public Integer value1() { - return getId(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value2() { - return getUserName(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value3() { - return getSessionStart(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value4() { - return getStatement(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value5() { - return getStatementStart(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value6() { - return getContainsUncommitted(); - } - - /** - * {@inheritDoc} - */ - @Override - public SessionsRecord value1(Integer value) { - setId(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public SessionsRecord value2(String value) { - setUserName(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public SessionsRecord value3(String value) { - setSessionStart(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public SessionsRecord value4(String value) { - setStatement(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public SessionsRecord value5(String value) { - setStatementStart(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public SessionsRecord value6(String value) { - setContainsUncommitted(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public SessionsRecord values(Integer value1, String value2, String value3, String value4, String value5, String value6) { - value1(value1); - value2(value2); - value3(value3); - value4(value4); - value5(value5); - value6(value6); - return this; - } - - // ------------------------------------------------------------------------- - // Constructors - // ------------------------------------------------------------------------- - - /** - * Create a detached SessionsRecord - */ - public SessionsRecord() { - super(Sessions.SESSIONS); - } - - /** - * Create a detached, initialised SessionsRecord - */ - public SessionsRecord(Integer id, String userName, String sessionStart, String statement, String statementStart, String containsUncommitted) { - super(Sessions.SESSIONS); - - setValue(0, id); - setValue(1, userName); - setValue(2, sessionStart); - setValue(3, statement); - setValue(4, statementStart); - setValue(5, containsUncommitted); - } -} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/SettingsRecord.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/SettingsRecord.java deleted file mode 100644 index e5f096c510..0000000000 --- a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/SettingsRecord.java +++ /dev/null @@ -1,160 +0,0 @@ -/** - * This class is generated by jOOQ - */ -package com.baeldung.jooq.introduction.db.information_schema.tables.records; - - -import com.baeldung.jooq.introduction.db.information_schema.tables.Settings; - -import javax.annotation.Generated; - -import org.jooq.Field; -import org.jooq.Record2; -import org.jooq.Row2; -import org.jooq.impl.TableRecordImpl; - - -/** - * This class is generated by jOOQ. - */ -@Generated( - value = { - "http://www.jooq.org", - "jOOQ version:3.7.3" - }, - comments = "This class is generated by jOOQ" -) -@SuppressWarnings({ "all", "unchecked", "rawtypes" }) -public class SettingsRecord extends TableRecordImpl implements Record2 { - - private static final long serialVersionUID = -1656452632; - - /** - * Setter for INFORMATION_SCHEMA.SETTINGS.NAME. - */ - public void setName(String value) { - setValue(0, value); - } - - /** - * Getter for INFORMATION_SCHEMA.SETTINGS.NAME. - */ - public String getName() { - return (String) getValue(0); - } - - /** - * Setter for INFORMATION_SCHEMA.SETTINGS.VALUE. - */ - public void setValue(String value) { - setValue(1, value); - } - - /** - * Getter for INFORMATION_SCHEMA.SETTINGS.VALUE. - */ - public String getValue() { - return (String) getValue(1); - } - - // ------------------------------------------------------------------------- - // Record2 type implementation - // ------------------------------------------------------------------------- - - /** - * {@inheritDoc} - */ - @Override - public Row2 fieldsRow() { - return (Row2) super.fieldsRow(); - } - - /** - * {@inheritDoc} - */ - @Override - public Row2 valuesRow() { - return (Row2) super.valuesRow(); - } - - /** - * {@inheritDoc} - */ - @Override - public Field field1() { - return Settings.SETTINGS.NAME; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field2() { - return Settings.SETTINGS.VALUE; - } - - /** - * {@inheritDoc} - */ - @Override - public String value1() { - return getName(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value2() { - return getValue(); - } - - /** - * {@inheritDoc} - */ - @Override - public SettingsRecord value1(String value) { - setName(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public SettingsRecord value2(String value) { - setValue(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public SettingsRecord values(String value1, String value2) { - value1(value1); - value2(value2); - return this; - } - - // ------------------------------------------------------------------------- - // Constructors - // ------------------------------------------------------------------------- - - /** - * Create a detached SettingsRecord - */ - public SettingsRecord() { - super(Settings.SETTINGS); - } - - /** - * Create a detached, initialised SettingsRecord - */ - public SettingsRecord(String name, String value) { - super(Settings.SETTINGS); - - setValue(0, name); - setValue(1, value); - } -} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/TablePrivilegesRecord.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/TablePrivilegesRecord.java deleted file mode 100644 index 5b2beca1f0..0000000000 --- a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/TablePrivilegesRecord.java +++ /dev/null @@ -1,365 +0,0 @@ -/** - * This class is generated by jOOQ - */ -package com.baeldung.jooq.introduction.db.information_schema.tables.records; - - -import com.baeldung.jooq.introduction.db.information_schema.tables.TablePrivileges; - -import javax.annotation.Generated; - -import org.jooq.Field; -import org.jooq.Record7; -import org.jooq.Row7; -import org.jooq.impl.TableRecordImpl; - - -/** - * This class is generated by jOOQ. - */ -@Generated( - value = { - "http://www.jooq.org", - "jOOQ version:3.7.3" - }, - comments = "This class is generated by jOOQ" -) -@SuppressWarnings({ "all", "unchecked", "rawtypes" }) -public class TablePrivilegesRecord extends TableRecordImpl implements Record7 { - - private static final long serialVersionUID = 1595034957; - - /** - * Setter for INFORMATION_SCHEMA.TABLE_PRIVILEGES.GRANTOR. - */ - public void setGrantor(String value) { - setValue(0, value); - } - - /** - * Getter for INFORMATION_SCHEMA.TABLE_PRIVILEGES.GRANTOR. - */ - public String getGrantor() { - return (String) getValue(0); - } - - /** - * Setter for INFORMATION_SCHEMA.TABLE_PRIVILEGES.GRANTEE. - */ - public void setGrantee(String value) { - setValue(1, value); - } - - /** - * Getter for INFORMATION_SCHEMA.TABLE_PRIVILEGES.GRANTEE. - */ - public String getGrantee() { - return (String) getValue(1); - } - - /** - * Setter for INFORMATION_SCHEMA.TABLE_PRIVILEGES.TABLE_CATALOG. - */ - public void setTableCatalog(String value) { - setValue(2, value); - } - - /** - * Getter for INFORMATION_SCHEMA.TABLE_PRIVILEGES.TABLE_CATALOG. - */ - public String getTableCatalog() { - return (String) getValue(2); - } - - /** - * Setter for INFORMATION_SCHEMA.TABLE_PRIVILEGES.TABLE_SCHEMA. - */ - public void setTableSchema(String value) { - setValue(3, value); - } - - /** - * Getter for INFORMATION_SCHEMA.TABLE_PRIVILEGES.TABLE_SCHEMA. - */ - public String getTableSchema() { - return (String) getValue(3); - } - - /** - * Setter for INFORMATION_SCHEMA.TABLE_PRIVILEGES.TABLE_NAME. - */ - public void setTableName(String value) { - setValue(4, value); - } - - /** - * Getter for INFORMATION_SCHEMA.TABLE_PRIVILEGES.TABLE_NAME. - */ - public String getTableName() { - return (String) getValue(4); - } - - /** - * Setter for INFORMATION_SCHEMA.TABLE_PRIVILEGES.PRIVILEGE_TYPE. - */ - public void setPrivilegeType(String value) { - setValue(5, value); - } - - /** - * Getter for INFORMATION_SCHEMA.TABLE_PRIVILEGES.PRIVILEGE_TYPE. - */ - public String getPrivilegeType() { - return (String) getValue(5); - } - - /** - * Setter for INFORMATION_SCHEMA.TABLE_PRIVILEGES.IS_GRANTABLE. - */ - public void setIsGrantable(String value) { - setValue(6, value); - } - - /** - * Getter for INFORMATION_SCHEMA.TABLE_PRIVILEGES.IS_GRANTABLE. - */ - public String getIsGrantable() { - return (String) getValue(6); - } - - // ------------------------------------------------------------------------- - // Record7 type implementation - // ------------------------------------------------------------------------- - - /** - * {@inheritDoc} - */ - @Override - public Row7 fieldsRow() { - return (Row7) super.fieldsRow(); - } - - /** - * {@inheritDoc} - */ - @Override - public Row7 valuesRow() { - return (Row7) super.valuesRow(); - } - - /** - * {@inheritDoc} - */ - @Override - public Field field1() { - return TablePrivileges.TABLE_PRIVILEGES.GRANTOR; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field2() { - return TablePrivileges.TABLE_PRIVILEGES.GRANTEE; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field3() { - return TablePrivileges.TABLE_PRIVILEGES.TABLE_CATALOG; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field4() { - return TablePrivileges.TABLE_PRIVILEGES.TABLE_SCHEMA; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field5() { - return TablePrivileges.TABLE_PRIVILEGES.TABLE_NAME; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field6() { - return TablePrivileges.TABLE_PRIVILEGES.PRIVILEGE_TYPE; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field7() { - return TablePrivileges.TABLE_PRIVILEGES.IS_GRANTABLE; - } - - /** - * {@inheritDoc} - */ - @Override - public String value1() { - return getGrantor(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value2() { - return getGrantee(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value3() { - return getTableCatalog(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value4() { - return getTableSchema(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value5() { - return getTableName(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value6() { - return getPrivilegeType(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value7() { - return getIsGrantable(); - } - - /** - * {@inheritDoc} - */ - @Override - public TablePrivilegesRecord value1(String value) { - setGrantor(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public TablePrivilegesRecord value2(String value) { - setGrantee(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public TablePrivilegesRecord value3(String value) { - setTableCatalog(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public TablePrivilegesRecord value4(String value) { - setTableSchema(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public TablePrivilegesRecord value5(String value) { - setTableName(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public TablePrivilegesRecord value6(String value) { - setPrivilegeType(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public TablePrivilegesRecord value7(String value) { - setIsGrantable(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public TablePrivilegesRecord values(String value1, String value2, String value3, String value4, String value5, String value6, String value7) { - value1(value1); - value2(value2); - value3(value3); - value4(value4); - value5(value5); - value6(value6); - value7(value7); - return this; - } - - // ------------------------------------------------------------------------- - // Constructors - // ------------------------------------------------------------------------- - - /** - * Create a detached TablePrivilegesRecord - */ - public TablePrivilegesRecord() { - super(TablePrivileges.TABLE_PRIVILEGES); - } - - /** - * Create a detached, initialised TablePrivilegesRecord - */ - public TablePrivilegesRecord(String grantor, String grantee, String tableCatalog, String tableSchema, String tableName, String privilegeType, String isGrantable) { - super(TablePrivileges.TABLE_PRIVILEGES); - - setValue(0, grantor); - setValue(1, grantee); - setValue(2, tableCatalog); - setValue(3, tableSchema); - setValue(4, tableName); - setValue(5, privilegeType); - setValue(6, isGrantable); - } -} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/TableTypesRecord.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/TableTypesRecord.java deleted file mode 100644 index 3d7eebdfff..0000000000 --- a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/TableTypesRecord.java +++ /dev/null @@ -1,119 +0,0 @@ -/** - * This class is generated by jOOQ - */ -package com.baeldung.jooq.introduction.db.information_schema.tables.records; - - -import com.baeldung.jooq.introduction.db.information_schema.tables.TableTypes; - -import javax.annotation.Generated; - -import org.jooq.Field; -import org.jooq.Record1; -import org.jooq.Row1; -import org.jooq.impl.TableRecordImpl; - - -/** - * This class is generated by jOOQ. - */ -@Generated( - value = { - "http://www.jooq.org", - "jOOQ version:3.7.3" - }, - comments = "This class is generated by jOOQ" -) -@SuppressWarnings({ "all", "unchecked", "rawtypes" }) -public class TableTypesRecord extends TableRecordImpl implements Record1 { - - private static final long serialVersionUID = -645264739; - - /** - * Setter for INFORMATION_SCHEMA.TABLE_TYPES.TYPE. - */ - public void setType(String value) { - setValue(0, value); - } - - /** - * Getter for INFORMATION_SCHEMA.TABLE_TYPES.TYPE. - */ - public String getType() { - return (String) getValue(0); - } - - // ------------------------------------------------------------------------- - // Record1 type implementation - // ------------------------------------------------------------------------- - - /** - * {@inheritDoc} - */ - @Override - public Row1 fieldsRow() { - return (Row1) super.fieldsRow(); - } - - /** - * {@inheritDoc} - */ - @Override - public Row1 valuesRow() { - return (Row1) super.valuesRow(); - } - - /** - * {@inheritDoc} - */ - @Override - public Field field1() { - return TableTypes.TABLE_TYPES.TYPE; - } - - /** - * {@inheritDoc} - */ - @Override - public String value1() { - return getType(); - } - - /** - * {@inheritDoc} - */ - @Override - public TableTypesRecord value1(String value) { - setType(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public TableTypesRecord values(String value1) { - value1(value1); - return this; - } - - // ------------------------------------------------------------------------- - // Constructors - // ------------------------------------------------------------------------- - - /** - * Create a detached TableTypesRecord - */ - public TableTypesRecord() { - super(TableTypes.TABLE_TYPES); - } - - /** - * Create a detached, initialised TableTypesRecord - */ - public TableTypesRecord(String type) { - super(TableTypes.TABLE_TYPES); - - setValue(0, type); - } -} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/TablesRecord.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/TablesRecord.java deleted file mode 100644 index 9542830be7..0000000000 --- a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/TablesRecord.java +++ /dev/null @@ -1,570 +0,0 @@ -/** - * This class is generated by jOOQ - */ -package com.baeldung.jooq.introduction.db.information_schema.tables.records; - - -import com.baeldung.jooq.introduction.db.information_schema.tables.Tables; - -import javax.annotation.Generated; - -import org.jooq.Field; -import org.jooq.Record12; -import org.jooq.Row12; -import org.jooq.impl.TableRecordImpl; - - -/** - * This class is generated by jOOQ. - */ -@Generated( - value = { - "http://www.jooq.org", - "jOOQ version:3.7.3" - }, - comments = "This class is generated by jOOQ" -) -@SuppressWarnings({ "all", "unchecked", "rawtypes" }) -public class TablesRecord extends TableRecordImpl implements Record12 { - - private static final long serialVersionUID = 850052084; - - /** - * Setter for INFORMATION_SCHEMA.TABLES.TABLE_CATALOG. - */ - public void setTableCatalog(String value) { - setValue(0, value); - } - - /** - * Getter for INFORMATION_SCHEMA.TABLES.TABLE_CATALOG. - */ - public String getTableCatalog() { - return (String) getValue(0); - } - - /** - * Setter for INFORMATION_SCHEMA.TABLES.TABLE_SCHEMA. - */ - public void setTableSchema(String value) { - setValue(1, value); - } - - /** - * Getter for INFORMATION_SCHEMA.TABLES.TABLE_SCHEMA. - */ - public String getTableSchema() { - return (String) getValue(1); - } - - /** - * Setter for INFORMATION_SCHEMA.TABLES.TABLE_NAME. - */ - public void setTableName(String value) { - setValue(2, value); - } - - /** - * Getter for INFORMATION_SCHEMA.TABLES.TABLE_NAME. - */ - public String getTableName() { - return (String) getValue(2); - } - - /** - * Setter for INFORMATION_SCHEMA.TABLES.TABLE_TYPE. - */ - public void setTableType(String value) { - setValue(3, value); - } - - /** - * Getter for INFORMATION_SCHEMA.TABLES.TABLE_TYPE. - */ - public String getTableType() { - return (String) getValue(3); - } - - /** - * Setter for INFORMATION_SCHEMA.TABLES.STORAGE_TYPE. - */ - public void setStorageType(String value) { - setValue(4, value); - } - - /** - * Getter for INFORMATION_SCHEMA.TABLES.STORAGE_TYPE. - */ - public String getStorageType() { - return (String) getValue(4); - } - - /** - * Setter for INFORMATION_SCHEMA.TABLES.SQL. - */ - public void setSql(String value) { - setValue(5, value); - } - - /** - * Getter for INFORMATION_SCHEMA.TABLES.SQL. - */ - public String getSql() { - return (String) getValue(5); - } - - /** - * Setter for INFORMATION_SCHEMA.TABLES.REMARKS. - */ - public void setRemarks(String value) { - setValue(6, value); - } - - /** - * Getter for INFORMATION_SCHEMA.TABLES.REMARKS. - */ - public String getRemarks() { - return (String) getValue(6); - } - - /** - * Setter for INFORMATION_SCHEMA.TABLES.LAST_MODIFICATION. - */ - public void setLastModification(Long value) { - setValue(7, value); - } - - /** - * Getter for INFORMATION_SCHEMA.TABLES.LAST_MODIFICATION. - */ - public Long getLastModification() { - return (Long) getValue(7); - } - - /** - * Setter for INFORMATION_SCHEMA.TABLES.ID. - */ - public void setId(Integer value) { - setValue(8, value); - } - - /** - * Getter for INFORMATION_SCHEMA.TABLES.ID. - */ - public Integer getId() { - return (Integer) getValue(8); - } - - /** - * Setter for INFORMATION_SCHEMA.TABLES.TYPE_NAME. - */ - public void setTypeName(String value) { - setValue(9, value); - } - - /** - * Getter for INFORMATION_SCHEMA.TABLES.TYPE_NAME. - */ - public String getTypeName() { - return (String) getValue(9); - } - - /** - * Setter for INFORMATION_SCHEMA.TABLES.TABLE_CLASS. - */ - public void setTableClass(String value) { - setValue(10, value); - } - - /** - * Getter for INFORMATION_SCHEMA.TABLES.TABLE_CLASS. - */ - public String getTableClass() { - return (String) getValue(10); - } - - /** - * Setter for INFORMATION_SCHEMA.TABLES.ROW_COUNT_ESTIMATE. - */ - public void setRowCountEstimate(Long value) { - setValue(11, value); - } - - /** - * Getter for INFORMATION_SCHEMA.TABLES.ROW_COUNT_ESTIMATE. - */ - public Long getRowCountEstimate() { - return (Long) getValue(11); - } - - // ------------------------------------------------------------------------- - // Record12 type implementation - // ------------------------------------------------------------------------- - - /** - * {@inheritDoc} - */ - @Override - public Row12 fieldsRow() { - return (Row12) super.fieldsRow(); - } - - /** - * {@inheritDoc} - */ - @Override - public Row12 valuesRow() { - return (Row12) super.valuesRow(); - } - - /** - * {@inheritDoc} - */ - @Override - public Field field1() { - return Tables.TABLES.TABLE_CATALOG; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field2() { - return Tables.TABLES.TABLE_SCHEMA; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field3() { - return Tables.TABLES.TABLE_NAME; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field4() { - return Tables.TABLES.TABLE_TYPE; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field5() { - return Tables.TABLES.STORAGE_TYPE; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field6() { - return Tables.TABLES.SQL; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field7() { - return Tables.TABLES.REMARKS; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field8() { - return Tables.TABLES.LAST_MODIFICATION; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field9() { - return Tables.TABLES.ID; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field10() { - return Tables.TABLES.TYPE_NAME; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field11() { - return Tables.TABLES.TABLE_CLASS; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field12() { - return Tables.TABLES.ROW_COUNT_ESTIMATE; - } - - /** - * {@inheritDoc} - */ - @Override - public String value1() { - return getTableCatalog(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value2() { - return getTableSchema(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value3() { - return getTableName(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value4() { - return getTableType(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value5() { - return getStorageType(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value6() { - return getSql(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value7() { - return getRemarks(); - } - - /** - * {@inheritDoc} - */ - @Override - public Long value8() { - return getLastModification(); - } - - /** - * {@inheritDoc} - */ - @Override - public Integer value9() { - return getId(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value10() { - return getTypeName(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value11() { - return getTableClass(); - } - - /** - * {@inheritDoc} - */ - @Override - public Long value12() { - return getRowCountEstimate(); - } - - /** - * {@inheritDoc} - */ - @Override - public TablesRecord value1(String value) { - setTableCatalog(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public TablesRecord value2(String value) { - setTableSchema(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public TablesRecord value3(String value) { - setTableName(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public TablesRecord value4(String value) { - setTableType(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public TablesRecord value5(String value) { - setStorageType(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public TablesRecord value6(String value) { - setSql(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public TablesRecord value7(String value) { - setRemarks(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public TablesRecord value8(Long value) { - setLastModification(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public TablesRecord value9(Integer value) { - setId(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public TablesRecord value10(String value) { - setTypeName(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public TablesRecord value11(String value) { - setTableClass(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public TablesRecord value12(Long value) { - setRowCountEstimate(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public TablesRecord values(String value1, String value2, String value3, String value4, String value5, String value6, String value7, Long value8, Integer value9, String value10, String value11, Long value12) { - value1(value1); - value2(value2); - value3(value3); - value4(value4); - value5(value5); - value6(value6); - value7(value7); - value8(value8); - value9(value9); - value10(value10); - value11(value11); - value12(value12); - return this; - } - - // ------------------------------------------------------------------------- - // Constructors - // ------------------------------------------------------------------------- - - /** - * Create a detached TablesRecord - */ - public TablesRecord() { - super(Tables.TABLES); - } - - /** - * Create a detached, initialised TablesRecord - */ - public TablesRecord(String tableCatalog, String tableSchema, String tableName, String tableType, String storageType, String sql, String remarks, Long lastModification, Integer id, String typeName, String tableClass, Long rowCountEstimate) { - super(Tables.TABLES); - - setValue(0, tableCatalog); - setValue(1, tableSchema); - setValue(2, tableName); - setValue(3, tableType); - setValue(4, storageType); - setValue(5, sql); - setValue(6, remarks); - setValue(7, lastModification); - setValue(8, id); - setValue(9, typeName); - setValue(10, tableClass); - setValue(11, rowCountEstimate); - } -} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/TriggersRecord.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/TriggersRecord.java deleted file mode 100644 index f0f019e127..0000000000 --- a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/TriggersRecord.java +++ /dev/null @@ -1,652 +0,0 @@ -/** - * This class is generated by jOOQ - */ -package com.baeldung.jooq.introduction.db.information_schema.tables.records; - - -import com.baeldung.jooq.introduction.db.information_schema.tables.Triggers; - -import javax.annotation.Generated; - -import org.jooq.Field; -import org.jooq.Record14; -import org.jooq.Row14; -import org.jooq.impl.TableRecordImpl; - - -/** - * This class is generated by jOOQ. - */ -@Generated( - value = { - "http://www.jooq.org", - "jOOQ version:3.7.3" - }, - comments = "This class is generated by jOOQ" -) -@SuppressWarnings({ "all", "unchecked", "rawtypes" }) -public class TriggersRecord extends TableRecordImpl implements Record14 { - - private static final long serialVersionUID = 344875511; - - /** - * Setter for INFORMATION_SCHEMA.TRIGGERS.TRIGGER_CATALOG. - */ - public void setTriggerCatalog(String value) { - setValue(0, value); - } - - /** - * Getter for INFORMATION_SCHEMA.TRIGGERS.TRIGGER_CATALOG. - */ - public String getTriggerCatalog() { - return (String) getValue(0); - } - - /** - * Setter for INFORMATION_SCHEMA.TRIGGERS.TRIGGER_SCHEMA. - */ - public void setTriggerSchema(String value) { - setValue(1, value); - } - - /** - * Getter for INFORMATION_SCHEMA.TRIGGERS.TRIGGER_SCHEMA. - */ - public String getTriggerSchema() { - return (String) getValue(1); - } - - /** - * Setter for INFORMATION_SCHEMA.TRIGGERS.TRIGGER_NAME. - */ - public void setTriggerName(String value) { - setValue(2, value); - } - - /** - * Getter for INFORMATION_SCHEMA.TRIGGERS.TRIGGER_NAME. - */ - public String getTriggerName() { - return (String) getValue(2); - } - - /** - * Setter for INFORMATION_SCHEMA.TRIGGERS.TRIGGER_TYPE. - */ - public void setTriggerType(String value) { - setValue(3, value); - } - - /** - * Getter for INFORMATION_SCHEMA.TRIGGERS.TRIGGER_TYPE. - */ - public String getTriggerType() { - return (String) getValue(3); - } - - /** - * Setter for INFORMATION_SCHEMA.TRIGGERS.TABLE_CATALOG. - */ - public void setTableCatalog(String value) { - setValue(4, value); - } - - /** - * Getter for INFORMATION_SCHEMA.TRIGGERS.TABLE_CATALOG. - */ - public String getTableCatalog() { - return (String) getValue(4); - } - - /** - * Setter for INFORMATION_SCHEMA.TRIGGERS.TABLE_SCHEMA. - */ - public void setTableSchema(String value) { - setValue(5, value); - } - - /** - * Getter for INFORMATION_SCHEMA.TRIGGERS.TABLE_SCHEMA. - */ - public String getTableSchema() { - return (String) getValue(5); - } - - /** - * Setter for INFORMATION_SCHEMA.TRIGGERS.TABLE_NAME. - */ - public void setTableName(String value) { - setValue(6, value); - } - - /** - * Getter for INFORMATION_SCHEMA.TRIGGERS.TABLE_NAME. - */ - public String getTableName() { - return (String) getValue(6); - } - - /** - * Setter for INFORMATION_SCHEMA.TRIGGERS.BEFORE. - */ - public void setBefore(Boolean value) { - setValue(7, value); - } - - /** - * Getter for INFORMATION_SCHEMA.TRIGGERS.BEFORE. - */ - public Boolean getBefore() { - return (Boolean) getValue(7); - } - - /** - * Setter for INFORMATION_SCHEMA.TRIGGERS.JAVA_CLASS. - */ - public void setJavaClass(String value) { - setValue(8, value); - } - - /** - * Getter for INFORMATION_SCHEMA.TRIGGERS.JAVA_CLASS. - */ - public String getJavaClass() { - return (String) getValue(8); - } - - /** - * Setter for INFORMATION_SCHEMA.TRIGGERS.QUEUE_SIZE. - */ - public void setQueueSize(Integer value) { - setValue(9, value); - } - - /** - * Getter for INFORMATION_SCHEMA.TRIGGERS.QUEUE_SIZE. - */ - public Integer getQueueSize() { - return (Integer) getValue(9); - } - - /** - * Setter for INFORMATION_SCHEMA.TRIGGERS.NO_WAIT. - */ - public void setNoWait(Boolean value) { - setValue(10, value); - } - - /** - * Getter for INFORMATION_SCHEMA.TRIGGERS.NO_WAIT. - */ - public Boolean getNoWait() { - return (Boolean) getValue(10); - } - - /** - * Setter for INFORMATION_SCHEMA.TRIGGERS.REMARKS. - */ - public void setRemarks(String value) { - setValue(11, value); - } - - /** - * Getter for INFORMATION_SCHEMA.TRIGGERS.REMARKS. - */ - public String getRemarks() { - return (String) getValue(11); - } - - /** - * Setter for INFORMATION_SCHEMA.TRIGGERS.SQL. - */ - public void setSql(String value) { - setValue(12, value); - } - - /** - * Getter for INFORMATION_SCHEMA.TRIGGERS.SQL. - */ - public String getSql() { - return (String) getValue(12); - } - - /** - * Setter for INFORMATION_SCHEMA.TRIGGERS.ID. - */ - public void setId(Integer value) { - setValue(13, value); - } - - /** - * Getter for INFORMATION_SCHEMA.TRIGGERS.ID. - */ - public Integer getId() { - return (Integer) getValue(13); - } - - // ------------------------------------------------------------------------- - // Record14 type implementation - // ------------------------------------------------------------------------- - - /** - * {@inheritDoc} - */ - @Override - public Row14 fieldsRow() { - return (Row14) super.fieldsRow(); - } - - /** - * {@inheritDoc} - */ - @Override - public Row14 valuesRow() { - return (Row14) super.valuesRow(); - } - - /** - * {@inheritDoc} - */ - @Override - public Field field1() { - return Triggers.TRIGGERS.TRIGGER_CATALOG; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field2() { - return Triggers.TRIGGERS.TRIGGER_SCHEMA; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field3() { - return Triggers.TRIGGERS.TRIGGER_NAME; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field4() { - return Triggers.TRIGGERS.TRIGGER_TYPE; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field5() { - return Triggers.TRIGGERS.TABLE_CATALOG; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field6() { - return Triggers.TRIGGERS.TABLE_SCHEMA; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field7() { - return Triggers.TRIGGERS.TABLE_NAME; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field8() { - return Triggers.TRIGGERS.BEFORE; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field9() { - return Triggers.TRIGGERS.JAVA_CLASS; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field10() { - return Triggers.TRIGGERS.QUEUE_SIZE; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field11() { - return Triggers.TRIGGERS.NO_WAIT; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field12() { - return Triggers.TRIGGERS.REMARKS; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field13() { - return Triggers.TRIGGERS.SQL; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field14() { - return Triggers.TRIGGERS.ID; - } - - /** - * {@inheritDoc} - */ - @Override - public String value1() { - return getTriggerCatalog(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value2() { - return getTriggerSchema(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value3() { - return getTriggerName(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value4() { - return getTriggerType(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value5() { - return getTableCatalog(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value6() { - return getTableSchema(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value7() { - return getTableName(); - } - - /** - * {@inheritDoc} - */ - @Override - public Boolean value8() { - return getBefore(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value9() { - return getJavaClass(); - } - - /** - * {@inheritDoc} - */ - @Override - public Integer value10() { - return getQueueSize(); - } - - /** - * {@inheritDoc} - */ - @Override - public Boolean value11() { - return getNoWait(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value12() { - return getRemarks(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value13() { - return getSql(); - } - - /** - * {@inheritDoc} - */ - @Override - public Integer value14() { - return getId(); - } - - /** - * {@inheritDoc} - */ - @Override - public TriggersRecord value1(String value) { - setTriggerCatalog(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public TriggersRecord value2(String value) { - setTriggerSchema(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public TriggersRecord value3(String value) { - setTriggerName(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public TriggersRecord value4(String value) { - setTriggerType(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public TriggersRecord value5(String value) { - setTableCatalog(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public TriggersRecord value6(String value) { - setTableSchema(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public TriggersRecord value7(String value) { - setTableName(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public TriggersRecord value8(Boolean value) { - setBefore(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public TriggersRecord value9(String value) { - setJavaClass(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public TriggersRecord value10(Integer value) { - setQueueSize(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public TriggersRecord value11(Boolean value) { - setNoWait(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public TriggersRecord value12(String value) { - setRemarks(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public TriggersRecord value13(String value) { - setSql(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public TriggersRecord value14(Integer value) { - setId(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public TriggersRecord values(String value1, String value2, String value3, String value4, String value5, String value6, String value7, Boolean value8, String value9, Integer value10, Boolean value11, String value12, String value13, Integer value14) { - value1(value1); - value2(value2); - value3(value3); - value4(value4); - value5(value5); - value6(value6); - value7(value7); - value8(value8); - value9(value9); - value10(value10); - value11(value11); - value12(value12); - value13(value13); - value14(value14); - return this; - } - - // ------------------------------------------------------------------------- - // Constructors - // ------------------------------------------------------------------------- - - /** - * Create a detached TriggersRecord - */ - public TriggersRecord() { - super(Triggers.TRIGGERS); - } - - /** - * Create a detached, initialised TriggersRecord - */ - public TriggersRecord(String triggerCatalog, String triggerSchema, String triggerName, String triggerType, String tableCatalog, String tableSchema, String tableName, Boolean before, String javaClass, Integer queueSize, Boolean noWait, String remarks, String sql, Integer id) { - super(Triggers.TRIGGERS); - - setValue(0, triggerCatalog); - setValue(1, triggerSchema); - setValue(2, triggerName); - setValue(3, triggerType); - setValue(4, tableCatalog); - setValue(5, tableSchema); - setValue(6, tableName); - setValue(7, before); - setValue(8, javaClass); - setValue(9, queueSize); - setValue(10, noWait); - setValue(11, remarks); - setValue(12, sql); - setValue(13, id); - } -} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/TypeInfoRecord.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/TypeInfoRecord.java deleted file mode 100644 index af3eaee83f..0000000000 --- a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/TypeInfoRecord.java +++ /dev/null @@ -1,652 +0,0 @@ -/** - * This class is generated by jOOQ - */ -package com.baeldung.jooq.introduction.db.information_schema.tables.records; - - -import com.baeldung.jooq.introduction.db.information_schema.tables.TypeInfo; - -import javax.annotation.Generated; - -import org.jooq.Field; -import org.jooq.Record14; -import org.jooq.Row14; -import org.jooq.impl.TableRecordImpl; - - -/** - * This class is generated by jOOQ. - */ -@Generated( - value = { - "http://www.jooq.org", - "jOOQ version:3.7.3" - }, - comments = "This class is generated by jOOQ" -) -@SuppressWarnings({ "all", "unchecked", "rawtypes" }) -public class TypeInfoRecord extends TableRecordImpl implements Record14 { - - private static final long serialVersionUID = -1463889309; - - /** - * Setter for INFORMATION_SCHEMA.TYPE_INFO.TYPE_NAME. - */ - public void setTypeName(String value) { - setValue(0, value); - } - - /** - * Getter for INFORMATION_SCHEMA.TYPE_INFO.TYPE_NAME. - */ - public String getTypeName() { - return (String) getValue(0); - } - - /** - * Setter for INFORMATION_SCHEMA.TYPE_INFO.DATA_TYPE. - */ - public void setDataType(Integer value) { - setValue(1, value); - } - - /** - * Getter for INFORMATION_SCHEMA.TYPE_INFO.DATA_TYPE. - */ - public Integer getDataType() { - return (Integer) getValue(1); - } - - /** - * Setter for INFORMATION_SCHEMA.TYPE_INFO.PRECISION. - */ - public void setPrecision(Integer value) { - setValue(2, value); - } - - /** - * Getter for INFORMATION_SCHEMA.TYPE_INFO.PRECISION. - */ - public Integer getPrecision() { - return (Integer) getValue(2); - } - - /** - * Setter for INFORMATION_SCHEMA.TYPE_INFO.PREFIX. - */ - public void setPrefix(String value) { - setValue(3, value); - } - - /** - * Getter for INFORMATION_SCHEMA.TYPE_INFO.PREFIX. - */ - public String getPrefix() { - return (String) getValue(3); - } - - /** - * Setter for INFORMATION_SCHEMA.TYPE_INFO.SUFFIX. - */ - public void setSuffix(String value) { - setValue(4, value); - } - - /** - * Getter for INFORMATION_SCHEMA.TYPE_INFO.SUFFIX. - */ - public String getSuffix() { - return (String) getValue(4); - } - - /** - * Setter for INFORMATION_SCHEMA.TYPE_INFO.PARAMS. - */ - public void setParams(String value) { - setValue(5, value); - } - - /** - * Getter for INFORMATION_SCHEMA.TYPE_INFO.PARAMS. - */ - public String getParams() { - return (String) getValue(5); - } - - /** - * Setter for INFORMATION_SCHEMA.TYPE_INFO.AUTO_INCREMENT. - */ - public void setAutoIncrement(Boolean value) { - setValue(6, value); - } - - /** - * Getter for INFORMATION_SCHEMA.TYPE_INFO.AUTO_INCREMENT. - */ - public Boolean getAutoIncrement() { - return (Boolean) getValue(6); - } - - /** - * Setter for INFORMATION_SCHEMA.TYPE_INFO.MINIMUM_SCALE. - */ - public void setMinimumScale(Short value) { - setValue(7, value); - } - - /** - * Getter for INFORMATION_SCHEMA.TYPE_INFO.MINIMUM_SCALE. - */ - public Short getMinimumScale() { - return (Short) getValue(7); - } - - /** - * Setter for INFORMATION_SCHEMA.TYPE_INFO.MAXIMUM_SCALE. - */ - public void setMaximumScale(Short value) { - setValue(8, value); - } - - /** - * Getter for INFORMATION_SCHEMA.TYPE_INFO.MAXIMUM_SCALE. - */ - public Short getMaximumScale() { - return (Short) getValue(8); - } - - /** - * Setter for INFORMATION_SCHEMA.TYPE_INFO.RADIX. - */ - public void setRadix(Integer value) { - setValue(9, value); - } - - /** - * Getter for INFORMATION_SCHEMA.TYPE_INFO.RADIX. - */ - public Integer getRadix() { - return (Integer) getValue(9); - } - - /** - * Setter for INFORMATION_SCHEMA.TYPE_INFO.POS. - */ - public void setPos(Integer value) { - setValue(10, value); - } - - /** - * Getter for INFORMATION_SCHEMA.TYPE_INFO.POS. - */ - public Integer getPos() { - return (Integer) getValue(10); - } - - /** - * Setter for INFORMATION_SCHEMA.TYPE_INFO.CASE_SENSITIVE. - */ - public void setCaseSensitive(Boolean value) { - setValue(11, value); - } - - /** - * Getter for INFORMATION_SCHEMA.TYPE_INFO.CASE_SENSITIVE. - */ - public Boolean getCaseSensitive() { - return (Boolean) getValue(11); - } - - /** - * Setter for INFORMATION_SCHEMA.TYPE_INFO.NULLABLE. - */ - public void setNullable(Short value) { - setValue(12, value); - } - - /** - * Getter for INFORMATION_SCHEMA.TYPE_INFO.NULLABLE. - */ - public Short getNullable() { - return (Short) getValue(12); - } - - /** - * Setter for INFORMATION_SCHEMA.TYPE_INFO.SEARCHABLE. - */ - public void setSearchable(Short value) { - setValue(13, value); - } - - /** - * Getter for INFORMATION_SCHEMA.TYPE_INFO.SEARCHABLE. - */ - public Short getSearchable() { - return (Short) getValue(13); - } - - // ------------------------------------------------------------------------- - // Record14 type implementation - // ------------------------------------------------------------------------- - - /** - * {@inheritDoc} - */ - @Override - public Row14 fieldsRow() { - return (Row14) super.fieldsRow(); - } - - /** - * {@inheritDoc} - */ - @Override - public Row14 valuesRow() { - return (Row14) super.valuesRow(); - } - - /** - * {@inheritDoc} - */ - @Override - public Field field1() { - return TypeInfo.TYPE_INFO.TYPE_NAME; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field2() { - return TypeInfo.TYPE_INFO.DATA_TYPE; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field3() { - return TypeInfo.TYPE_INFO.PRECISION; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field4() { - return TypeInfo.TYPE_INFO.PREFIX; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field5() { - return TypeInfo.TYPE_INFO.SUFFIX; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field6() { - return TypeInfo.TYPE_INFO.PARAMS; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field7() { - return TypeInfo.TYPE_INFO.AUTO_INCREMENT; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field8() { - return TypeInfo.TYPE_INFO.MINIMUM_SCALE; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field9() { - return TypeInfo.TYPE_INFO.MAXIMUM_SCALE; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field10() { - return TypeInfo.TYPE_INFO.RADIX; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field11() { - return TypeInfo.TYPE_INFO.POS; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field12() { - return TypeInfo.TYPE_INFO.CASE_SENSITIVE; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field13() { - return TypeInfo.TYPE_INFO.NULLABLE; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field14() { - return TypeInfo.TYPE_INFO.SEARCHABLE; - } - - /** - * {@inheritDoc} - */ - @Override - public String value1() { - return getTypeName(); - } - - /** - * {@inheritDoc} - */ - @Override - public Integer value2() { - return getDataType(); - } - - /** - * {@inheritDoc} - */ - @Override - public Integer value3() { - return getPrecision(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value4() { - return getPrefix(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value5() { - return getSuffix(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value6() { - return getParams(); - } - - /** - * {@inheritDoc} - */ - @Override - public Boolean value7() { - return getAutoIncrement(); - } - - /** - * {@inheritDoc} - */ - @Override - public Short value8() { - return getMinimumScale(); - } - - /** - * {@inheritDoc} - */ - @Override - public Short value9() { - return getMaximumScale(); - } - - /** - * {@inheritDoc} - */ - @Override - public Integer value10() { - return getRadix(); - } - - /** - * {@inheritDoc} - */ - @Override - public Integer value11() { - return getPos(); - } - - /** - * {@inheritDoc} - */ - @Override - public Boolean value12() { - return getCaseSensitive(); - } - - /** - * {@inheritDoc} - */ - @Override - public Short value13() { - return getNullable(); - } - - /** - * {@inheritDoc} - */ - @Override - public Short value14() { - return getSearchable(); - } - - /** - * {@inheritDoc} - */ - @Override - public TypeInfoRecord value1(String value) { - setTypeName(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public TypeInfoRecord value2(Integer value) { - setDataType(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public TypeInfoRecord value3(Integer value) { - setPrecision(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public TypeInfoRecord value4(String value) { - setPrefix(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public TypeInfoRecord value5(String value) { - setSuffix(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public TypeInfoRecord value6(String value) { - setParams(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public TypeInfoRecord value7(Boolean value) { - setAutoIncrement(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public TypeInfoRecord value8(Short value) { - setMinimumScale(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public TypeInfoRecord value9(Short value) { - setMaximumScale(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public TypeInfoRecord value10(Integer value) { - setRadix(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public TypeInfoRecord value11(Integer value) { - setPos(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public TypeInfoRecord value12(Boolean value) { - setCaseSensitive(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public TypeInfoRecord value13(Short value) { - setNullable(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public TypeInfoRecord value14(Short value) { - setSearchable(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public TypeInfoRecord values(String value1, Integer value2, Integer value3, String value4, String value5, String value6, Boolean value7, Short value8, Short value9, Integer value10, Integer value11, Boolean value12, Short value13, Short value14) { - value1(value1); - value2(value2); - value3(value3); - value4(value4); - value5(value5); - value6(value6); - value7(value7); - value8(value8); - value9(value9); - value10(value10); - value11(value11); - value12(value12); - value13(value13); - value14(value14); - return this; - } - - // ------------------------------------------------------------------------- - // Constructors - // ------------------------------------------------------------------------- - - /** - * Create a detached TypeInfoRecord - */ - public TypeInfoRecord() { - super(TypeInfo.TYPE_INFO); - } - - /** - * Create a detached, initialised TypeInfoRecord - */ - public TypeInfoRecord(String typeName, Integer dataType, Integer precision, String prefix, String suffix, String params, Boolean autoIncrement, Short minimumScale, Short maximumScale, Integer radix, Integer pos, Boolean caseSensitive, Short nullable, Short searchable) { - super(TypeInfo.TYPE_INFO); - - setValue(0, typeName); - setValue(1, dataType); - setValue(2, precision); - setValue(3, prefix); - setValue(4, suffix); - setValue(5, params); - setValue(6, autoIncrement); - setValue(7, minimumScale); - setValue(8, maximumScale); - setValue(9, radix); - setValue(10, pos); - setValue(11, caseSensitive); - setValue(12, nullable); - setValue(13, searchable); - } -} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/UsersRecord.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/UsersRecord.java deleted file mode 100644 index 934b0484c8..0000000000 --- a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/UsersRecord.java +++ /dev/null @@ -1,242 +0,0 @@ -/** - * This class is generated by jOOQ - */ -package com.baeldung.jooq.introduction.db.information_schema.tables.records; - - -import com.baeldung.jooq.introduction.db.information_schema.tables.Users; - -import javax.annotation.Generated; - -import org.jooq.Field; -import org.jooq.Record4; -import org.jooq.Row4; -import org.jooq.impl.TableRecordImpl; - - -/** - * This class is generated by jOOQ. - */ -@Generated( - value = { - "http://www.jooq.org", - "jOOQ version:3.7.3" - }, - comments = "This class is generated by jOOQ" -) -@SuppressWarnings({ "all", "unchecked", "rawtypes" }) -public class UsersRecord extends TableRecordImpl implements Record4 { - - private static final long serialVersionUID = -592508392; - - /** - * Setter for INFORMATION_SCHEMA.USERS.NAME. - */ - public void setName(String value) { - setValue(0, value); - } - - /** - * Getter for INFORMATION_SCHEMA.USERS.NAME. - */ - public String getName() { - return (String) getValue(0); - } - - /** - * Setter for INFORMATION_SCHEMA.USERS.ADMIN. - */ - public void setAdmin(String value) { - setValue(1, value); - } - - /** - * Getter for INFORMATION_SCHEMA.USERS.ADMIN. - */ - public String getAdmin() { - return (String) getValue(1); - } - - /** - * Setter for INFORMATION_SCHEMA.USERS.REMARKS. - */ - public void setRemarks(String value) { - setValue(2, value); - } - - /** - * Getter for INFORMATION_SCHEMA.USERS.REMARKS. - */ - public String getRemarks() { - return (String) getValue(2); - } - - /** - * Setter for INFORMATION_SCHEMA.USERS.ID. - */ - public void setId(Integer value) { - setValue(3, value); - } - - /** - * Getter for INFORMATION_SCHEMA.USERS.ID. - */ - public Integer getId() { - return (Integer) getValue(3); - } - - // ------------------------------------------------------------------------- - // Record4 type implementation - // ------------------------------------------------------------------------- - - /** - * {@inheritDoc} - */ - @Override - public Row4 fieldsRow() { - return (Row4) super.fieldsRow(); - } - - /** - * {@inheritDoc} - */ - @Override - public Row4 valuesRow() { - return (Row4) super.valuesRow(); - } - - /** - * {@inheritDoc} - */ - @Override - public Field field1() { - return Users.USERS.NAME; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field2() { - return Users.USERS.ADMIN; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field3() { - return Users.USERS.REMARKS; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field4() { - return Users.USERS.ID; - } - - /** - * {@inheritDoc} - */ - @Override - public String value1() { - return getName(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value2() { - return getAdmin(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value3() { - return getRemarks(); - } - - /** - * {@inheritDoc} - */ - @Override - public Integer value4() { - return getId(); - } - - /** - * {@inheritDoc} - */ - @Override - public UsersRecord value1(String value) { - setName(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public UsersRecord value2(String value) { - setAdmin(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public UsersRecord value3(String value) { - setRemarks(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public UsersRecord value4(Integer value) { - setId(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public UsersRecord values(String value1, String value2, String value3, Integer value4) { - value1(value1); - value2(value2); - value3(value3); - value4(value4); - return this; - } - - // ------------------------------------------------------------------------- - // Constructors - // ------------------------------------------------------------------------- - - /** - * Create a detached UsersRecord - */ - public UsersRecord() { - super(Users.USERS); - } - - /** - * Create a detached, initialised UsersRecord - */ - public UsersRecord(String name, String admin, String remarks, Integer id) { - super(Users.USERS); - - setValue(0, name); - setValue(1, admin); - setValue(2, remarks); - setValue(3, id); - } -} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/ViewsRecord.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/ViewsRecord.java deleted file mode 100644 index 4b2d66bd73..0000000000 --- a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/information_schema/tables/records/ViewsRecord.java +++ /dev/null @@ -1,447 +0,0 @@ -/** - * This class is generated by jOOQ - */ -package com.baeldung.jooq.introduction.db.information_schema.tables.records; - - -import com.baeldung.jooq.introduction.db.information_schema.tables.Views; - -import javax.annotation.Generated; - -import org.jooq.Field; -import org.jooq.Record9; -import org.jooq.Row9; -import org.jooq.impl.TableRecordImpl; - - -/** - * This class is generated by jOOQ. - */ -@Generated( - value = { - "http://www.jooq.org", - "jOOQ version:3.7.3" - }, - comments = "This class is generated by jOOQ" -) -@SuppressWarnings({ "all", "unchecked", "rawtypes" }) -public class ViewsRecord extends TableRecordImpl implements Record9 { - - private static final long serialVersionUID = -1380031738; - - /** - * Setter for INFORMATION_SCHEMA.VIEWS.TABLE_CATALOG. - */ - public void setTableCatalog(String value) { - setValue(0, value); - } - - /** - * Getter for INFORMATION_SCHEMA.VIEWS.TABLE_CATALOG. - */ - public String getTableCatalog() { - return (String) getValue(0); - } - - /** - * Setter for INFORMATION_SCHEMA.VIEWS.TABLE_SCHEMA. - */ - public void setTableSchema(String value) { - setValue(1, value); - } - - /** - * Getter for INFORMATION_SCHEMA.VIEWS.TABLE_SCHEMA. - */ - public String getTableSchema() { - return (String) getValue(1); - } - - /** - * Setter for INFORMATION_SCHEMA.VIEWS.TABLE_NAME. - */ - public void setTableName(String value) { - setValue(2, value); - } - - /** - * Getter for INFORMATION_SCHEMA.VIEWS.TABLE_NAME. - */ - public String getTableName() { - return (String) getValue(2); - } - - /** - * Setter for INFORMATION_SCHEMA.VIEWS.VIEW_DEFINITION. - */ - public void setViewDefinition(String value) { - setValue(3, value); - } - - /** - * Getter for INFORMATION_SCHEMA.VIEWS.VIEW_DEFINITION. - */ - public String getViewDefinition() { - return (String) getValue(3); - } - - /** - * Setter for INFORMATION_SCHEMA.VIEWS.CHECK_OPTION. - */ - public void setCheckOption(String value) { - setValue(4, value); - } - - /** - * Getter for INFORMATION_SCHEMA.VIEWS.CHECK_OPTION. - */ - public String getCheckOption() { - return (String) getValue(4); - } - - /** - * Setter for INFORMATION_SCHEMA.VIEWS.IS_UPDATABLE. - */ - public void setIsUpdatable(String value) { - setValue(5, value); - } - - /** - * Getter for INFORMATION_SCHEMA.VIEWS.IS_UPDATABLE. - */ - public String getIsUpdatable() { - return (String) getValue(5); - } - - /** - * Setter for INFORMATION_SCHEMA.VIEWS.STATUS. - */ - public void setStatus(String value) { - setValue(6, value); - } - - /** - * Getter for INFORMATION_SCHEMA.VIEWS.STATUS. - */ - public String getStatus() { - return (String) getValue(6); - } - - /** - * Setter for INFORMATION_SCHEMA.VIEWS.REMARKS. - */ - public void setRemarks(String value) { - setValue(7, value); - } - - /** - * Getter for INFORMATION_SCHEMA.VIEWS.REMARKS. - */ - public String getRemarks() { - return (String) getValue(7); - } - - /** - * Setter for INFORMATION_SCHEMA.VIEWS.ID. - */ - public void setId(Integer value) { - setValue(8, value); - } - - /** - * Getter for INFORMATION_SCHEMA.VIEWS.ID. - */ - public Integer getId() { - return (Integer) getValue(8); - } - - // ------------------------------------------------------------------------- - // Record9 type implementation - // ------------------------------------------------------------------------- - - /** - * {@inheritDoc} - */ - @Override - public Row9 fieldsRow() { - return (Row9) super.fieldsRow(); - } - - /** - * {@inheritDoc} - */ - @Override - public Row9 valuesRow() { - return (Row9) super.valuesRow(); - } - - /** - * {@inheritDoc} - */ - @Override - public Field field1() { - return Views.VIEWS.TABLE_CATALOG; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field2() { - return Views.VIEWS.TABLE_SCHEMA; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field3() { - return Views.VIEWS.TABLE_NAME; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field4() { - return Views.VIEWS.VIEW_DEFINITION; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field5() { - return Views.VIEWS.CHECK_OPTION; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field6() { - return Views.VIEWS.IS_UPDATABLE; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field7() { - return Views.VIEWS.STATUS; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field8() { - return Views.VIEWS.REMARKS; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field9() { - return Views.VIEWS.ID; - } - - /** - * {@inheritDoc} - */ - @Override - public String value1() { - return getTableCatalog(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value2() { - return getTableSchema(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value3() { - return getTableName(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value4() { - return getViewDefinition(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value5() { - return getCheckOption(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value6() { - return getIsUpdatable(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value7() { - return getStatus(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value8() { - return getRemarks(); - } - - /** - * {@inheritDoc} - */ - @Override - public Integer value9() { - return getId(); - } - - /** - * {@inheritDoc} - */ - @Override - public ViewsRecord value1(String value) { - setTableCatalog(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public ViewsRecord value2(String value) { - setTableSchema(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public ViewsRecord value3(String value) { - setTableName(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public ViewsRecord value4(String value) { - setViewDefinition(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public ViewsRecord value5(String value) { - setCheckOption(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public ViewsRecord value6(String value) { - setIsUpdatable(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public ViewsRecord value7(String value) { - setStatus(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public ViewsRecord value8(String value) { - setRemarks(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public ViewsRecord value9(Integer value) { - setId(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public ViewsRecord values(String value1, String value2, String value3, String value4, String value5, String value6, String value7, String value8, Integer value9) { - value1(value1); - value2(value2); - value3(value3); - value4(value4); - value5(value5); - value6(value6); - value7(value7); - value8(value8); - value9(value9); - return this; - } - - // ------------------------------------------------------------------------- - // Constructors - // ------------------------------------------------------------------------- - - /** - * Create a detached ViewsRecord - */ - public ViewsRecord() { - super(Views.VIEWS); - } - - /** - * Create a detached, initialised ViewsRecord - */ - public ViewsRecord(String tableCatalog, String tableSchema, String tableName, String viewDefinition, String checkOption, String isUpdatable, String status, String remarks, Integer id) { - super(Views.VIEWS); - - setValue(0, tableCatalog); - setValue(1, tableSchema); - setValue(2, tableName); - setValue(3, viewDefinition); - setValue(4, checkOption); - setValue(5, isUpdatable); - setValue(6, status); - setValue(7, remarks); - setValue(8, id); - } -} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/public_/Keys.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/public_/Keys.java deleted file mode 100644 index 66656c9bbc..0000000000 --- a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/public_/Keys.java +++ /dev/null @@ -1,69 +0,0 @@ -/** - * This class is generated by jOOQ - */ -package com.baeldung.jooq.introduction.db.public_; - - -import com.baeldung.jooq.introduction.db.public_.tables.Author; -import com.baeldung.jooq.introduction.db.public_.tables.AuthorBook; -import com.baeldung.jooq.introduction.db.public_.tables.Book; -import com.baeldung.jooq.introduction.db.public_.tables.records.AuthorBookRecord; -import com.baeldung.jooq.introduction.db.public_.tables.records.AuthorRecord; -import com.baeldung.jooq.introduction.db.public_.tables.records.BookRecord; - -import javax.annotation.Generated; - -import org.jooq.ForeignKey; -import org.jooq.UniqueKey; -import org.jooq.impl.AbstractKeys; - - -/** - * A class modelling foreign key relationships between tables of the PUBLIC - * schema - */ -@Generated( - value = { - "http://www.jooq.org", - "jOOQ version:3.7.3" - }, - comments = "This class is generated by jOOQ" -) -@SuppressWarnings({ "all", "unchecked", "rawtypes" }) -public class Keys { - - // ------------------------------------------------------------------------- - // IDENTITY definitions - // ------------------------------------------------------------------------- - - - // ------------------------------------------------------------------------- - // UNIQUE and PRIMARY KEY definitions - // ------------------------------------------------------------------------- - - public static final UniqueKey CONSTRAINT_7 = UniqueKeys0.CONSTRAINT_7; - public static final UniqueKey CONSTRAINT_1 = UniqueKeys0.CONSTRAINT_1; - public static final UniqueKey CONSTRAINT_A = UniqueKeys0.CONSTRAINT_A; - - // ------------------------------------------------------------------------- - // FOREIGN KEY definitions - // ------------------------------------------------------------------------- - - public static final ForeignKey FK_AB_AUTHOR = ForeignKeys0.FK_AB_AUTHOR; - public static final ForeignKey FK_AB_BOOK = ForeignKeys0.FK_AB_BOOK; - - // ------------------------------------------------------------------------- - // [#1459] distribute members to avoid static initialisers > 64kb - // ------------------------------------------------------------------------- - - private static class UniqueKeys0 extends AbstractKeys { - public static final UniqueKey CONSTRAINT_7 = createUniqueKey(Author.AUTHOR, Author.AUTHOR.ID); - public static final UniqueKey CONSTRAINT_1 = createUniqueKey(Book.BOOK, Book.BOOK.ID); - public static final UniqueKey CONSTRAINT_A = createUniqueKey(AuthorBook.AUTHOR_BOOK, AuthorBook.AUTHOR_BOOK.AUTHOR_ID, AuthorBook.AUTHOR_BOOK.BOOK_ID); - } - - private static class ForeignKeys0 extends AbstractKeys { - public static final ForeignKey FK_AB_AUTHOR = createForeignKey(com.baeldung.jooq.introduction.db.public_.Keys.CONSTRAINT_7, AuthorBook.AUTHOR_BOOK, AuthorBook.AUTHOR_BOOK.AUTHOR_ID); - public static final ForeignKey FK_AB_BOOK = createForeignKey(com.baeldung.jooq.introduction.db.public_.Keys.CONSTRAINT_1, AuthorBook.AUTHOR_BOOK, AuthorBook.AUTHOR_BOOK.BOOK_ID); - } -} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/public_/Public.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/public_/Public.java deleted file mode 100644 index a681123c94..0000000000 --- a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/public_/Public.java +++ /dev/null @@ -1,61 +0,0 @@ -/** - * This class is generated by jOOQ - */ -package com.baeldung.jooq.introduction.db.public_; - - -import com.baeldung.jooq.introduction.db.public_.tables.Author; -import com.baeldung.jooq.introduction.db.public_.tables.AuthorBook; -import com.baeldung.jooq.introduction.db.public_.tables.Book; - -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; - -import javax.annotation.Generated; - -import org.jooq.Table; -import org.jooq.impl.SchemaImpl; - - -/** - * This class is generated by jOOQ. - */ -@Generated( - value = { - "http://www.jooq.org", - "jOOQ version:3.7.3" - }, - comments = "This class is generated by jOOQ" -) -@SuppressWarnings({ "all", "unchecked", "rawtypes" }) -public class Public extends SchemaImpl { - - private static final long serialVersionUID = 1806497150; - - /** - * The reference instance of PUBLIC - */ - public static final Public PUBLIC = new Public(); - - /** - * No further instances allowed - */ - private Public() { - super("PUBLIC"); - } - - @Override - public final List> getTables() { - List result = new ArrayList(); - result.addAll(getTables0()); - return result; - } - - private final List> getTables0() { - return Arrays.>asList( - Author.AUTHOR, - Book.BOOK, - AuthorBook.AUTHOR_BOOK); - } -} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/public_/Tables.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/public_/Tables.java deleted file mode 100644 index cbdc08b78f..0000000000 --- a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/public_/Tables.java +++ /dev/null @@ -1,41 +0,0 @@ -/** - * This class is generated by jOOQ - */ -package com.baeldung.jooq.introduction.db.public_; - - -import com.baeldung.jooq.introduction.db.public_.tables.Author; -import com.baeldung.jooq.introduction.db.public_.tables.AuthorBook; -import com.baeldung.jooq.introduction.db.public_.tables.Book; - -import javax.annotation.Generated; - - -/** - * Convenience access to all tables in PUBLIC - */ -@Generated( - value = { - "http://www.jooq.org", - "jOOQ version:3.7.3" - }, - comments = "This class is generated by jOOQ" -) -@SuppressWarnings({ "all", "unchecked", "rawtypes" }) -public class Tables { - - /** - * The table PUBLIC.AUTHOR - */ - public static final Author AUTHOR = com.baeldung.jooq.introduction.db.public_.tables.Author.AUTHOR; - - /** - * The table PUBLIC.BOOK - */ - public static final Book BOOK = com.baeldung.jooq.introduction.db.public_.tables.Book.BOOK; - - /** - * The table PUBLIC.AUTHOR_BOOK - */ - public static final AuthorBook AUTHOR_BOOK = com.baeldung.jooq.introduction.db.public_.tables.AuthorBook.AUTHOR_BOOK; -} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/public_/tables/Author.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/public_/tables/Author.java deleted file mode 100644 index 43d0b4f778..0000000000 --- a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/public_/tables/Author.java +++ /dev/null @@ -1,118 +0,0 @@ -/** - * This class is generated by jOOQ - */ -package com.baeldung.jooq.introduction.db.public_.tables; - - -import com.baeldung.jooq.introduction.db.public_.Keys; -import com.baeldung.jooq.introduction.db.public_.Public; -import com.baeldung.jooq.introduction.db.public_.tables.records.AuthorRecord; - -import java.util.Arrays; -import java.util.List; - -import javax.annotation.Generated; - -import org.jooq.Field; -import org.jooq.Table; -import org.jooq.TableField; -import org.jooq.UniqueKey; -import org.jooq.impl.TableImpl; - - -/** - * This class is generated by jOOQ. - */ -@Generated( - value = { - "http://www.jooq.org", - "jOOQ version:3.7.3" - }, - comments = "This class is generated by jOOQ" -) -@SuppressWarnings({ "all", "unchecked", "rawtypes" }) -public class Author extends TableImpl { - - private static final long serialVersionUID = 1121046490; - - /** - * The reference instance of PUBLIC.AUTHOR - */ - public static final Author AUTHOR = new Author(); - - /** - * The class holding records for this type - */ - @Override - public Class getRecordType() { - return AuthorRecord.class; - } - - /** - * The column PUBLIC.AUTHOR.ID. - */ - public final TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER.nullable(false), this, ""); - - /** - * The column PUBLIC.AUTHOR.FIRST_NAME. - */ - public final TableField FIRST_NAME = createField("FIRST_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(50), this, ""); - - /** - * The column PUBLIC.AUTHOR.LAST_NAME. - */ - public final TableField LAST_NAME = createField("LAST_NAME", org.jooq.impl.SQLDataType.VARCHAR.length(50).nullable(false), this, ""); - - /** - * Create a PUBLIC.AUTHOR table reference - */ - public Author() { - this("AUTHOR", null); - } - - /** - * Create an aliased PUBLIC.AUTHOR table reference - */ - public Author(String alias) { - this(alias, AUTHOR); - } - - private Author(String alias, Table aliased) { - this(alias, aliased, null); - } - - private Author(String alias, Table aliased, Field[] parameters) { - super(alias, Public.PUBLIC, aliased, parameters, ""); - } - - /** - * {@inheritDoc} - */ - @Override - public UniqueKey getPrimaryKey() { - return Keys.CONSTRAINT_7; - } - - /** - * {@inheritDoc} - */ - @Override - public List> getKeys() { - return Arrays.>asList(Keys.CONSTRAINT_7); - } - - /** - * {@inheritDoc} - */ - @Override - public Author as(String alias) { - return new Author(alias, this); - } - - /** - * Rename this table - */ - public Author rename(String name) { - return new Author(name, null); - } -} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/public_/tables/AuthorBook.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/public_/tables/AuthorBook.java deleted file mode 100644 index 38a0fe2593..0000000000 --- a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/public_/tables/AuthorBook.java +++ /dev/null @@ -1,122 +0,0 @@ -/** - * This class is generated by jOOQ - */ -package com.baeldung.jooq.introduction.db.public_.tables; - - -import com.baeldung.jooq.introduction.db.public_.Keys; -import com.baeldung.jooq.introduction.db.public_.Public; -import com.baeldung.jooq.introduction.db.public_.tables.records.AuthorBookRecord; - -import java.util.Arrays; -import java.util.List; - -import javax.annotation.Generated; - -import org.jooq.Field; -import org.jooq.ForeignKey; -import org.jooq.Table; -import org.jooq.TableField; -import org.jooq.UniqueKey; -import org.jooq.impl.TableImpl; - - -/** - * This class is generated by jOOQ. - */ -@Generated( - value = { - "http://www.jooq.org", - "jOOQ version:3.7.3" - }, - comments = "This class is generated by jOOQ" -) -@SuppressWarnings({ "all", "unchecked", "rawtypes" }) -public class AuthorBook extends TableImpl { - - private static final long serialVersionUID = -1609247069; - - /** - * The reference instance of PUBLIC.AUTHOR_BOOK - */ - public static final AuthorBook AUTHOR_BOOK = new AuthorBook(); - - /** - * The class holding records for this type - */ - @Override - public Class getRecordType() { - return AuthorBookRecord.class; - } - - /** - * The column PUBLIC.AUTHOR_BOOK.AUTHOR_ID. - */ - public final TableField AUTHOR_ID = createField("AUTHOR_ID", org.jooq.impl.SQLDataType.INTEGER.nullable(false), this, ""); - - /** - * The column PUBLIC.AUTHOR_BOOK.BOOK_ID. - */ - public final TableField BOOK_ID = createField("BOOK_ID", org.jooq.impl.SQLDataType.INTEGER.nullable(false), this, ""); - - /** - * Create a PUBLIC.AUTHOR_BOOK table reference - */ - public AuthorBook() { - this("AUTHOR_BOOK", null); - } - - /** - * Create an aliased PUBLIC.AUTHOR_BOOK table reference - */ - public AuthorBook(String alias) { - this(alias, AUTHOR_BOOK); - } - - private AuthorBook(String alias, Table aliased) { - this(alias, aliased, null); - } - - private AuthorBook(String alias, Table aliased, Field[] parameters) { - super(alias, Public.PUBLIC, aliased, parameters, ""); - } - - /** - * {@inheritDoc} - */ - @Override - public UniqueKey getPrimaryKey() { - return Keys.CONSTRAINT_A; - } - - /** - * {@inheritDoc} - */ - @Override - public List> getKeys() { - return Arrays.>asList(Keys.CONSTRAINT_A); - } - - /** - * {@inheritDoc} - */ - @Override - public List> getReferences() { - return Arrays.>asList(Keys.FK_AB_AUTHOR, Keys.FK_AB_BOOK); - } - - /** - * {@inheritDoc} - */ - @Override - public AuthorBook as(String alias) { - return new AuthorBook(alias, this); - } - - /** - * Rename this table - */ - public AuthorBook rename(String name) { - return new AuthorBook(name, null); - } -} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/public_/tables/Book.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/public_/tables/Book.java deleted file mode 100644 index 33b38e1eb5..0000000000 --- a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/public_/tables/Book.java +++ /dev/null @@ -1,113 +0,0 @@ -/** - * This class is generated by jOOQ - */ -package com.baeldung.jooq.introduction.db.public_.tables; - - -import com.baeldung.jooq.introduction.db.public_.Keys; -import com.baeldung.jooq.introduction.db.public_.Public; -import com.baeldung.jooq.introduction.db.public_.tables.records.BookRecord; - -import java.util.Arrays; -import java.util.List; - -import javax.annotation.Generated; - -import org.jooq.Field; -import org.jooq.Table; -import org.jooq.TableField; -import org.jooq.UniqueKey; -import org.jooq.impl.TableImpl; - - -/** - * This class is generated by jOOQ. - */ -@Generated( - value = { - "http://www.jooq.org", - "jOOQ version:3.7.3" - }, - comments = "This class is generated by jOOQ" -) -@SuppressWarnings({ "all", "unchecked", "rawtypes" }) -public class Book extends TableImpl { - - private static final long serialVersionUID = -1685336167; - - /** - * The reference instance of PUBLIC.BOOK - */ - public static final Book BOOK = new Book(); - - /** - * The class holding records for this type - */ - @Override - public Class getRecordType() { - return BookRecord.class; - } - - /** - * The column PUBLIC.BOOK.ID. - */ - public final TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER.nullable(false), this, ""); - - /** - * The column PUBLIC.BOOK.TITLE. - */ - public final TableField TITLE = createField("TITLE", org.jooq.impl.SQLDataType.VARCHAR.length(100).nullable(false), this, ""); - - /** - * Create a PUBLIC.BOOK table reference - */ - public Book() { - this("BOOK", null); - } - - /** - * Create an aliased PUBLIC.BOOK table reference - */ - public Book(String alias) { - this(alias, BOOK); - } - - private Book(String alias, Table aliased) { - this(alias, aliased, null); - } - - private Book(String alias, Table aliased, Field[] parameters) { - super(alias, Public.PUBLIC, aliased, parameters, ""); - } - - /** - * {@inheritDoc} - */ - @Override - public UniqueKey getPrimaryKey() { - return Keys.CONSTRAINT_1; - } - - /** - * {@inheritDoc} - */ - @Override - public List> getKeys() { - return Arrays.>asList(Keys.CONSTRAINT_1); - } - - /** - * {@inheritDoc} - */ - @Override - public Book as(String alias) { - return new Book(alias, this); - } - - /** - * Rename this table - */ - public Book rename(String name) { - return new Book(name, null); - } -} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/public_/tables/records/AuthorBookRecord.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/public_/tables/records/AuthorBookRecord.java deleted file mode 100644 index 2e9a07ba4f..0000000000 --- a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/public_/tables/records/AuthorBookRecord.java +++ /dev/null @@ -1,172 +0,0 @@ -/** - * This class is generated by jOOQ - */ -package com.baeldung.jooq.introduction.db.public_.tables.records; - - -import com.baeldung.jooq.introduction.db.public_.tables.AuthorBook; - -import javax.annotation.Generated; - -import org.jooq.Field; -import org.jooq.Record2; -import org.jooq.Row2; -import org.jooq.impl.UpdatableRecordImpl; - - -/** - * This class is generated by jOOQ. - */ -@Generated( - value = { - "http://www.jooq.org", - "jOOQ version:3.7.3" - }, - comments = "This class is generated by jOOQ" -) -@SuppressWarnings({ "all", "unchecked", "rawtypes" }) -public class AuthorBookRecord extends UpdatableRecordImpl implements Record2 { - - private static final long serialVersionUID = -1057354033; - - /** - * Setter for PUBLIC.AUTHOR_BOOK.AUTHOR_ID. - */ - public void setAuthorId(Integer value) { - setValue(0, value); - } - - /** - * Getter for PUBLIC.AUTHOR_BOOK.AUTHOR_ID. - */ - public Integer getAuthorId() { - return (Integer) getValue(0); - } - - /** - * Setter for PUBLIC.AUTHOR_BOOK.BOOK_ID. - */ - public void setBookId(Integer value) { - setValue(1, value); - } - - /** - * Getter for PUBLIC.AUTHOR_BOOK.BOOK_ID. - */ - public Integer getBookId() { - return (Integer) getValue(1); - } - - // ------------------------------------------------------------------------- - // Primary key information - // ------------------------------------------------------------------------- - - /** - * {@inheritDoc} - */ - @Override - public Record2 key() { - return (Record2) super.key(); - } - - // ------------------------------------------------------------------------- - // Record2 type implementation - // ------------------------------------------------------------------------- - - /** - * {@inheritDoc} - */ - @Override - public Row2 fieldsRow() { - return (Row2) super.fieldsRow(); - } - - /** - * {@inheritDoc} - */ - @Override - public Row2 valuesRow() { - return (Row2) super.valuesRow(); - } - - /** - * {@inheritDoc} - */ - @Override - public Field field1() { - return AuthorBook.AUTHOR_BOOK.AUTHOR_ID; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field2() { - return AuthorBook.AUTHOR_BOOK.BOOK_ID; - } - - /** - * {@inheritDoc} - */ - @Override - public Integer value1() { - return getAuthorId(); - } - - /** - * {@inheritDoc} - */ - @Override - public Integer value2() { - return getBookId(); - } - - /** - * {@inheritDoc} - */ - @Override - public AuthorBookRecord value1(Integer value) { - setAuthorId(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public AuthorBookRecord value2(Integer value) { - setBookId(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public AuthorBookRecord values(Integer value1, Integer value2) { - value1(value1); - value2(value2); - return this; - } - - // ------------------------------------------------------------------------- - // Constructors - // ------------------------------------------------------------------------- - - /** - * Create a detached AuthorBookRecord - */ - public AuthorBookRecord() { - super(AuthorBook.AUTHOR_BOOK); - } - - /** - * Create a detached, initialised AuthorBookRecord - */ - public AuthorBookRecord(Integer authorId, Integer bookId) { - super(AuthorBook.AUTHOR_BOOK); - - setValue(0, authorId); - setValue(1, bookId); - } -} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/public_/tables/records/AuthorRecord.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/public_/tables/records/AuthorRecord.java deleted file mode 100644 index 5d6d88b0c3..0000000000 --- a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/public_/tables/records/AuthorRecord.java +++ /dev/null @@ -1,214 +0,0 @@ -/** - * This class is generated by jOOQ - */ -package com.baeldung.jooq.introduction.db.public_.tables.records; - - -import com.baeldung.jooq.introduction.db.public_.tables.Author; - -import javax.annotation.Generated; - -import org.jooq.Field; -import org.jooq.Record1; -import org.jooq.Record3; -import org.jooq.Row3; -import org.jooq.impl.UpdatableRecordImpl; - - -/** - * This class is generated by jOOQ. - */ -@Generated( - value = { - "http://www.jooq.org", - "jOOQ version:3.7.3" - }, - comments = "This class is generated by jOOQ" -) -@SuppressWarnings({ "all", "unchecked", "rawtypes" }) -public class AuthorRecord extends UpdatableRecordImpl implements Record3 { - - private static final long serialVersionUID = 253757039; - - /** - * Setter for PUBLIC.AUTHOR.ID. - */ - public void setId(Integer value) { - setValue(0, value); - } - - /** - * Getter for PUBLIC.AUTHOR.ID. - */ - public Integer getId() { - return (Integer) getValue(0); - } - - /** - * Setter for PUBLIC.AUTHOR.FIRST_NAME. - */ - public void setFirstName(String value) { - setValue(1, value); - } - - /** - * Getter for PUBLIC.AUTHOR.FIRST_NAME. - */ - public String getFirstName() { - return (String) getValue(1); - } - - /** - * Setter for PUBLIC.AUTHOR.LAST_NAME. - */ - public void setLastName(String value) { - setValue(2, value); - } - - /** - * Getter for PUBLIC.AUTHOR.LAST_NAME. - */ - public String getLastName() { - return (String) getValue(2); - } - - // ------------------------------------------------------------------------- - // Primary key information - // ------------------------------------------------------------------------- - - /** - * {@inheritDoc} - */ - @Override - public Record1 key() { - return (Record1) super.key(); - } - - // ------------------------------------------------------------------------- - // Record3 type implementation - // ------------------------------------------------------------------------- - - /** - * {@inheritDoc} - */ - @Override - public Row3 fieldsRow() { - return (Row3) super.fieldsRow(); - } - - /** - * {@inheritDoc} - */ - @Override - public Row3 valuesRow() { - return (Row3) super.valuesRow(); - } - - /** - * {@inheritDoc} - */ - @Override - public Field field1() { - return Author.AUTHOR.ID; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field2() { - return Author.AUTHOR.FIRST_NAME; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field3() { - return Author.AUTHOR.LAST_NAME; - } - - /** - * {@inheritDoc} - */ - @Override - public Integer value1() { - return getId(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value2() { - return getFirstName(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value3() { - return getLastName(); - } - - /** - * {@inheritDoc} - */ - @Override - public AuthorRecord value1(Integer value) { - setId(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public AuthorRecord value2(String value) { - setFirstName(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public AuthorRecord value3(String value) { - setLastName(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public AuthorRecord values(Integer value1, String value2, String value3) { - value1(value1); - value2(value2); - value3(value3); - return this; - } - - // ------------------------------------------------------------------------- - // Constructors - // ------------------------------------------------------------------------- - - /** - * Create a detached AuthorRecord - */ - public AuthorRecord() { - super(Author.AUTHOR); - } - - /** - * Create a detached, initialised AuthorRecord - */ - public AuthorRecord(Integer id, String firstName, String lastName) { - super(Author.AUTHOR); - - setValue(0, id); - setValue(1, firstName); - setValue(2, lastName); - } -} diff --git a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/public_/tables/records/BookRecord.java b/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/public_/tables/records/BookRecord.java deleted file mode 100644 index 1725dccff0..0000000000 --- a/jooq-spring/src/main/java/com/baeldung/jooq/introduction/db/public_/tables/records/BookRecord.java +++ /dev/null @@ -1,173 +0,0 @@ -/** - * This class is generated by jOOQ - */ -package com.baeldung.jooq.introduction.db.public_.tables.records; - - -import com.baeldung.jooq.introduction.db.public_.tables.Book; - -import javax.annotation.Generated; - -import org.jooq.Field; -import org.jooq.Record1; -import org.jooq.Record2; -import org.jooq.Row2; -import org.jooq.impl.UpdatableRecordImpl; - - -/** - * This class is generated by jOOQ. - */ -@Generated( - value = { - "http://www.jooq.org", - "jOOQ version:3.7.3" - }, - comments = "This class is generated by jOOQ" -) -@SuppressWarnings({ "all", "unchecked", "rawtypes" }) -public class BookRecord extends UpdatableRecordImpl implements Record2 { - - private static final long serialVersionUID = -434165872; - - /** - * Setter for PUBLIC.BOOK.ID. - */ - public void setId(Integer value) { - setValue(0, value); - } - - /** - * Getter for PUBLIC.BOOK.ID. - */ - public Integer getId() { - return (Integer) getValue(0); - } - - /** - * Setter for PUBLIC.BOOK.TITLE. - */ - public void setTitle(String value) { - setValue(1, value); - } - - /** - * Getter for PUBLIC.BOOK.TITLE. - */ - public String getTitle() { - return (String) getValue(1); - } - - // ------------------------------------------------------------------------- - // Primary key information - // ------------------------------------------------------------------------- - - /** - * {@inheritDoc} - */ - @Override - public Record1 key() { - return (Record1) super.key(); - } - - // ------------------------------------------------------------------------- - // Record2 type implementation - // ------------------------------------------------------------------------- - - /** - * {@inheritDoc} - */ - @Override - public Row2 fieldsRow() { - return (Row2) super.fieldsRow(); - } - - /** - * {@inheritDoc} - */ - @Override - public Row2 valuesRow() { - return (Row2) super.valuesRow(); - } - - /** - * {@inheritDoc} - */ - @Override - public Field field1() { - return Book.BOOK.ID; - } - - /** - * {@inheritDoc} - */ - @Override - public Field field2() { - return Book.BOOK.TITLE; - } - - /** - * {@inheritDoc} - */ - @Override - public Integer value1() { - return getId(); - } - - /** - * {@inheritDoc} - */ - @Override - public String value2() { - return getTitle(); - } - - /** - * {@inheritDoc} - */ - @Override - public BookRecord value1(Integer value) { - setId(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public BookRecord value2(String value) { - setTitle(value); - return this; - } - - /** - * {@inheritDoc} - */ - @Override - public BookRecord values(Integer value1, String value2) { - value1(value1); - value2(value2); - return this; - } - - // ------------------------------------------------------------------------- - // Constructors - // ------------------------------------------------------------------------- - - /** - * Create a detached BookRecord - */ - public BookRecord() { - super(Book.BOOK); - } - - /** - * Create a detached, initialised BookRecord - */ - public BookRecord(Integer id, String title) { - super(Book.BOOK); - - setValue(0, id); - setValue(1, title); - } -} From 34abb0eab7e419cbe5babdee7667643f38e61c63 Mon Sep 17 00:00:00 2001 From: Grzegorz Piwowarek Date: Tue, 7 Jun 2016 18:05:50 +0200 Subject: [PATCH 10/26] Refactor jOOQ-Spring --- jooq-spring/.classpath | 31 ------ jooq-spring/.project | 29 ------ .../introduction/ExceptionTranslator.java | 2 +- .../jooq/introduction/PersistenceContext.java | 4 +- .../baeldung/jooq/introduction/QueryTest.java | 93 +++++++++++------ .../baeldung/jooq/springboot/Application.java | 11 +-- .../jooq/springboot/SpringBootTest.java | 99 +++++++++++++------ pom.xml | 1 + 8 files changed, 144 insertions(+), 126 deletions(-) delete mode 100644 jooq-spring/.classpath delete mode 100644 jooq-spring/.project diff --git a/jooq-spring/.classpath b/jooq-spring/.classpath deleted file mode 100644 index 9ae7bca0fc..0000000000 --- a/jooq-spring/.classpath +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/jooq-spring/.project b/jooq-spring/.project deleted file mode 100644 index a291146b79..0000000000 --- a/jooq-spring/.project +++ /dev/null @@ -1,29 +0,0 @@ - - - jooq-spring - - - - - - org.eclipse.jdt.core.javabuilder - - - - - org.springframework.ide.eclipse.core.springbuilder - - - - - org.eclipse.m2e.core.maven2Builder - - - - - - org.springframework.ide.eclipse.core.springnature - org.eclipse.jdt.core.javanature - org.eclipse.m2e.core.maven2Nature - - diff --git a/jooq-spring/src/test/java/com/baeldung/jooq/introduction/ExceptionTranslator.java b/jooq-spring/src/test/java/com/baeldung/jooq/introduction/ExceptionTranslator.java index 7bee21f077..8312f20c05 100644 --- a/jooq-spring/src/test/java/com/baeldung/jooq/introduction/ExceptionTranslator.java +++ b/jooq-spring/src/test/java/com/baeldung/jooq/introduction/ExceptionTranslator.java @@ -8,12 +8,12 @@ import org.springframework.jdbc.support.SQLErrorCodeSQLExceptionTranslator; import org.springframework.jdbc.support.SQLExceptionTranslator; public class ExceptionTranslator extends DefaultExecuteListener { - private static final long serialVersionUID = 649359748808106775L; @Override public void exception(ExecuteContext context) { SQLDialect dialect = context.configuration().dialect(); SQLExceptionTranslator translator = new SQLErrorCodeSQLExceptionTranslator(dialect.name()); + context.exception(translator.translate("Access database using jOOQ", context.sql(), context.sqlException())); } } \ No newline at end of file diff --git a/jooq-spring/src/test/java/com/baeldung/jooq/introduction/PersistenceContext.java b/jooq-spring/src/test/java/com/baeldung/jooq/introduction/PersistenceContext.java index ee34c00679..df628f9f78 100644 --- a/jooq-spring/src/test/java/com/baeldung/jooq/introduction/PersistenceContext.java +++ b/jooq-spring/src/test/java/com/baeldung/jooq/introduction/PersistenceContext.java @@ -1,6 +1,5 @@ package com.baeldung.jooq.introduction; -import javax.sql.DataSource; import org.h2.jdbcx.JdbcDataSource; import org.jooq.SQLDialect; import org.jooq.impl.DataSourceConnectionProvider; @@ -17,11 +16,14 @@ import org.springframework.jdbc.datasource.DataSourceTransactionManager; import org.springframework.jdbc.datasource.TransactionAwareDataSourceProxy; import org.springframework.transaction.annotation.EnableTransactionManagement; +import javax.sql.DataSource; + @Configuration @ComponentScan({ "com.baeldung.jooq.introduction.db.public_.tables" }) @EnableTransactionManagement @PropertySource("classpath:intro_config.properties") public class PersistenceContext { + @Autowired private Environment environment; diff --git a/jooq-spring/src/test/java/com/baeldung/jooq/introduction/QueryTest.java b/jooq-spring/src/test/java/com/baeldung/jooq/introduction/QueryTest.java index bc12dff5a0..68f975dd6d 100644 --- a/jooq-spring/src/test/java/com/baeldung/jooq/introduction/QueryTest.java +++ b/jooq-spring/src/test/java/com/baeldung/jooq/introduction/QueryTest.java @@ -1,8 +1,5 @@ package com.baeldung.jooq.introduction; -import com.baeldung.jooq.introduction.db.public_.tables.Author; -import com.baeldung.jooq.introduction.db.public_.tables.AuthorBook; -import com.baeldung.jooq.introduction.db.public_.tables.Book; import org.jooq.DSLContext; import org.jooq.Record3; import org.jooq.Result; @@ -15,6 +12,9 @@ import org.springframework.test.context.ContextConfiguration; import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; import org.springframework.transaction.annotation.Transactional; +import static com.baeldung.jooq.introduction.db.public_.tables.Author.AUTHOR; +import static com.baeldung.jooq.introduction.db.public_.tables.AuthorBook.AUTHOR_BOOK; +import static com.baeldung.jooq.introduction.db.public_.tables.Book.BOOK; import static org.junit.Assert.assertEquals; @ContextConfiguration(classes = PersistenceContext.class) @@ -25,61 +25,98 @@ public class QueryTest { @Autowired private DSLContext dsl; - Author author = Author.AUTHOR; - Book book = Book.BOOK; - AuthorBook authorBook = AuthorBook.AUTHOR_BOOK; - @Test public void givenValidData_whenInserting_thenSucceed() { - dsl.insertInto(author).set(author.ID, 4).set(author.FIRST_NAME, "Herbert").set(author.LAST_NAME, "Schildt").execute(); - dsl.insertInto(book).set(book.ID, 4).set(book.TITLE, "A Beginner's Guide").execute(); - dsl.insertInto(authorBook).set(authorBook.AUTHOR_ID, 4).set(authorBook.BOOK_ID, 4).execute(); - Result> result = dsl.select(author.ID, author.LAST_NAME, DSL.count()).from(author).join(authorBook).on(author.ID.equal(authorBook.AUTHOR_ID)).join(book).on(authorBook.BOOK_ID.equal(book.ID)) - .groupBy(author.LAST_NAME).fetch(); + dsl.insertInto(AUTHOR) + .set(AUTHOR.ID, 4) + .set(AUTHOR.FIRST_NAME, "Herbert") + .set(AUTHOR.LAST_NAME, "Schildt") + .execute(); + + dsl.insertInto(BOOK) + .set(BOOK.ID, 4) + .set(BOOK.TITLE, "A Beginner's Guide") + .execute(); + + dsl.insertInto(AUTHOR_BOOK) + .set(AUTHOR_BOOK.AUTHOR_ID, 4) + .set(AUTHOR_BOOK.BOOK_ID, 4) + .execute(); + + final Result> result = dsl.select(AUTHOR.ID, AUTHOR.LAST_NAME, DSL.count()) + .from(AUTHOR) + .join(AUTHOR_BOOK).on(AUTHOR.ID.equal(AUTHOR_BOOK.AUTHOR_ID)) + .join(BOOK).on(AUTHOR_BOOK.BOOK_ID.equal(BOOK.ID)) + .groupBy(AUTHOR.LAST_NAME).fetch(); assertEquals(3, result.size()); - assertEquals("Sierra", result.getValue(0, author.LAST_NAME)); + assertEquals("Sierra", result.getValue(0, AUTHOR.LAST_NAME)); assertEquals(Integer.valueOf(2), result.getValue(0, DSL.count())); - assertEquals("Schildt", result.getValue(2, author.LAST_NAME)); + assertEquals("Schildt", result.getValue(2, AUTHOR.LAST_NAME)); assertEquals(Integer.valueOf(1), result.getValue(2, DSL.count())); } @Test(expected = DataAccessException.class) public void givenInvalidData_whenInserting_thenFail() { - dsl.insertInto(authorBook).set(authorBook.AUTHOR_ID, 4).set(authorBook.BOOK_ID, 5).execute(); + dsl.insertInto(AUTHOR_BOOK).set(AUTHOR_BOOK.AUTHOR_ID, 4).set(AUTHOR_BOOK.BOOK_ID, 5).execute(); } @Test public void givenValidData_whenUpdating_thenSucceed() { - dsl.update(author).set(author.LAST_NAME, "Baeldung").where(author.ID.equal(3)).execute(); - dsl.update(book).set(book.TITLE, "Building your REST API with Spring").where(book.ID.equal(3)).execute(); - dsl.insertInto(authorBook).set(authorBook.AUTHOR_ID, 3).set(authorBook.BOOK_ID, 3).execute(); - Result> result = dsl.select(author.ID, author.LAST_NAME, book.TITLE).from(author).join(authorBook).on(author.ID.equal(authorBook.AUTHOR_ID)).join(book).on(authorBook.BOOK_ID.equal(book.ID)).where(author.ID.equal(3)) + dsl.update(AUTHOR) + .set(AUTHOR.LAST_NAME, "Baeldung") + .where(AUTHOR.ID.equal(3)) + .execute(); + + dsl.update(BOOK) + .set(BOOK.TITLE, "Building your REST API with Spring") + .where(BOOK.ID.equal(3)).execute(); + + dsl.insertInto(AUTHOR_BOOK) + .set(AUTHOR_BOOK.AUTHOR_ID, 3) + .set(AUTHOR_BOOK.BOOK_ID, 3) + .execute(); + + final Result> result = dsl.select(AUTHOR.ID, AUTHOR.LAST_NAME, BOOK.TITLE) + .from(AUTHOR) + .join(AUTHOR_BOOK).on(AUTHOR.ID.equal(AUTHOR_BOOK.AUTHOR_ID)) + .join(BOOK).on(AUTHOR_BOOK.BOOK_ID.equal(BOOK.ID)) + .where(AUTHOR.ID.equal(3)) .fetch(); assertEquals(1, result.size()); - assertEquals(Integer.valueOf(3), result.getValue(0, author.ID)); - assertEquals("Baeldung", result.getValue(0, author.LAST_NAME)); - assertEquals("Building your REST API with Spring", result.getValue(0, book.TITLE)); + assertEquals(Integer.valueOf(3), result.getValue(0, AUTHOR.ID)); + assertEquals("Baeldung", result.getValue(0, AUTHOR.LAST_NAME)); + assertEquals("Building your REST API with Spring", result.getValue(0, BOOK.TITLE)); } @Test(expected = DataAccessException.class) public void givenInvalidData_whenUpdating_thenFail() { - dsl.update(authorBook).set(authorBook.AUTHOR_ID, 4).set(authorBook.BOOK_ID, 5).execute(); + dsl.update(AUTHOR_BOOK) + .set(AUTHOR_BOOK.AUTHOR_ID, 4) + .set(AUTHOR_BOOK.BOOK_ID, 5) + .execute(); } @Test public void givenValidData_whenDeleting_thenSucceed() { - dsl.delete(author).where(author.ID.lt(3)).execute(); - Result> result = dsl.select(author.ID, author.FIRST_NAME, author.LAST_NAME).from(author).fetch(); + dsl.delete(AUTHOR) + .where(AUTHOR.ID.lt(3)) + .execute(); + + final Result> result = dsl.select(AUTHOR.ID, AUTHOR.FIRST_NAME, AUTHOR.LAST_NAME) + .from(AUTHOR) + .fetch(); assertEquals(1, result.size()); - assertEquals("Bryan", result.getValue(0, author.FIRST_NAME)); - assertEquals("Basham", result.getValue(0, author.LAST_NAME)); + assertEquals("Bryan", result.getValue(0, AUTHOR.FIRST_NAME)); + assertEquals("Basham", result.getValue(0, AUTHOR.LAST_NAME)); } @Test(expected = DataAccessException.class) public void givenInvalidData_whenDeleting_thenFail() { - dsl.delete(book).where(book.ID.equal(1)).execute(); + dsl.delete(BOOK) + .where(BOOK.ID.equal(1)) + .execute(); } } \ No newline at end of file diff --git a/jooq-spring/src/test/java/com/baeldung/jooq/springboot/Application.java b/jooq-spring/src/test/java/com/baeldung/jooq/springboot/Application.java index a52f0a0ef3..844a2989a5 100644 --- a/jooq-spring/src/test/java/com/baeldung/jooq/springboot/Application.java +++ b/jooq-spring/src/test/java/com/baeldung/jooq/springboot/Application.java @@ -1,12 +1,10 @@ package com.baeldung.jooq.springboot; -import javax.sql.DataSource; - +import com.baeldung.jooq.introduction.ExceptionTranslator; import org.jooq.impl.DataSourceConnectionProvider; import org.jooq.impl.DefaultConfiguration; import org.jooq.impl.DefaultDSLContext; import org.jooq.impl.DefaultExecuteListenerProvider; - import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.context.annotation.Bean; @@ -16,14 +14,14 @@ import org.springframework.jdbc.datasource.DriverManagerDataSource; import org.springframework.jdbc.datasource.TransactionAwareDataSourceProxy; import org.springframework.transaction.annotation.EnableTransactionManagement; -import com.baeldung.jooq.introduction.ExceptionTranslator; +import javax.sql.DataSource; @SpringBootApplication @EnableTransactionManagement public class Application { + @Autowired private Environment environment; - private DataSource dataSource; public DataSource dataSource() { DriverManagerDataSource dataSource = new DriverManagerDataSource(); @@ -41,7 +39,7 @@ public class Application { } public DataSourceTransactionManager transactionManager() { - return new DataSourceTransactionManager(dataSource); + return new DataSourceTransactionManager(dataSource()); } @Bean @@ -60,6 +58,7 @@ public class Application { public DefaultConfiguration configuration() { DefaultConfiguration jooqConfiguration = new DefaultConfiguration(); + jooqConfiguration.set(connectionProvider()); jooqConfiguration.set(new DefaultExecuteListenerProvider(exceptionTransformer())); diff --git a/jooq-spring/src/test/java/com/baeldung/jooq/springboot/SpringBootTest.java b/jooq-spring/src/test/java/com/baeldung/jooq/springboot/SpringBootTest.java index bf5cc250a8..f9427f30fb 100644 --- a/jooq-spring/src/test/java/com/baeldung/jooq/springboot/SpringBootTest.java +++ b/jooq-spring/src/test/java/com/baeldung/jooq/springboot/SpringBootTest.java @@ -1,7 +1,5 @@ package com.baeldung.jooq.springboot; -import static org.junit.Assert.*; - import org.jooq.DSLContext; import org.jooq.Record3; import org.jooq.Result; @@ -14,72 +12,113 @@ import org.springframework.dao.DataAccessException; import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; import org.springframework.transaction.annotation.Transactional; -import com.baeldung.jooq.introduction.db.public_.tables.Author; -import com.baeldung.jooq.introduction.db.public_.tables.AuthorBook; -import com.baeldung.jooq.introduction.db.public_.tables.Book; +import static com.baeldung.jooq.introduction.db.public_.tables.Author.AUTHOR; +import static com.baeldung.jooq.introduction.db.public_.tables.AuthorBook.AUTHOR_BOOK; +import static com.baeldung.jooq.introduction.db.public_.tables.Book.BOOK; +import static org.junit.Assert.assertEquals; @SpringApplicationConfiguration(Application.class) @Transactional("transactionManager") @RunWith(SpringJUnit4ClassRunner.class) public class SpringBootTest { - @Autowired - private DSLContext dsl; - Author author = Author.AUTHOR; - Book book = Book.BOOK; - AuthorBook authorBook = AuthorBook.AUTHOR_BOOK; + @Autowired + private DSLContext dsl; @Test public void givenValidData_whenInserting_thenSucceed() { - dsl.insertInto(author).set(author.ID, 4).set(author.FIRST_NAME, "Herbert").set(author.LAST_NAME, "Schildt").execute(); - dsl.insertInto(book).set(book.ID, 4).set(book.TITLE, "A Beginner's Guide").execute(); - dsl.insertInto(authorBook).set(authorBook.AUTHOR_ID, 4).set(authorBook.BOOK_ID, 4).execute(); - Result> result = dsl.select(author.ID, author.LAST_NAME, DSL.count()).from(author).join(authorBook).on(author.ID.equal(authorBook.AUTHOR_ID)).join(book).on(authorBook.BOOK_ID.equal(book.ID)).groupBy(author.LAST_NAME) + dsl.insertInto(AUTHOR) + .set(AUTHOR.ID, 4) + .set(AUTHOR.FIRST_NAME, "Herbert") + .set(AUTHOR.LAST_NAME, "Schildt") + .execute(); + + dsl.insertInto(BOOK) + .set(BOOK.ID, 4) + .set(BOOK.TITLE, "A Beginner's Guide") + .execute(); + + dsl.insertInto(AUTHOR_BOOK) + .set(AUTHOR_BOOK.AUTHOR_ID, 4) + .set(AUTHOR_BOOK.BOOK_ID, 4) + .execute(); + + final Result> result = dsl.select(AUTHOR.ID, AUTHOR.LAST_NAME, DSL.count()) + .from(AUTHOR).join(AUTHOR_BOOK).on(AUTHOR.ID.equal(AUTHOR_BOOK.AUTHOR_ID)) + .join(BOOK).on(AUTHOR_BOOK.BOOK_ID.equal(BOOK.ID)) + .groupBy(AUTHOR.LAST_NAME) .fetch(); assertEquals(3, result.size()); - assertEquals("Sierra", result.getValue(0, author.LAST_NAME)); + assertEquals("Sierra", result.getValue(0, AUTHOR.LAST_NAME)); assertEquals(Integer.valueOf(2), result.getValue(0, DSL.count())); - assertEquals("Schildt", result.getValue(2, author.LAST_NAME)); + assertEquals("Schildt", result.getValue(2, AUTHOR.LAST_NAME)); assertEquals(Integer.valueOf(1), result.getValue(2, DSL.count())); } @Test(expected = DataAccessException.class) public void givenInvalidData_whenInserting_thenFail() { - dsl.insertInto(authorBook).set(authorBook.AUTHOR_ID, 4).set(authorBook.BOOK_ID, 5).execute(); + dsl.insertInto(AUTHOR_BOOK) + .set(AUTHOR_BOOK.AUTHOR_ID, 4) + .set(AUTHOR_BOOK.BOOK_ID, 5) + .execute(); } @Test public void givenValidData_whenUpdating_thenSucceed() { - dsl.update(author).set(author.LAST_NAME, "Baeldung").where(author.ID.equal(3)).execute(); - dsl.update(book).set(book.TITLE, "Building your REST API with Spring").where(book.ID.equal(3)).execute(); - dsl.insertInto(authorBook).set(authorBook.AUTHOR_ID, 3).set(authorBook.BOOK_ID, 3).execute(); - Result> result = dsl.select(author.ID, author.LAST_NAME, book.TITLE).from(author).join(authorBook).on(author.ID.equal(authorBook.AUTHOR_ID)).join(book).on(authorBook.BOOK_ID.equal(book.ID)).where(author.ID.equal(3)) + dsl.update(AUTHOR) + .set(AUTHOR.LAST_NAME, "Baeldung") + .where(AUTHOR.ID.equal(3)) + .execute(); + + dsl.update(BOOK) + .set(BOOK.TITLE, "Building your REST API with Spring") + .where(BOOK.ID.equal(3)) + .execute(); + + dsl.insertInto(AUTHOR_BOOK) + .set(AUTHOR_BOOK.AUTHOR_ID, 3) + .set(AUTHOR_BOOK.BOOK_ID, 3) + .execute(); + + final Result> result = dsl.select(AUTHOR.ID, AUTHOR.LAST_NAME, BOOK.TITLE) + .from(AUTHOR).join(AUTHOR_BOOK).on(AUTHOR.ID.equal(AUTHOR_BOOK.AUTHOR_ID)) + .join(BOOK).on(AUTHOR_BOOK.BOOK_ID.equal(BOOK.ID)) + .where(AUTHOR.ID.equal(3)) .fetch(); assertEquals(1, result.size()); - assertEquals(Integer.valueOf(3), result.getValue(0, author.ID)); - assertEquals("Baeldung", result.getValue(0, author.LAST_NAME)); - assertEquals("Building your REST API with Spring", result.getValue(0, book.TITLE)); + assertEquals(Integer.valueOf(3), result.getValue(0, AUTHOR.ID)); + assertEquals("Baeldung", result.getValue(0, AUTHOR.LAST_NAME)); + assertEquals("Building your REST API with Spring", result.getValue(0, BOOK.TITLE)); } @Test(expected = DataAccessException.class) public void givenInvalidData_whenUpdating_thenFail() { - dsl.update(authorBook).set(authorBook.AUTHOR_ID, 4).set(authorBook.BOOK_ID, 5).execute(); + dsl.update(AUTHOR_BOOK) + .set(AUTHOR_BOOK.AUTHOR_ID, 4) + .set(AUTHOR_BOOK.BOOK_ID, 5) + .execute(); } @Test public void givenValidData_whenDeleting_thenSucceed() { - dsl.delete(author).where(author.ID.lt(3)).execute(); - Result> result = dsl.select(author.ID, author.FIRST_NAME, author.LAST_NAME).from(author).fetch(); + dsl.delete(AUTHOR) + .where(AUTHOR.ID.lt(3)) + .execute(); + + final Result> result = dsl.select(AUTHOR.ID, AUTHOR.FIRST_NAME, AUTHOR.LAST_NAME) + .from(AUTHOR).fetch(); assertEquals(1, result.size()); - assertEquals("Bryan", result.getValue(0, author.FIRST_NAME)); - assertEquals("Basham", result.getValue(0, author.LAST_NAME)); + assertEquals("Bryan", result.getValue(0, AUTHOR.FIRST_NAME)); + assertEquals("Basham", result.getValue(0, AUTHOR.LAST_NAME)); } @Test(expected = DataAccessException.class) public void givenInvalidData_whenDeleting_thenFail() { - dsl.delete(book).where(book.ID.equal(1)).execute(); + dsl.delete(BOOK) + .where(BOOK.ID.equal(1)) + .execute(); } } \ No newline at end of file diff --git a/pom.xml b/pom.xml index d6a1d7c034..7a51347af6 100644 --- a/pom.xml +++ b/pom.xml @@ -20,6 +20,7 @@ httpclient jackson javaxval + jooq-spring json-path mockito From b7812b951e16aa2427a0a7db4c4c1cf8cb28e21b Mon Sep 17 00:00:00 2001 From: Grzegorz Piwowarek Date: Tue, 7 Jun 2016 18:09:51 +0200 Subject: [PATCH 11/26] Refactor .gitignore --- .gitignore | 3 --- jooq-spring/.gitignore | 1 + 2 files changed, 1 insertion(+), 3 deletions(-) create mode 100644 jooq-spring/.gitignore diff --git a/.gitignore b/.gitignore index 1a67437a83..48ac4000a2 100644 --- a/.gitignore +++ b/.gitignore @@ -25,6 +25,3 @@ log/ target/ spring-openid/src/main/resources/application.properties - -# Autogenerated jOOQ files -jooq-spring/src/main/java/com/baeldung/jooq/introduction/db diff --git a/jooq-spring/.gitignore b/jooq-spring/.gitignore new file mode 100644 index 0000000000..aba850c8e6 --- /dev/null +++ b/jooq-spring/.gitignore @@ -0,0 +1 @@ +/src/main/java/com/baeldung/jooq/introduction/db \ No newline at end of file From 27250c67b1144a5cf8f372d7c1c189d66674e1ba Mon Sep 17 00:00:00 2001 From: Grzegorz Piwowarek Date: Tue, 7 Jun 2016 18:20:50 +0200 Subject: [PATCH 12/26] Refactor wiremock/cucumber examples --- rest-testing/.classpath | 36 ------- ...e.wst.jsdt.core.javascriptValidator.launch | 7 -- rest-testing/.gitignore | 6 +- rest-testing/.project | 36 ------- rest-testing/.settings/.jsdtscope | 5 - .../.settings/org.eclipse.jdt.core.prefs | 95 ------------------- .../.settings/org.eclipse.jdt.ui.prefs | 55 ----------- .../.settings/org.eclipse.m2e.core.prefs | 4 - .../.settings/org.eclipse.m2e.wtp.prefs | 2 - .../org.eclipse.wst.common.component | 8 -- ....eclipse.wst.common.project.facet.core.xml | 4 - ...rg.eclipse.wst.jsdt.ui.superType.container | 1 - .../org.eclipse.wst.jsdt.ui.superType.name | 1 - .../org.eclipse.wst.validation.prefs | 14 --- .../org.eclipse.wst.ws.service.policy.prefs | 2 - rest-testing/.springBeans | 14 --- .../rest/cucumber/StepDefinition.java | 60 ++++++++---- .../wiremock/introduction/JUnitManaged.java | 87 ++++++++++------- .../introduction/ProgrammaticallyManaged.java | 36 +++---- rest-testing/src/test/resources/.gitignore | 13 --- 20 files changed, 115 insertions(+), 371 deletions(-) delete mode 100644 rest-testing/.classpath delete mode 100644 rest-testing/.externalToolBuilders/org.eclipse.wst.jsdt.core.javascriptValidator.launch delete mode 100644 rest-testing/.project delete mode 100644 rest-testing/.settings/.jsdtscope delete mode 100644 rest-testing/.settings/org.eclipse.jdt.core.prefs delete mode 100644 rest-testing/.settings/org.eclipse.jdt.ui.prefs delete mode 100644 rest-testing/.settings/org.eclipse.m2e.core.prefs delete mode 100644 rest-testing/.settings/org.eclipse.m2e.wtp.prefs delete mode 100644 rest-testing/.settings/org.eclipse.wst.common.component delete mode 100644 rest-testing/.settings/org.eclipse.wst.common.project.facet.core.xml delete mode 100644 rest-testing/.settings/org.eclipse.wst.jsdt.ui.superType.container delete mode 100644 rest-testing/.settings/org.eclipse.wst.jsdt.ui.superType.name delete mode 100644 rest-testing/.settings/org.eclipse.wst.validation.prefs delete mode 100644 rest-testing/.settings/org.eclipse.wst.ws.service.policy.prefs delete mode 100644 rest-testing/.springBeans delete mode 100644 rest-testing/src/test/resources/.gitignore diff --git a/rest-testing/.classpath b/rest-testing/.classpath deleted file mode 100644 index 8ebf6d9c31..0000000000 --- a/rest-testing/.classpath +++ /dev/null @@ -1,36 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/rest-testing/.externalToolBuilders/org.eclipse.wst.jsdt.core.javascriptValidator.launch b/rest-testing/.externalToolBuilders/org.eclipse.wst.jsdt.core.javascriptValidator.launch deleted file mode 100644 index 627021fb96..0000000000 --- a/rest-testing/.externalToolBuilders/org.eclipse.wst.jsdt.core.javascriptValidator.launch +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/rest-testing/.gitignore b/rest-testing/.gitignore index 83c05e60c8..601d2281e5 100644 --- a/rest-testing/.gitignore +++ b/rest-testing/.gitignore @@ -10,4 +10,8 @@ # Packaged files # *.jar *.war -*.ear \ No newline at end of file +*.ear + +.externalToolBuilders +.settings +.springBeans \ No newline at end of file diff --git a/rest-testing/.project b/rest-testing/.project deleted file mode 100644 index 1dc9ce93fe..0000000000 --- a/rest-testing/.project +++ /dev/null @@ -1,36 +0,0 @@ - - - rest-testing - - - - - - org.eclipse.jdt.core.javabuilder - - - - - org.eclipse.wst.common.project.facet.core.builder - - - - - org.eclipse.wst.validation.validationbuilder - - - - - org.eclipse.m2e.core.maven2Builder - - - - - - org.eclipse.jem.workbench.JavaEMFNature - org.eclipse.wst.common.modulecore.ModuleCoreNature - org.eclipse.jdt.core.javanature - org.eclipse.m2e.core.maven2Nature - org.eclipse.wst.common.project.facet.core.nature - - diff --git a/rest-testing/.settings/.jsdtscope b/rest-testing/.settings/.jsdtscope deleted file mode 100644 index 7b3f0c8b9f..0000000000 --- a/rest-testing/.settings/.jsdtscope +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/rest-testing/.settings/org.eclipse.jdt.core.prefs b/rest-testing/.settings/org.eclipse.jdt.core.prefs deleted file mode 100644 index b126d6476b..0000000000 --- a/rest-testing/.settings/org.eclipse.jdt.core.prefs +++ /dev/null @@ -1,95 +0,0 @@ -eclipse.preferences.version=1 -org.eclipse.jdt.core.compiler.annotation.missingNonNullByDefaultAnnotation=ignore -org.eclipse.jdt.core.compiler.annotation.nonnull=org.eclipse.jdt.annotation.NonNull -org.eclipse.jdt.core.compiler.annotation.nonnullbydefault=org.eclipse.jdt.annotation.NonNullByDefault -org.eclipse.jdt.core.compiler.annotation.nullable=org.eclipse.jdt.annotation.Nullable -org.eclipse.jdt.core.compiler.annotation.nullanalysis=disabled -org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled -org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 -org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve -org.eclipse.jdt.core.compiler.compliance=1.8 -org.eclipse.jdt.core.compiler.debug.lineNumber=generate -org.eclipse.jdt.core.compiler.debug.localVariable=generate -org.eclipse.jdt.core.compiler.debug.sourceFile=generate -org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning -org.eclipse.jdt.core.compiler.problem.assertIdentifier=error -org.eclipse.jdt.core.compiler.problem.autoboxing=ignore -org.eclipse.jdt.core.compiler.problem.comparingIdentical=warning -org.eclipse.jdt.core.compiler.problem.deadCode=warning -org.eclipse.jdt.core.compiler.problem.deprecation=warning -org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled -org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=disabled -org.eclipse.jdt.core.compiler.problem.discouragedReference=warning -org.eclipse.jdt.core.compiler.problem.emptyStatement=ignore -org.eclipse.jdt.core.compiler.problem.enumIdentifier=error -org.eclipse.jdt.core.compiler.problem.explicitlyClosedAutoCloseable=ignore -org.eclipse.jdt.core.compiler.problem.fallthroughCase=ignore -org.eclipse.jdt.core.compiler.problem.fatalOptionalError=disabled -org.eclipse.jdt.core.compiler.problem.fieldHiding=error -org.eclipse.jdt.core.compiler.problem.finalParameterBound=warning -org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=warning -org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning -org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning -org.eclipse.jdt.core.compiler.problem.includeNullInfoFromAsserts=disabled -org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning -org.eclipse.jdt.core.compiler.problem.incompleteEnumSwitch=ignore -org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=ignore -org.eclipse.jdt.core.compiler.problem.localVariableHiding=error -org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=warning -org.eclipse.jdt.core.compiler.problem.missingDefaultCase=ignore -org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=ignore -org.eclipse.jdt.core.compiler.problem.missingEnumCaseDespiteDefault=disabled -org.eclipse.jdt.core.compiler.problem.missingHashCodeMethod=ignore -org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=ignore -org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotationForInterfaceMethodImplementation=enabled -org.eclipse.jdt.core.compiler.problem.missingSerialVersion=warning -org.eclipse.jdt.core.compiler.problem.missingSynchronizedOnInheritedMethod=ignore -org.eclipse.jdt.core.compiler.problem.noEffectAssignment=warning -org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning -org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=ignore -org.eclipse.jdt.core.compiler.problem.nullAnnotationInferenceConflict=error -org.eclipse.jdt.core.compiler.problem.nullReference=warning -org.eclipse.jdt.core.compiler.problem.nullSpecViolation=error -org.eclipse.jdt.core.compiler.problem.nullUncheckedConversion=warning -org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning -org.eclipse.jdt.core.compiler.problem.parameterAssignment=ignore -org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=ignore -org.eclipse.jdt.core.compiler.problem.potentialNullReference=ignore -org.eclipse.jdt.core.compiler.problem.potentiallyUnclosedCloseable=ignore -org.eclipse.jdt.core.compiler.problem.rawTypeReference=warning -org.eclipse.jdt.core.compiler.problem.redundantNullAnnotation=warning -org.eclipse.jdt.core.compiler.problem.redundantNullCheck=ignore -org.eclipse.jdt.core.compiler.problem.redundantSpecificationOfTypeArguments=ignore -org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=ignore -org.eclipse.jdt.core.compiler.problem.reportMethodCanBePotentiallyStatic=ignore -org.eclipse.jdt.core.compiler.problem.reportMethodCanBeStatic=ignore -org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled -org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning -org.eclipse.jdt.core.compiler.problem.suppressOptionalErrors=disabled -org.eclipse.jdt.core.compiler.problem.suppressWarnings=enabled -org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=ignore -org.eclipse.jdt.core.compiler.problem.typeParameterHiding=error -org.eclipse.jdt.core.compiler.problem.unavoidableGenericTypeProblems=enabled -org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=warning -org.eclipse.jdt.core.compiler.problem.unclosedCloseable=warning -org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=ignore -org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=warning -org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore -org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=ignore -org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore -org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=ignore -org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionExemptExceptionAndThrowable=enabled -org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionIncludeDocCommentReference=enabled -org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled -org.eclipse.jdt.core.compiler.problem.unusedImport=warning -org.eclipse.jdt.core.compiler.problem.unusedLabel=warning -org.eclipse.jdt.core.compiler.problem.unusedLocal=warning -org.eclipse.jdt.core.compiler.problem.unusedObjectAllocation=ignore -org.eclipse.jdt.core.compiler.problem.unusedParameter=ignore -org.eclipse.jdt.core.compiler.problem.unusedParameterIncludeDocCommentReference=enabled -org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled -org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled -org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning -org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning -org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning -org.eclipse.jdt.core.compiler.source=1.8 diff --git a/rest-testing/.settings/org.eclipse.jdt.ui.prefs b/rest-testing/.settings/org.eclipse.jdt.ui.prefs deleted file mode 100644 index 471e9b0d81..0000000000 --- a/rest-testing/.settings/org.eclipse.jdt.ui.prefs +++ /dev/null @@ -1,55 +0,0 @@ -#Sat Jan 21 23:04:06 EET 2012 -eclipse.preferences.version=1 -editor_save_participant_org.eclipse.jdt.ui.postsavelistener.cleanup=true -sp_cleanup.add_default_serial_version_id=true -sp_cleanup.add_generated_serial_version_id=false -sp_cleanup.add_missing_annotations=true -sp_cleanup.add_missing_deprecated_annotations=true -sp_cleanup.add_missing_methods=false -sp_cleanup.add_missing_nls_tags=false -sp_cleanup.add_missing_override_annotations=true -sp_cleanup.add_missing_override_annotations_interface_methods=true -sp_cleanup.add_serial_version_id=false -sp_cleanup.always_use_blocks=true -sp_cleanup.always_use_parentheses_in_expressions=true -sp_cleanup.always_use_this_for_non_static_field_access=false -sp_cleanup.always_use_this_for_non_static_method_access=false -sp_cleanup.convert_to_enhanced_for_loop=true -sp_cleanup.correct_indentation=true -sp_cleanup.format_source_code=true -sp_cleanup.format_source_code_changes_only=true -sp_cleanup.make_local_variable_final=true -sp_cleanup.make_parameters_final=true -sp_cleanup.make_private_fields_final=false -sp_cleanup.make_type_abstract_if_missing_method=false -sp_cleanup.make_variable_declarations_final=true -sp_cleanup.never_use_blocks=false -sp_cleanup.never_use_parentheses_in_expressions=false -sp_cleanup.on_save_use_additional_actions=true -sp_cleanup.organize_imports=true -sp_cleanup.qualify_static_field_accesses_with_declaring_class=false -sp_cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true -sp_cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true -sp_cleanup.qualify_static_member_accesses_with_declaring_class=true -sp_cleanup.qualify_static_method_accesses_with_declaring_class=false -sp_cleanup.remove_private_constructors=true -sp_cleanup.remove_trailing_whitespaces=true -sp_cleanup.remove_trailing_whitespaces_all=true -sp_cleanup.remove_trailing_whitespaces_ignore_empty=false -sp_cleanup.remove_unnecessary_casts=true -sp_cleanup.remove_unnecessary_nls_tags=false -sp_cleanup.remove_unused_imports=true -sp_cleanup.remove_unused_local_variables=false -sp_cleanup.remove_unused_private_fields=true -sp_cleanup.remove_unused_private_members=false -sp_cleanup.remove_unused_private_methods=true -sp_cleanup.remove_unused_private_types=true -sp_cleanup.sort_members=false -sp_cleanup.sort_members_all=false -sp_cleanup.use_blocks=false -sp_cleanup.use_blocks_only_for_return_and_throw=false -sp_cleanup.use_parentheses_in_expressions=false -sp_cleanup.use_this_for_non_static_field_access=true -sp_cleanup.use_this_for_non_static_field_access_only_if_necessary=true -sp_cleanup.use_this_for_non_static_method_access=true -sp_cleanup.use_this_for_non_static_method_access_only_if_necessary=true diff --git a/rest-testing/.settings/org.eclipse.m2e.core.prefs b/rest-testing/.settings/org.eclipse.m2e.core.prefs deleted file mode 100644 index f897a7f1cb..0000000000 --- a/rest-testing/.settings/org.eclipse.m2e.core.prefs +++ /dev/null @@ -1,4 +0,0 @@ -activeProfiles= -eclipse.preferences.version=1 -resolveWorkspaceProjects=true -version=1 diff --git a/rest-testing/.settings/org.eclipse.m2e.wtp.prefs b/rest-testing/.settings/org.eclipse.m2e.wtp.prefs deleted file mode 100644 index ef86089622..0000000000 --- a/rest-testing/.settings/org.eclipse.m2e.wtp.prefs +++ /dev/null @@ -1,2 +0,0 @@ -eclipse.preferences.version=1 -org.eclipse.m2e.wtp.enabledProjectSpecificPrefs=false diff --git a/rest-testing/.settings/org.eclipse.wst.common.component b/rest-testing/.settings/org.eclipse.wst.common.component deleted file mode 100644 index e98377cb0f..0000000000 --- a/rest-testing/.settings/org.eclipse.wst.common.component +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - diff --git a/rest-testing/.settings/org.eclipse.wst.common.project.facet.core.xml b/rest-testing/.settings/org.eclipse.wst.common.project.facet.core.xml deleted file mode 100644 index f4ef8aa0a5..0000000000 --- a/rest-testing/.settings/org.eclipse.wst.common.project.facet.core.xml +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/rest-testing/.settings/org.eclipse.wst.jsdt.ui.superType.container b/rest-testing/.settings/org.eclipse.wst.jsdt.ui.superType.container deleted file mode 100644 index 3bd5d0a480..0000000000 --- a/rest-testing/.settings/org.eclipse.wst.jsdt.ui.superType.container +++ /dev/null @@ -1 +0,0 @@ -org.eclipse.wst.jsdt.launching.baseBrowserLibrary \ No newline at end of file diff --git a/rest-testing/.settings/org.eclipse.wst.jsdt.ui.superType.name b/rest-testing/.settings/org.eclipse.wst.jsdt.ui.superType.name deleted file mode 100644 index 05bd71b6ec..0000000000 --- a/rest-testing/.settings/org.eclipse.wst.jsdt.ui.superType.name +++ /dev/null @@ -1 +0,0 @@ -Window \ No newline at end of file diff --git a/rest-testing/.settings/org.eclipse.wst.validation.prefs b/rest-testing/.settings/org.eclipse.wst.validation.prefs deleted file mode 100644 index cacf5451ae..0000000000 --- a/rest-testing/.settings/org.eclipse.wst.validation.prefs +++ /dev/null @@ -1,14 +0,0 @@ -DELEGATES_PREFERENCE=delegateValidatorList -USER_BUILD_PREFERENCE=enabledBuildValidatorListorg.eclipse.jst.j2ee.internal.classpathdep.ClasspathDependencyValidator; -USER_MANUAL_PREFERENCE=enabledManualValidatorListorg.eclipse.jst.j2ee.internal.classpathdep.ClasspathDependencyValidator; -USER_PREFERENCE=overrideGlobalPreferencestruedisableAllValidationfalseversion1.2.303.v201202090300 -eclipse.preferences.version=1 -override=true -suspend=false -vals/org.eclipse.jst.jsf.ui.JSFAppConfigValidator/global=FF01 -vals/org.eclipse.jst.jsp.core.JSPBatchValidator/global=FF01 -vals/org.eclipse.jst.jsp.core.JSPContentValidator/global=FF01 -vals/org.eclipse.jst.jsp.core.TLDValidator/global=FF01 -vals/org.eclipse.wst.dtd.core.dtdDTDValidator/global=FF01 -vals/org.eclipse.wst.jsdt.web.core.JsBatchValidator/global=TF02 -vf.version=3 diff --git a/rest-testing/.settings/org.eclipse.wst.ws.service.policy.prefs b/rest-testing/.settings/org.eclipse.wst.ws.service.policy.prefs deleted file mode 100644 index 9cfcabe16f..0000000000 --- a/rest-testing/.settings/org.eclipse.wst.ws.service.policy.prefs +++ /dev/null @@ -1,2 +0,0 @@ -eclipse.preferences.version=1 -org.eclipse.wst.ws.service.policy.projectEnabled=false diff --git a/rest-testing/.springBeans b/rest-testing/.springBeans deleted file mode 100644 index a79097f40d..0000000000 --- a/rest-testing/.springBeans +++ /dev/null @@ -1,14 +0,0 @@ - - - 1 - - - - - - - src/main/webapp/WEB-INF/api-servlet.xml - - - - diff --git a/rest-testing/src/test/java/com/baeldung/rest/cucumber/StepDefinition.java b/rest-testing/src/test/java/com/baeldung/rest/cucumber/StepDefinition.java index 0d72c60950..b461da8403 100644 --- a/rest-testing/src/test/java/com/baeldung/rest/cucumber/StepDefinition.java +++ b/rest-testing/src/test/java/com/baeldung/rest/cucumber/StepDefinition.java @@ -1,13 +1,8 @@ package com.baeldung.rest.cucumber; -import static org.junit.Assert.*; -import static org.hamcrest.CoreMatchers.containsString; -import static com.github.tomakehurst.wiremock.client.WireMock.*; - -import java.io.IOException; -import java.io.InputStream; -import java.util.Scanner; - +import com.github.tomakehurst.wiremock.WireMockServer; +import cucumber.api.java.en.Then; +import cucumber.api.java.en.When; import org.apache.http.HttpResponse; import org.apache.http.client.methods.HttpGet; import org.apache.http.client.methods.HttpPost; @@ -15,33 +10,55 @@ import org.apache.http.entity.StringEntity; import org.apache.http.impl.client.CloseableHttpClient; import org.apache.http.impl.client.HttpClients; -import com.github.tomakehurst.wiremock.WireMockServer; +import java.io.IOException; +import java.io.InputStream; +import java.util.Scanner; -import cucumber.api.java.en.Then; -import cucumber.api.java.en.When; +import static com.github.tomakehurst.wiremock.client.WireMock.aResponse; +import static com.github.tomakehurst.wiremock.client.WireMock.configureFor; +import static com.github.tomakehurst.wiremock.client.WireMock.containing; +import static com.github.tomakehurst.wiremock.client.WireMock.equalTo; +import static com.github.tomakehurst.wiremock.client.WireMock.get; +import static com.github.tomakehurst.wiremock.client.WireMock.getRequestedFor; +import static com.github.tomakehurst.wiremock.client.WireMock.post; +import static com.github.tomakehurst.wiremock.client.WireMock.postRequestedFor; +import static com.github.tomakehurst.wiremock.client.WireMock.stubFor; +import static com.github.tomakehurst.wiremock.client.WireMock.urlEqualTo; +import static com.github.tomakehurst.wiremock.client.WireMock.verify; +import static org.hamcrest.CoreMatchers.containsString; +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertThat; public class StepDefinition { - InputStream jsonInputStream = this.getClass().getClassLoader().getResourceAsStream("cucumber.json"); - String jsonString = new Scanner(jsonInputStream, "UTF-8").useDelimiter("\\Z").next(); - WireMockServer wireMockServer = new WireMockServer(); - CloseableHttpClient httpClient = HttpClients.createDefault(); + private static final String CREATE_PATH = "/create"; + private static final String APPLICATION_JSON = "application/json"; + + private final InputStream jsonInputStream = this.getClass().getClassLoader().getResourceAsStream("cucumber.json"); + private final String jsonString = new Scanner(jsonInputStream, "UTF-8").useDelimiter("\\Z").next(); + + private final WireMockServer wireMockServer = new WireMockServer(); + private final CloseableHttpClient httpClient = HttpClients.createDefault(); @When("^users upload data on a project$") public void usersUploadDataOnAProject() throws IOException { wireMockServer.start(); configureFor("localhost", 8080); - stubFor(post(urlEqualTo("/create")).withHeader("content-type", equalTo("application/json")).withRequestBody(containing("testing-framework")).willReturn(aResponse().withStatus(200))); + stubFor(post(urlEqualTo(CREATE_PATH)) + .withHeader("content-type", equalTo(APPLICATION_JSON)) + .withRequestBody(containing("testing-framework")) + .willReturn(aResponse().withStatus(200))); HttpPost request = new HttpPost("http://localhost:8080/create"); StringEntity entity = new StringEntity(jsonString); - request.addHeader("content-type", "application/json"); + request.addHeader("content-type", APPLICATION_JSON); request.setEntity(entity); HttpResponse response = httpClient.execute(request); assertEquals(200, response.getStatusLine().getStatusCode()); - verify(postRequestedFor(urlEqualTo("/create")).withHeader("content-type", equalTo("application/json"))); + verify(postRequestedFor(urlEqualTo(CREATE_PATH)) + .withHeader("content-type", equalTo(APPLICATION_JSON))); wireMockServer.stop(); } @@ -51,16 +68,17 @@ public class StepDefinition { wireMockServer.start(); configureFor("localhost", 8080); - stubFor(get(urlEqualTo("/projects/cucumber")).withHeader("accept", equalTo("application/json")).willReturn(aResponse().withBody(jsonString))); + stubFor(get(urlEqualTo("/projects/cucumber")).withHeader("accept", equalTo(APPLICATION_JSON)) + .willReturn(aResponse().withBody(jsonString))); HttpGet request = new HttpGet("http://localhost:8080/projects/" + projectName.toLowerCase()); - request.addHeader("accept", "application/json"); + request.addHeader("accept", APPLICATION_JSON); HttpResponse httpResponse = httpClient.execute(request); String responseString = convertResponseToString(httpResponse); assertThat(responseString, containsString("\"testing-framework\": \"cucumber\"")); assertThat(responseString, containsString("\"website\": \"cucumber.io\"")); - verify(getRequestedFor(urlEqualTo("/projects/cucumber")).withHeader("accept", equalTo("application/json"))); + verify(getRequestedFor(urlEqualTo("/projects/cucumber")).withHeader("accept", equalTo(APPLICATION_JSON))); wireMockServer.stop(); } diff --git a/rest-testing/src/test/java/com/baeldung/rest/wiremock/introduction/JUnitManaged.java b/rest-testing/src/test/java/com/baeldung/rest/wiremock/introduction/JUnitManaged.java index f6a46256ac..664c3fac78 100644 --- a/rest-testing/src/test/java/com/baeldung/rest/wiremock/introduction/JUnitManaged.java +++ b/rest-testing/src/test/java/com/baeldung/rest/wiremock/introduction/JUnitManaged.java @@ -1,24 +1,6 @@ package com.baeldung.rest.wiremock.introduction; -import static com.github.tomakehurst.wiremock.client.WireMock.aResponse; -import static com.github.tomakehurst.wiremock.client.WireMock.equalTo; -import static com.github.tomakehurst.wiremock.client.WireMock.get; -import static com.github.tomakehurst.wiremock.client.WireMock.getRequestedFor; -import static com.github.tomakehurst.wiremock.client.WireMock.post; -import static com.github.tomakehurst.wiremock.client.WireMock.postRequestedFor; -import static com.github.tomakehurst.wiremock.client.WireMock.stubFor; -import static com.github.tomakehurst.wiremock.client.WireMock.urlEqualTo; -import static com.github.tomakehurst.wiremock.client.WireMock.urlPathEqualTo; -import static com.github.tomakehurst.wiremock.client.WireMock.urlPathMatching; -import static com.github.tomakehurst.wiremock.client.WireMock.matching; -import static com.github.tomakehurst.wiremock.client.WireMock.containing; -import static com.github.tomakehurst.wiremock.client.WireMock.verify; -import static org.junit.Assert.assertEquals; - -import java.io.IOException; -import java.io.InputStream; -import java.util.Scanner; - +import com.github.tomakehurst.wiremock.junit.WireMockRule; import org.apache.http.HttpResponse; import org.apache.http.client.methods.HttpGet; import org.apache.http.client.methods.HttpPost; @@ -28,30 +10,60 @@ import org.apache.http.impl.client.HttpClients; import org.junit.Rule; import org.junit.Test; -import com.github.tomakehurst.wiremock.junit.WireMockRule; +import java.io.IOException; +import java.io.InputStream; +import java.util.Scanner; + +import static com.github.tomakehurst.wiremock.client.WireMock.aResponse; +import static com.github.tomakehurst.wiremock.client.WireMock.containing; +import static com.github.tomakehurst.wiremock.client.WireMock.equalTo; +import static com.github.tomakehurst.wiremock.client.WireMock.get; +import static com.github.tomakehurst.wiremock.client.WireMock.getRequestedFor; +import static com.github.tomakehurst.wiremock.client.WireMock.matching; +import static com.github.tomakehurst.wiremock.client.WireMock.post; +import static com.github.tomakehurst.wiremock.client.WireMock.postRequestedFor; +import static com.github.tomakehurst.wiremock.client.WireMock.stubFor; +import static com.github.tomakehurst.wiremock.client.WireMock.urlEqualTo; +import static com.github.tomakehurst.wiremock.client.WireMock.urlPathEqualTo; +import static com.github.tomakehurst.wiremock.client.WireMock.urlPathMatching; +import static com.github.tomakehurst.wiremock.client.WireMock.verify; +import static org.junit.Assert.assertEquals; public class JUnitManaged { + + private static final String BAELDUNG_WIREMOCK_PATH = "/baeldung/wiremock"; + private static final String APPLICATION_JSON = "application/json"; + @Rule public WireMockRule wireMockRule = new WireMockRule(); @Test public void givenJUnitManagedServer_whenMatchingURL_thenCorrect() throws IOException { - stubFor(get(urlPathMatching("/baeldung/.*")).willReturn(aResponse().withStatus(200).withHeader("Content-Type", "application/json").withBody("\"testing-library\": \"WireMock\""))); + stubFor(get(urlPathMatching("/baeldung/.*")) + .willReturn(aResponse() + .withStatus(200) + .withHeader("Content-Type", APPLICATION_JSON) + .withBody("\"testing-library\": \"WireMock\""))); CloseableHttpClient httpClient = HttpClients.createDefault(); HttpGet request = new HttpGet("http://localhost:8080/baeldung/wiremock"); HttpResponse httpResponse = httpClient.execute(request); String stringResponse = convertHttpResponseToString(httpResponse); - verify(getRequestedFor(urlEqualTo("/baeldung/wiremock"))); + verify(getRequestedFor(urlEqualTo(BAELDUNG_WIREMOCK_PATH))); assertEquals(200, httpResponse.getStatusLine().getStatusCode()); - assertEquals("application/json", httpResponse.getFirstHeader("Content-Type").getValue()); + assertEquals(APPLICATION_JSON, httpResponse.getFirstHeader("Content-Type").getValue()); assertEquals("\"testing-library\": \"WireMock\"", stringResponse); } @Test public void givenJUnitManagedServer_whenMatchingHeaders_thenCorrect() throws IOException { - stubFor(get(urlPathEqualTo("/baeldung/wiremock")).withHeader("Accept", matching("text/.*")).willReturn(aResponse().withStatus(503).withHeader("Content-Type", "text/html").withBody("!!! Service Unavailable !!!"))); + stubFor(get(urlPathEqualTo(BAELDUNG_WIREMOCK_PATH)) + .withHeader("Accept", matching("text/.*")) + .willReturn(aResponse() + .withStatus(503) + .withHeader("Content-Type", "text/html") + .withBody("!!! Service Unavailable !!!"))); CloseableHttpClient httpClient = HttpClients.createDefault(); HttpGet request = new HttpGet("http://localhost:8080/baeldung/wiremock"); @@ -59,7 +71,7 @@ public class JUnitManaged { HttpResponse httpResponse = httpClient.execute(request); String stringResponse = convertHttpResponseToString(httpResponse); - verify(getRequestedFor(urlEqualTo("/baeldung/wiremock"))); + verify(getRequestedFor(urlEqualTo(BAELDUNG_WIREMOCK_PATH))); assertEquals(503, httpResponse.getStatusLine().getStatusCode()); assertEquals("text/html", httpResponse.getFirstHeader("Content-Type").getValue()); assertEquals("!!! Service Unavailable !!!", stringResponse); @@ -67,8 +79,12 @@ public class JUnitManaged { @Test public void givenJUnitManagedServer_whenMatchingBody_thenCorrect() throws IOException { - stubFor(post(urlEqualTo("/baeldung/wiremock")).withHeader("Content-Type", equalTo("application/json")).withRequestBody(containing("\"testing-library\": \"WireMock\"")).withRequestBody(containing("\"creator\": \"Tom Akehurst\"")) - .withRequestBody(containing("\"website\": \"wiremock.org\"")).willReturn(aResponse().withStatus(200))); + stubFor(post(urlEqualTo(BAELDUNG_WIREMOCK_PATH)) + .withHeader("Content-Type", equalTo(APPLICATION_JSON)) + .withRequestBody(containing("\"testing-library\": \"WireMock\"")) + .withRequestBody(containing("\"creator\": \"Tom Akehurst\"")) + .withRequestBody(containing("\"website\": \"wiremock.org\"")) + .willReturn(aResponse().withStatus(200))); InputStream jsonInputStream = this.getClass().getClassLoader().getResourceAsStream("wiremock_intro.json"); String jsonString = convertInputStreamToString(jsonInputStream); @@ -76,42 +92,43 @@ public class JUnitManaged { CloseableHttpClient httpClient = HttpClients.createDefault(); HttpPost request = new HttpPost("http://localhost:8080/baeldung/wiremock"); - request.addHeader("Content-Type", "application/json"); + request.addHeader("Content-Type", APPLICATION_JSON); request.setEntity(entity); HttpResponse response = httpClient.execute(request); - verify(postRequestedFor(urlEqualTo("/baeldung/wiremock")).withHeader("Content-Type", equalTo("application/json"))); + verify(postRequestedFor(urlEqualTo(BAELDUNG_WIREMOCK_PATH)) + .withHeader("Content-Type", equalTo(APPLICATION_JSON))); assertEquals(200, response.getStatusLine().getStatusCode()); } @Test public void givenJUnitManagedServer_whenNotUsingPriority_thenCorrect() throws IOException { stubFor(get(urlPathMatching("/baeldung/.*")).willReturn(aResponse().withStatus(200))); - stubFor(get(urlPathEqualTo("/baeldung/wiremock")).withHeader("Accept", matching("text/.*")).willReturn(aResponse().withStatus(503))); + stubFor(get(urlPathEqualTo(BAELDUNG_WIREMOCK_PATH)).withHeader("Accept", matching("text/.*")).willReturn(aResponse().withStatus(503))); HttpResponse httpResponse = generateClientAndReceiveResponseForPriorityTests(); - verify(getRequestedFor(urlEqualTo("/baeldung/wiremock"))); + verify(getRequestedFor(urlEqualTo(BAELDUNG_WIREMOCK_PATH))); assertEquals(503, httpResponse.getStatusLine().getStatusCode()); } @Test public void givenJUnitManagedServer_whenUsingPriority_thenCorrect() throws IOException { stubFor(get(urlPathMatching("/baeldung/.*")).atPriority(1).willReturn(aResponse().withStatus(200))); - stubFor(get(urlPathEqualTo("/baeldung/wiremock")).atPriority(2).withHeader("Accept", matching("text/.*")).willReturn(aResponse().withStatus(503))); + stubFor(get(urlPathEqualTo(BAELDUNG_WIREMOCK_PATH)).atPriority(2).withHeader("Accept", matching("text/.*")).willReturn(aResponse().withStatus(503))); HttpResponse httpResponse = generateClientAndReceiveResponseForPriorityTests(); - verify(getRequestedFor(urlEqualTo("/baeldung/wiremock"))); + verify(getRequestedFor(urlEqualTo(BAELDUNG_WIREMOCK_PATH))); assertEquals(200, httpResponse.getStatusLine().getStatusCode()); } - private String convertHttpResponseToString(HttpResponse httpResponse) throws IOException { + private static String convertHttpResponseToString(HttpResponse httpResponse) throws IOException { InputStream inputStream = httpResponse.getEntity().getContent(); return convertInputStreamToString(inputStream); } - private String convertInputStreamToString(InputStream inputStream) { + private static String convertInputStreamToString(InputStream inputStream) { Scanner scanner = new Scanner(inputStream, "UTF-8"); String string = scanner.useDelimiter("\\Z").next(); scanner.close(); diff --git a/rest-testing/src/test/java/com/baeldung/rest/wiremock/introduction/ProgrammaticallyManaged.java b/rest-testing/src/test/java/com/baeldung/rest/wiremock/introduction/ProgrammaticallyManaged.java index 34b445ac0f..ad7caa52b5 100644 --- a/rest-testing/src/test/java/com/baeldung/rest/wiremock/introduction/ProgrammaticallyManaged.java +++ b/rest-testing/src/test/java/com/baeldung/rest/wiremock/introduction/ProgrammaticallyManaged.java @@ -1,5 +1,16 @@ package com.baeldung.rest.wiremock.introduction; +import com.github.tomakehurst.wiremock.WireMockServer; +import org.apache.http.HttpResponse; +import org.apache.http.client.methods.HttpGet; +import org.apache.http.impl.client.CloseableHttpClient; +import org.apache.http.impl.client.HttpClients; +import org.junit.Test; + +import java.io.IOException; +import java.io.InputStream; +import java.util.Scanner; + import static com.github.tomakehurst.wiremock.client.WireMock.aResponse; import static com.github.tomakehurst.wiremock.client.WireMock.configureFor; import static com.github.tomakehurst.wiremock.client.WireMock.get; @@ -9,40 +20,31 @@ import static com.github.tomakehurst.wiremock.client.WireMock.urlEqualTo; import static com.github.tomakehurst.wiremock.client.WireMock.verify; import static org.junit.Assert.assertEquals; -import java.io.IOException; -import java.io.InputStream; -import java.util.Scanner; - -import org.apache.http.HttpResponse; -import org.apache.http.client.methods.HttpGet; -import org.apache.http.impl.client.CloseableHttpClient; -import org.apache.http.impl.client.HttpClients; -import org.junit.Test; - -import com.github.tomakehurst.wiremock.WireMockServer; - public class ProgrammaticallyManaged { - WireMockServer wireMockServer = new WireMockServer(); - CloseableHttpClient httpClient = HttpClients.createDefault(); + + private static final String BAELDUNG_PATH = "/baeldung"; + + private WireMockServer wireMockServer = new WireMockServer(); + private CloseableHttpClient httpClient = HttpClients.createDefault(); @Test public void givenProgrammaticallyManagedServer_whenUsingSimpleStubbing_thenCorrect() throws IOException { wireMockServer.start(); configureFor("localhost", 8080); - stubFor(get(urlEqualTo("/baeldung")).willReturn(aResponse().withBody("Welcome to Baeldung!"))); + stubFor(get(urlEqualTo(BAELDUNG_PATH)).willReturn(aResponse().withBody("Welcome to Baeldung!"))); HttpGet request = new HttpGet("http://localhost:8080/baeldung"); HttpResponse httpResponse = httpClient.execute(request); String stringResponse = convertResponseToString(httpResponse); - verify(getRequestedFor(urlEqualTo("/baeldung"))); + verify(getRequestedFor(urlEqualTo(BAELDUNG_PATH))); assertEquals("Welcome to Baeldung!", stringResponse); wireMockServer.stop(); } - private String convertResponseToString(HttpResponse response) throws IOException { + private static String convertResponseToString(HttpResponse response) throws IOException { InputStream responseStream = response.getEntity().getContent(); Scanner scanner = new Scanner(responseStream, "UTF-8"); String stringResponse = scanner.useDelimiter("\\Z").next(); diff --git a/rest-testing/src/test/resources/.gitignore b/rest-testing/src/test/resources/.gitignore deleted file mode 100644 index 83c05e60c8..0000000000 --- a/rest-testing/src/test/resources/.gitignore +++ /dev/null @@ -1,13 +0,0 @@ -*.class - -#folders# -/target -/neoDb* -/data -/src/main/webapp/WEB-INF/classes -*/META-INF/* - -# Packaged files # -*.jar -*.war -*.ear \ No newline at end of file From 665afc028e0f9d78285d4cc63c77123e492a8a04 Mon Sep 17 00:00:00 2001 From: Grzegorz Piwowarek Date: Tue, 7 Jun 2016 18:56:18 +0200 Subject: [PATCH 13/26] Revert jOOQ Application.java --- .../test/java/com/baeldung/jooq/springboot/Application.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/jooq-spring/src/test/java/com/baeldung/jooq/springboot/Application.java b/jooq-spring/src/test/java/com/baeldung/jooq/springboot/Application.java index 844a2989a5..95e00fd5fb 100644 --- a/jooq-spring/src/test/java/com/baeldung/jooq/springboot/Application.java +++ b/jooq-spring/src/test/java/com/baeldung/jooq/springboot/Application.java @@ -23,6 +23,8 @@ public class Application { @Autowired private Environment environment; + private DataSource dataSource; + public DataSource dataSource() { DriverManagerDataSource dataSource = new DriverManagerDataSource(); @@ -39,7 +41,7 @@ public class Application { } public DataSourceTransactionManager transactionManager() { - return new DataSourceTransactionManager(dataSource()); + return new DataSourceTransactionManager(dataSource); } @Bean From d8cd30d0fdec365f71554f75ad34066274937b85 Mon Sep 17 00:00:00 2001 From: Grzegorz Piwowarek Date: Tue, 7 Jun 2016 20:35:29 +0200 Subject: [PATCH 14/26] Fix Application.java --- .../java/com/baeldung/jooq/springboot/Application.java | 7 ------- 1 file changed, 7 deletions(-) diff --git a/jooq-spring/src/test/java/com/baeldung/jooq/springboot/Application.java b/jooq-spring/src/test/java/com/baeldung/jooq/springboot/Application.java index 95e00fd5fb..4865b575e1 100644 --- a/jooq-spring/src/test/java/com/baeldung/jooq/springboot/Application.java +++ b/jooq-spring/src/test/java/com/baeldung/jooq/springboot/Application.java @@ -9,7 +9,6 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.context.annotation.Bean; import org.springframework.core.env.Environment; -import org.springframework.jdbc.datasource.DataSourceTransactionManager; import org.springframework.jdbc.datasource.DriverManagerDataSource; import org.springframework.jdbc.datasource.TransactionAwareDataSourceProxy; import org.springframework.transaction.annotation.EnableTransactionManagement; @@ -23,8 +22,6 @@ public class Application { @Autowired private Environment environment; - private DataSource dataSource; - public DataSource dataSource() { DriverManagerDataSource dataSource = new DriverManagerDataSource(); @@ -40,10 +37,6 @@ public class Application { return new TransactionAwareDataSourceProxy(dataSource()); } - public DataSourceTransactionManager transactionManager() { - return new DataSourceTransactionManager(dataSource); - } - @Bean public DataSourceConnectionProvider connectionProvider() { return new DataSourceConnectionProvider(transactionAwareDataSource()); From 632a1f613f5dc0ff97d49ad2ee95441e26165583 Mon Sep 17 00:00:00 2001 From: Grzegorz Piwowarek Date: Wed, 8 Jun 2016 08:33:36 +0200 Subject: [PATCH 15/26] Leverage Spring Boot's autoconfiguration (#441) * Leverage Spring Boot's autoconfiguration * Remove unnecessary @PropertySource --- .../baeldung/jooq/springboot/Application.java | 53 ------------------- .../jooq/springboot/InitialConfiguration.java | 39 ++++++++++++++ 2 files changed, 39 insertions(+), 53 deletions(-) create mode 100644 jooq-spring/src/test/java/com/baeldung/jooq/springboot/InitialConfiguration.java diff --git a/jooq-spring/src/test/java/com/baeldung/jooq/springboot/Application.java b/jooq-spring/src/test/java/com/baeldung/jooq/springboot/Application.java index 4865b575e1..ff74851d2a 100644 --- a/jooq-spring/src/test/java/com/baeldung/jooq/springboot/Application.java +++ b/jooq-spring/src/test/java/com/baeldung/jooq/springboot/Application.java @@ -1,62 +1,9 @@ package com.baeldung.jooq.springboot; -import com.baeldung.jooq.introduction.ExceptionTranslator; -import org.jooq.impl.DataSourceConnectionProvider; -import org.jooq.impl.DefaultConfiguration; -import org.jooq.impl.DefaultDSLContext; -import org.jooq.impl.DefaultExecuteListenerProvider; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.autoconfigure.SpringBootApplication; -import org.springframework.context.annotation.Bean; -import org.springframework.core.env.Environment; -import org.springframework.jdbc.datasource.DriverManagerDataSource; -import org.springframework.jdbc.datasource.TransactionAwareDataSourceProxy; import org.springframework.transaction.annotation.EnableTransactionManagement; -import javax.sql.DataSource; - @SpringBootApplication @EnableTransactionManagement public class Application { - - @Autowired - private Environment environment; - - public DataSource dataSource() { - DriverManagerDataSource dataSource = new DriverManagerDataSource(); - - dataSource.setUrl(environment.getRequiredProperty("spring.datasource.url")); - dataSource.setUsername(environment.getRequiredProperty("spring.datasource.username")); - dataSource.setPassword(environment.getRequiredProperty("spring.datasource.password")); - - return dataSource; - } - - @Bean - public TransactionAwareDataSourceProxy transactionAwareDataSource() { - return new TransactionAwareDataSourceProxy(dataSource()); - } - - @Bean - public DataSourceConnectionProvider connectionProvider() { - return new DataSourceConnectionProvider(transactionAwareDataSource()); - } - - public ExceptionTranslator exceptionTransformer() { - return new ExceptionTranslator(); - } - - @Bean - public DefaultDSLContext dsl() { - return new DefaultDSLContext(configuration()); - } - - public DefaultConfiguration configuration() { - DefaultConfiguration jooqConfiguration = new DefaultConfiguration(); - - jooqConfiguration.set(connectionProvider()); - jooqConfiguration.set(new DefaultExecuteListenerProvider(exceptionTransformer())); - - return jooqConfiguration; - } } \ No newline at end of file diff --git a/jooq-spring/src/test/java/com/baeldung/jooq/springboot/InitialConfiguration.java b/jooq-spring/src/test/java/com/baeldung/jooq/springboot/InitialConfiguration.java new file mode 100644 index 0000000000..c0d9dac797 --- /dev/null +++ b/jooq-spring/src/test/java/com/baeldung/jooq/springboot/InitialConfiguration.java @@ -0,0 +1,39 @@ +package com.baeldung.jooq.springboot; + +import com.baeldung.jooq.introduction.ExceptionTranslator; +import org.jooq.impl.DataSourceConnectionProvider; +import org.jooq.impl.DefaultConfiguration; +import org.jooq.impl.DefaultDSLContext; +import org.jooq.impl.DefaultExecuteListenerProvider; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.jdbc.datasource.TransactionAwareDataSourceProxy; + +import javax.sql.DataSource; + +@Configuration +public class InitialConfiguration { + + @Autowired + private DataSource dataSource; + + @Bean + public DataSourceConnectionProvider connectionProvider() { + return new DataSourceConnectionProvider(new TransactionAwareDataSourceProxy(dataSource)); + } + + @Bean + public DefaultDSLContext dsl() { + return new DefaultDSLContext(configuration()); + } + + public DefaultConfiguration configuration() { + DefaultConfiguration jooqConfiguration = new DefaultConfiguration(); + + jooqConfiguration.set(connectionProvider()); + jooqConfiguration.set(new DefaultExecuteListenerProvider(new ExceptionTranslator())); + + return jooqConfiguration; + } +} From 5c8961e7e8d0448f500c9acf576786b71e76fb7c Mon Sep 17 00:00:00 2001 From: Ivan Paolillo Date: Wed, 8 Jun 2016 16:47:36 +0200 Subject: [PATCH 16/26] Remove gatling load test demo --- gatling-loadtest-demo/.cache-tests | 166 ------------------ gatling-loadtest-demo/.classpath | 32 ---- gatling-loadtest-demo/.project | 24 --- gatling-loadtest-demo/pom.xml | 113 ------------ .../src/test/resources/gatling.conf | 127 -------------- .../src/test/resources/logback.xml | 22 --- .../src/test/resources/recorder.conf | 57 ------ .../src/test/scala/Engine.scala | 13 -- .../src/test/scala/IDEPathHelper.scala | 22 --- .../src/test/scala/Recorder.scala | 12 -- .../org/baeldung/RecordedSimulation.scala | 46 ----- 11 files changed, 634 deletions(-) delete mode 100644 gatling-loadtest-demo/.cache-tests delete mode 100644 gatling-loadtest-demo/.classpath delete mode 100644 gatling-loadtest-demo/.project delete mode 100644 gatling-loadtest-demo/pom.xml delete mode 100644 gatling-loadtest-demo/src/test/resources/gatling.conf delete mode 100644 gatling-loadtest-demo/src/test/resources/logback.xml delete mode 100644 gatling-loadtest-demo/src/test/resources/recorder.conf delete mode 100644 gatling-loadtest-demo/src/test/scala/Engine.scala delete mode 100644 gatling-loadtest-demo/src/test/scala/IDEPathHelper.scala delete mode 100644 gatling-loadtest-demo/src/test/scala/Recorder.scala delete mode 100644 gatling-loadtest-demo/src/test/scala/org/baeldung/RecordedSimulation.scala diff --git a/gatling-loadtest-demo/.cache-tests b/gatling-loadtest-demo/.cache-tests deleted file mode 100644 index 31b0015eef..0000000000 --- a/gatling-loadtest-demo/.cache-tests +++ /dev/null @@ -1,166 +0,0 @@ -format version: 5 -output mode: -1 items -0 -> multiple -output directories: -2 items -C:\develop\git\tutorials\gatling-loadtest-demo\src\test\resources -> C:\develop\git\tutorials\gatling-loadtest-demo\target\test-classes -C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala -> C:\develop\git\tutorials\gatling-loadtest-demo\target\test-classes -compile options: -8 items -0 -> -javabootclasspath -1 -> C:\develop\Java\jdk1.8.0_77\jre\lib\resources.jar;C:\develop\Java\jdk1.8.0_77\jre\lib\rt.jar;C:\develop\Java\jdk1.8.0_77\jre\lib\jsse.jar;C:\develop\Java\jdk1.8.0_77\jre\lib\jce.jar;C:\develop\Java\jdk1.8.0_77\jre\lib\charsets.jar;C:\develop\Java\jdk1.8.0_77\jre\lib\jfr.jar;C:\develop\Java\jdk1.8.0_77\jre\lib\ext\access-bridge-64.jar;C:\develop\Java\jdk1.8.0_77\jre\lib\ext\cldrdata.jar;C:\develop\Java\jdk1.8.0_77\jre\lib\ext\dnsns.jar;C:\develop\Java\jdk1.8.0_77\jre\lib\ext\jaccess.jar;C:\develop\Java\jdk1.8.0_77\jre\lib\ext\jfxrt.jar;C:\develop\Java\jdk1.8.0_77\jre\lib\ext\localedata.jar;C:\develop\Java\jdk1.8.0_77\jre\lib\ext\nashorn.jar;C:\develop\Java\jdk1.8.0_77\jre\lib\ext\sunec.jar;C:\develop\Java\jdk1.8.0_77\jre\lib\ext\sunjce_provider.jar;C:\develop\Java\jdk1.8.0_77\jre\lib\ext\sunmscapi.jar;C:\develop\Java\jdk1.8.0_77\jre\lib\ext\sunpkcs11.jar;C:\develop\Java\jdk1.8.0_77\jre\lib\ext\zipfs.jar -2 -> -javaextdirs -3 -> -4 -> -bootclasspath -5 -> C:\develop\IDE\sts-bundle\sts-3.7.3.RELEASE\plugins\org.scala-lang.scala-library_2.11.8.v20160304-115712-1706a37eb8.jar -6 -> -encoding -7 -> UTF-8 -javac options: -0 items -compiler version: -1 items -0 -> 2.11.8 -compile order: -1 items -0 -> Mixed -name hashing: -1 items -0 -> false -products: -9 items -C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\Engine.scala -> C:\develop\git\tutorials\gatling-loadtest-demo\target\test-classes\Engine$.class -C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\Engine.scala -> C:\develop\git\tutorials\gatling-loadtest-demo\target\test-classes\Engine$delayedInit$body.class -C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\Engine.scala -> C:\develop\git\tutorials\gatling-loadtest-demo\target\test-classes\Engine.class -C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\IDEPathHelper.scala -> C:\develop\git\tutorials\gatling-loadtest-demo\target\test-classes\IDEPathHelper$.class -C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\IDEPathHelper.scala -> C:\develop\git\tutorials\gatling-loadtest-demo\target\test-classes\IDEPathHelper.class -C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\org\baeldung\RecordedSimulation.scala -> C:\develop\git\tutorials\gatling-loadtest-demo\target\test-classes\org\baeldung\RecordedSimulation.class -C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\Recorder.scala -> C:\develop\git\tutorials\gatling-loadtest-demo\target\test-classes\Recorder$.class -C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\Recorder.scala -> C:\develop\git\tutorials\gatling-loadtest-demo\target\test-classes\Recorder$delayedInit$body.class -C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\Recorder.scala -> C:\develop\git\tutorials\gatling-loadtest-demo\target\test-classes\Recorder.class -binary dependencies: -15 items -C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\Engine.scala -> C:\Users\Ivan Paolillo\.m2\repository\io\gatling\gatling-app\2.2.0\gatling-app-2.2.0.jar -C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\Engine.scala -> C:\Users\Ivan Paolillo\.m2\repository\io\gatling\gatling-core\2.2.0\gatling-core-2.2.0.jar -C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\Engine.scala -> C:\develop\IDE\sts-bundle\sts-3.7.3.RELEASE\plugins\org.scala-lang.scala-library_2.11.8.v20160304-115712-1706a37eb8.jar -C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\Engine.scala -> C:\develop\Java\jdk1.8.0_77\jre\lib\rt.jar -C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\IDEPathHelper.scala -> C:\Users\Ivan Paolillo\.m2\repository\io\gatling\gatling-commons\2.2.0\gatling-commons-2.2.0.jar -C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\IDEPathHelper.scala -> C:\develop\Java\jdk1.8.0_77\jre\lib\rt.jar -C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\org\baeldung\RecordedSimulation.scala -> C:\Users\Ivan Paolillo\.m2\repository\io\gatling\gatling-commons\2.2.0\gatling-commons-2.2.0.jar -C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\org\baeldung\RecordedSimulation.scala -> C:\Users\Ivan Paolillo\.m2\repository\io\gatling\gatling-core\2.2.0\gatling-core-2.2.0.jar -C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\org\baeldung\RecordedSimulation.scala -> C:\Users\Ivan Paolillo\.m2\repository\io\gatling\gatling-http\2.2.0\gatling-http-2.2.0.jar -C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\org\baeldung\RecordedSimulation.scala -> C:\Users\Ivan Paolillo\.m2\repository\io\gatling\gatling-jdbc\2.2.0\gatling-jdbc-2.2.0.jar -C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\org\baeldung\RecordedSimulation.scala -> C:\develop\IDE\sts-bundle\sts-3.7.3.RELEASE\plugins\org.scala-lang.scala-library_2.11.8.v20160304-115712-1706a37eb8.jar -C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\org\baeldung\RecordedSimulation.scala -> C:\develop\Java\jdk1.8.0_77\jre\lib\rt.jar -C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\Recorder.scala -> C:\Users\Ivan Paolillo\.m2\repository\io\gatling\gatling-recorder\2.2.0\gatling-recorder-2.2.0.jar -C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\Recorder.scala -> C:\develop\IDE\sts-bundle\sts-3.7.3.RELEASE\plugins\org.scala-lang.scala-library_2.11.8.v20160304-115712-1706a37eb8.jar -C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\Recorder.scala -> C:\develop\Java\jdk1.8.0_77\jre\lib\rt.jar -direct source dependencies: -2 items -C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\Engine.scala -> C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\IDEPathHelper.scala -C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\Recorder.scala -> C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\IDEPathHelper.scala -direct external dependencies: -0 items -public inherited source dependencies: -0 items -public inherited external dependencies: -0 items -member reference internal dependencies: -0 items -member reference external dependencies: -0 items -inheritance internal dependencies: -0 items -inheritance external dependencies: -0 items -class names: -9 items -C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\Engine.scala -> Engine -C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\Engine.scala -> Engine$ -C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\Engine.scala -> Engine$delayedInit$body -C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\IDEPathHelper.scala -> IDEPathHelper -C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\IDEPathHelper.scala -> IDEPathHelper$ -C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\org\baeldung\RecordedSimulation.scala -> org.baeldung.RecordedSimulation -C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\Recorder.scala -> Recorder -C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\Recorder.scala -> Recorder$ -C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\Recorder.scala -> Recorder$delayedInit$body -used names: -0 items -product stamps: -9 items -C:\develop\git\tutorials\gatling-loadtest-demo\target\test-classes\Engine$.class -> lastModified(1464356690978) -C:\develop\git\tutorials\gatling-loadtest-demo\target\test-classes\Engine$delayedInit$body.class -> lastModified(1464356690989) -C:\develop\git\tutorials\gatling-loadtest-demo\target\test-classes\Engine.class -> lastModified(1464356690863) -C:\develop\git\tutorials\gatling-loadtest-demo\target\test-classes\IDEPathHelper$.class -> lastModified(1464356691030) -C:\develop\git\tutorials\gatling-loadtest-demo\target\test-classes\IDEPathHelper.class -> lastModified(1464356691005) -C:\develop\git\tutorials\gatling-loadtest-demo\target\test-classes\org\baeldung\RecordedSimulation.class -> lastModified(1464356691072) -C:\develop\git\tutorials\gatling-loadtest-demo\target\test-classes\Recorder$.class -> lastModified(1464356691045) -C:\develop\git\tutorials\gatling-loadtest-demo\target\test-classes\Recorder$delayedInit$body.class -> lastModified(1464356691049) -C:\develop\git\tutorials\gatling-loadtest-demo\target\test-classes\Recorder.class -> lastModified(1464356691034) -source stamps: -4 items -C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\Engine.scala -> hash(e98bacf89a84be65d2a131fa7e072d4f6ebef89d) -C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\IDEPathHelper.scala -> hash(20255b66020a40c67db52f8248fab7e3250fc940) -C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\org\baeldung\RecordedSimulation.scala -> hash(1d4aab935ed26aa3fee62aff5bc9d1d2dbc3f776) -C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\Recorder.scala -> hash(667da8a9d712f988ed7b14bdfa7b293c76ac3b61) -binary stamps: -8 items -C:\develop\IDE\sts-bundle\sts-3.7.3.RELEASE\plugins\org.scala-lang.scala-library_2.11.8.v20160304-115712-1706a37eb8.jar -> lastModified(1463581376873) -C:\develop\Java\jdk1.8.0_77\jre\lib\rt.jar -> lastModified(1460466041763) -C:\Users\Ivan Paolillo\.m2\repository\io\gatling\gatling-app\2.2.0\gatling-app-2.2.0.jar -> lastModified(1463577683111) -C:\Users\Ivan Paolillo\.m2\repository\io\gatling\gatling-commons\2.2.0\gatling-commons-2.2.0.jar -> lastModified(1463577434095) -C:\Users\Ivan Paolillo\.m2\repository\io\gatling\gatling-core\2.2.0\gatling-core-2.2.0.jar -> lastModified(1463577425041) -C:\Users\Ivan Paolillo\.m2\repository\io\gatling\gatling-http\2.2.0\gatling-http-2.2.0.jar -> lastModified(1463577691216) -C:\Users\Ivan Paolillo\.m2\repository\io\gatling\gatling-jdbc\2.2.0\gatling-jdbc-2.2.0.jar -> lastModified(1463577767127) -C:\Users\Ivan Paolillo\.m2\repository\io\gatling\gatling-recorder\2.2.0\gatling-recorder-2.2.0.jar -> lastModified(1463577812366) -class names: -8 items -C:\develop\IDE\sts-bundle\sts-3.7.3.RELEASE\plugins\org.scala-lang.scala-library_2.11.8.v20160304-115712-1706a37eb8.jar -> scala.reflect.ClassTag$ -C:\develop\Java\jdk1.8.0_77\jre\lib\rt.jar -> java.lang.Object -C:\Users\Ivan Paolillo\.m2\repository\io\gatling\gatling-app\2.2.0\gatling-app-2.2.0.jar -> io.gatling.app.Gatling$ -C:\Users\Ivan Paolillo\.m2\repository\io\gatling\gatling-commons\2.2.0\gatling-commons-2.2.0.jar -> io.gatling.commons.util.TypeCaster$ -C:\Users\Ivan Paolillo\.m2\repository\io\gatling\gatling-core\2.2.0\gatling-core-2.2.0.jar -> io.gatling.core.scenario.Simulation -C:\Users\Ivan Paolillo\.m2\repository\io\gatling\gatling-http\2.2.0\gatling-http-2.2.0.jar -> io.gatling.http.protocol.HttpProtocolBuilder -C:\Users\Ivan Paolillo\.m2\repository\io\gatling\gatling-jdbc\2.2.0\gatling-jdbc-2.2.0.jar -> io.gatling.jdbc.Predef$ -C:\Users\Ivan Paolillo\.m2\repository\io\gatling\gatling-recorder\2.2.0\gatling-recorder-2.2.0.jar -> io.gatling.recorder.GatlingRecorder$ -internal apis: -4 items -C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\Engine.scala -> -rO0ABXNyABB4c2J0aS5hcGkuU291cmNlFlpwRASfbtoCAAZJAAdhcGlIYXNoWgAIaGFzTWFjcm9MABhfaW50ZXJuYWxPbmx5X25hbWVIYXNoZXN0ACRMeHNidGkvYXBpL19pbnRlcm5hbE9ubHlfTmFtZUhhc2hlcztMAANhcGl0ABVMeHNidGkvYXBpL1NvdXJjZUFQSTtMAAtjb21waWxhdGlvbnQAF0x4c2J0aS9hcGkvQ29tcGlsYXRpb247WwAEaGFzaHQAAltCeHA7lBuUAHNyACJ4c2J0aS5hcGkuX2ludGVybmFsT25seV9OYW1lSGFzaGVzVNq+mfrU7EwCAAJbAA9pbXBsaWNpdE1lbWJlcnN0ACNbTHhzYnRpL2FwaS9faW50ZXJuYWxPbmx5X05hbWVIYXNoO1sADnJlZ3VsYXJNZW1iZXJzcQB+AAd4cHVyACNbTHhzYnRpLmFwaS5faW50ZXJuYWxPbmx5X05hbWVIYXNoO0lagLbdlov0AgAAeHAAAAAAdXEAfgAJAAAAAHNyABN4c2J0aS5hcGkuU291cmNlQVBJuV6n+SkjOKQCAAJbAAtkZWZpbml0aW9uc3QAF1tMeHNidGkvYXBpL0RlZmluaXRpb247WwAIcGFja2FnZXN0ABRbTHhzYnRpL2FwaS9QYWNrYWdlO3hwdXIAF1tMeHNidGkuYXBpLkRlZmluaXRpb247iMlc57TjXg4CAAB4cAAAAAFzcgATeHNidGkuYXBpLkNsYXNzTGlrZYM0HKHfsJdsAgAETAAOZGVmaW5pdGlvblR5cGV0ABpMeHNidGkvYXBpL0RlZmluaXRpb25UeXBlO1sAEHNhdmVkQW5ub3RhdGlvbnN0ABNbTGphdmEvbGFuZy9TdHJpbmc7TAAIc2VsZlR5cGV0ABBMeHNidGkvYXBpL0xhenk7TAAJc3RydWN0dXJlcQB+ABV4cgAheHNidGkuYXBpLlBhcmFtZXRlcml6ZWREZWZpbml0aW9u+RFusdVQPOICAAFbAA50eXBlUGFyYW1ldGVyc3QAGltMeHNidGkvYXBpL1R5cGVQYXJhbWV0ZXI7eHIAFHhzYnRpLmFwaS5EZWZpbml0aW9uhyob6HFC40YCAARMAAZhY2Nlc3N0ABJMeHNidGkvYXBpL0FjY2VzcztbAAthbm5vdGF0aW9uc3QAF1tMeHNidGkvYXBpL0Fubm90YXRpb247TAAJbW9kaWZpZXJzdAAVTHhzYnRpL2FwaS9Nb2RpZmllcnM7TAAEbmFtZXQAEkxqYXZhL2xhbmcvU3RyaW5nO3hwc3IAEHhzYnRpLmFwaS5QdWJsaWO6WD2ubC1gQgIAAHhyABB4c2J0aS5hcGkuQWNjZXNz3WKa+B1jMUgCAAB4cHVyABdbTHhzYnRpLmFwaS5Bbm5vdGF0aW9uO+uX6xkQ9o1IAgAAeHAAAAAAc3IAE3hzYnRpLmFwaS5Nb2RpZmllcnPHERMhaZzcJAIAAUIABWZsYWdzeHAAdAAGRW5naW5ldXIAGltMeHNidGkuYXBpLlR5cGVQYXJhbWV0ZXI72W0mDyid8rYCAAB4cAAAAAB+cgAYeHNidGkuYXBpLkRlZmluaXRpb25UeXBlAAAAAAAAAAASAAB4cgAOamF2YS5sYW5nLkVudW0AAAAAAAAAABIAAHhwdAAGTW9kdWxldXIAE1tMamF2YS5sYW5nLlN0cmluZzut0lbn6R17RwIAAHhwAAAAAnQAEHNjYWxhLmRlcHJlY2F0ZWR0ABpzY2FsYS5kZXByZWNhdGVkT3ZlcnJpZGluZ3NyABN4c2J0aS5TYWZlTGF6eSRJbXBsO5FPEfRFTMkCAANaAAhiaXRtYXAkMEwAAl90dAASTGphdmEvbGFuZy9PYmplY3Q7TAAEZXZhbHQAEUxzY2FsYS9GdW5jdGlvbjA7eHIAFnhzYnRpLmFwaS5BYnN0cmFjdExhennTd7UBX7vnoAIAAHhwAXNyABN4c2J0aS5hcGkuRW1wdHlUeXBlvP2eRkk7iSQCAAB4cgAUeHNidGkuYXBpLlNpbXBsZVR5cGVyeGKIISO/QAIAAHhyAA54c2J0aS5hcGkuVHlwZT9q2SEWSarKAgAAeHBwc3EAfgAwAXNyABN4c2J0aS5hcGkuU3RydWN0dXJlqar5gJNv2AACAANMAAhkZWNsYXJlZHEAfgAVTAAJaW5oZXJpdGVkcQB+ABVMAAdwYXJlbnRzcQB+ABV4cQB+ADdzcQB+ADABdXEAfgAQAAAAAHBzcQB+ADABdXEAfgAQAAAAAXNyAA14c2J0aS5hcGkuRGVmUr6f4ny0NmkCAAJMAApyZXR1cm5UeXBldAAQTHhzYnRpL2FwaS9UeXBlO1sAD3ZhbHVlUGFyYW1ldGVyc3QAGltMeHNidGkvYXBpL1BhcmFtZXRlckxpc3Q7eHEAfgAWcQB+ACB1cQB+ACEAAAABc3IAFHhzYnRpLmFwaS5Bbm5vdGF0aW9u3g6BovZcCrICAAJbAAlhcmd1bWVudHN0AB9bTHhzYnRpL2FwaS9Bbm5vdGF0aW9uQXJndW1lbnQ7TAAEYmFzZXEAfgBBeHB1cgAfW0x4c2J0aS5hcGkuQW5ub3RhdGlvbkFyZ3VtZW50O1Gdpo84JQ94AgAAeHAAAAABc3IAHHhzYnRpLmFwaS5Bbm5vdGF0aW9uQXJndW1lbnTWRbHYAxsXfAIAAkwABG5hbWVxAH4AHEwABXZhbHVlcQB+ABx4cHQAAHQAKigibWFpbiBzaG91bGQgbm90IGJlIG92ZXJyaWRkZW4iLCIyLjExLjAiKXNyABR4c2J0aS5hcGkuUHJvamVjdGlvbvPSjVTpRaQtAgACTAACaWRxAH4AHEwABnByZWZpeHQAFkx4c2J0aS9hcGkvU2ltcGxlVHlwZTt4cQB+ADZ0ABRkZXByZWNhdGVkT3ZlcnJpZGluZ3NyABN4c2J0aS5hcGkuU2luZ2xldG9u/Kdf+M9W5EYCAAFMAARwYXRodAAQTHhzYnRpL2FwaS9QYXRoO3hxAH4ANnNyAA54c2J0aS5hcGkuUGF0aJs9XAjOpSeEAgABWwAKY29tcG9uZW50c3QAGltMeHNidGkvYXBpL1BhdGhDb21wb25lbnQ7eHB1cgAaW0x4c2J0aS5hcGkuUGF0aENvbXBvbmVudDtD2gl0LWcWdAIAAHhwAAAAAnNyAAx4c2J0aS5hcGkuSWSYMmyLN1PEQAIAAUwAAmlkcQB+ABx4cgAXeHNidGkuYXBpLlBhdGhDb21wb25lbnRfmiJbLoafvAIAAHhwdAAFc2NhbGFzcgAOeHNidGkuYXBpLlRoaXPbCe2mzFpAXAIAAHhxAH4AW3NxAH4AIwB0AARtYWludXEAfgAmAAAAAHNxAH4ATnQABFVuaXRxAH4AVHVyABpbTHhzYnRpLmFwaS5QYXJhbWV0ZXJMaXN0O/XTOh3ys3DuAgAAeHAAAAABc3IAF3hzYnRpLmFwaS5QYXJhbWV0ZXJMaXN01sW8HGRJdOMCAAJaAAppc0ltcGxpY2l0WwAKcGFyYW1ldGVyc3QAHFtMeHNidGkvYXBpL01ldGhvZFBhcmFtZXRlcjt4cAB1cgAcW0x4c2J0aS5hcGkuTWV0aG9kUGFyYW1ldGVyO8+4xV2l3bVtAgAAeHAAAAABc3IAGXhzYnRpLmFwaS5NZXRob2RQYXJhbWV0ZXIfRa4X00mw6gIABFoACmhhc0RlZmF1bHRMAAhtb2RpZmllcnQAHUx4c2J0aS9hcGkvUGFyYW1ldGVyTW9kaWZpZXI7TAAEbmFtZXEAfgAcTAADdHBlcQB+AEF4cAB+cgAbeHNidGkuYXBpLlBhcmFtZXRlck1vZGlmaWVyAAAAAAAAAAASAAB4cQB+ACl0AAVQbGFpbnQABGFyZ3NzcgAXeHNidGkuYXBpLlBhcmFtZXRlcml6ZWQWbO5pA8m7fwIAAkwACGJhc2VUeXBlcQB+AE9bAA10eXBlQXJndW1lbnRzdAARW0x4c2J0aS9hcGkvVHlwZTt4cQB+ADZzcQB+AE50AAVBcnJheXEAfgBUdXIAEVtMeHNidGkuYXBpLlR5cGU7dP+lWnv56UECAAB4cAAAAAFzcQB+AE50AAZTdHJpbmdzcQB+AFJzcQB+AFV1cQB+AFgAAAADc3EAfgBadAAEamF2YXNxAH4AWnQABGxhbmdxAH4AX3BzcQB+ADABdXEAfgB4AAAABHNxAH4ATnQAA0FwcHEAfgBUc3EAfgBOdAALRGVsYXllZEluaXRxAH4AVHNxAH4ATnQABk9iamVjdHEAfgB8c3EAfgBOdAADQW55cQB+AFRwcHVyABRbTHhzYnRpLmFwaS5QYWNrYWdlO1sTGTdwpyehAgAAeHAAAAAAc3IAFXhzYnRpLmFwaS5Db21waWxhdGlvbu364MNq6KBCAgACSgAJc3RhcnRUaW1lWwAHb3V0cHV0c3QAGltMeHNidGkvYXBpL091dHB1dFNldHRpbmc7eHAAAAFU8nXEpnVyABpbTHhzYnRpLmFwaS5PdXRwdXRTZXR0aW5nO39qwvOnh6VCAgAAeHAAAAACc3IAF3hzYnRpLmFwaS5PdXRwdXRTZXR0aW5netmaR3T7HXsCAAJMAA9vdXRwdXREaXJlY3RvcnlxAH4AHEwAD3NvdXJjZURpcmVjdG9yeXEAfgAceHB0AEJDOlxkZXZlbG9wXGdpdFx0dXRvcmlhbHNcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHRhcmdldFx0ZXN0LWNsYXNzZXN0AD1DOlxkZXZlbG9wXGdpdFx0dXRvcmlhbHNcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHNyY1x0ZXN0XHNjYWxhc3EAfgCUdABCQzpcZGV2ZWxvcFxnaXRcdHV0b3JpYWxzXGdhdGxpbmctbG9hZHRlc3QtZGVtb1x0YXJnZXRcdGVzdC1jbGFzc2VzdABBQzpcZGV2ZWxvcFxnaXRcdHV0b3JpYWxzXGdhdGxpbmctbG9hZHRlc3QtZGVtb1xzcmNcdGVzdFxyZXNvdXJjZXN1cgACW0Ks8xf4BghU4AIAAHhwAAAAFOmLrPiahL5l0qEx+n4HLU9uvvid -C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\IDEPathHelper.scala -> -rO0ABXNyABB4c2J0aS5hcGkuU291cmNlFlpwRASfbtoCAAZJAAdhcGlIYXNoWgAIaGFzTWFjcm9MABhfaW50ZXJuYWxPbmx5X25hbWVIYXNoZXN0ACRMeHNidGkvYXBpL19pbnRlcm5hbE9ubHlfTmFtZUhhc2hlcztMAANhcGl0ABVMeHNidGkvYXBpL1NvdXJjZUFQSTtMAAtjb21waWxhdGlvbnQAF0x4c2J0aS9hcGkvQ29tcGlsYXRpb247WwAEaGFzaHQAAltCeHCXMg60AHNyACJ4c2J0aS5hcGkuX2ludGVybmFsT25seV9OYW1lSGFzaGVzVNq+mfrU7EwCAAJbAA9pbXBsaWNpdE1lbWJlcnN0ACNbTHhzYnRpL2FwaS9faW50ZXJuYWxPbmx5X05hbWVIYXNoO1sADnJlZ3VsYXJNZW1iZXJzcQB+AAd4cHVyACNbTHhzYnRpLmFwaS5faW50ZXJuYWxPbmx5X05hbWVIYXNoO0lagLbdlov0AgAAeHAAAAAAdXEAfgAJAAAAAHNyABN4c2J0aS5hcGkuU291cmNlQVBJuV6n+SkjOKQCAAJbAAtkZWZpbml0aW9uc3QAF1tMeHNidGkvYXBpL0RlZmluaXRpb247WwAIcGFja2FnZXN0ABRbTHhzYnRpL2FwaS9QYWNrYWdlO3hwdXIAF1tMeHNidGkuYXBpLkRlZmluaXRpb247iMlc57TjXg4CAAB4cAAAAAFzcgATeHNidGkuYXBpLkNsYXNzTGlrZYM0HKHfsJdsAgAETAAOZGVmaW5pdGlvblR5cGV0ABpMeHNidGkvYXBpL0RlZmluaXRpb25UeXBlO1sAEHNhdmVkQW5ub3RhdGlvbnN0ABNbTGphdmEvbGFuZy9TdHJpbmc7TAAIc2VsZlR5cGV0ABBMeHNidGkvYXBpL0xhenk7TAAJc3RydWN0dXJlcQB+ABV4cgAheHNidGkuYXBpLlBhcmFtZXRlcml6ZWREZWZpbml0aW9u+RFusdVQPOICAAFbAA50eXBlUGFyYW1ldGVyc3QAGltMeHNidGkvYXBpL1R5cGVQYXJhbWV0ZXI7eHIAFHhzYnRpLmFwaS5EZWZpbml0aW9uhyob6HFC40YCAARMAAZhY2Nlc3N0ABJMeHNidGkvYXBpL0FjY2VzcztbAAthbm5vdGF0aW9uc3QAF1tMeHNidGkvYXBpL0Fubm90YXRpb247TAAJbW9kaWZpZXJzdAAVTHhzYnRpL2FwaS9Nb2RpZmllcnM7TAAEbmFtZXQAEkxqYXZhL2xhbmcvU3RyaW5nO3hwc3IAEHhzYnRpLmFwaS5QdWJsaWO6WD2ubC1gQgIAAHhyABB4c2J0aS5hcGkuQWNjZXNz3WKa+B1jMUgCAAB4cHVyABdbTHhzYnRpLmFwaS5Bbm5vdGF0aW9uO+uX6xkQ9o1IAgAAeHAAAAAAc3IAE3hzYnRpLmFwaS5Nb2RpZmllcnPHERMhaZzcJAIAAUIABWZsYWdzeHAAdAANSURFUGF0aEhlbHBlcnVyABpbTHhzYnRpLmFwaS5UeXBlUGFyYW1ldGVyO9ltJg8onfK2AgAAeHAAAAAAfnIAGHhzYnRpLmFwaS5EZWZpbml0aW9uVHlwZQAAAAAAAAAAEgAAeHIADmphdmEubGFuZy5FbnVtAAAAAAAAAAASAAB4cHQABk1vZHVsZXVyABNbTGphdmEubGFuZy5TdHJpbmc7rdJW5+kde0cCAAB4cAAAAABzcgATeHNidGkuU2FmZUxhenkkSW1wbDuRTxH0RUzJAgADWgAIYml0bWFwJDBMAAJfdHQAEkxqYXZhL2xhbmcvT2JqZWN0O0wABGV2YWx0ABFMc2NhbGEvRnVuY3Rpb24wO3hyABZ4c2J0aS5hcGkuQWJzdHJhY3RMYXp503e1AV+756ACAAB4cAFzcgATeHNidGkuYXBpLkVtcHR5VHlwZbz9nkZJO4kkAgAAeHIAFHhzYnRpLmFwaS5TaW1wbGVUeXBlcnhiiCEjv0ACAAB4cgAOeHNidGkuYXBpLlR5cGU/atkhFkmqygIAAHhwcHNxAH4ALgFzcgATeHNidGkuYXBpLlN0cnVjdHVyZamq+YCTb9gAAgADTAAIZGVjbGFyZWRxAH4AFUwACWluaGVyaXRlZHEAfgAVTAAHcGFyZW50c3EAfgAVeHEAfgA1c3EAfgAuAXVxAH4AEAAAAABwc3EAfgAuAXVxAH4AEAAAAABwc3EAfgAuAXVyABFbTHhzYnRpLmFwaS5UeXBlO3T/pVp7+elBAgAAeHAAAAACc3IAFHhzYnRpLmFwaS5Qcm9qZWN0aW9u89KNVOlFpC0CAAJMAAJpZHEAfgAcTAAGcHJlZml4dAAWTHhzYnRpL2FwaS9TaW1wbGVUeXBlO3hxAH4ANHQABk9iamVjdHNyABN4c2J0aS5hcGkuU2luZ2xldG9u/Kdf+M9W5EYCAAFMAARwYXRodAAQTHhzYnRpL2FwaS9QYXRoO3hxAH4ANHNyAA54c2J0aS5hcGkuUGF0aJs9XAjOpSeEAgABWwAKY29tcG9uZW50c3QAGltMeHNidGkvYXBpL1BhdGhDb21wb25lbnQ7eHB1cgAaW0x4c2J0aS5hcGkuUGF0aENvbXBvbmVudDtD2gl0LWcWdAIAAHhwAAAAA3NyAAx4c2J0aS5hcGkuSWSYMmyLN1PEQAIAAUwAAmlkcQB+ABx4cgAXeHNidGkuYXBpLlBhdGhDb21wb25lbnRfmiJbLoafvAIAAHhwdAAEamF2YXNxAH4ATXQABGxhbmdzcgAOeHNidGkuYXBpLlRoaXPbCe2mzFpAXAIAAHhxAH4ATnNxAH4AQXQAA0FueXNxAH4ARXNxAH4ASHVxAH4ASwAAAAJzcQB+AE10AAVzY2FsYXEAfgBUcHB1cgAUW0x4c2J0aS5hcGkuUGFja2FnZTtbExk3cKcnoQIAAHhwAAAAAHNyABV4c2J0aS5hcGkuQ29tcGlsYXRpb27t+uDDauigQgIAAkoACXN0YXJ0VGltZVsAB291dHB1dHN0ABpbTHhzYnRpL2FwaS9PdXRwdXRTZXR0aW5nO3hwAAABVPJ1xKZ1cgAaW0x4c2J0aS5hcGkuT3V0cHV0U2V0dGluZzt/asLzp4elQgIAAHhwAAAAAnNyABd4c2J0aS5hcGkuT3V0cHV0U2V0dGluZ3rZmkd0+x17AgACTAAPb3V0cHV0RGlyZWN0b3J5cQB+ABxMAA9zb3VyY2VEaXJlY3RvcnlxAH4AHHhwdABCQzpcZGV2ZWxvcFxnaXRcdHV0b3JpYWxzXGdhdGxpbmctbG9hZHRlc3QtZGVtb1x0YXJnZXRcdGVzdC1jbGFzc2VzdAA9QzpcZGV2ZWxvcFxnaXRcdHV0b3JpYWxzXGdhdGxpbmctbG9hZHRlc3QtZGVtb1xzcmNcdGVzdFxzY2FsYXNxAH4AY3QAQkM6XGRldmVsb3BcZ2l0XHR1dG9yaWFsc1xnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cdGFyZ2V0XHRlc3QtY2xhc3Nlc3QAQUM6XGRldmVsb3BcZ2l0XHR1dG9yaWFsc1xnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cc3JjXHRlc3RccmVzb3VyY2VzdXIAAltCrPMX+AYIVOACAAB4cAAAABQgJVtmAgpAxn21L4JI+rfjJQ/JQA== -C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\org\baeldung\RecordedSimulation.scala -> -rO0ABXNyABB4c2J0aS5hcGkuU291cmNlFlpwRASfbtoCAAZJAAdhcGlIYXNoWgAIaGFzTWFjcm9MABhfaW50ZXJuYWxPbmx5X25hbWVIYXNoZXN0ACRMeHNidGkvYXBpL19pbnRlcm5hbE9ubHlfTmFtZUhhc2hlcztMAANhcGl0ABVMeHNidGkvYXBpL1NvdXJjZUFQSTtMAAtjb21waWxhdGlvbnQAF0x4c2J0aS9hcGkvQ29tcGlsYXRpb247WwAEaGFzaHQAAltCeHARTQnpAHNyACJ4c2J0aS5hcGkuX2ludGVybmFsT25seV9OYW1lSGFzaGVzVNq+mfrU7EwCAAJbAA9pbXBsaWNpdE1lbWJlcnN0ACNbTHhzYnRpL2FwaS9faW50ZXJuYWxPbmx5X05hbWVIYXNoO1sADnJlZ3VsYXJNZW1iZXJzcQB+AAd4cHVyACNbTHhzYnRpLmFwaS5faW50ZXJuYWxPbmx5X05hbWVIYXNoO0lagLbdlov0AgAAeHAAAAAAdXEAfgAJAAAAAHNyABN4c2J0aS5hcGkuU291cmNlQVBJuV6n+SkjOKQCAAJbAAtkZWZpbml0aW9uc3QAF1tMeHNidGkvYXBpL0RlZmluaXRpb247WwAIcGFja2FnZXN0ABRbTHhzYnRpL2FwaS9QYWNrYWdlO3hwdXIAF1tMeHNidGkuYXBpLkRlZmluaXRpb247iMlc57TjXg4CAAB4cAAAAAFzcgATeHNidGkuYXBpLkNsYXNzTGlrZYM0HKHfsJdsAgAETAAOZGVmaW5pdGlvblR5cGV0ABpMeHNidGkvYXBpL0RlZmluaXRpb25UeXBlO1sAEHNhdmVkQW5ub3RhdGlvbnN0ABNbTGphdmEvbGFuZy9TdHJpbmc7TAAIc2VsZlR5cGV0ABBMeHNidGkvYXBpL0xhenk7TAAJc3RydWN0dXJlcQB+ABV4cgAheHNidGkuYXBpLlBhcmFtZXRlcml6ZWREZWZpbml0aW9u+RFusdVQPOICAAFbAA50eXBlUGFyYW1ldGVyc3QAGltMeHNidGkvYXBpL1R5cGVQYXJhbWV0ZXI7eHIAFHhzYnRpLmFwaS5EZWZpbml0aW9uhyob6HFC40YCAARMAAZhY2Nlc3N0ABJMeHNidGkvYXBpL0FjY2VzcztbAAthbm5vdGF0aW9uc3QAF1tMeHNidGkvYXBpL0Fubm90YXRpb247TAAJbW9kaWZpZXJzdAAVTHhzYnRpL2FwaS9Nb2RpZmllcnM7TAAEbmFtZXQAEkxqYXZhL2xhbmcvU3RyaW5nO3hwc3IAEHhzYnRpLmFwaS5QdWJsaWO6WD2ubC1gQgIAAHhyABB4c2J0aS5hcGkuQWNjZXNz3WKa+B1jMUgCAAB4cHVyABdbTHhzYnRpLmFwaS5Bbm5vdGF0aW9uO+uX6xkQ9o1IAgAAeHAAAAAAc3IAE3hzYnRpLmFwaS5Nb2RpZmllcnPHERMhaZzcJAIAAUIABWZsYWdzeHAAdAAfb3JnLmJhZWxkdW5nLlJlY29yZGVkU2ltdWxhdGlvbnVyABpbTHhzYnRpLmFwaS5UeXBlUGFyYW1ldGVyO9ltJg8onfK2AgAAeHAAAAAAfnIAGHhzYnRpLmFwaS5EZWZpbml0aW9uVHlwZQAAAAAAAAAAEgAAeHIADmphdmEubGFuZy5FbnVtAAAAAAAAAAASAAB4cHQACENsYXNzRGVmdXIAE1tMamF2YS5sYW5nLlN0cmluZzut0lbn6R17RwIAAHhwAAAAAHNyABN4c2J0aS5TYWZlTGF6eSRJbXBsO5FPEfRFTMkCAANaAAhiaXRtYXAkMEwAAl90dAASTGphdmEvbGFuZy9PYmplY3Q7TAAEZXZhbHQAEUxzY2FsYS9GdW5jdGlvbjA7eHIAFnhzYnRpLmFwaS5BYnN0cmFjdExhennTd7UBX7vnoAIAAHhwAXNyABN4c2J0aS5hcGkuRW1wdHlUeXBlvP2eRkk7iSQCAAB4cgAUeHNidGkuYXBpLlNpbXBsZVR5cGVyeGKIISO/QAIAAHhyAA54c2J0aS5hcGkuVHlwZT9q2SEWSarKAgAAeHBwc3EAfgAuAXNyABN4c2J0aS5hcGkuU3RydWN0dXJlqar5gJNv2AACAANMAAhkZWNsYXJlZHEAfgAVTAAJaW5oZXJpdGVkcQB+ABVMAAdwYXJlbnRzcQB+ABV4cQB+ADVzcQB+AC4BdXEAfgAQAAAAAHBzcQB+AC4BdXEAfgAQAAAAAHBzcQB+AC4BdXIAEVtMeHNidGkuYXBpLlR5cGU7dP+lWnv56UECAAB4cAAAAANzcgAUeHNidGkuYXBpLlByb2plY3Rpb27z0o1U6UWkLQIAAkwAAmlkcQB+ABxMAAZwcmVmaXh0ABZMeHNidGkvYXBpL1NpbXBsZVR5cGU7eHEAfgA0dAAKU2ltdWxhdGlvbnNyABN4c2J0aS5hcGkuU2luZ2xldG9u/Kdf+M9W5EYCAAFMAARwYXRodAAQTHhzYnRpL2FwaS9QYXRoO3hxAH4ANHNyAA54c2J0aS5hcGkuUGF0aJs9XAjOpSeEAgABWwAKY29tcG9uZW50c3QAGltMeHNidGkvYXBpL1BhdGhDb21wb25lbnQ7eHB1cgAaW0x4c2J0aS5hcGkuUGF0aENvbXBvbmVudDtD2gl0LWcWdAIAAHhwAAAABXNyAAx4c2J0aS5hcGkuSWSYMmyLN1PEQAIAAUwAAmlkcQB+ABx4cgAXeHNidGkuYXBpLlBhdGhDb21wb25lbnRfmiJbLoafvAIAAHhwdAACaW9zcQB+AE10AAdnYXRsaW5nc3EAfgBNdAAEY29yZXNxAH4ATXQACHNjZW5hcmlvc3IADnhzYnRpLmFwaS5UaGlz2wntpsxaQFwCAAB4cQB+AE5zcQB+AEF0AAZPYmplY3RzcQB+AEVzcQB+AEh1cQB+AEsAAAADc3EAfgBNdAAEamF2YXNxAH4ATXQABGxhbmdxAH4AWHNxAH4AQXQAA0FueXNxAH4ARXNxAH4ASHVxAH4ASwAAAAJzcQB+AE10AAVzY2FsYXEAfgBYcHB1cgAUW0x4c2J0aS5hcGkuUGFja2FnZTtbExk3cKcnoQIAAHhwAAAAAnNyABF4c2J0aS5hcGkuUGFja2FnZX5Zj/auzjlYAgABTAAEbmFtZXEAfgAceHB0AAxvcmcuYmFlbGR1bmdzcQB+AGt0AANvcmdzcgAVeHNidGkuYXBpLkNvbXBpbGF0aW9u7frgw2rooEICAAJKAAlzdGFydFRpbWVbAAdvdXRwdXRzdAAaW0x4c2J0aS9hcGkvT3V0cHV0U2V0dGluZzt4cAAAAVTydcSmdXIAGltMeHNidGkuYXBpLk91dHB1dFNldHRpbmc7f2rC86eHpUICAAB4cAAAAAJzcgAXeHNidGkuYXBpLk91dHB1dFNldHRpbmd62ZpHdPsdewIAAkwAD291dHB1dERpcmVjdG9yeXEAfgAcTAAPc291cmNlRGlyZWN0b3J5cQB+ABx4cHQAQkM6XGRldmVsb3BcZ2l0XHR1dG9yaWFsc1xnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cdGFyZ2V0XHRlc3QtY2xhc3Nlc3QAPUM6XGRldmVsb3BcZ2l0XHR1dG9yaWFsc1xnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cc3JjXHRlc3Rcc2NhbGFzcQB+AHV0AEJDOlxkZXZlbG9wXGdpdFx0dXRvcmlhbHNcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHRhcmdldFx0ZXN0LWNsYXNzZXN0AEFDOlxkZXZlbG9wXGdpdFx0dXRvcmlhbHNcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHNyY1x0ZXN0XHJlc291cmNlc3VyAAJbQqzzF/gGCFTgAgAAeHAAAAAUHUqrk17SaqP+5ir/W8nR0tvD93Y= -C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\Recorder.scala -> -rO0ABXNyABB4c2J0aS5hcGkuU291cmNlFlpwRASfbtoCAAZJAAdhcGlIYXNoWgAIaGFzTWFjcm9MABhfaW50ZXJuYWxPbmx5X25hbWVIYXNoZXN0ACRMeHNidGkvYXBpL19pbnRlcm5hbE9ubHlfTmFtZUhhc2hlcztMAANhcGl0ABVMeHNidGkvYXBpL1NvdXJjZUFQSTtMAAtjb21waWxhdGlvbnQAF0x4c2J0aS9hcGkvQ29tcGlsYXRpb247WwAEaGFzaHQAAltCeHD3nMHWAHNyACJ4c2J0aS5hcGkuX2ludGVybmFsT25seV9OYW1lSGFzaGVzVNq+mfrU7EwCAAJbAA9pbXBsaWNpdE1lbWJlcnN0ACNbTHhzYnRpL2FwaS9faW50ZXJuYWxPbmx5X05hbWVIYXNoO1sADnJlZ3VsYXJNZW1iZXJzcQB+AAd4cHVyACNbTHhzYnRpLmFwaS5faW50ZXJuYWxPbmx5X05hbWVIYXNoO0lagLbdlov0AgAAeHAAAAAAdXEAfgAJAAAAAHNyABN4c2J0aS5hcGkuU291cmNlQVBJuV6n+SkjOKQCAAJbAAtkZWZpbml0aW9uc3QAF1tMeHNidGkvYXBpL0RlZmluaXRpb247WwAIcGFja2FnZXN0ABRbTHhzYnRpL2FwaS9QYWNrYWdlO3hwdXIAF1tMeHNidGkuYXBpLkRlZmluaXRpb247iMlc57TjXg4CAAB4cAAAAAFzcgATeHNidGkuYXBpLkNsYXNzTGlrZYM0HKHfsJdsAgAETAAOZGVmaW5pdGlvblR5cGV0ABpMeHNidGkvYXBpL0RlZmluaXRpb25UeXBlO1sAEHNhdmVkQW5ub3RhdGlvbnN0ABNbTGphdmEvbGFuZy9TdHJpbmc7TAAIc2VsZlR5cGV0ABBMeHNidGkvYXBpL0xhenk7TAAJc3RydWN0dXJlcQB+ABV4cgAheHNidGkuYXBpLlBhcmFtZXRlcml6ZWREZWZpbml0aW9u+RFusdVQPOICAAFbAA50eXBlUGFyYW1ldGVyc3QAGltMeHNidGkvYXBpL1R5cGVQYXJhbWV0ZXI7eHIAFHhzYnRpLmFwaS5EZWZpbml0aW9uhyob6HFC40YCAARMAAZhY2Nlc3N0ABJMeHNidGkvYXBpL0FjY2VzcztbAAthbm5vdGF0aW9uc3QAF1tMeHNidGkvYXBpL0Fubm90YXRpb247TAAJbW9kaWZpZXJzdAAVTHhzYnRpL2FwaS9Nb2RpZmllcnM7TAAEbmFtZXQAEkxqYXZhL2xhbmcvU3RyaW5nO3hwc3IAEHhzYnRpLmFwaS5QdWJsaWO6WD2ubC1gQgIAAHhyABB4c2J0aS5hcGkuQWNjZXNz3WKa+B1jMUgCAAB4cHVyABdbTHhzYnRpLmFwaS5Bbm5vdGF0aW9uO+uX6xkQ9o1IAgAAeHAAAAAAc3IAE3hzYnRpLmFwaS5Nb2RpZmllcnPHERMhaZzcJAIAAUIABWZsYWdzeHAAdAAIUmVjb3JkZXJ1cgAaW0x4c2J0aS5hcGkuVHlwZVBhcmFtZXRlcjvZbSYPKJ3ytgIAAHhwAAAAAH5yABh4c2J0aS5hcGkuRGVmaW5pdGlvblR5cGUAAAAAAAAAABIAAHhyAA5qYXZhLmxhbmcuRW51bQAAAAAAAAAAEgAAeHB0AAZNb2R1bGV1cgATW0xqYXZhLmxhbmcuU3RyaW5nO63SVufpHXtHAgAAeHAAAAACdAAQc2NhbGEuZGVwcmVjYXRlZHQAGnNjYWxhLmRlcHJlY2F0ZWRPdmVycmlkaW5nc3IAE3hzYnRpLlNhZmVMYXp5JEltcGw7kU8R9EVMyQIAA1oACGJpdG1hcCQwTAACX3R0ABJMamF2YS9sYW5nL09iamVjdDtMAARldmFsdAARTHNjYWxhL0Z1bmN0aW9uMDt4cgAWeHNidGkuYXBpLkFic3RyYWN0TGF6edN3tQFfu+egAgAAeHABc3IAE3hzYnRpLmFwaS5FbXB0eVR5cGW8/Z5GSTuJJAIAAHhyABR4c2J0aS5hcGkuU2ltcGxlVHlwZXJ4YoghI79AAgAAeHIADnhzYnRpLmFwaS5UeXBlP2rZIRZJqsoCAAB4cHBzcQB+ADABc3IAE3hzYnRpLmFwaS5TdHJ1Y3R1cmWpqvmAk2/YAAIAA0wACGRlY2xhcmVkcQB+ABVMAAlpbmhlcml0ZWRxAH4AFUwAB3BhcmVudHNxAH4AFXhxAH4AN3NxAH4AMAF1cQB+ABAAAAAAcHNxAH4AMAF1cQB+ABAAAAABc3IADXhzYnRpLmFwaS5EZWZSvp/ifLQ2aQIAAkwACnJldHVyblR5cGV0ABBMeHNidGkvYXBpL1R5cGU7WwAPdmFsdWVQYXJhbWV0ZXJzdAAaW0x4c2J0aS9hcGkvUGFyYW1ldGVyTGlzdDt4cQB+ABZxAH4AIHVxAH4AIQAAAAFzcgAUeHNidGkuYXBpLkFubm90YXRpb27eDoGi9lwKsgIAAlsACWFyZ3VtZW50c3QAH1tMeHNidGkvYXBpL0Fubm90YXRpb25Bcmd1bWVudDtMAARiYXNlcQB+AEF4cHVyAB9bTHhzYnRpLmFwaS5Bbm5vdGF0aW9uQXJndW1lbnQ7UZ2mjzglD3gCAAB4cAAAAAFzcgAceHNidGkuYXBpLkFubm90YXRpb25Bcmd1bWVudNZFsdgDGxd8AgACTAAEbmFtZXEAfgAcTAAFdmFsdWVxAH4AHHhwdAAAdAAqKCJtYWluIHNob3VsZCBub3QgYmUgb3ZlcnJpZGRlbiIsIjIuMTEuMCIpc3IAFHhzYnRpLmFwaS5Qcm9qZWN0aW9u89KNVOlFpC0CAAJMAAJpZHEAfgAcTAAGcHJlZml4dAAWTHhzYnRpL2FwaS9TaW1wbGVUeXBlO3hxAH4ANnQAFGRlcHJlY2F0ZWRPdmVycmlkaW5nc3IAE3hzYnRpLmFwaS5TaW5nbGV0b278p1/4z1bkRgIAAUwABHBhdGh0ABBMeHNidGkvYXBpL1BhdGg7eHEAfgA2c3IADnhzYnRpLmFwaS5QYXRomz1cCM6lJ4QCAAFbAApjb21wb25lbnRzdAAaW0x4c2J0aS9hcGkvUGF0aENvbXBvbmVudDt4cHVyABpbTHhzYnRpLmFwaS5QYXRoQ29tcG9uZW50O0PaCXQtZxZ0AgAAeHAAAAACc3IADHhzYnRpLmFwaS5JZJgybIs3U8RAAgABTAACaWRxAH4AHHhyABd4c2J0aS5hcGkuUGF0aENvbXBvbmVudF+aIlsuhp+8AgAAeHB0AAVzY2FsYXNyAA54c2J0aS5hcGkuVGhpc9sJ7abMWkBcAgAAeHEAfgBbc3EAfgAjAHQABG1haW51cQB+ACYAAAAAc3EAfgBOdAAEVW5pdHEAfgBUdXIAGltMeHNidGkuYXBpLlBhcmFtZXRlckxpc3Q79dM6HfKzcO4CAAB4cAAAAAFzcgAXeHNidGkuYXBpLlBhcmFtZXRlckxpc3TWxbwcZEl04wIAAloACmlzSW1wbGljaXRbAApwYXJhbWV0ZXJzdAAcW0x4c2J0aS9hcGkvTWV0aG9kUGFyYW1ldGVyO3hwAHVyABxbTHhzYnRpLmFwaS5NZXRob2RQYXJhbWV0ZXI7z7jFXaXdtW0CAAB4cAAAAAFzcgAZeHNidGkuYXBpLk1ldGhvZFBhcmFtZXRlch9FrhfTSbDqAgAEWgAKaGFzRGVmYXVsdEwACG1vZGlmaWVydAAdTHhzYnRpL2FwaS9QYXJhbWV0ZXJNb2RpZmllcjtMAARuYW1lcQB+ABxMAAN0cGVxAH4AQXhwAH5yABt4c2J0aS5hcGkuUGFyYW1ldGVyTW9kaWZpZXIAAAAAAAAAABIAAHhxAH4AKXQABVBsYWludAAEYXJnc3NyABd4c2J0aS5hcGkuUGFyYW1ldGVyaXplZBZs7mkDybt/AgACTAAIYmFzZVR5cGVxAH4AT1sADXR5cGVBcmd1bWVudHN0ABFbTHhzYnRpL2FwaS9UeXBlO3hxAH4ANnNxAH4ATnQABUFycmF5cQB+AFR1cgARW0x4c2J0aS5hcGkuVHlwZTt0/6Vae/npQQIAAHhwAAAAAXNxAH4ATnQABlN0cmluZ3NxAH4AUnNxAH4AVXVxAH4AWAAAAANzcQB+AFp0AARqYXZhc3EAfgBadAAEbGFuZ3EAfgBfcHNxAH4AMAF1cQB+AHgAAAAEc3EAfgBOdAADQXBwcQB+AFRzcQB+AE50AAtEZWxheWVkSW5pdHEAfgBUc3EAfgBOdAAGT2JqZWN0cQB+AHxzcQB+AE50AANBbnlxAH4AVHBwdXIAFFtMeHNidGkuYXBpLlBhY2thZ2U7WxMZN3CnJ6ECAAB4cAAAAABzcgAVeHNidGkuYXBpLkNvbXBpbGF0aW9u7frgw2rooEICAAJKAAlzdGFydFRpbWVbAAdvdXRwdXRzdAAaW0x4c2J0aS9hcGkvT3V0cHV0U2V0dGluZzt4cAAAAVTydcSmdXIAGltMeHNidGkuYXBpLk91dHB1dFNldHRpbmc7f2rC86eHpUICAAB4cAAAAAJzcgAXeHNidGkuYXBpLk91dHB1dFNldHRpbmd62ZpHdPsdewIAAkwAD291dHB1dERpcmVjdG9yeXEAfgAcTAAPc291cmNlRGlyZWN0b3J5cQB+ABx4cHQAQkM6XGRldmVsb3BcZ2l0XHR1dG9yaWFsc1xnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cdGFyZ2V0XHRlc3QtY2xhc3Nlc3QAPUM6XGRldmVsb3BcZ2l0XHR1dG9yaWFsc1xnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cc3JjXHRlc3Rcc2NhbGFzcQB+AJR0AEJDOlxkZXZlbG9wXGdpdFx0dXRvcmlhbHNcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHRhcmdldFx0ZXN0LWNsYXNzZXN0AEFDOlxkZXZlbG9wXGdpdFx0dXRvcmlhbHNcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHNyY1x0ZXN0XHJlc291cmNlc3VyAAJbQqzzF/gGCFTgAgAAeHAAAAAUZn2oqdcS+YjtexS9+nspPHasO2E= -external apis: -0 items -source infos: -4 items -C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\Engine.scala -> -AAAAAAAAAAA= -C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\IDEPathHelper.scala -> -AAAAAAAAAAA= -C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\org\baeldung\RecordedSimulation.scala -> -AAAAAAAAAAA= -C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\Recorder.scala -> -AAAAAAAAAAA= -compilations: -17 items -00 -> rO0ABXNyABV4c2J0aS5hcGkuQ29tcGlsYXRpb27t+uDDauigQgIAAkoACXN0YXJ0VGltZVsAB291dHB1dHN0ABpbTHhzYnRpL2FwaS9PdXRwdXRTZXR0aW5nO3hwAAABVOxQus91cgAaW0x4c2J0aS5hcGkuT3V0cHV0U2V0dGluZzt/asLzp4elQgIAAHhwAAAAAnNyABd4c2J0aS5hcGkuT3V0cHV0U2V0dGluZ3rZmkd0+x17AgACTAAPb3V0cHV0RGlyZWN0b3J5dAASTGphdmEvbGFuZy9TdHJpbmc7TAAPc291cmNlRGlyZWN0b3J5cQB+AAZ4cHQAUUM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cdGFyZ2V0XHRlc3QtY2xhc3Nlc3QATEM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cc3JjXHRlc3Rcc2NhbGFzcQB+AAV0AFFDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHRhcmdldFx0ZXN0LWNsYXNzZXN0AFBDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHNyY1x0ZXN0XHJlc291cmNlcw== -01 -> rO0ABXNyABV4c2J0aS5hcGkuQ29tcGlsYXRpb27t+uDDauigQgIAAkoACXN0YXJ0VGltZVsAB291dHB1dHN0ABpbTHhzYnRpL2FwaS9PdXRwdXRTZXR0aW5nO3hwAAABVO1Iw051cgAaW0x4c2J0aS5hcGkuT3V0cHV0U2V0dGluZzt/asLzp4elQgIAAHhwAAAAAnNyABd4c2J0aS5hcGkuT3V0cHV0U2V0dGluZ3rZmkd0+x17AgACTAAPb3V0cHV0RGlyZWN0b3J5dAASTGphdmEvbGFuZy9TdHJpbmc7TAAPc291cmNlRGlyZWN0b3J5cQB+AAZ4cHQAUUM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cdGFyZ2V0XHRlc3QtY2xhc3Nlc3QATEM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cc3JjXHRlc3Rcc2NhbGFzcQB+AAV0AFFDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHRhcmdldFx0ZXN0LWNsYXNzZXN0AFBDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHNyY1x0ZXN0XHJlc291cmNlcw== -02 -> rO0ABXNyABV4c2J0aS5hcGkuQ29tcGlsYXRpb27t+uDDauigQgIAAkoACXN0YXJ0VGltZVsAB291dHB1dHN0ABpbTHhzYnRpL2FwaS9PdXRwdXRTZXR0aW5nO3hwAAABVO1LJxV1cgAaW0x4c2J0aS5hcGkuT3V0cHV0U2V0dGluZzt/asLzp4elQgIAAHhwAAAAAnNyABd4c2J0aS5hcGkuT3V0cHV0U2V0dGluZ3rZmkd0+x17AgACTAAPb3V0cHV0RGlyZWN0b3J5dAASTGphdmEvbGFuZy9TdHJpbmc7TAAPc291cmNlRGlyZWN0b3J5cQB+AAZ4cHQAUUM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cdGFyZ2V0XHRlc3QtY2xhc3Nlc3QATEM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cc3JjXHRlc3Rcc2NhbGFzcQB+AAV0AFFDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHRhcmdldFx0ZXN0LWNsYXNzZXN0AFBDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHNyY1x0ZXN0XHJlc291cmNlcw== -03 -> rO0ABXNyABV4c2J0aS5hcGkuQ29tcGlsYXRpb27t+uDDauigQgIAAkoACXN0YXJ0VGltZVsAB291dHB1dHN0ABpbTHhzYnRpL2FwaS9PdXRwdXRTZXR0aW5nO3hwAAABVO1LOZV1cgAaW0x4c2J0aS5hcGkuT3V0cHV0U2V0dGluZzt/asLzp4elQgIAAHhwAAAAAnNyABd4c2J0aS5hcGkuT3V0cHV0U2V0dGluZ3rZmkd0+x17AgACTAAPb3V0cHV0RGlyZWN0b3J5dAASTGphdmEvbGFuZy9TdHJpbmc7TAAPc291cmNlRGlyZWN0b3J5cQB+AAZ4cHQAUUM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cdGFyZ2V0XHRlc3QtY2xhc3Nlc3QATEM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cc3JjXHRlc3Rcc2NhbGFzcQB+AAV0AFFDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHRhcmdldFx0ZXN0LWNsYXNzZXN0AFBDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHNyY1x0ZXN0XHJlc291cmNlcw== -04 -> rO0ABXNyABV4c2J0aS5hcGkuQ29tcGlsYXRpb27t+uDDauigQgIAAkoACXN0YXJ0VGltZVsAB291dHB1dHN0ABpbTHhzYnRpL2FwaS9PdXRwdXRTZXR0aW5nO3hwAAABVO1QxNd1cgAaW0x4c2J0aS5hcGkuT3V0cHV0U2V0dGluZzt/asLzp4elQgIAAHhwAAAAAnNyABd4c2J0aS5hcGkuT3V0cHV0U2V0dGluZ3rZmkd0+x17AgACTAAPb3V0cHV0RGlyZWN0b3J5dAASTGphdmEvbGFuZy9TdHJpbmc7TAAPc291cmNlRGlyZWN0b3J5cQB+AAZ4cHQAUUM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cdGFyZ2V0XHRlc3QtY2xhc3Nlc3QATEM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cc3JjXHRlc3Rcc2NhbGFzcQB+AAV0AFFDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHRhcmdldFx0ZXN0LWNsYXNzZXN0AFBDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHNyY1x0ZXN0XHJlc291cmNlcw== -05 -> rO0ABXNyABV4c2J0aS5hcGkuQ29tcGlsYXRpb27t+uDDauigQgIAAkoACXN0YXJ0VGltZVsAB291dHB1dHN0ABpbTHhzYnRpL2FwaS9PdXRwdXRTZXR0aW5nO3hwAAABVO1U4651cgAaW0x4c2J0aS5hcGkuT3V0cHV0U2V0dGluZzt/asLzp4elQgIAAHhwAAAAAnNyABd4c2J0aS5hcGkuT3V0cHV0U2V0dGluZ3rZmkd0+x17AgACTAAPb3V0cHV0RGlyZWN0b3J5dAASTGphdmEvbGFuZy9TdHJpbmc7TAAPc291cmNlRGlyZWN0b3J5cQB+AAZ4cHQAUUM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cdGFyZ2V0XHRlc3QtY2xhc3Nlc3QATEM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cc3JjXHRlc3Rcc2NhbGFzcQB+AAV0AFFDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHRhcmdldFx0ZXN0LWNsYXNzZXN0AFBDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHNyY1x0ZXN0XHJlc291cmNlcw== -06 -> rO0ABXNyABV4c2J0aS5hcGkuQ29tcGlsYXRpb27t+uDDauigQgIAAkoACXN0YXJ0VGltZVsAB291dHB1dHN0ABpbTHhzYnRpL2FwaS9PdXRwdXRTZXR0aW5nO3hwAAABVO1kjrl1cgAaW0x4c2J0aS5hcGkuT3V0cHV0U2V0dGluZzt/asLzp4elQgIAAHhwAAAAAnNyABd4c2J0aS5hcGkuT3V0cHV0U2V0dGluZ3rZmkd0+x17AgACTAAPb3V0cHV0RGlyZWN0b3J5dAASTGphdmEvbGFuZy9TdHJpbmc7TAAPc291cmNlRGlyZWN0b3J5cQB+AAZ4cHQAUUM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cdGFyZ2V0XHRlc3QtY2xhc3Nlc3QATEM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cc3JjXHRlc3Rcc2NhbGFzcQB+AAV0AFFDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHRhcmdldFx0ZXN0LWNsYXNzZXN0AFBDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHNyY1x0ZXN0XHJlc291cmNlcw== -07 -> rO0ABXNyABV4c2J0aS5hcGkuQ29tcGlsYXRpb27t+uDDauigQgIAAkoACXN0YXJ0VGltZVsAB291dHB1dHN0ABpbTHhzYnRpL2FwaS9PdXRwdXRTZXR0aW5nO3hwAAABVO1koUh1cgAaW0x4c2J0aS5hcGkuT3V0cHV0U2V0dGluZzt/asLzp4elQgIAAHhwAAAAAnNyABd4c2J0aS5hcGkuT3V0cHV0U2V0dGluZ3rZmkd0+x17AgACTAAPb3V0cHV0RGlyZWN0b3J5dAASTGphdmEvbGFuZy9TdHJpbmc7TAAPc291cmNlRGlyZWN0b3J5cQB+AAZ4cHQAUUM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cdGFyZ2V0XHRlc3QtY2xhc3Nlc3QATEM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cc3JjXHRlc3Rcc2NhbGFzcQB+AAV0AFFDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHRhcmdldFx0ZXN0LWNsYXNzZXN0AFBDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHNyY1x0ZXN0XHJlc291cmNlcw== -08 -> rO0ABXNyABV4c2J0aS5hcGkuQ29tcGlsYXRpb27t+uDDauigQgIAAkoACXN0YXJ0VGltZVsAB291dHB1dHN0ABpbTHhzYnRpL2FwaS9PdXRwdXRTZXR0aW5nO3hwAAABVO1kwGd1cgAaW0x4c2J0aS5hcGkuT3V0cHV0U2V0dGluZzt/asLzp4elQgIAAHhwAAAAAnNyABd4c2J0aS5hcGkuT3V0cHV0U2V0dGluZ3rZmkd0+x17AgACTAAPb3V0cHV0RGlyZWN0b3J5dAASTGphdmEvbGFuZy9TdHJpbmc7TAAPc291cmNlRGlyZWN0b3J5cQB+AAZ4cHQAUUM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cdGFyZ2V0XHRlc3QtY2xhc3Nlc3QATEM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cc3JjXHRlc3Rcc2NhbGFzcQB+AAV0AFFDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHRhcmdldFx0ZXN0LWNsYXNzZXN0AFBDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHNyY1x0ZXN0XHJlc291cmNlcw== -09 -> rO0ABXNyABV4c2J0aS5hcGkuQ29tcGlsYXRpb27t+uDDauigQgIAAkoACXN0YXJ0VGltZVsAB291dHB1dHN0ABpbTHhzYnRpL2FwaS9PdXRwdXRTZXR0aW5nO3hwAAABVO1lpUV1cgAaW0x4c2J0aS5hcGkuT3V0cHV0U2V0dGluZzt/asLzp4elQgIAAHhwAAAAAnNyABd4c2J0aS5hcGkuT3V0cHV0U2V0dGluZ3rZmkd0+x17AgACTAAPb3V0cHV0RGlyZWN0b3J5dAASTGphdmEvbGFuZy9TdHJpbmc7TAAPc291cmNlRGlyZWN0b3J5cQB+AAZ4cHQAUUM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cdGFyZ2V0XHRlc3QtY2xhc3Nlc3QATEM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cc3JjXHRlc3Rcc2NhbGFzcQB+AAV0AFFDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHRhcmdldFx0ZXN0LWNsYXNzZXN0AFBDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHNyY1x0ZXN0XHJlc291cmNlcw== -10 -> rO0ABXNyABV4c2J0aS5hcGkuQ29tcGlsYXRpb27t+uDDauigQgIAAkoACXN0YXJ0VGltZVsAB291dHB1dHN0ABpbTHhzYnRpL2FwaS9PdXRwdXRTZXR0aW5nO3hwAAABVO1oYjh1cgAaW0x4c2J0aS5hcGkuT3V0cHV0U2V0dGluZzt/asLzp4elQgIAAHhwAAAAAnNyABd4c2J0aS5hcGkuT3V0cHV0U2V0dGluZ3rZmkd0+x17AgACTAAPb3V0cHV0RGlyZWN0b3J5dAASTGphdmEvbGFuZy9TdHJpbmc7TAAPc291cmNlRGlyZWN0b3J5cQB+AAZ4cHQAUUM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cdGFyZ2V0XHRlc3QtY2xhc3Nlc3QATEM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cc3JjXHRlc3Rcc2NhbGFzcQB+AAV0AFFDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHRhcmdldFx0ZXN0LWNsYXNzZXN0AFBDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHNyY1x0ZXN0XHJlc291cmNlcw== -11 -> rO0ABXNyABV4c2J0aS5hcGkuQ29tcGlsYXRpb27t+uDDauigQgIAAkoACXN0YXJ0VGltZVsAB291dHB1dHN0ABpbTHhzYnRpL2FwaS9PdXRwdXRTZXR0aW5nO3hwAAABVO1ofWt1cgAaW0x4c2J0aS5hcGkuT3V0cHV0U2V0dGluZzt/asLzp4elQgIAAHhwAAAAAnNyABd4c2J0aS5hcGkuT3V0cHV0U2V0dGluZ3rZmkd0+x17AgACTAAPb3V0cHV0RGlyZWN0b3J5dAASTGphdmEvbGFuZy9TdHJpbmc7TAAPc291cmNlRGlyZWN0b3J5cQB+AAZ4cHQAUUM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cdGFyZ2V0XHRlc3QtY2xhc3Nlc3QATEM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cc3JjXHRlc3Rcc2NhbGFzcQB+AAV0AFFDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHRhcmdldFx0ZXN0LWNsYXNzZXN0AFBDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHNyY1x0ZXN0XHJlc291cmNlcw== -12 -> rO0ABXNyABV4c2J0aS5hcGkuQ29tcGlsYXRpb27t+uDDauigQgIAAkoACXN0YXJ0VGltZVsAB291dHB1dHN0ABpbTHhzYnRpL2FwaS9PdXRwdXRTZXR0aW5nO3hwAAABVO1px4J1cgAaW0x4c2J0aS5hcGkuT3V0cHV0U2V0dGluZzt/asLzp4elQgIAAHhwAAAAAnNyABd4c2J0aS5hcGkuT3V0cHV0U2V0dGluZ3rZmkd0+x17AgACTAAPb3V0cHV0RGlyZWN0b3J5dAASTGphdmEvbGFuZy9TdHJpbmc7TAAPc291cmNlRGlyZWN0b3J5cQB+AAZ4cHQAUUM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cdGFyZ2V0XHRlc3QtY2xhc3Nlc3QATEM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cc3JjXHRlc3Rcc2NhbGFzcQB+AAV0AFFDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHRhcmdldFx0ZXN0LWNsYXNzZXN0AFBDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHNyY1x0ZXN0XHJlc291cmNlcw== -13 -> rO0ABXNyABV4c2J0aS5hcGkuQ29tcGlsYXRpb27t+uDDauigQgIAAkoACXN0YXJ0VGltZVsAB291dHB1dHN0ABpbTHhzYnRpL2FwaS9PdXRwdXRTZXR0aW5nO3hwAAABVO1q7U91cgAaW0x4c2J0aS5hcGkuT3V0cHV0U2V0dGluZzt/asLzp4elQgIAAHhwAAAAAnNyABd4c2J0aS5hcGkuT3V0cHV0U2V0dGluZ3rZmkd0+x17AgACTAAPb3V0cHV0RGlyZWN0b3J5dAASTGphdmEvbGFuZy9TdHJpbmc7TAAPc291cmNlRGlyZWN0b3J5cQB+AAZ4cHQAUUM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cdGFyZ2V0XHRlc3QtY2xhc3Nlc3QATEM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cc3JjXHRlc3Rcc2NhbGFzcQB+AAV0AFFDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHRhcmdldFx0ZXN0LWNsYXNzZXN0AFBDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHNyY1x0ZXN0XHJlc291cmNlcw== -14 -> rO0ABXNyABV4c2J0aS5hcGkuQ29tcGlsYXRpb27t+uDDauigQgIAAkoACXN0YXJ0VGltZVsAB291dHB1dHN0ABpbTHhzYnRpL2FwaS9PdXRwdXRTZXR0aW5nO3hwAAABVPJoEOF1cgAaW0x4c2J0aS5hcGkuT3V0cHV0U2V0dGluZzt/asLzp4elQgIAAHhwAAAAAnNyABd4c2J0aS5hcGkuT3V0cHV0U2V0dGluZ3rZmkd0+x17AgACTAAPb3V0cHV0RGlyZWN0b3J5dAASTGphdmEvbGFuZy9TdHJpbmc7TAAPc291cmNlRGlyZWN0b3J5cQB+AAZ4cHQAUUM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cdGFyZ2V0XHRlc3QtY2xhc3Nlc3QATEM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cc3JjXHRlc3Rcc2NhbGFzcQB+AAV0AFFDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHRhcmdldFx0ZXN0LWNsYXNzZXN0AFBDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHNyY1x0ZXN0XHJlc291cmNlcw== -15 -> rO0ABXNyABV4c2J0aS5hcGkuQ29tcGlsYXRpb27t+uDDauigQgIAAkoACXN0YXJ0VGltZVsAB291dHB1dHN0ABpbTHhzYnRpL2FwaS9PdXRwdXRTZXR0aW5nO3hwAAABVPJ0QXt1cgAaW0x4c2J0aS5hcGkuT3V0cHV0U2V0dGluZzt/asLzp4elQgIAAHhwAAAAAnNyABd4c2J0aS5hcGkuT3V0cHV0U2V0dGluZ3rZmkd0+x17AgACTAAPb3V0cHV0RGlyZWN0b3J5dAASTGphdmEvbGFuZy9TdHJpbmc7TAAPc291cmNlRGlyZWN0b3J5cQB+AAZ4cHQAQkM6XGRldmVsb3BcZ2l0XHR1dG9yaWFsc1xnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cdGFyZ2V0XHRlc3QtY2xhc3Nlc3QAPUM6XGRldmVsb3BcZ2l0XHR1dG9yaWFsc1xnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cc3JjXHRlc3Rcc2NhbGFzcQB+AAV0AEJDOlxkZXZlbG9wXGdpdFx0dXRvcmlhbHNcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHRhcmdldFx0ZXN0LWNsYXNzZXN0AEFDOlxkZXZlbG9wXGdpdFx0dXRvcmlhbHNcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHNyY1x0ZXN0XHJlc291cmNlcw== -16 -> rO0ABXNyABV4c2J0aS5hcGkuQ29tcGlsYXRpb27t+uDDauigQgIAAkoACXN0YXJ0VGltZVsAB291dHB1dHN0ABpbTHhzYnRpL2FwaS9PdXRwdXRTZXR0aW5nO3hwAAABVPJ1xKZ1cgAaW0x4c2J0aS5hcGkuT3V0cHV0U2V0dGluZzt/asLzp4elQgIAAHhwAAAAAnNyABd4c2J0aS5hcGkuT3V0cHV0U2V0dGluZ3rZmkd0+x17AgACTAAPb3V0cHV0RGlyZWN0b3J5dAASTGphdmEvbGFuZy9TdHJpbmc7TAAPc291cmNlRGlyZWN0b3J5cQB+AAZ4cHQAQkM6XGRldmVsb3BcZ2l0XHR1dG9yaWFsc1xnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cdGFyZ2V0XHRlc3QtY2xhc3Nlc3QAPUM6XGRldmVsb3BcZ2l0XHR1dG9yaWFsc1xnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cc3JjXHRlc3Rcc2NhbGFzcQB+AAV0AEJDOlxkZXZlbG9wXGdpdFx0dXRvcmlhbHNcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHRhcmdldFx0ZXN0LWNsYXNzZXN0AEFDOlxkZXZlbG9wXGdpdFx0dXRvcmlhbHNcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHNyY1x0ZXN0XHJlc291cmNlcw== diff --git a/gatling-loadtest-demo/.classpath b/gatling-loadtest-demo/.classpath deleted file mode 100644 index 6026072109..0000000000 --- a/gatling-loadtest-demo/.classpath +++ /dev/null @@ -1,32 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/gatling-loadtest-demo/.project b/gatling-loadtest-demo/.project deleted file mode 100644 index a5e3b774e0..0000000000 --- a/gatling-loadtest-demo/.project +++ /dev/null @@ -1,24 +0,0 @@ - - - gatling-loadtest-demo - - - - - - org.scala-ide.sdt.core.scalabuilder - - - - - org.eclipse.m2e.core.maven2Builder - - - - - - org.scala-ide.sdt.core.scalanature - org.eclipse.jdt.core.javanature - org.eclipse.m2e.core.maven2Nature - - diff --git a/gatling-loadtest-demo/pom.xml b/gatling-loadtest-demo/pom.xml deleted file mode 100644 index f5ed1d7de7..0000000000 --- a/gatling-loadtest-demo/pom.xml +++ /dev/null @@ -1,113 +0,0 @@ - - - 4.0.0 - org.baeldung - gatling-loadtest-demo - 1.0-SNAPSHOT - - - 1.8 - 1.8 - 2.11.7 - UTF-8 - - 2.2.0 - - 3.2.2 - - - - - - io.gatling - gatling-app - ${gatling.version} - - - io.gatling - gatling-recorder - ${gatling.version} - - - io.gatling.highcharts - gatling-charts-highcharts - ${gatling.version} - - - org.scala-lang - scala-library - ${scala.version} - - - - - - - io.gatling.highcharts - gatling-charts-highcharts - - - io.gatling - gatling-app - - - io.gatling - gatling-recorder - - - org.scala-lang - scala-library - - - - - src/test/scala - - - - net.alchim31.maven - scala-maven-plugin - ${scala-maven-plugin.version} - - - - - - net.alchim31.maven - scala-maven-plugin - - - - testCompile - - - - -Ybackend:GenBCode - -Ydelambdafy:method - -target:jvm-1.8 - -deprecation - -feature - -unchecked - -language:implicitConversions - -language:postfixOps - - - - - - - - io.gatling - gatling-maven-plugin - ${gatling.version} - - - test - execute - - - - - - diff --git a/gatling-loadtest-demo/src/test/resources/gatling.conf b/gatling-loadtest-demo/src/test/resources/gatling.conf deleted file mode 100644 index 8bfa0ed366..0000000000 --- a/gatling-loadtest-demo/src/test/resources/gatling.conf +++ /dev/null @@ -1,127 +0,0 @@ -######################### -# Gatling Configuration # -######################### - -# This file contains all the settings configurable for Gatling with their default values - -gatling { - core { - #outputDirectoryBaseName = "" # The prefix for each simulation result folder (then suffixed by the report generation timestamp) - #runDescription = "" # The description for this simulation run, displayed in each report - #encoding = "utf-8" # Encoding to use throughout Gatling for file and string manipulation - #simulationClass = "" # The FQCN of the simulation to run (when used in conjunction with noReports, the simulation for which assertions will be validated) - #mute = false # When set to true, don't ask for simulation name nor run description (currently only used by Gatling SBT plugin) - #elFileBodiesCacheMaxCapacity = 200 # Cache size for request body EL templates, set to 0 to disable - #rawFileBodiesCacheMaxCapacity = 200 # Cache size for request body Raw templates, set to 0 to disable - #rawFileBodiesInMemoryMaxSize = 1000 # Below this limit, raw file bodies will be cached in memory - - extract { - regex { - #cacheMaxCapacity = 200 # Cache size for the compiled regexes, set to 0 to disable caching - } - xpath { - #cacheMaxCapacity = 200 # Cache size for the compiled XPath queries, set to 0 to disable caching - } - jsonPath { - #cacheMaxCapacity = 200 # Cache size for the compiled jsonPath queries, set to 0 to disable caching - #preferJackson = false # When set to true, prefer Jackson over Boon for JSON-related operations - } - css { - #cacheMaxCapacity = 200 # Cache size for the compiled CSS selectors queries, set to 0 to disable caching - } - } - - directory { - #data = user-files/data # Folder where user's data (e.g. files used by Feeders) is located - #bodies = user-files/bodies # Folder where bodies are located - #simulations = user-files/simulations # Folder where the bundle's simulations are located - #reportsOnly = "" # If set, name of report folder to look for in order to generate its report - #binaries = "" # If set, name of the folder where compiles classes are located: Defaults to GATLING_HOME/target. - #results = results # Name of the folder where all reports folder are located - } - } - charting { - #noReports = false # When set to true, don't generate HTML reports - #maxPlotPerSeries = 1000 # Number of points per graph in Gatling reports - #useGroupDurationMetric = false # Switch group timings from cumulated response time to group duration. - indicators { - #lowerBound = 800 # Lower bound for the requests' response time to track in the reports and the console summary - #higherBound = 1200 # Higher bound for the requests' response time to track in the reports and the console summary - #percentile1 = 50 # Value for the 1st percentile to track in the reports, the console summary and Graphite - #percentile2 = 75 # Value for the 2nd percentile to track in the reports, the console summary and Graphite - #percentile3 = 95 # Value for the 3rd percentile to track in the reports, the console summary and Graphite - #percentile4 = 99 # Value for the 4th percentile to track in the reports, the console summary and Graphite - } - } - http { - #fetchedCssCacheMaxCapacity = 200 # Cache size for CSS parsed content, set to 0 to disable - #fetchedHtmlCacheMaxCapacity = 200 # Cache size for HTML parsed content, set to 0 to disable - #perUserCacheMaxCapacity = 200 # Per virtual user cache size, set to 0 to disable - #warmUpUrl = "http://gatling.io" # The URL to use to warm-up the HTTP stack (blank means disabled) - #enableGA = true # Very light Google Analytics, please support - ssl { - keyStore { - #type = "" # Type of SSLContext's KeyManagers store - #file = "" # Location of SSLContext's KeyManagers store - #password = "" # Password for SSLContext's KeyManagers store - #algorithm = "" # Algorithm used SSLContext's KeyManagers store - } - trustStore { - #type = "" # Type of SSLContext's TrustManagers store - #file = "" # Location of SSLContext's TrustManagers store - #password = "" # Password for SSLContext's TrustManagers store - #algorithm = "" # Algorithm used by SSLContext's TrustManagers store - } - } - ahc { - #keepAlive = true # Allow pooling HTTP connections (keep-alive header automatically added) - #connectTimeout = 60000 # Timeout when establishing a connection - #pooledConnectionIdleTimeout = 60000 # Timeout when a connection stays unused in the pool - #readTimeout = 60000 # Timeout when a used connection stays idle - #maxRetry = 2 # Number of times that a request should be tried again - #requestTimeout = 60000 # Timeout of the requests - #acceptAnyCertificate = true # When set to true, doesn't validate SSL certificates - #httpClientCodecMaxInitialLineLength = 4096 # Maximum length of the initial line of the response (e.g. "HTTP/1.0 200 OK") - #httpClientCodecMaxHeaderSize = 8192 # Maximum size, in bytes, of each request's headers - #httpClientCodecMaxChunkSize = 8192 # Maximum length of the content or each chunk - #webSocketMaxFrameSize = 10240000 # Maximum frame payload size - #sslEnabledProtocols = [TLSv1.2, TLSv1.1, TLSv1] # Array of enabled protocols for HTTPS, if empty use the JDK defaults - #sslEnabledCipherSuites = [] # Array of enabled cipher suites for HTTPS, if empty use the JDK defaults - #sslSessionCacheSize = 0 # SSLSession cache size, set to 0 to use JDK's default - #sslSessionTimeout = 0 # SSLSession timeout in seconds, set to 0 to use JDK's default (24h) - #useOpenSsl = false # if OpenSSL should be used instead of JSSE (requires tcnative jar) - #useNativeTransport = false # if native transport should be used instead of Java NIO (requires netty-transport-native-epoll, currently Linux only) - #usePooledMemory = true # if Gatling should use pooled memory - #tcpNoDelay = true - #soReuseAddress = false - #soLinger = -1 - #soSndBuf = -1 - #soRcvBuf = -1 - } - dns { - #queryTimeout = 5000 # Timeout of each DNS query in millis - #maxQueriesPerResolve = 3 # Maximum allowed number of DNS queries for a given name resolution - } - } - data { - #writers = [console, file] # The list of DataWriters to which Gatling write simulation data (currently supported : console, file, graphite, jdbc) - console { - #light = false # When set to true, displays a light version without detailed request stats - } - file { - #bufferSize = 8192 # FileDataWriter's internal data buffer size, in bytes - } - leak { - #noActivityTimeout = 30 # Period, in seconds, for which Gatling may have no activity before considering a leak may be happening - } - graphite { - #light = false # only send the all* stats - #host = "localhost" # The host where the Carbon server is located - #port = 2003 # The port to which the Carbon server listens to (2003 is default for plaintext, 2004 is default for pickle) - #protocol = "tcp" # The protocol used to send data to Carbon (currently supported : "tcp", "udp") - #rootPathPrefix = "gatling" # The common prefix of all metrics sent to Graphite - #bufferSize = 8192 # GraphiteDataWriter's internal data buffer size, in bytes - #writeInterval = 1 # GraphiteDataWriter's write interval, in seconds - } - } -} diff --git a/gatling-loadtest-demo/src/test/resources/logback.xml b/gatling-loadtest-demo/src/test/resources/logback.xml deleted file mode 100644 index a8fe714e7d..0000000000 --- a/gatling-loadtest-demo/src/test/resources/logback.xml +++ /dev/null @@ -1,22 +0,0 @@ - - - - - - %d{HH:mm:ss.SSS} [%-5level] %logger{15} - %msg%n%rEx - false - - - - - - - - - - - - - - - diff --git a/gatling-loadtest-demo/src/test/resources/recorder.conf b/gatling-loadtest-demo/src/test/resources/recorder.conf deleted file mode 100644 index f4ba60310b..0000000000 --- a/gatling-loadtest-demo/src/test/resources/recorder.conf +++ /dev/null @@ -1,57 +0,0 @@ -recorder { - core { - className=RecordedSimulation - encoding=utf-8 - harFilePath="" - headless=false - mode=Proxy - outputFolder="C:\\develop\\workspaces\\vjportalWorkspace\\gatling-loadtest-demo\\src\\test\\scala" - package="org.baeldung" - saveConfig=true - thresholdForPauseCreation=100 - } - filters { - blacklist=[ - ".*\\.css", - ".*\\.js", - ".*\\.ico" - ] - filterStrategy=BlacklistFirst - whitelist=[] - } - http { - automaticReferer=true - checkResponseBodies=false - followRedirect=true - inferHtmlResources=true - removeCacheHeaders=true - } - netty { - maxChunkSize=8192 - maxContentLength=100000000 - maxHeaderSize=20000 - maxInitialLineLength=10000 - } - proxy { - https { - certificateAuthority { - certificatePath="" - privateKeyPath="" - } - keyStore { - password="" - path="" - type=JKS - } - mode=SelfSignedCertificate - } - outgoing { - host="" - password="" - port=0 - sslPort=0 - username="" - } - port=8000 - } -} diff --git a/gatling-loadtest-demo/src/test/scala/Engine.scala b/gatling-loadtest-demo/src/test/scala/Engine.scala deleted file mode 100644 index 0ac3abe948..0000000000 --- a/gatling-loadtest-demo/src/test/scala/Engine.scala +++ /dev/null @@ -1,13 +0,0 @@ -import io.gatling.app.Gatling -import io.gatling.core.config.GatlingPropertiesBuilder - -object Engine extends App { - - val props = new GatlingPropertiesBuilder - props.dataDirectory(IDEPathHelper.dataDirectory.toString) - props.resultsDirectory(IDEPathHelper.resultsDirectory.toString) - props.bodiesDirectory(IDEPathHelper.bodiesDirectory.toString) - props.binariesDirectory(IDEPathHelper.mavenBinariesDirectory.toString) - - Gatling.fromMap(props.build) -} diff --git a/gatling-loadtest-demo/src/test/scala/IDEPathHelper.scala b/gatling-loadtest-demo/src/test/scala/IDEPathHelper.scala deleted file mode 100644 index 32c986a072..0000000000 --- a/gatling-loadtest-demo/src/test/scala/IDEPathHelper.scala +++ /dev/null @@ -1,22 +0,0 @@ -import java.nio.file.Path - -import io.gatling.commons.util.PathHelper._ - -object IDEPathHelper { - - val gatlingConfUrl: Path = getClass.getClassLoader.getResource("gatling.conf").toURI - val projectRootDir = gatlingConfUrl.ancestor(3) - - val mavenSourcesDirectory = projectRootDir / "src" / "test" / "scala" - val mavenResourcesDirectory = projectRootDir / "src" / "test" / "resources" - val mavenTargetDirectory = projectRootDir / "target" - val mavenBinariesDirectory = mavenTargetDirectory / "test-classes" - - val dataDirectory = mavenResourcesDirectory / "data" - val bodiesDirectory = mavenResourcesDirectory / "bodies" - - val recorderOutputDirectory = mavenSourcesDirectory - val resultsDirectory = mavenTargetDirectory / "gatling" - - val recorderConfigFile = mavenResourcesDirectory / "recorder.conf" -} diff --git a/gatling-loadtest-demo/src/test/scala/Recorder.scala b/gatling-loadtest-demo/src/test/scala/Recorder.scala deleted file mode 100644 index 1372da6d41..0000000000 --- a/gatling-loadtest-demo/src/test/scala/Recorder.scala +++ /dev/null @@ -1,12 +0,0 @@ -import io.gatling.recorder.GatlingRecorder -import io.gatling.recorder.config.RecorderPropertiesBuilder - -object Recorder extends App { - - val props = new RecorderPropertiesBuilder - props.simulationOutputFolder(IDEPathHelper.recorderOutputDirectory.toString) - props.simulationPackage("org.baeldung") - props.bodiesFolder(IDEPathHelper.bodiesDirectory.toString) - - GatlingRecorder.fromMap(props.build, Some(IDEPathHelper.recorderConfigFile)) -} diff --git a/gatling-loadtest-demo/src/test/scala/org/baeldung/RecordedSimulation.scala b/gatling-loadtest-demo/src/test/scala/org/baeldung/RecordedSimulation.scala deleted file mode 100644 index 553e17e56f..0000000000 --- a/gatling-loadtest-demo/src/test/scala/org/baeldung/RecordedSimulation.scala +++ /dev/null @@ -1,46 +0,0 @@ -package org.baeldung - -import scala.concurrent.duration._ - -import io.gatling.core.Predef._ -import io.gatling.http.Predef._ -import io.gatling.jdbc.Predef._ - -class RecordedSimulation extends Simulation { - - val httpProtocol = http - .baseURL("http://computer-database.gatling.io") - .inferHtmlResources(BlackList(""".*\.css""", """.*\.js""", """.*\.ico"""), WhiteList()) - .acceptHeader("text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8") - .acceptEncodingHeader("gzip, deflate") - .acceptLanguageHeader("it-IT,it;q=0.8,en-US;q=0.5,en;q=0.3") - .userAgentHeader("Mozilla/5.0 (Windows NT 10.0; WOW64; rv:46.0) Gecko/20100101 Firefox/46.0") - - - - - - val scn = scenario("RecordedSimulation") - .exec(http("request_0") - .get("/")) - .pause(5) - .exec(http("request_1") - .get("/computers?f=amstrad")) - .pause(4) - .exec(http("request_2") - .get("/computers/412")) - .pause(2) - .exec(http("request_3") - .get("/")) - .pause(2) - .exec(http("request_4") - .get("/computers?p=1")) - .pause(1) - .exec(http("request_5") - .get("/computers?p=2")) - .pause(2) - .exec(http("request_6") - .get("/computers?p=3")) - - setUp(scn.inject(atOnceUsers(1))).protocols(httpProtocol) -} \ No newline at end of file From 737848c9bed07ff8b1183574e13be5601ac8bf58 Mon Sep 17 00:00:00 2001 From: Ivan Paolillo Date: Wed, 8 Jun 2016 16:49:16 +0200 Subject: [PATCH 17/26] Gatling load test demo --- gatling/pom.xml | 110 +++++++++++++++ gatling/src/test/resources/gatling.conf | 127 ++++++++++++++++++ gatling/src/test/resources/logback.xml | 22 +++ gatling/src/test/resources/recorder.conf | 53 ++++++++ gatling/src/test/scala/Engine.scala | 13 ++ gatling/src/test/scala/IDEPathHelper.scala | 22 +++ gatling/src/test/scala/Recorder.scala | 12 ++ .../org/baeldung/RecordedSimulation.scala | 46 +++++++ 8 files changed, 405 insertions(+) create mode 100644 gatling/pom.xml create mode 100644 gatling/src/test/resources/gatling.conf create mode 100644 gatling/src/test/resources/logback.xml create mode 100644 gatling/src/test/resources/recorder.conf create mode 100644 gatling/src/test/scala/Engine.scala create mode 100644 gatling/src/test/scala/IDEPathHelper.scala create mode 100644 gatling/src/test/scala/Recorder.scala create mode 100644 gatling/src/test/scala/org/baeldung/RecordedSimulation.scala diff --git a/gatling/pom.xml b/gatling/pom.xml new file mode 100644 index 0000000000..273797d76c --- /dev/null +++ b/gatling/pom.xml @@ -0,0 +1,110 @@ + + + 4.0.0 + org.baeldung + gatling + 1.0-SNAPSHOT + + + 1.8 + 1.8 + 2.11.7 + UTF-8 + 2.2.0 + 3.2.2 + + + + + + io.gatling + gatling-app + ${gatling.version} + + + io.gatling + gatling-recorder + ${gatling.version} + + + io.gatling.highcharts + gatling-charts-highcharts + ${gatling.version} + + + org.scala-lang + scala-library + ${scala.version} + + + + + + + io.gatling.highcharts + gatling-charts-highcharts + + + io.gatling + gatling-app + + + io.gatling + gatling-recorder + + + org.scala-lang + scala-library + + + + + src/test/scala + + + + net.alchim31.maven + scala-maven-plugin + ${scala-maven-plugin.version} + + + + + + net.alchim31.maven + scala-maven-plugin + + + + testCompile + + + + -Ybackend:GenBCode + -Ydelambdafy:method + -target:jvm-1.8 + -deprecation + -feature + -unchecked + -language:implicitConversions + -language:postfixOps + + + + + + + io.gatling + gatling-maven-plugin + ${gatling.version} + + + test + execute + + + + + + diff --git a/gatling/src/test/resources/gatling.conf b/gatling/src/test/resources/gatling.conf new file mode 100644 index 0000000000..8bfa0ed366 --- /dev/null +++ b/gatling/src/test/resources/gatling.conf @@ -0,0 +1,127 @@ +######################### +# Gatling Configuration # +######################### + +# This file contains all the settings configurable for Gatling with their default values + +gatling { + core { + #outputDirectoryBaseName = "" # The prefix for each simulation result folder (then suffixed by the report generation timestamp) + #runDescription = "" # The description for this simulation run, displayed in each report + #encoding = "utf-8" # Encoding to use throughout Gatling for file and string manipulation + #simulationClass = "" # The FQCN of the simulation to run (when used in conjunction with noReports, the simulation for which assertions will be validated) + #mute = false # When set to true, don't ask for simulation name nor run description (currently only used by Gatling SBT plugin) + #elFileBodiesCacheMaxCapacity = 200 # Cache size for request body EL templates, set to 0 to disable + #rawFileBodiesCacheMaxCapacity = 200 # Cache size for request body Raw templates, set to 0 to disable + #rawFileBodiesInMemoryMaxSize = 1000 # Below this limit, raw file bodies will be cached in memory + + extract { + regex { + #cacheMaxCapacity = 200 # Cache size for the compiled regexes, set to 0 to disable caching + } + xpath { + #cacheMaxCapacity = 200 # Cache size for the compiled XPath queries, set to 0 to disable caching + } + jsonPath { + #cacheMaxCapacity = 200 # Cache size for the compiled jsonPath queries, set to 0 to disable caching + #preferJackson = false # When set to true, prefer Jackson over Boon for JSON-related operations + } + css { + #cacheMaxCapacity = 200 # Cache size for the compiled CSS selectors queries, set to 0 to disable caching + } + } + + directory { + #data = user-files/data # Folder where user's data (e.g. files used by Feeders) is located + #bodies = user-files/bodies # Folder where bodies are located + #simulations = user-files/simulations # Folder where the bundle's simulations are located + #reportsOnly = "" # If set, name of report folder to look for in order to generate its report + #binaries = "" # If set, name of the folder where compiles classes are located: Defaults to GATLING_HOME/target. + #results = results # Name of the folder where all reports folder are located + } + } + charting { + #noReports = false # When set to true, don't generate HTML reports + #maxPlotPerSeries = 1000 # Number of points per graph in Gatling reports + #useGroupDurationMetric = false # Switch group timings from cumulated response time to group duration. + indicators { + #lowerBound = 800 # Lower bound for the requests' response time to track in the reports and the console summary + #higherBound = 1200 # Higher bound for the requests' response time to track in the reports and the console summary + #percentile1 = 50 # Value for the 1st percentile to track in the reports, the console summary and Graphite + #percentile2 = 75 # Value for the 2nd percentile to track in the reports, the console summary and Graphite + #percentile3 = 95 # Value for the 3rd percentile to track in the reports, the console summary and Graphite + #percentile4 = 99 # Value for the 4th percentile to track in the reports, the console summary and Graphite + } + } + http { + #fetchedCssCacheMaxCapacity = 200 # Cache size for CSS parsed content, set to 0 to disable + #fetchedHtmlCacheMaxCapacity = 200 # Cache size for HTML parsed content, set to 0 to disable + #perUserCacheMaxCapacity = 200 # Per virtual user cache size, set to 0 to disable + #warmUpUrl = "http://gatling.io" # The URL to use to warm-up the HTTP stack (blank means disabled) + #enableGA = true # Very light Google Analytics, please support + ssl { + keyStore { + #type = "" # Type of SSLContext's KeyManagers store + #file = "" # Location of SSLContext's KeyManagers store + #password = "" # Password for SSLContext's KeyManagers store + #algorithm = "" # Algorithm used SSLContext's KeyManagers store + } + trustStore { + #type = "" # Type of SSLContext's TrustManagers store + #file = "" # Location of SSLContext's TrustManagers store + #password = "" # Password for SSLContext's TrustManagers store + #algorithm = "" # Algorithm used by SSLContext's TrustManagers store + } + } + ahc { + #keepAlive = true # Allow pooling HTTP connections (keep-alive header automatically added) + #connectTimeout = 60000 # Timeout when establishing a connection + #pooledConnectionIdleTimeout = 60000 # Timeout when a connection stays unused in the pool + #readTimeout = 60000 # Timeout when a used connection stays idle + #maxRetry = 2 # Number of times that a request should be tried again + #requestTimeout = 60000 # Timeout of the requests + #acceptAnyCertificate = true # When set to true, doesn't validate SSL certificates + #httpClientCodecMaxInitialLineLength = 4096 # Maximum length of the initial line of the response (e.g. "HTTP/1.0 200 OK") + #httpClientCodecMaxHeaderSize = 8192 # Maximum size, in bytes, of each request's headers + #httpClientCodecMaxChunkSize = 8192 # Maximum length of the content or each chunk + #webSocketMaxFrameSize = 10240000 # Maximum frame payload size + #sslEnabledProtocols = [TLSv1.2, TLSv1.1, TLSv1] # Array of enabled protocols for HTTPS, if empty use the JDK defaults + #sslEnabledCipherSuites = [] # Array of enabled cipher suites for HTTPS, if empty use the JDK defaults + #sslSessionCacheSize = 0 # SSLSession cache size, set to 0 to use JDK's default + #sslSessionTimeout = 0 # SSLSession timeout in seconds, set to 0 to use JDK's default (24h) + #useOpenSsl = false # if OpenSSL should be used instead of JSSE (requires tcnative jar) + #useNativeTransport = false # if native transport should be used instead of Java NIO (requires netty-transport-native-epoll, currently Linux only) + #usePooledMemory = true # if Gatling should use pooled memory + #tcpNoDelay = true + #soReuseAddress = false + #soLinger = -1 + #soSndBuf = -1 + #soRcvBuf = -1 + } + dns { + #queryTimeout = 5000 # Timeout of each DNS query in millis + #maxQueriesPerResolve = 3 # Maximum allowed number of DNS queries for a given name resolution + } + } + data { + #writers = [console, file] # The list of DataWriters to which Gatling write simulation data (currently supported : console, file, graphite, jdbc) + console { + #light = false # When set to true, displays a light version without detailed request stats + } + file { + #bufferSize = 8192 # FileDataWriter's internal data buffer size, in bytes + } + leak { + #noActivityTimeout = 30 # Period, in seconds, for which Gatling may have no activity before considering a leak may be happening + } + graphite { + #light = false # only send the all* stats + #host = "localhost" # The host where the Carbon server is located + #port = 2003 # The port to which the Carbon server listens to (2003 is default for plaintext, 2004 is default for pickle) + #protocol = "tcp" # The protocol used to send data to Carbon (currently supported : "tcp", "udp") + #rootPathPrefix = "gatling" # The common prefix of all metrics sent to Graphite + #bufferSize = 8192 # GraphiteDataWriter's internal data buffer size, in bytes + #writeInterval = 1 # GraphiteDataWriter's write interval, in seconds + } + } +} diff --git a/gatling/src/test/resources/logback.xml b/gatling/src/test/resources/logback.xml new file mode 100644 index 0000000000..b9ba6255a0 --- /dev/null +++ b/gatling/src/test/resources/logback.xml @@ -0,0 +1,22 @@ + + + + + + %d{HH:mm:ss.SSS} [%-5level] %logger{15} - %msg%n%rEx + false + + + + + + + + + + + + + + + diff --git a/gatling/src/test/resources/recorder.conf b/gatling/src/test/resources/recorder.conf new file mode 100644 index 0000000000..969b9e8668 --- /dev/null +++ b/gatling/src/test/resources/recorder.conf @@ -0,0 +1,53 @@ +recorder { + core { + #mode = "Proxy" + #encoding = "utf-8" # The encoding used for reading/writing request bodies and the generated simulation + #outputFolder = "" # The folder where generated simulation will we written + #package = "" # The package's name of the generated simulation + #className = "RecordedSimulation" # The name of the generated Simulation class + #thresholdForPauseCreation = 100 # The minimum time, in milliseconds, that must pass between requests to trigger a pause creation + #saveConfig = false # When set to true, the configuration from the Recorder GUI overwrites this configuration + #headless = false # When set to true, run the Recorder in headless mode instead of the GUI + #harFilePath = "" # The path of the HAR file to convert + } + filters { + #filterStrategy = "Disabled" # The selected filter resources filter strategy (currently supported : "Disabled", "BlackList", "WhiteList") + #whitelist = [] # The list of ressources patterns that are part of the Recorder's whitelist + #blacklist = [] # The list of ressources patterns that are part of the Recorder's blacklist + } + http { + #automaticReferer = true # When set to false, write the referer + enable 'disableAutoReferer' in the generated simulation + #followRedirect = true # When set to false, write redirect requests + enable 'disableFollowRedirect' in the generated simulation + #removeCacheHeaders = true # When set to true, removes from the generated requests headers leading to request caching + #inferHtmlResources = true # When set to true, add inferred resources + set 'inferHtmlResources' with the configured blacklist/whitelist in the generated simulation + #checkResponseBodies = false # When set to true, save response bodies as files and add raw checks in the generated simulation + } + proxy { + #port = 8000 # Local port used by Gatling's Proxy for HTTP/HTTPS + https { + #mode = "SelfSignedCertificate" # The selected "HTTPS mode" (currently supported : "SelfSignedCertificate", "ProvidedKeyStore", "GatlingCertificateAuthority", "CustomCertificateAuthority") + keyStore { + #path = "" # The path of the custom key store + #password = "" # The password for this key store + #type = "JKS" # The type of the key store (currently supported: "JKS") + } + certificateAuthority { + #certificatePath = "" # The path of the custom certificate + #privateKeyPath = "" # The certificate's private key path + } + } + outgoing { + #host = "" # The outgoing proxy's hostname + #username = "" # The username to use to connect to the outgoing proxy + #password = "" # The password corresponding to the user to use to connect to the outgoing proxy + #port = 0 # The HTTP port to use to connect to the outgoing proxy + #sslPort = 0 # If set, The HTTPS port to use to connect to the outgoing proxy + } + } + netty { + #maxInitialLineLength = 10000 # Maximum length of the initial line of the response (e.g. "HTTP/1.0 200 OK") + #maxHeaderSize = 20000 # Maximum size, in bytes, of each request's headers + #maxChunkSize = 8192 # Maximum length of the content or each chunk + #maxContentLength = 100000000 # Maximum length of the aggregated content of each response + } +} diff --git a/gatling/src/test/scala/Engine.scala b/gatling/src/test/scala/Engine.scala new file mode 100644 index 0000000000..32c85fbe45 --- /dev/null +++ b/gatling/src/test/scala/Engine.scala @@ -0,0 +1,13 @@ +import io.gatling.app.Gatling +import io.gatling.core.config.GatlingPropertiesBuilder + +object Engine extends App { + + val props = new GatlingPropertiesBuilder + props.dataDirectory(IDEPathHelper.dataDirectory.toString) + props.resultsDirectory(IDEPathHelper.resultsDirectory.toString) + props.bodiesDirectory(IDEPathHelper.bodiesDirectory.toString) + props.binariesDirectory(IDEPathHelper.mavenBinariesDirectory.toString) + + Gatling.fromMap(props.build) +} diff --git a/gatling/src/test/scala/IDEPathHelper.scala b/gatling/src/test/scala/IDEPathHelper.scala new file mode 100644 index 0000000000..0abf6a42ef --- /dev/null +++ b/gatling/src/test/scala/IDEPathHelper.scala @@ -0,0 +1,22 @@ +import java.nio.file.Path + +import io.gatling.commons.util.PathHelper._ + +object IDEPathHelper { + + val gatlingConfUrl: Path = getClass.getClassLoader.getResource("gatling.conf").toURI + val projectRootDir = gatlingConfUrl.ancestor(3) + + val mavenSourcesDirectory = projectRootDir / "src" / "test" / "scala" + val mavenResourcesDirectory = projectRootDir / "src" / "test" / "resources" + val mavenTargetDirectory = projectRootDir / "target" + val mavenBinariesDirectory = mavenTargetDirectory / "test-classes" + + val dataDirectory = mavenResourcesDirectory / "data" + val bodiesDirectory = mavenResourcesDirectory / "bodies" + + val recorderOutputDirectory = mavenSourcesDirectory + val resultsDirectory = mavenTargetDirectory / "gatling" + + val recorderConfigFile = mavenResourcesDirectory / "recorder.conf" +} diff --git a/gatling/src/test/scala/Recorder.scala b/gatling/src/test/scala/Recorder.scala new file mode 100644 index 0000000000..6ad320618b --- /dev/null +++ b/gatling/src/test/scala/Recorder.scala @@ -0,0 +1,12 @@ +import io.gatling.recorder.GatlingRecorder +import io.gatling.recorder.config.RecorderPropertiesBuilder + +object Recorder extends App { + + val props = new RecorderPropertiesBuilder + props.simulationOutputFolder(IDEPathHelper.recorderOutputDirectory.toString) + props.simulationPackage("org.baeldung") + props.bodiesFolder(IDEPathHelper.bodiesDirectory.toString) + + GatlingRecorder.fromMap(props.build, Some(IDEPathHelper.recorderConfigFile)) +} diff --git a/gatling/src/test/scala/org/baeldung/RecordedSimulation.scala b/gatling/src/test/scala/org/baeldung/RecordedSimulation.scala new file mode 100644 index 0000000000..cdbef1bf3c --- /dev/null +++ b/gatling/src/test/scala/org/baeldung/RecordedSimulation.scala @@ -0,0 +1,46 @@ +package org.baeldung + +import scala.concurrent.duration._ + +import io.gatling.core.Predef._ +import io.gatling.http.Predef._ +import io.gatling.jdbc.Predef._ + +class RecordedSimulation extends Simulation { + + val httpProtocol = http + .baseURL("http://computer-database.gatling.io") + .inferHtmlResources(BlackList(""".*\.css""", """.*\.js""", """.*\.ico"""), WhiteList()) + .acceptHeader("text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8") + .acceptEncodingHeader("gzip, deflate") + .acceptLanguageHeader("it-IT,it;q=0.8,en-US;q=0.5,en;q=0.3") + .userAgentHeader("Mozilla/5.0 (Windows NT 10.0; WOW64; rv:46.0) Gecko/20100101 Firefox/46.0") + + + + + + val scn = scenario("RecordedSimulation") + .exec(http("request_0") + .get("/")) + .pause(5) + .exec(http("request_1") + .get("/computers?f=amstrad")) + .pause(4) + .exec(http("request_2") + .get("/computers/412")) + .pause(2) + .exec(http("request_3") + .get("/")) + .pause(2) + .exec(http("request_4") + .get("/computers?p=1")) + .pause(1) + .exec(http("request_5") + .get("/computers?p=2")) + .pause(2) + .exec(http("request_6") + .get("/computers?p=3")) + + setUp(scn.inject(atOnceUsers(1))).protocols(httpProtocol) +} From 2452e58c2e95efe4efb1e01f8ad3ef4cbe857e26 Mon Sep 17 00:00:00 2001 From: ccristian Date: Wed, 8 Jun 2016 22:05:48 +0200 Subject: [PATCH 18/26] jee7schedule --- jee7schedule/pom.xml | 311 ++++++++++++++++++ .../baeldung/timer/AutomaticTimerBean.java | 27 ++ .../baeldung/timer/FixedDelayTimerBean.java | 20 ++ .../ProgrammaticAtFixedRateTimerBean.java | 31 ++ .../baeldung/timer/ProgrammaticTimerBean.java | 39 +++ ...ammaticWithInitialFixedDelayTimerBean.java | 31 ++ .../com/baeldung/timer/ScheduleTimerBean.java | 27 ++ .../java/com/baeldung/timer/TimerEvent.java | 27 ++ .../baeldung/timer/TimerEventListener.java | 26 ++ .../java/com/baeldung/timer/WorkerBean.java | 33 ++ .../src/main/webapp/WEB-INF/beans.xml | 0 .../timer/AutomaticTimerBeanTest.java | 66 ++++ .../ProgrammaticAtFixedRateTimerBeanTest.java | 56 ++++ .../timer/ProgrammaticTimerBeanTest.java | 53 +++ ...ogrammaticWithFixedDelayTimerBeanTest.java | 61 ++++ .../baeldung/timer/ScheduleTimerBeanTest.java | 59 ++++ .../baeldung/timer/WithinWindowMatcher.java | 30 ++ pom.xml | 1 + 18 files changed, 898 insertions(+) create mode 100644 jee7schedule/pom.xml create mode 100644 jee7schedule/src/main/java/com/baeldung/timer/AutomaticTimerBean.java create mode 100644 jee7schedule/src/main/java/com/baeldung/timer/FixedDelayTimerBean.java create mode 100644 jee7schedule/src/main/java/com/baeldung/timer/ProgrammaticAtFixedRateTimerBean.java create mode 100644 jee7schedule/src/main/java/com/baeldung/timer/ProgrammaticTimerBean.java create mode 100644 jee7schedule/src/main/java/com/baeldung/timer/ProgrammaticWithInitialFixedDelayTimerBean.java create mode 100644 jee7schedule/src/main/java/com/baeldung/timer/ScheduleTimerBean.java create mode 100644 jee7schedule/src/main/java/com/baeldung/timer/TimerEvent.java create mode 100644 jee7schedule/src/main/java/com/baeldung/timer/TimerEventListener.java create mode 100644 jee7schedule/src/main/java/com/baeldung/timer/WorkerBean.java create mode 100644 jee7schedule/src/main/webapp/WEB-INF/beans.xml create mode 100644 jee7schedule/src/test/java/com/baeldung/timer/AutomaticTimerBeanTest.java create mode 100644 jee7schedule/src/test/java/com/baeldung/timer/ProgrammaticAtFixedRateTimerBeanTest.java create mode 100644 jee7schedule/src/test/java/com/baeldung/timer/ProgrammaticTimerBeanTest.java create mode 100644 jee7schedule/src/test/java/com/baeldung/timer/ProgrammaticWithFixedDelayTimerBeanTest.java create mode 100644 jee7schedule/src/test/java/com/baeldung/timer/ScheduleTimerBeanTest.java create mode 100644 jee7schedule/src/test/java/com/baeldung/timer/WithinWindowMatcher.java diff --git a/jee7schedule/pom.xml b/jee7schedule/pom.xml new file mode 100644 index 0000000000..627b8723e3 --- /dev/null +++ b/jee7schedule/pom.xml @@ -0,0 +1,311 @@ + + + 4.0.0 + + com.baeldung + jee7schedule + 1.0-SNAPSHOT + JavaEE 7 Arquillian Archetype Sample + war + + + 1.7 + 3.0.0 + + 4.11 + 7.0 + + 1.1.4.Final + + 8.0.0.Final + + + + ${maven.min.version} + + + + + + org.jboss.arquillian + arquillian-bom + ${version.arquillian_core} + import + pom + + + + + + + javax + javaee-api + ${version.javaee_api} + provided + + + + junit + junit + ${version.junit} + test + + + org.jboss.arquillian.junit + arquillian-junit-container + test + + + com.jayway.awaitility + awaitility + 1.6.0 + test + + + + org.jboss.shrinkwrap.resolver + shrinkwrap-resolver-impl-maven + test + jar + + + + org.jboss.shrinkwrap.resolver + shrinkwrap-resolver-impl-maven-archive + test + + + + + + + + org.apache.maven.plugins + maven-compiler-plugin + 3.1 + + ${java.min.version} + ${java.min.version} + + + + org.apache.maven.plugins + maven-war-plugin + 2.1.1 + + false + + + + + + + + + wildfly-managed-arquillian + + true + + + standalone-full.xml + ${project.build.directory}/wildfly-${version.wildfly} + + + + io.undertow + undertow-websockets-jsr + 1.0.0.Beta25 + test + + + org.jboss.resteasy + resteasy-client + 3.0.5.Final + test + + + org.jboss.resteasy + resteasy-jaxb-provider + 3.0.5.Final + test + + + org.jboss.resteasy + resteasy-json-p-provider + 3.0.5.Final + test + + + org.wildfly + wildfly-arquillian-container-managed + ${version.wildfly} + test + + + + + + maven-dependency-plugin + 2.8 + + ${maven.test.skip} + + + + unpack + process-test-classes + + unpack + + + + + org.wildfly + wildfly-dist + ${version.wildfly} + zip + false + ${project.build.directory} + + + + + + + + maven-surefire-plugin + 2.17 + + + ${project.build.directory}/wildfly-${version.wildfly} + + + + + + + + wildfly-remote-arquillian + + + io.undertow + undertow-websockets-jsr + 1.0.0.Beta25 + test + + + org.jboss.resteasy + resteasy-client + 3.0.5.Final + test + + + org.jboss.resteasy + resteasy-jaxb-provider + 3.0.5.Final + test + + + org.jboss.resteasy + resteasy-json-p-provider + 3.0.5.Final + test + + + org.wildfly + wildfly-arquillian-container-remote + ${version.wildfly} + test + + + + + glassfish-embedded-arquillian + + + org.glassfish.main.extras + glassfish-embedded-all + 4.0 + test + + + org.glassfish + javax.json + 1.0.4 + test + + + org.glassfish.tyrus + tyrus-client + 1.3 + test + + + org.glassfish.tyrus + tyrus-container-grizzly-client + 1.3 + test + + + org.glassfish.jersey.core + jersey-client + 2.4 + test + + + org.jboss.arquillian.container + arquillian-glassfish-embedded-3.1 + 1.0.0.CR4 + test + + + + + glassfish-remote-arquillian + + + org.glassfish + javax.json + 1.0.4 + test + + + org.glassfish.tyrus + tyrus-client + 1.3 + test + + + org.glassfish.tyrus + tyrus-container-grizzly-client + 1.3 + test + + + org.glassfish.jersey.core + jersey-client + 2.4 + test + + + org.glassfish.jersey.media + jersey-media-json-jackson + 2.4 + test + + + org.glassfish.jersey.media + jersey-media-json-processing + 2.4 + test + + + org.jboss.arquillian.container + arquillian-glassfish-remote-3.1 + 1.0.0.CR4 + test + + + + + diff --git a/jee7schedule/src/main/java/com/baeldung/timer/AutomaticTimerBean.java b/jee7schedule/src/main/java/com/baeldung/timer/AutomaticTimerBean.java new file mode 100644 index 0000000000..373d962f02 --- /dev/null +++ b/jee7schedule/src/main/java/com/baeldung/timer/AutomaticTimerBean.java @@ -0,0 +1,27 @@ +package com.baeldung.timer; + +import javax.ejb.Schedule; +import javax.ejb.Singleton; +import javax.ejb.Startup; +import javax.enterprise.event.Event; +import javax.inject.Inject; +import java.util.Date; + + +@Startup +@Singleton +public class AutomaticTimerBean { + + + @Inject + Event event; + + /** + * This method will be called every 10 second and will fire an @TimerEvent + */ + @Schedule(hour = "*", minute = "*", second = "*/10", info = "Every 10 second timer") + public void printDate() { + event.fire(new TimerEvent("TimerEvent sent at :" + new Date())); + } + +} diff --git a/jee7schedule/src/main/java/com/baeldung/timer/FixedDelayTimerBean.java b/jee7schedule/src/main/java/com/baeldung/timer/FixedDelayTimerBean.java new file mode 100644 index 0000000000..a466682dea --- /dev/null +++ b/jee7schedule/src/main/java/com/baeldung/timer/FixedDelayTimerBean.java @@ -0,0 +1,20 @@ +package com.baeldung.timer; + +import javax.ejb.*; + +/** + * Created by ccristianchiovari on 5/2/16. + */ +@Singleton +public class FixedDelayTimerBean { + + @EJB + private WorkerBean workerBean; + + @Lock(LockType.READ) + @Schedule(second = "*/5", minute = "*", hour = "*", persistent = false) + public void atSchedule() throws InterruptedException { + workerBean.doTimerWork(); + } + +} \ No newline at end of file diff --git a/jee7schedule/src/main/java/com/baeldung/timer/ProgrammaticAtFixedRateTimerBean.java b/jee7schedule/src/main/java/com/baeldung/timer/ProgrammaticAtFixedRateTimerBean.java new file mode 100644 index 0000000000..c1c210c8ac --- /dev/null +++ b/jee7schedule/src/main/java/com/baeldung/timer/ProgrammaticAtFixedRateTimerBean.java @@ -0,0 +1,31 @@ +package com.baeldung.timer; + +import javax.annotation.PostConstruct; +import javax.annotation.Resource; +import javax.ejb.*; +import javax.enterprise.event.Event; +import javax.inject.Inject; + +/** + * author: Cristian Chiovari + */ +@Startup +@Singleton +public class ProgrammaticAtFixedRateTimerBean { + + @Inject + Event event; + + @Resource + TimerService timerService; + + @PostConstruct + public void initialize() { + timerService.createTimer(0,1000, "Every second timer"); + } + + @Timeout + public void programmaticTimout(Timer timer) { + event.fire(new TimerEvent(timer.getInfo().toString())); + } +} diff --git a/jee7schedule/src/main/java/com/baeldung/timer/ProgrammaticTimerBean.java b/jee7schedule/src/main/java/com/baeldung/timer/ProgrammaticTimerBean.java new file mode 100644 index 0000000000..d2dba1239f --- /dev/null +++ b/jee7schedule/src/main/java/com/baeldung/timer/ProgrammaticTimerBean.java @@ -0,0 +1,39 @@ +package com.baeldung.timer; + +import javax.annotation.PostConstruct; +import javax.annotation.Resource; +import javax.ejb.*; +import javax.enterprise.event.Event; +import javax.inject.Inject; + +/** + * author: Jacek Jackowiak + */ +@Startup +@Singleton +public class ProgrammaticTimerBean { + + @Inject + Event event; + + @Resource + TimerService timerService; + + @PostConstruct + public void initialize() { + ScheduleExpression scheduleExpression = new ScheduleExpression() + .hour("*") + .minute("*") + .second("*/5"); + + TimerConfig timerConfig = new TimerConfig(); + timerConfig.setInfo("Every 5 second timer"); + + timerService.createCalendarTimer(scheduleExpression, timerConfig); + } + + @Timeout + public void programmaticTimout(Timer timer) { + event.fire(new TimerEvent(timer.getInfo().toString())); + } +} diff --git a/jee7schedule/src/main/java/com/baeldung/timer/ProgrammaticWithInitialFixedDelayTimerBean.java b/jee7schedule/src/main/java/com/baeldung/timer/ProgrammaticWithInitialFixedDelayTimerBean.java new file mode 100644 index 0000000000..9a1ebcdc57 --- /dev/null +++ b/jee7schedule/src/main/java/com/baeldung/timer/ProgrammaticWithInitialFixedDelayTimerBean.java @@ -0,0 +1,31 @@ +package com.baeldung.timer; + +import javax.annotation.PostConstruct; +import javax.annotation.Resource; +import javax.ejb.*; +import javax.enterprise.event.Event; +import javax.inject.Inject; + +/** + * author: Cristian Chiovari + */ +@Startup +@Singleton +public class ProgrammaticWithInitialFixedDelayTimerBean { + + @Inject + Event event; + + @Resource + TimerService timerService; + + @PostConstruct + public void initialize() { + timerService.createTimer(10000l,5000l, "Delay 10 seconds then every 5 second timer"); + } + + @Timeout + public void programmaticTimout(Timer timer) { + event.fire(new TimerEvent(timer.getInfo().toString())); + } +} diff --git a/jee7schedule/src/main/java/com/baeldung/timer/ScheduleTimerBean.java b/jee7schedule/src/main/java/com/baeldung/timer/ScheduleTimerBean.java new file mode 100644 index 0000000000..09fb95c889 --- /dev/null +++ b/jee7schedule/src/main/java/com/baeldung/timer/ScheduleTimerBean.java @@ -0,0 +1,27 @@ +package com.baeldung.timer; + +import javax.ejb.Schedule; +import javax.ejb.Singleton; +import javax.ejb.Startup; +import javax.ejb.Timer; +import javax.enterprise.event.Event; +import javax.inject.Inject; + + +@Startup +@Singleton +public class ScheduleTimerBean { + + @Inject + Event event; + + @Schedule(hour = "*", minute = "*", second = "*/5", info = "Every 5 second timer") + public void automaticallyScheduled(Timer timer) { + fireEvent(timer); + } + + + private void fireEvent(Timer timer) { + event.fire(new TimerEvent(timer.getInfo().toString())); + } +} diff --git a/jee7schedule/src/main/java/com/baeldung/timer/TimerEvent.java b/jee7schedule/src/main/java/com/baeldung/timer/TimerEvent.java new file mode 100644 index 0000000000..e430cfc1b1 --- /dev/null +++ b/jee7schedule/src/main/java/com/baeldung/timer/TimerEvent.java @@ -0,0 +1,27 @@ +package com.baeldung.timer; + +public class TimerEvent { + + private String eventInfo; + private long time = System.currentTimeMillis(); + + public TimerEvent(String s) { + this.eventInfo = s; + } + + public long getTime() { + return time; + } + + public String getEventInfo() { + return eventInfo; + } + + @Override + public String toString() { + return "TimerEvent {" + + "eventInfo='" + eventInfo + '\'' + + ", time=" + time + + '}'; + } +} diff --git a/jee7schedule/src/main/java/com/baeldung/timer/TimerEventListener.java b/jee7schedule/src/main/java/com/baeldung/timer/TimerEventListener.java new file mode 100644 index 0000000000..c89677213a --- /dev/null +++ b/jee7schedule/src/main/java/com/baeldung/timer/TimerEventListener.java @@ -0,0 +1,26 @@ +package com.baeldung.timer; + +import javax.ejb.Singleton; +import javax.ejb.Startup; +import javax.enterprise.event.Observes; +import java.util.List; +import java.util.concurrent.CopyOnWriteArrayList; + +/** + * This class will listen to all TimerEvent and will collect them + */ +@Startup +@Singleton +public class TimerEventListener { + + final List events = new CopyOnWriteArrayList<>(); + + public void listen(@Observes TimerEvent event) { + System.out.println("event = " + event); + events.add(event); + } + + public List getEvents() { + return events; + } +} diff --git a/jee7schedule/src/main/java/com/baeldung/timer/WorkerBean.java b/jee7schedule/src/main/java/com/baeldung/timer/WorkerBean.java new file mode 100644 index 0000000000..c1f781e95e --- /dev/null +++ b/jee7schedule/src/main/java/com/baeldung/timer/WorkerBean.java @@ -0,0 +1,33 @@ +package com.baeldung.timer; + +import javax.ejb.Lock; +import javax.ejb.LockType; +import javax.ejb.Singleton; +import java.util.concurrent.atomic.AtomicBoolean; + +/** + * Created by cristianchiovari on 5/2/16. + */ +@Singleton +public class WorkerBean { + + private AtomicBoolean busy = new AtomicBoolean(false); + + @Lock(LockType.READ) + public void doTimerWork() throws InterruptedException { + + System.out.println("Timer method called but not started yet !"); + + if (!busy.compareAndSet(false, true)) { + return; + } + + try { + System.out.println("Timer work started"); + Thread.sleep(12000); + System.out.println("Timer work done"); + } finally { + busy.set(false); + } + } +} \ No newline at end of file diff --git a/jee7schedule/src/main/webapp/WEB-INF/beans.xml b/jee7schedule/src/main/webapp/WEB-INF/beans.xml new file mode 100644 index 0000000000..e69de29bb2 diff --git a/jee7schedule/src/test/java/com/baeldung/timer/AutomaticTimerBeanTest.java b/jee7schedule/src/test/java/com/baeldung/timer/AutomaticTimerBeanTest.java new file mode 100644 index 0000000000..df922b28df --- /dev/null +++ b/jee7schedule/src/test/java/com/baeldung/timer/AutomaticTimerBeanTest.java @@ -0,0 +1,66 @@ +package com.baeldung.timer; + +import com.jayway.awaitility.Awaitility; +import org.hamcrest.Matchers; +import org.jboss.arquillian.container.test.api.Deployment; +import org.jboss.arquillian.junit.Arquillian; +import org.jboss.shrinkwrap.api.ShrinkWrap; +import org.jboss.shrinkwrap.api.spec.WebArchive; +import org.jboss.shrinkwrap.resolver.api.maven.Maven; +import org.junit.Test; +import org.junit.runner.RunWith; + +import javax.inject.Inject; +import java.io.File; +import java.util.concurrent.TimeUnit; + +import static com.jayway.awaitility.Awaitility.await; +import static com.jayway.awaitility.Awaitility.to; +import static org.hamcrest.MatcherAssert.assertThat; +import static org.hamcrest.Matchers.equalTo; + + +@RunWith(Arquillian.class) +public class AutomaticTimerBeanTest { + + //the @AutomaticTimerBean has a method called every 10 seconds + //testing the difference ==> 100000 + final static long TIMEOUT = 10000l; + + //the tolerance accepted , so if between two consecutive calls there has to be at least 9 or max 11 seconds. + //because the timer service is not intended for real-time applications so it will not be exactly 10 seconds + final static long TOLERANCE = 1000l; + + @Inject + TimerEventListener timerEventListener; + + @Deployment + public static WebArchive deploy() { + File[] jars = Maven.resolver().loadPomFromFile("pom.xml") + .resolve("com.jayway.awaitility:awaitility") + .withTransitivity().asFile(); + + //only @AutomaticTimerBean is deployed not the other timers + return ShrinkWrap.create(WebArchive.class) + .addAsLibraries(jars) + .addClasses(WithinWindowMatcher.class, TimerEvent.class, TimerEventListener.class, AutomaticTimerBean.class); + } + + + + @Test + public void should_receive_two_pings() { + Awaitility.setDefaultTimeout(30, TimeUnit.SECONDS); + //the test will wait here until two events are triggered + await().untilCall(to(timerEventListener.getEvents()).size(), equalTo(2)); + + TimerEvent firstEvent = timerEventListener.getEvents().get(0); + TimerEvent secondEvent = timerEventListener.getEvents().get(1); + + long delay = secondEvent.getTime() - firstEvent.getTime(); + System.out.println("Actual timeout = " + delay); + + //ensure that the delay between the events is more or less 10 seconds (no real time precision) + assertThat(delay, Matchers.is(WithinWindowMatcher.withinWindow(TIMEOUT, TOLERANCE))); + } +} diff --git a/jee7schedule/src/test/java/com/baeldung/timer/ProgrammaticAtFixedRateTimerBeanTest.java b/jee7schedule/src/test/java/com/baeldung/timer/ProgrammaticAtFixedRateTimerBeanTest.java new file mode 100644 index 0000000000..76c0e3e5b8 --- /dev/null +++ b/jee7schedule/src/test/java/com/baeldung/timer/ProgrammaticAtFixedRateTimerBeanTest.java @@ -0,0 +1,56 @@ +package com.baeldung.timer; + +import com.jayway.awaitility.Awaitility; +import org.jboss.arquillian.container.test.api.Deployment; +import org.jboss.arquillian.junit.Arquillian; +import org.jboss.shrinkwrap.api.ShrinkWrap; +import org.jboss.shrinkwrap.api.spec.WebArchive; +import org.jboss.shrinkwrap.resolver.api.maven.Maven; +import org.junit.Test; +import org.junit.runner.RunWith; + +import javax.inject.Inject; +import java.io.File; +import java.util.concurrent.TimeUnit; + +import static com.jayway.awaitility.Awaitility.await; +import static com.jayway.awaitility.Awaitility.to; +import static org.hamcrest.MatcherAssert.assertThat; +import static org.hamcrest.Matchers.equalTo; +import static org.hamcrest.Matchers.is; + + +@RunWith(Arquillian.class) +public class ProgrammaticAtFixedRateTimerBeanTest { + + final static long TIMEOUT = 1000; + final static long TOLERANCE = 500l; + + @Inject + TimerEventListener timerEventListener; + + @Deployment + public static WebArchive deploy() { + File[] jars = Maven.resolver().loadPomFromFile("pom.xml") + .resolve("com.jayway.awaitility:awaitility") + .withTransitivity().asFile(); + + return ShrinkWrap.create(WebArchive.class) + .addAsLibraries(jars) + .addClasses(WithinWindowMatcher.class, TimerEvent.class, TimerEventListener.class, ProgrammaticAtFixedRateTimerBean.class); + } + + @Test + public void should_receive_ten_pings() { + + Awaitility.setDefaultTimeout(30, TimeUnit.SECONDS); + + await().untilCall(to(timerEventListener.getEvents()).size(), equalTo(10)); + TimerEvent firstEvent = timerEventListener.getEvents().get(0); + TimerEvent secondEvent = timerEventListener.getEvents().get(1); + + long delay = secondEvent.getTime() - firstEvent.getTime(); + System.out.println("Actual timeout = " + delay); + assertThat(delay, is(WithinWindowMatcher.withinWindow(TIMEOUT, TOLERANCE))); + } +} \ No newline at end of file diff --git a/jee7schedule/src/test/java/com/baeldung/timer/ProgrammaticTimerBeanTest.java b/jee7schedule/src/test/java/com/baeldung/timer/ProgrammaticTimerBeanTest.java new file mode 100644 index 0000000000..f93ba61fe3 --- /dev/null +++ b/jee7schedule/src/test/java/com/baeldung/timer/ProgrammaticTimerBeanTest.java @@ -0,0 +1,53 @@ +package com.baeldung.timer; + +import org.jboss.arquillian.container.test.api.Deployment; +import org.jboss.arquillian.junit.Arquillian; +import org.jboss.shrinkwrap.api.ShrinkWrap; +import org.jboss.shrinkwrap.api.spec.WebArchive; +import org.jboss.shrinkwrap.resolver.api.maven.Maven; +import org.junit.Test; +import org.junit.runner.RunWith; + +import javax.inject.Inject; +import java.io.File; + +import static com.jayway.awaitility.Awaitility.await; +import static com.jayway.awaitility.Awaitility.to; +import static org.hamcrest.MatcherAssert.assertThat; +import static org.hamcrest.Matchers.equalTo; +import static org.hamcrest.Matchers.is; + + +@RunWith(Arquillian.class) +public class ProgrammaticTimerBeanTest { + + final static long TIMEOUT = 5000l; + final static long TOLERANCE = 1000l; + + @Inject + TimerEventListener timerEventListener; + + @Deployment + public static WebArchive deploy() { + File[] jars = Maven.resolver().loadPomFromFile("pom.xml") + .resolve("com.jayway.awaitility:awaitility") + .withTransitivity().asFile(); + + return ShrinkWrap.create(WebArchive.class) + .addAsLibraries(jars) + .addClasses(WithinWindowMatcher.class, TimerEvent.class, TimerEventListener.class, ProgrammaticTimerBean.class); + } + + @Test + public void should_receive_two_pings() { + + await().untilCall(to(timerEventListener.getEvents()).size(), equalTo(2)); + + TimerEvent firstEvent = timerEventListener.getEvents().get(0); + TimerEvent secondEvent = timerEventListener.getEvents().get(1); + + long delay = secondEvent.getTime() - firstEvent.getTime(); + System.out.println("Actual timeout = " + delay); + assertThat(delay, is(WithinWindowMatcher.withinWindow(TIMEOUT, TOLERANCE))); + } +} \ No newline at end of file diff --git a/jee7schedule/src/test/java/com/baeldung/timer/ProgrammaticWithFixedDelayTimerBeanTest.java b/jee7schedule/src/test/java/com/baeldung/timer/ProgrammaticWithFixedDelayTimerBeanTest.java new file mode 100644 index 0000000000..6764aa386d --- /dev/null +++ b/jee7schedule/src/test/java/com/baeldung/timer/ProgrammaticWithFixedDelayTimerBeanTest.java @@ -0,0 +1,61 @@ +package com.baeldung.timer; + +import com.jayway.awaitility.Awaitility; +import org.jboss.arquillian.container.test.api.Deployment; +import org.jboss.arquillian.junit.Arquillian; +import org.jboss.shrinkwrap.api.ShrinkWrap; +import org.jboss.shrinkwrap.api.spec.WebArchive; +import org.jboss.shrinkwrap.resolver.api.maven.Maven; +import org.junit.Test; +import org.junit.runner.RunWith; + +import javax.inject.Inject; +import java.io.File; +import java.util.concurrent.TimeUnit; + +import static com.jayway.awaitility.Awaitility.await; +import static com.jayway.awaitility.Awaitility.to; +import static org.hamcrest.MatcherAssert.assertThat; +import static org.hamcrest.Matchers.equalTo; +import static org.hamcrest.Matchers.is; + + +@RunWith(Arquillian.class) +public class ProgrammaticWithFixedDelayTimerBeanTest { + + final static long TIMEOUT = 15000l; + final static long TOLERANCE = 1000l; + + @Inject + TimerEventListener timerEventListener; + + @Deployment + public static WebArchive deploy() { + File[] jars = Maven.resolver().loadPomFromFile("pom.xml") + .resolve("com.jayway.awaitility:awaitility") + .withTransitivity().asFile(); + + return ShrinkWrap.create(WebArchive.class) + .addAsLibraries(jars) + .addClasses(WithinWindowMatcher.class, TimerEvent.class, TimerEventListener.class, ProgrammaticWithInitialFixedDelayTimerBean.class); + } + + @Test + public void should_receive_two_pings() { + + Awaitility.setDefaultTimeout(30, TimeUnit.SECONDS); + + // 10 seconds pause so we get the startTime and it will trigger first event + long startTime = System.currentTimeMillis(); + + await().untilCall(to(timerEventListener.getEvents()).size(), equalTo(2)); + TimerEvent firstEvent = timerEventListener.getEvents().get(0); + TimerEvent secondEvent = timerEventListener.getEvents().get(1); + + long delay = secondEvent.getTime() - startTime; + System.out.println("Actual timeout = " + delay); + + //apx 15 seconds = 10 delay + 2 timers (first after a pause of 10 seconds and the next others every 5 seconds) + assertThat(delay, is(WithinWindowMatcher.withinWindow(TIMEOUT, TOLERANCE))); + } +} \ No newline at end of file diff --git a/jee7schedule/src/test/java/com/baeldung/timer/ScheduleTimerBeanTest.java b/jee7schedule/src/test/java/com/baeldung/timer/ScheduleTimerBeanTest.java new file mode 100644 index 0000000000..7a5b043101 --- /dev/null +++ b/jee7schedule/src/test/java/com/baeldung/timer/ScheduleTimerBeanTest.java @@ -0,0 +1,59 @@ +package com.baeldung.timer; + +import com.jayway.awaitility.Awaitility; +import org.hamcrest.Matchers; +import org.jboss.arquillian.container.test.api.Deployment; +import org.jboss.arquillian.junit.Arquillian; +import org.jboss.shrinkwrap.api.ShrinkWrap; +import org.jboss.shrinkwrap.api.spec.WebArchive; +import org.jboss.shrinkwrap.resolver.api.maven.Maven; +import org.junit.Test; +import org.junit.runner.RunWith; + +import javax.inject.Inject; +import java.io.File; +import java.util.concurrent.TimeUnit; + +import static com.jayway.awaitility.Awaitility.await; +import static com.jayway.awaitility.Awaitility.to; +import static org.hamcrest.MatcherAssert.assertThat; +import static org.hamcrest.Matchers.equalTo; + + +@RunWith(Arquillian.class) +public class ScheduleTimerBeanTest { + + final static long TIMEOUT = 5000l; + final static long TOLERANCE = 1000l; + + @Inject + TimerEventListener timerEventListener; + + @Deployment + public static WebArchive deploy() { + File[] jars = Maven.resolver().loadPomFromFile("pom.xml") + .resolve("com.jayway.awaitility:awaitility") + .withTransitivity().asFile(); + + return ShrinkWrap.create(WebArchive.class) + .addAsLibraries(jars) + .addClasses(WithinWindowMatcher.class, TimerEvent.class, TimerEventListener.class, ScheduleTimerBean.class); + } + + @Test + public void should_receive_three_pings() { + + Awaitility.setDefaultTimeout(30, TimeUnit.SECONDS); + await().untilCall(to(timerEventListener.getEvents()).size(), equalTo(3)); + + TimerEvent firstEvent = timerEventListener.getEvents().get(0); + TimerEvent secondEvent = timerEventListener.getEvents().get(1); + TimerEvent thirdEvent = timerEventListener.getEvents().get(2); + + long delay = secondEvent.getTime() - firstEvent.getTime(); + assertThat(delay, Matchers.is(WithinWindowMatcher.withinWindow(TIMEOUT, TOLERANCE))); + delay = thirdEvent.getTime() - secondEvent.getTime(); + assertThat(delay, Matchers.is(WithinWindowMatcher.withinWindow(TIMEOUT, TOLERANCE))); + + } +} diff --git a/jee7schedule/src/test/java/com/baeldung/timer/WithinWindowMatcher.java b/jee7schedule/src/test/java/com/baeldung/timer/WithinWindowMatcher.java new file mode 100644 index 0000000000..91adca6042 --- /dev/null +++ b/jee7schedule/src/test/java/com/baeldung/timer/WithinWindowMatcher.java @@ -0,0 +1,30 @@ +package com.baeldung.timer; + +import org.hamcrest.BaseMatcher; +import org.hamcrest.Description; +import org.hamcrest.Matcher; + +class WithinWindowMatcher extends BaseMatcher { + private final long timeout; + private final long tolerance; + + public WithinWindowMatcher(long timeout, long tolerance) { + this.timeout = timeout; + this.tolerance = tolerance; + } + + @Override + public boolean matches(Object item) { + final Long actual = (Long) item; + return Math.abs(actual - timeout) < tolerance; + } + + @Override + public void describeTo(Description description) { + //To change body of implemented methods use File | Settings | File Templates. + } + + public static Matcher withinWindow(final long timeout, final long tolerance) { + return new WithinWindowMatcher(timeout, tolerance); + } +} diff --git a/pom.xml b/pom.xml index 7a51347af6..91a2023cee 100644 --- a/pom.xml +++ b/pom.xml @@ -23,6 +23,7 @@ jooq-spring json-path mockito + jee7schedule querydsl From a156fa85908f8aaa44f8ba7a4af2d2699cd47afa Mon Sep 17 00:00:00 2001 From: Raquel Garrido Crespo Date: Wed, 8 Jun 2016 23:13:45 +0200 Subject: [PATCH 19/26] Introduction to XPath --- pom.xml | 2 +- xml/pom.xml | 139 +++++++++++++ .../java/com/baeldung/xml/DefaultParser.java | 193 ++++++++++++++++++ .../com/baeldung/xml/DefaultParserTest.java | 83 ++++++++ xml/src/test/resources/example.xml | 32 +++ xml/src/test/resources/example_namespace.xml | 32 +++ 6 files changed, 480 insertions(+), 1 deletion(-) create mode 100644 xml/pom.xml create mode 100644 xml/src/main/java/com/baeldung/xml/DefaultParser.java create mode 100644 xml/src/test/java/com/baeldung/xml/DefaultParserTest.java create mode 100644 xml/src/test/resources/example.xml create mode 100644 xml/src/test/resources/example_namespace.xml diff --git a/pom.xml b/pom.xml index 7a51347af6..ce7dfca62f 100644 --- a/pom.xml +++ b/pom.xml @@ -66,7 +66,7 @@ spring-thymeleaf spring-zuul jsf - + xml diff --git a/xml/pom.xml b/xml/pom.xml new file mode 100644 index 0000000000..fc158901e6 --- /dev/null +++ b/xml/pom.xml @@ -0,0 +1,139 @@ + + 4.0.0 + com.baeldung + xml + 0.1-SNAPSHOT + + xml + + + + + + com.google.guava + guava + ${guava.version} + + + + commons-io + commons-io + 2.4 + + + + org.apache.commons + commons-collections4 + 4.0 + + + + org.apache.commons + commons-lang3 + ${commons-lang3.version} + + + + + + + junit + junit + ${junit.version} + test + + + + org.hamcrest + hamcrest-core + ${org.hamcrest.version} + test + + + org.hamcrest + hamcrest-library + ${org.hamcrest.version} + test + + + + org.mockito + mockito-core + ${mockito.version} + test + + + + + + xml + + + src/main/resources + true + + + + + + + org.apache.maven.plugins + maven-compiler-plugin + ${maven-compiler-plugin.version} + + 1.8 + 1.8 + + + + + org.apache.maven.plugins + maven-surefire-plugin + ${maven-surefire-plugin.version} + + + + + + + + + 4.3.11.Final + 5.1.38 + + + 2.7.2 + + + 1.7.13 + 1.1.3 + + + 5.1.3.Final + + + 19.0 + 3.4 + + + 1.3 + 4.12 + 1.10.19 + + 4.4.1 + 4.5 + + 2.9.0 + + + 3.5.1 + 2.6 + 2.19.1 + 2.7 + 1.4.18 + + + + + diff --git a/xml/src/main/java/com/baeldung/xml/DefaultParser.java b/xml/src/main/java/com/baeldung/xml/DefaultParser.java new file mode 100644 index 0000000000..89326f45c9 --- /dev/null +++ b/xml/src/main/java/com/baeldung/xml/DefaultParser.java @@ -0,0 +1,193 @@ +package com.baeldung.xml; + +import java.io.File; +import java.io.FileInputStream; +import java.io.IOException; +import java.util.Iterator; + +import javax.xml.namespace.NamespaceContext; +import javax.xml.parsers.DocumentBuilder; +import javax.xml.parsers.DocumentBuilderFactory; +import javax.xml.parsers.ParserConfigurationException; +import javax.xml.xpath.XPath; +import javax.xml.xpath.XPathConstants; +import javax.xml.xpath.XPathExpressionException; +import javax.xml.xpath.XPathFactory; + +import org.w3c.dom.Document; +import org.w3c.dom.Node; +import org.w3c.dom.NodeList; +import org.xml.sax.SAXException; + +public class DefaultParser { + + private File file; + + public DefaultParser(File file) { + this.file = file; + } + + public NodeList getFirstLevelNodeList() { + NodeList nodeList = null; + try { + FileInputStream fileIS = new FileInputStream(this.getFile()); + DocumentBuilderFactory builderFactory = DocumentBuilderFactory.newInstance(); + + DocumentBuilder builder = builderFactory.newDocumentBuilder(); + + Document xmlDocument = builder.parse(fileIS); + + XPath xPath = XPathFactory.newInstance().newXPath(); + + String expression = "/Tutorials/Tutorial"; + + nodeList = (NodeList) xPath.compile(expression).evaluate(xmlDocument, XPathConstants.NODESET); + + } catch (SAXException | IOException | ParserConfigurationException | XPathExpressionException e) { + e.printStackTrace(); + } + return nodeList; + } + + public Node getNodeById(String id) { + Node node = null; + try { + DocumentBuilderFactory builderFactory = DocumentBuilderFactory.newInstance(); + + DocumentBuilder builder = builderFactory.newDocumentBuilder(); + + Document xmlDocument = builder.parse(this.getFile()); + + XPath xPath = XPathFactory.newInstance().newXPath(); + + String expression = "/Tutorials/Tutorial[@tutId=" + "'" + id + "'" + "]"; + + node = (Node) xPath.compile(expression).evaluate(xmlDocument, XPathConstants.NODE); + + } catch (SAXException | IOException | ParserConfigurationException | XPathExpressionException e) { + e.printStackTrace(); + } + return node; + } + + public NodeList getNodeListByTitle(String name) { + NodeList nodeList = null; + try { + DocumentBuilderFactory builderFactory = DocumentBuilderFactory.newInstance(); + + DocumentBuilder builder = builderFactory.newDocumentBuilder(); + + Document xmlDocument = builder.parse(this.getFile()); + + this.clean(xmlDocument); + + XPath xPath = XPathFactory.newInstance().newXPath(); + + String expression = "//Tutorial[descendant::title[text()=" + "'" + name + "'" + "]]"; + + nodeList = (NodeList) xPath.compile(expression).evaluate(xmlDocument, XPathConstants.NODESET); + + } catch (SAXException | IOException | ParserConfigurationException | XPathExpressionException e) { + e.printStackTrace(); + } + return nodeList; + } + + public NodeList getElementsByDate(String date) { + NodeList nodeList = null; + + try { + DocumentBuilderFactory builderFactory = DocumentBuilderFactory.newInstance(); + + DocumentBuilder builder = builderFactory.newDocumentBuilder(); + + Document xmlDocument = builder.parse(this.getFile()); + + this.clean(xmlDocument); + + XPath xPath = XPathFactory.newInstance().newXPath(); + + String expression = "//Tutorial[number(translate(date, '/', '')) > " + date + "]"; + + nodeList = (NodeList) xPath.compile(expression).evaluate(xmlDocument, XPathConstants.NODESET); + + } catch (SAXException | IOException | ParserConfigurationException | XPathExpressionException e) { + e.printStackTrace(); + } + return nodeList; + } + + public NodeList getAllTutorials() { + NodeList nodeList = null; + try { + DocumentBuilderFactory builderFactory = DocumentBuilderFactory.newInstance(); + builderFactory.setNamespaceAware(true); + DocumentBuilder builder = builderFactory.newDocumentBuilder(); + + Document xmlDocument = builder.parse(this.getFile()); + + this.clean(xmlDocument); + + XPath xPath = XPathFactory.newInstance().newXPath(); + + xPath.setNamespaceContext(new NamespaceContext() { + + @Override + public Iterator getPrefixes(String arg0) { + return null; + } + + @Override + public String getPrefix(String arg0) { + return null; + } + + @Override + public String getNamespaceURI(String arg0) { + if ("bdn".equals(arg0)) { + return "http://www.baeldung.com/full_archive"; + } + return null; + } + }); + + String expression = "/bdn:Tutorials/bdn:Tutorial"; + + nodeList = (NodeList) xPath.compile(expression).evaluate(xmlDocument, XPathConstants.NODESET); + + } catch (SAXException | IOException | ParserConfigurationException | XPathExpressionException e) { + e.printStackTrace(); + } + return nodeList; + } + + private void clean(Node node) { + + NodeList childs = node.getChildNodes(); + + for (int n = childs.getLength() - 1; n >= 0; n--) { + Node child = childs.item(n); + short nodeType = child.getNodeType(); + + if (nodeType == Node.ELEMENT_NODE) + clean(child); + else if (nodeType == Node.TEXT_NODE) { + String trimmedNodeVal = child.getNodeValue().trim(); + if (trimmedNodeVal.length() == 0) + node.removeChild(child); + else + child.setNodeValue(trimmedNodeVal); + } else if (nodeType == Node.COMMENT_NODE) + node.removeChild(child); + } + } + + public File getFile() { + return file; + } + + public void setFile(File file) { + this.file = file; + } + +} diff --git a/xml/src/test/java/com/baeldung/xml/DefaultParserTest.java b/xml/src/test/java/com/baeldung/xml/DefaultParserTest.java new file mode 100644 index 0000000000..451917a5da --- /dev/null +++ b/xml/src/test/java/com/baeldung/xml/DefaultParserTest.java @@ -0,0 +1,83 @@ +package com.baeldung.xml; + +import static org.junit.Assert.*; + +import java.io.File; + +import org.junit.Test; +import org.w3c.dom.Node; +import org.w3c.dom.NodeList; + +/** + * Unit test for simple App. + */ +public class DefaultParserTest { + + final String fileName = "src/test/resources/example.xml"; + + final String fileNameSpace = "src/test/resources/example_namespace.xml"; + + DefaultParser parser; + + @Test + public void getFirstLevelNodeListTest() { + parser = new DefaultParser(new File(fileName)); + NodeList list = parser.getFirstLevelNodeList(); + + assertNotNull(list); + assertTrue(list.getLength() == 4); + } + + @Test + public void getNodeListByTitle() { + parser = new DefaultParser(new File(fileName)); + NodeList list = parser.getNodeListByTitle("XML"); + + for (int i = 0; null != list && i < list.getLength(); i++) { + Node nod = list.item(i); + assertEquals("java", nod.getAttributes().getNamedItem("type").getTextContent()); + assertEquals("02", nod.getAttributes().getNamedItem("tutId").getTextContent()); + assertEquals("XML", nod.getFirstChild().getTextContent()); + assertEquals("title", nod.getFirstChild().getNodeName()); + assertEquals("description", nod.getChildNodes().item(1).getNodeName()); + assertEquals("Introduction to XPath", nod.getChildNodes().item(1).getTextContent()); + assertEquals("author", nod.getLastChild().getNodeName()); + assertEquals("XMLAuthor", nod.getLastChild().getTextContent()); + } + } + + @Test + public void getNodeById() { + parser = new DefaultParser(new File(fileName)); + Node node = parser.getNodeById("03"); + + String type = node.getAttributes().getNamedItem("type").getNodeValue(); + assertEquals("android", type); + } + + @Test + public void getNodeListByDate(){ + parser = new DefaultParser(new File(fileName)); + NodeList list = parser.getNodeListByTitle("04022016"); + for (int i = 0; null != list && i < list.getLength(); i++) { + Node nod = list.item(i); + assertEquals("java", nod.getAttributes().getNamedItem("type").getTextContent()); + assertEquals("04", nod.getAttributes().getNamedItem("tutId").getTextContent()); + assertEquals("Spring", nod.getFirstChild().getTextContent()); + assertEquals("title", nod.getFirstChild().getNodeName()); + assertEquals("description", nod.getChildNodes().item(1).getNodeName()); + assertEquals("Introduction to Spring", nod.getChildNodes().item(1).getTextContent()); + assertEquals("author", nod.getLastChild().getNodeName()); + assertEquals("SpringAuthor", nod.getLastChild().getTextContent()); + } + } + + @Test + public void getNodeListWithNamespace(){ + parser = new DefaultParser(new File(fileNameSpace)); + NodeList list = parser.getAllTutorials(); + assertNotNull(list); + assertTrue(list.getLength() == 4); + } + +} diff --git a/xml/src/test/resources/example.xml b/xml/src/test/resources/example.xml new file mode 100644 index 0000000000..d546dd137b --- /dev/null +++ b/xml/src/test/resources/example.xml @@ -0,0 +1,32 @@ + + + + Guava + Introduction to Guava + 04/04/2016 + GuavaAuthor + + + XML + Introduction to XPath + 04/05/2016 + XMLAuthor + + + Android + Introduction to Android + 04/03/2016 + AndroidAuthor + + + Spring + Introduction to Spring + 04/02/2016 + SpringAuthor + +
Spring Core
+
Spring MVC
+
Spring Batch
+
+
+
\ No newline at end of file diff --git a/xml/src/test/resources/example_namespace.xml b/xml/src/test/resources/example_namespace.xml new file mode 100644 index 0000000000..26131302ea --- /dev/null +++ b/xml/src/test/resources/example_namespace.xml @@ -0,0 +1,32 @@ + + + + Guava + Introduction to Guava + 04/04/2016 + GuavaAuthor + + + XML + Introduction to XPath + 04/05/2016 + XMLAuthor + + + Android + Introduction to Android + 04/03/2016 + AndroidAuthor + + + Spring + Introduction to Spring + 04/02/2016 + SpringAuthor + +
Spring Core
+
Spring MVC
+
Spring Batch
+
+
+
\ No newline at end of file From 815933447beea629ad92f7a7e8584cc8b8c406b9 Mon Sep 17 00:00:00 2001 From: toubou91 Date: Thu, 9 Jun 2016 00:22:06 +0200 Subject: [PATCH 20/26] Updates for @ModelAttribute example --- .../baeldung/web/controller/EmployeeController.java | 11 ++++++++++- .../src/main/webapp/WEB-INF/view/employeeView.jsp | 1 + 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/spring-mvc-java/src/main/java/com/baeldung/web/controller/EmployeeController.java b/spring-mvc-java/src/main/java/com/baeldung/web/controller/EmployeeController.java index 38272b23cb..2166c00873 100644 --- a/spring-mvc-java/src/main/java/com/baeldung/web/controller/EmployeeController.java +++ b/spring-mvc-java/src/main/java/com/baeldung/web/controller/EmployeeController.java @@ -3,10 +3,11 @@ package com.baeldung.web.controller; import java.util.HashMap; import java.util.Map; -import com.baeldung.model.Employee; import org.springframework.stereotype.Controller; +import org.springframework.ui.Model; import org.springframework.ui.ModelMap; import org.springframework.validation.BindingResult; +import org.springframework.web.bind.annotation.ControllerAdvice; import org.springframework.web.bind.annotation.ModelAttribute; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestMapping; @@ -14,7 +15,10 @@ import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.ResponseBody; import org.springframework.web.servlet.ModelAndView; +import com.baeldung.model.Employee; + @Controller +@ControllerAdvice public class EmployeeController { Map employeeMap = new HashMap<>(); @@ -43,4 +47,9 @@ public class EmployeeController { return "employeeView"; } + @ModelAttribute + public void addAttributes(final Model model) { + model.addAttribute("msg", "Welcome to the Netherlands!"); + } + } diff --git a/spring-mvc-java/src/main/webapp/WEB-INF/view/employeeView.jsp b/spring-mvc-java/src/main/webapp/WEB-INF/view/employeeView.jsp index 1457bc5fc8..9a9b879a35 100644 --- a/spring-mvc-java/src/main/webapp/WEB-INF/view/employeeView.jsp +++ b/spring-mvc-java/src/main/webapp/WEB-INF/view/employeeView.jsp @@ -6,6 +6,7 @@

Submitted Employee Information

+

${msg}

From 7eabc6cd2578b0b5b46fe6885db27e14cbc46932 Mon Sep 17 00:00:00 2001 From: reymalahay Date: Wed, 1 Jun 2016 06:47:26 -0600 Subject: [PATCH 21/26] Code and related files for the dependency injection demos. --- .gitignore | 2 + dependency-injection/.gitignore | 12 +++ dependency-injection/build.gradle | 43 ++++++++++ .../docs/autowired-name-demo-classdiagram.png | Bin 0 -> 48700 bytes .../docs/autowired-type-demo-classdiagram.png | Bin 0 -> 23197 bytes .../docs/autowired-type-demo-classdiagram.xml | 1 + .../docs/inject-demo-classdiagram.png | Bin 0 -> 38729 bytes .../docs/inject-field-demo-classdiagram.png | Bin 0 -> 19402 bytes .../docs/inject-field-demo-classdiagram.xml | 1 + .../docs/inject-name-demo-classdiagram.png | Bin 0 -> 23358 bytes .../docs/inject-name-demo-classdiagram.xml | 1 + .../inject-qualifier-demo-classdiagram.png | Bin 0 -> 37170 bytes .../inject-qualifier-demo-classdiagram.xml | 1 + .../docs/resource-demo-classdiagram.png | Bin 0 -> 46095 bytes .../docs/resource-field-demo-classdiagram.png | Bin 0 -> 17692 bytes .../docs/resource-field-demo-classdiagram.xml | 1 + ...source-method-byname-demo-classdiagram.png | Bin 0 -> 29579 bytes .../resource-method-demo-classdiagram.png | Bin 0 -> 19905 bytes .../resource-method-demo-classdiagram.xml | 1 + dependency-injection/pom.xml | 81 ++++++++++++++++++ .../autowired/FieldAutowiredDemo.java | 27 ++++++ .../autowired/FieldAutowiredNameDemo.java | 27 ++++++ .../FieldQualifierAutowiredDemo.java | 39 +++++++++ .../AnotherArbitraryDependency.java | 10 +++ .../dependency/ArbitraryDependency.java | 10 +++ .../YetAnotherArbitraryDependency.java | 10 +++ .../inject/FieldByNameInjectDemo.java | 30 +++++++ .../com/baeldung/inject/FieldInjectDemo.java | 27 ++++++ .../inject/FieldQualifierInjectDemo.java | 40 +++++++++ .../resource/FieldResourceInjectionDemo.java | 25 ++++++ .../MethodByQualifierResourceDemo.java | 43 ++++++++++ .../resource/MethodByTypeResourceDemo.java | 30 +++++++ .../resource/MethodResourceInjectionDemo.java | 29 +++++++ .../baeldung/resource/NamedResourceTest.java | 27 ++++++ .../QualifierResourceInjectionDemo.java | 35 ++++++++ .../resource/SetterResourceInjectionDemo.java | 29 +++++++ ...applicationContextTest-@Autowired-Name.xml | 12 +++ ...cationContextTest-@Autowired-Qualifier.xml | 12 +++ ...applicationContextTest-@Autowired-Type.xml | 10 +++ .../applicationContextTest-@Inject-Name.xml | 11 +++ ...plicationContextTest-@Inject-Qualifier.xml | 12 +++ .../applicationContextTest-@Inject-Type.xml | 10 +++ ...licationContextTest-@Resource-NameType.xml | 12 +++ ...icationContextTest-@Resource-Qualifier.xml | 16 ++++ 44 files changed, 677 insertions(+) create mode 100644 dependency-injection/.gitignore create mode 100644 dependency-injection/build.gradle create mode 100644 dependency-injection/docs/autowired-name-demo-classdiagram.png create mode 100644 dependency-injection/docs/autowired-type-demo-classdiagram.png create mode 100644 dependency-injection/docs/autowired-type-demo-classdiagram.xml create mode 100644 dependency-injection/docs/inject-demo-classdiagram.png create mode 100644 dependency-injection/docs/inject-field-demo-classdiagram.png create mode 100644 dependency-injection/docs/inject-field-demo-classdiagram.xml create mode 100644 dependency-injection/docs/inject-name-demo-classdiagram.png create mode 100644 dependency-injection/docs/inject-name-demo-classdiagram.xml create mode 100644 dependency-injection/docs/inject-qualifier-demo-classdiagram.png create mode 100644 dependency-injection/docs/inject-qualifier-demo-classdiagram.xml create mode 100644 dependency-injection/docs/resource-demo-classdiagram.png create mode 100644 dependency-injection/docs/resource-field-demo-classdiagram.png create mode 100644 dependency-injection/docs/resource-field-demo-classdiagram.xml create mode 100644 dependency-injection/docs/resource-method-byname-demo-classdiagram.png create mode 100644 dependency-injection/docs/resource-method-demo-classdiagram.png create mode 100644 dependency-injection/docs/resource-method-demo-classdiagram.xml create mode 100644 dependency-injection/pom.xml create mode 100644 dependency-injection/src/test/java/com/baeldung/autowired/FieldAutowiredDemo.java create mode 100644 dependency-injection/src/test/java/com/baeldung/autowired/FieldAutowiredNameDemo.java create mode 100644 dependency-injection/src/test/java/com/baeldung/autowired/FieldQualifierAutowiredDemo.java create mode 100644 dependency-injection/src/test/java/com/baeldung/dependency/AnotherArbitraryDependency.java create mode 100644 dependency-injection/src/test/java/com/baeldung/dependency/ArbitraryDependency.java create mode 100644 dependency-injection/src/test/java/com/baeldung/dependency/YetAnotherArbitraryDependency.java create mode 100644 dependency-injection/src/test/java/com/baeldung/inject/FieldByNameInjectDemo.java create mode 100644 dependency-injection/src/test/java/com/baeldung/inject/FieldInjectDemo.java create mode 100644 dependency-injection/src/test/java/com/baeldung/inject/FieldQualifierInjectDemo.java create mode 100644 dependency-injection/src/test/java/com/baeldung/resource/FieldResourceInjectionDemo.java create mode 100644 dependency-injection/src/test/java/com/baeldung/resource/MethodByQualifierResourceDemo.java create mode 100644 dependency-injection/src/test/java/com/baeldung/resource/MethodByTypeResourceDemo.java create mode 100644 dependency-injection/src/test/java/com/baeldung/resource/MethodResourceInjectionDemo.java create mode 100644 dependency-injection/src/test/java/com/baeldung/resource/NamedResourceTest.java create mode 100644 dependency-injection/src/test/java/com/baeldung/resource/QualifierResourceInjectionDemo.java create mode 100644 dependency-injection/src/test/java/com/baeldung/resource/SetterResourceInjectionDemo.java create mode 100644 dependency-injection/src/test/resources/applicationContextTest-@Autowired-Name.xml create mode 100644 dependency-injection/src/test/resources/applicationContextTest-@Autowired-Qualifier.xml create mode 100644 dependency-injection/src/test/resources/applicationContextTest-@Autowired-Type.xml create mode 100644 dependency-injection/src/test/resources/applicationContextTest-@Inject-Name.xml create mode 100644 dependency-injection/src/test/resources/applicationContextTest-@Inject-Qualifier.xml create mode 100644 dependency-injection/src/test/resources/applicationContextTest-@Inject-Type.xml create mode 100644 dependency-injection/src/test/resources/applicationContextTest-@Resource-NameType.xml create mode 100644 dependency-injection/src/test/resources/applicationContextTest-@Resource-Qualifier.xml diff --git a/.gitignore b/.gitignore index 210807d09e..7ebd658281 100644 --- a/.gitignore +++ b/.gitignore @@ -9,6 +9,7 @@ .settings/ .prefs *.prefs +.metadata/ # Intellij .idea/ @@ -23,3 +24,4 @@ log/ target/ spring-openid/src/main/resources/application.properties +.recommenders/ diff --git a/dependency-injection/.gitignore b/dependency-injection/.gitignore new file mode 100644 index 0000000000..6531dfc93f --- /dev/null +++ b/dependency-injection/.gitignore @@ -0,0 +1,12 @@ +RemoteSystemsTempFiles/ +.classpath +.project +.settings/ +bin/ +.metadata/ +docs/*.autosave +docs/*.autosave +.recommenders/ +build/ +.gradle/ +.DS_Store diff --git a/dependency-injection/build.gradle b/dependency-injection/build.gradle new file mode 100644 index 0000000000..968636154d --- /dev/null +++ b/dependency-injection/build.gradle @@ -0,0 +1,43 @@ +apply plugin: 'java' +apply plugin: 'eclipse' + +allprojects { + apply plugin: 'java' + sourceCompatibility = 1.6 + targetCompatibility = 1.6 +} + +repositories { + mavenCentral() +} + +sourceSets { + main { + resources.srcDirs = ["src/main/java","src/main/resources"] + } + test { + resources.srcDirs = ["src/main/java", "src/main/resources", "src/test/resources"] + } +} + +configurations { + compile +} + +test { + testLogging { + events 'started', 'passed' + } +} + +dependencies { + testCompile('junit:junit:4.11') + testCompile('org.mockito:mockito-all:1.10.19') + testCompile group: 'org.springframework', name: 'spring-test', version: '4.2.6.RELEASE' + testCompile group: 'org.springframework', name: 'spring-core', version: '4.2.6.RELEASE' + testCompile group: 'org.springframework', name: 'spring-beans', version: '4.2.6.RELEASE' + testCompile group: 'org.springframework', name: 'spring-context', version: '4.2.6.RELEASE' + testCompile group: 'javax.inject', name: 'javax.inject', version: '1' + + testRuntime('junit:junit:4.11') +} diff --git a/dependency-injection/docs/autowired-name-demo-classdiagram.png b/dependency-injection/docs/autowired-name-demo-classdiagram.png new file mode 100644 index 0000000000000000000000000000000000000000..f367fdbf415f93423568c1df91bc5e1e693b0f8d GIT binary patch literal 48700 zcmb@u1yoht_cn?Nf&z+^w1}c~Hz-O-ib$t)dFZZJ1wlHbOF==pq*Liux{>bgzH=Y{ z-yPo=-?-zBamVH7?-kEEd+)W^UTe;0KF>4H#}{%EH?Z$uV_;z1crN+uB?iW&8VrmJ zJ6IRt6_RV8Q6O$-cbjOWjuymA^|8FO~J-SqbSd@1oyfEUV++U_krwZSzCtmouY1%a}8 zH>wFn@)Inkc=HP@TKJoclH9}Qk7u0qj0udlEmma7334eM!UKOcHj)>Ayg`(9ISk{% z#ml0^SeN;KXY-YNdiIukCXjZRcwNSFsySOq&q-fequKOHE|>aauLT3sow+S`Q}i+> z<~BX*N^B}0Ij;B4bqoyF*qs0kzgAlK1cqc6{HK*mX_96 zV+@S{6r7J1)10wN-p$R;l}vcVm0Z1mfsqs9X1+1g5-#Yc@kC8+C|q8+Wsn0-^SwQq z?L8d7u)0cE$%UNp@?Cm*U*wt?m%kPkD(1~yg^$tSxPE;DA9clM?&=~bjPeyD5f0vD z|KXSC$Y4_LrqxXmJ@0CFh0kJK6mvoT`Zr8f{c+?nN|QEaAA)q0Gp&^=F$X^-wa#Hv zp0?h&siYKv$=gU#O#K1V|aJ#GlG88D|f= zWU-Vca%xIV7~qkuY;I*`Wnf@nV`KCB_3Kx!KBbywWQ^l?b#!%T>tO32z{OQazTOr) zNW2*u9Zm0*H)KIMySuw9>YJ{ZcBiQ>Og2HlkvRl=YYwX(9}L*-GL zm$&gjva4=)uAX{8ON@oe7iyOXG*~s zs>W{drKqT=g@uK>y87RQRz<&LryZ_VqDrz&TNafRob{SLCm!CJ1S#~ASe75KFB!=; zjg_&qsV>OHNLwy%o9*V5{UCTQO^b(%tE{3TAtp9tQ9PgIIWBmzQlscoN8^Qsjm=K9 zyiuKjp%G#~)2Gfzb=DFLr->nur`LBz4j*xi|i}KBZtE^-wyB zxzB!V(#p=>o{O7XyV5B?BO@a#%c8-L@PdO`K=YCOyvpx)Im>gmME2S5Yc=bySCAB_ zk=CD%vLFljZ$^lKoac7j1o_qq4ojtOkPAE?{qA>cFCLvaY`@VOsFINBfCa!MyS%#k z#>{NE%yzy%TZ2WrvedNaKCKYm$YMx4VNTW+8n0AS_Aj`uEc)HvZL@dk`i}k$olPiL zyUL}x&~~n!EyyQ+-CWLR?lIpCYlfo>yk3;EEF>gkZ*NcJ|1Be9>Ev)*z+q)!c{z^t zwJ3E0Zj0t*t2(}?fbPnw7e6598WMf)Ue2R*~q4D$c3kV~4AjiqY1uG36UQ76c z`MJ5H!=tyCFkw~P7W??|V~mh%aqd?#O3K8Tn4z&T_od!+F7y6)VfXScUuZZuI6~wG za&=g|RP*)3U>F)2aXHJ^u3hu?_NJ`5KJu$-f82Fv;ZJ|Ra#R~35m97JOiV}!YqBe; zJ8?%xhjC|oncHDOs;RZLwX?G`4Gm2kkLB9>x=yLpYf;g6q0Jf^8q(6zPen!7%H}DN zy;|$E*)7d-jb_|^Uu*NQesrwDaecTbv#5wmP|$5{w2Z^J^ZK=Gn`g;6%kSU6*C;_{ zfB*jCHXV%f?%iMV65Mf2930z|uxXB0OIUQOHMO*udbaZts<&DhM19-a+wp`CKBuON z5A5>U&KVdRV`5^GaqwI;ecc()N9Dfr=gU){t5>hyx^;`vdFCeVFg&f4bxiY;((e_Dj8)xz({@VWLQEBaz^?7}Os@UaY5zUTRwY#g_eiV6-5zktAc*?i)=ckgZ% zy--ltg!^6_s~DKIf#4<+!)~}a)nFr3`g$EU&G(Gq{{CX)u0$BgKz~0r&7C`U3JMF2 z+oKgAE2ya*Zq(tiXcV_EGzC$3Ts>1dTY8Md`@sNpWbzuQtl$SgR9*E_5 zrL&dQ?~2r%Wh#$@FE`(1W@d_<9q6x{F-J+~q%bypd>|A3;>8QLm#UjETjatwzke#7#(7#9(nl& z1rdpoi+GHVesUA`_^^#mB?D@fmg^Pk)gyz0CZBe8b}R<-CcD2$k4IFLmydg%pYH8B zq&&kNb%6lO9oKQvnh>u)*4xXOEY}eTkHBKIG(R)b{27zQNU`ji>0Jt5tG^qQbr;6l z7Ahb^u2*gcZ4zTF!b2exWz;PF?c4UDyquq=zS4Qy?Ns$&4)N zs;R9_Nkl|MOl({@G>UR`bv=eJ{ z0+DeWu#g`5>CJS$7Kl(8?C!orMket3*JYnN>$8(Xn4Q$r)aK^qS`8BmivVBWkd(4F zZ{9>PYh~o*cr1MJxmXtU$MH{hcY)*jcyV#@_wV2H@>rFWTwPoYSa67$uVZ7Ip-|lG zHG{u@>lUfccO}Uq>#`KLKSyg>VXKbn?03ox+;~-0m2@PdTA7WZjEszqj*hA6;?eFh z0|NswllqL-(5wwajpMZn78;r_U%pHRd!Fc1tAxeJGkS$6Qj7O4wni|d$;8;efJ??* z+9s{Yh23}s1YDmnefsoiW@g4Dw%B^Qak?p(O2C1!76}S{eSKRjtgx_4#vC*tW6H{Q zl-n(?dL=ofk$%a}W?k4rjv4%gg=zu*($m{$m1QdG+cx6_tqf zRQ=SHp2*_RLMN&Or$_r<9Sl0JwAAV6yDRzm`3edOhlhuOfq{+Y4i}1HpS^hb@~%&& zzrR0^#o+JZ;X8jJ0sGTR1bxrohX8y9hiGPY_8JW%QCldjgu&M!fB)r$1rro15kfrv z)Kr5%1X76T9^-fJA<#+F7)~9VN+IB2aeB0S^X5%>8=jhSrhRkC)wtMLPFaSB4?hM6 z6N}b2HZrT`{ar1Ype!clD^lrvi(A>_jYHhn*oaLtH8n-VtXcZH?gM~K2v09xhDAo+ z5BB%-v(s8%S-HNUEj}UU?p~E@>QBTJ%l#&n@wuEFcQHc}n|>oa6?1d*C`Ps9<)au5 zV=sKgRGG~}A)0>^8ZL0SI#igJks+m|ROaJbH_19jA6HaTVjgQW{?)44@QV<=-`xj% zBpRxigXv|P$;o$Rdjja#FIv2YxYhUqB`*G9WR<%=j%*Kx(9qyd?2V5@#28}9k4*y` z)Y>{{gRuX6WfrCkepMZ zM={$LMJN`!9LSp>C)=~)P%)bEqUT3e79&mlM}h}4x9G%OBIN_nL&z37UMYkjtgrLP zzsLP*!H^w^YB2}GN#etP3KGMYKFn)fs6{E0zd(O&4_@B6xb zwyRQ?Xc*d@9;CfK_~^2g6%YY%pgc!Dp4a+Wf{UZUb7Pl4rOtopj~wrIOA z%jFiMOi&~E!50kK%w?hNr_IFDwV=CZ7wL_>Lm*rdU{Eegx<;s0yv)& z!;FgBhD9c)r0DDEsRORi(3qZ@V%DxCxpj-(dCLHOsRP1Wx2Ej)liapiAX=79+r4-Z zGKQkEkrJ1b^lh76T3pN@S!IrD6TCSjQ%(Cl!wlXh|INh0qH?=|L={qSVq)Uozq%>3 zVhRB>cXV-x{KbMUlQGC+dLXE-XA$r^glembvDnlYhQZZ6NKcWGkv(bh%jF)2TeE=Z zqoYaCBiVf&kR6+nDDm9M=>Q(SWyLCY*;1Y-ln#)NVPXL=*<3R&>x{+Zi}_jlq0qPs z5cqPrFa)HV_GW96ou^nhIAn{4WZP_l_l>S2IOXo$yHi`UZCqSjFx`#(c3X6k&heq4 z`Q`&T;Sc18R~^!NVm^H`7=Jbv*P3JsWngC0Y(s^dj7&f>{Wwi&YHDMJjh)?(jEuQA zShGRy9)KF%;h_L#AQWv+6mor*5KAUv_4mJwjIA4$wHh1S!xMS?>_^P7)4lLr_f}w6 zMAE^HyOymMk9grfkc$tg_(9Sp8jh4uIq#`i#_b_ozfy8PKi$W?dez|L$m)2N>pq!f z<)jvbb2X(ttqO-0r4c|ikkeM@FY@#A15^hvJ#WPe&(%=%dS#E0>t1t1#K_19d?Y)= z%*JNRSAApql|j7D z58Dt5x}H>7K#@Waq+zEOqsETbD%NwfD*7w7+G9Ahm{lN2i-|#?a#ursVjPS5`}-lk z0zP&*KRXq0TsxTwm%l9rDB3|(^p`LHSc#<$d=L(R!we0-wav0`&H6ICO2UpY?Uf<<_vk9Q^wEiY5?4|L*$NjYXC=UF zA3Q3DiZMXd00@bhH8*kujXTL{p6TmPHwKacx`4`7K1ujZ4t4NAjuyj!kuW?H$dz_l zc-O9}Dxc?>o4$Su{#_A~b8KeUW-=-y6nR@r!Xl#bJh7IR z_8&tb$>{9#cveko;DLN1IVq|0+9=;)*Tu$4EA%?%jfjhb+F^Wbtm@53@$cU+VqAPi zO(iJI#I`8clP(&(uv{PFrEfNyK>W>)N2IyA?WeBi)zKkOf2Ujgo|(AzWLx%yi_X6%#>!Hpz#8vfA_B5)=Ud5uJ5_IP?yTd%I?;9 zaQ~~+Snm$!87sbgiH(EP*4hdMPP=^oY2#dLdU`r6Fo_`YP}-lOSYsJ#RW zYVOxJ>8RFAB_pdgWd_IPIcce>cR2o4ztaOk`=g4lUfqjQA^4x9tlO8NG|t6D)CK@; zR_dmxuUetenEU=%b*$2Dx`z+bzkgrIsaR7lwum_xnSFS1aR*jC_r86X(0;Uz+x3$I zpWDq<0R=cT^?rm5b6rUyhOM^`*=T9?XImp0w-s(TsQMTTUg5dS!2`5LPMGud+!ZI~ zo*%G^BR_rOP3WAPGopD0Ob9@g*RLl-WIG^y3>6pxm;k;8b{qpUGq*}e6a3@JlP3`K zHa9m5jXEANGG52S<5~Y8WRdm~^6>T2)6>%{SFQlIvZ+{MD1|?OdB2#d!$x~|1;@q3 z1&SC=W)%mAVudHdft8hl{tZ(O6;KNX#xS8-4fCbL`6RrJtN`iGhr*NYPt z6HJ(@q$g4eUh9Et@p5VSdd;f}9|SW^V^d8FxWp9N{hzw3!2XU+ZTX0qkvs+sfo^Jf|jUY8vcMa7=O?RhR)92^{u;;_y4Xh4u~NJ>UouobbZSESxCK~da8 z^M27+o#Yfr!yf8`K!8Y4x%W;?uy{$z$_54n{foI&v8f+x63kZSvy$m;9K87UNGH21 z9;OsH@A+m?Gr0P^T4>NFOB=OXND*YObKIS_wsCh>VP~EBf62_<9g-*Q@puPom@E zmd}%L{;?;aqlL7*yu2ZWHh%A%9dgMzBX0h#C}^7vBUMli=WsW?vMug1ms*MGa_VSy zPoZSw%{}$t3oAFZigU^KZIPsX;AU3z=bbe%q`3&fyWB^XKF0OeM>~sfY$L4vhK3gXZSFab?Pds}2l)$r)zU8sE^2>tEXY>Xv7pzh^AvNpFQBx%{yUk*M!uZ31+;5I|Ql z(($yEuz9uqAJYr?3aI6aQEh0Fmn1vxxQd?yAgyi#KU|v{A7TP}fYj7mgino7@LGVB zvGD`EN#z$hI_M&mBwOVCuuITO<0qtTZ+t)CadBWRGf0!mpJ2%!=-0b_Uwr2n3`G$Y4T7WIu>PV6Ai-7d_7J z-P?JlQp`d(4`#5%NYzBiOpgaXH0Y7;trPNSx@Z?$kZz;FT}}jqQOz=&lM<0)j)>eP zCY`Pt_J1U`_mf9?`SXDDuxW@GRjnc#6D5YLS!ff61Xq+gl0?ppj>={SIneogDb=_I zRRT%fC8{l#jAfpbtE$btkIMAeV+TkbJ3C%-TrmaFr%wUkLm_Q3Ia+3m1Y)wNKr*!n z&4uOGDh5}bv@C8^4~IFjt~7Zdn3n9^7Ry)97B}nV?3lIr*rhYZu~adJ;;R`-8O1A; z%I`43`Dz0!1cWTRvlD0khOoG}#FS;ZW^k8rO{%`%Jr&Oem;cT`zBRc0|p@Lnh>^`*+j zjRPrZzufN*;tQ0AjR?)ES>-c5Z`4HAh@M7fzAt*s*C;bG?nwV4o%vnhScdUDN+hJXllSOHcq}HWh3?&(0gh2lT6%eHjhTVr7-%F`k28lSun~2!%5w@S zZ=)z6$3{d%0F47A3Gfu+&M;CmWdjsXJimR$%_zVVo-2cFK6PwwhJQePf3>>-XiKQV ziJ8fZjl{$n6y=4KUcLI7vGnzM_|fq(ASoKJ!BT60s=U0alvp&%+3Iw74r`+^p`pND z3c-u2sw6j33@;lsFqliEMH zi>$k(QB;Yh8Ad4~Cnsl?T48EgnKKZl06H4!w*b+20QZkYL+QH0Mk|CvlaZNuzTqRH zS?zXscD#7d|kel+iug47rtC*_Q6h zMFZOAmX_x&@*a143bP`^!lrJ%({Y}SINv`%n~3Ey?@ScZc=3W&zcJwZcY0@#DONns z<~=!OkKrokOPRTd9EEjIBcr^0gY(iYl5fEB0MpOI&8^NDX*=I38^bOZNyTqx0_BBY zvP=U1?iU}*u-whEv9;6V{ivuYU_cRQ-KKM9V`8$9r**RLd0v86v+fid!8$NA%h&|O z|B*pC3qNVSQBRmPOQ)v#`*-AoKtB=^60+~Mnn6u89#M19z_K<`Qv-}tTH1WegQQQ3 zLyLCsARXbePFBDlO&^`794O*okXWL8l`{XMDH}sM<2UPEwAW%`VM!8nwt+{d zqB8LFJ!asJ8?fx897gnhHZTI9Y2mU8CGlEM!6Od#^&KoQY=fdwC0CnC z9wel*v5C`!WO~c$LnEl~WV+y3sN>{CPJfJ{&U=#1egH%NxZC#c)bup4*s<~Pf~MW~ zY!C4~51!K0rvwW>!V`>#GB&@7vT$S-&XOwOzTR3?RHSn;4*&`bB-= zKGxROa@}Sbi2P?09LGuLMc81FtZToTqAiXvG>HL1zg1CI;^OB&lGZuu2Da+>=m-%{ zrayHUxz2=2+!jNqeLPCRgL(paEE-%Y;rNh{jf3f6s7OFWP*GC4(k<=e|11p<~g5q@Cbv-82`TX>!UOv5FfmvTh zX=y1C9iSy^M8bn-6&5~&I8m&g4W+eV6~Gbk&jkfrKsUo(G^*EQm$E~?h!=D&5Og}6 zjSAcvK~*rZv%kEru77d!Pl^QO5>kLkUZqg=dY&%pV0JeEAy4tQVH6@LQ1qR19dS_L z0h<5{7nB(vK87iqqfjW|81eOB?^32!G5}O+;lY750rRNSvIR=-=;$c$o;1&tmHRQN z+#W;BqJ9A-^5HbqImzwY^%d_+2}fgZV>J`Ba&p6lQkPX@GbjO^K9 zfB%DmM^yjI3*gV9S&A=7taE-eaH%pHbXg^3<+YKLTu`fMY3qy%Z^R`g$j!s*naO8c zt>>N9a&8Hu+v26AO-W0WpoA%QTh^EeYXbO2GJk&b3`P{d0>l`<(*||d1)lF8K3sLy ztvsLCk(88#LcQG|*QbuYtF0}Zh1$s2xTL74>`(`>Ozk{_Wc=6bFa|ASuZ@m1V7)m6c|y?%`3LvmBdhXkZYX>0EOHuV`y0rUEXZ zyLXSoQWb11~v{1)H!x z1o-&@#kMax!|rW-0<^r~+RBP%p;2H!2Gliz%0dRmw1)Yr*x1;xw}IIw$CZHX3ltEQ z)87lE#)M+l6=UP8P4)FoD^@cP&cvTRYo-XzQqBx*0A;6rU!c=d4?u~o+ckqzb=^_* z3Wqm;7uBlyRMgc$+DfJO!0|&E5&z8!0{kf77p9}*B3NkxnFvuVsMv6*6LJ!bllUeuhMzg+tht|)P zl(sv^pB8&wfzo0I_df9Kn7HJF#c$&N#9rT_tZNs=lI=0L64f?qeLPOA|0()BL-*AN zDjxE8E$d8;6o?BfTIHY8-deAXOq>-$N`di(e5fHrYqy#%GjAneSQ6?brXf>K^>JKdyeBV zdjW%=o|mpZwx6S+m_j9OQHN0vX9qxr=M)GI5Py6oV2?trO$Uo~_SD{pN~}3QT|a)_ zg|MV`Uw-`9SxigP25lG|4?T;VY4aer!veyhftrOnDu+N+CZ2cGT<2IFnAB8L<;*_% z{k}8$bIQ2z@ScHz`Orik3!Oyv$nP9W2k91aT|lG|vuFcr^71xat@ksej5-PQ^15t< z`YR67$olf920c?tOCFW)>FF)4t&lMz@so>+`l4TEWtf3gM6-PjqKwU31Da=gddVF| z9NZTz;Ny79E+s52v&o>5_*5N$wzjilN7_m##wKBm$nvnS^yLcKHdaEXXCDUBB?&zu z+b5%<(t#6(h28bSvcid8_Vr%4fHD1tSEm5G^deB}va+&sVZdMLfBc9ia`GE1l{@au z`goQ29v4wfoUr>5(3XL@mVs=_zg#- zIXO9bR(iTAXeE}Gxj8wV?d_jtfhq#QHuPp$aZPV;{Jut*M`ZMl@T`KK8z|&iIXTrq6d@tG+1c4Q6V+Nkl_=G0MdV`9Y;A8lt`7GN4h}*_92qgMWKCN>s;#X} zI@@`mqy)>@ppqgwJiHLtBBZ_pDGlU4V0d7N?QN3B#w8>BYhys$lMxW~^z}h*Dlz$U zciKW+yb-W703&mhXLHoaxZAd@vlQh)hJ_pOHph_2&QIn=Ft1!8Z5u?YQ<4ixN~gIe zR|4cc&PEY=YF^~LY*b3|YAaMgZotcpjg0~A1F5RQ`Mx-SHP6!lPqpm+(o$YpAxIiP zIl9BA5)u-C&H+TaGjS#fnt5(zWo32sxLMJM4I3=wpSp6^Xf>+a`{@#DU!eE z-oIwK56DJP@C3Bdlm@+r%*>QF&rOkPs_yH2zB)ffY2?XCSw~kF9yT_=%g%SUIeyQx z6J$aF0zjz|dVfx<8Yr9dt*9Dc@ndwPNo-6jV`K09&&0{d$}-W@hg|BL zIB4WSQx%B9RyG|Z0GK7vPQbiBOU$2$?*4tbL_t3AQvg&6pA8n;Q`OcU52KR?B@uim z9n(Xwq7W*a-LMs5Ee?NI4@V_JY{kg6LJFt34q(;b`2z2TjHu*lVL<^@mO+r#Y+bl> zhGc?NfyCtI=8kQH4Mzp#6p)QGjcjn%vyw+>a$)oqh#HBY)&vFN(vCIO*SkS7UtL%=7BoG^Q6i1)onT^rViS_9;@a$%gf9DzP{0r0nhio$!6)Gkoh)(5uhgZcVEhi0i_Lb<44s)i|Kuf@~vnvj99MY;)02-WQ3`5uL2Tpfu_Q3P@UyU##g0n6vJqUn>KW-Dc5tjWNphdDOZtl zyJRJw!7sOUE*O>|z$-cMjM>}og5}}g+NkC(ikxj!+m;BZ;Gy!4GWDT2q8;o8irlvIL*ZT$5E9;(;0QtpqehWmWkma>NOz_Rn{(ILvx2h4| z)f(t!7E%R#hKup#0t*&u1&B14^=fsh_umx&Fuj z?*ROaj>@2Ut_b5qXCrvOZjvN3`xp>Ms_7gT8!*Wk8Gx#l559o-b6PQR8uX9U0=v?T zQ?+1P51+DmEnp%TO5DYAO=d9#ROn8nao0b$m5FRD=SMJiMne_!7lC;g)K=)Hr|Yy5 z3GN?Oa6?_am=25UQWBNLxT`$Y7ka<^9}T|4H$}5FO4dRpC`rQwsvutgl!KrU7zRv_ zTpaf*QB1{MPm_Nn(&YoW#F16pJn##lN;ImIA9#iMtCM`>+W^WLcF$%L71ik*vsh(C z#qB>5R7~2HgY=`N*3%FTZV?bPt?mu$OP*aua}sP=N_E&^xvG@iE+;+;N))f1NDHH&dy~`_X3}X z-;aojns{0B&**0)*L8l(tIi0x6;$std?)~8U3pGh!o?08m*(Zr?3kL7?ry!3k?^pvc3D8YKo!Hu zKNvA2R-@F0N$EODI<QZxgZvCyOF+@|SQK<(Jr6oeMii77xqzPz-AO3(>M>kRq5qoeWh@fOUWpNsmY zNCdaOulcB_oVmYs2kH(Hw*xCk>;O`d>4B^Q1PsQejh-OJO;wG$irBJID3xyBkR6!* zqyF^iQ{XN4Re(l^2yU4$5%urnl;8^7HUMfLN|yyFMP+4VMu7|C zDz!PcWPp4E6;xk^8~7LjqoEhG=Ge|kTUwIGBQK|&KN2Tb=hm=%mPH_AXJ zVmt<|Zq|#NSF5Zv1pIwRxRiZp5R#>98{&L2TRn_@-muX{B3^<=Lb~I?yZrn z%*VZwNkQ|>(a{lfd;^28eP&<-@r0+_v0KHUqO2?~CRV1I1Jw?Nu$yWsxN7IX@dxe> zntCw*3GO{!TwT3^hqqt7xv{Y^KCX>^b~#@Aa$^&RosM4kp6C0XEO^&}t^z!&bG8*_ zuQieP`YBW#GF_lVo&c_W0I?akxW~hxU{2ls{S;3vTUp;=`1`unA>ao*!HxeK^bX;3 z0J?V(KV|)BfBznkJl``w`Ci(L0J<2&btfLK*T1}~tA)`cXuK~Za(=SS-q3pKDX@6p z{gCNOa^F)!h^%}l9gyEWJUkQ>LY*fpbyiPwG78lZUo6-QA)(Z#R682_)NKNx)YRDM zU~k`&PK)NKU^_oZboymhgw!q54036<&2-6cxZ|8VdC-rc&ULkDpfY&&I<|gJUenh} za0JeS$e$>vh83ES;12#bwQ7*p5xQuoU=}JkK(Vm*BK5ngVK0FtZ^B{Z4X_-yMcdiDYXVzgpG5id5EBvIkzPS0PXPf9)GoVze5>^FT^U3XYLdnJy1duo1C+x-V13HGV4x zR=S>Zd`yh<;g+GZ8*C~T_eJR~#En;T)R!w*y^x*q_2+)c*mGTSVp~leRP>19|8@o3A7Fyn}Wh8umk~n>j|!;>funx zvv6rn*~D88yZYw=WNQrKg-5DHZ%l|?$4&NIm?axOjr48_<$Kq8J)Dc&PRpz znqwrL&FY*rNOm>m-&3(xzD-9@-|Sl~>I=28n1aDY7%4#Q#&oDVn;IIlfH#Mj2%+R0 zY%`H8I%}B}?}2^!mTKs(1GX>1fE~tMiDE{Msv)my1R(Q)??2mRUvjA? zv)a$-AVzbSl{_Zt_J>2$E`lglxE1{?Cg~LwBd(8+?x$`UQvm;a{qW9aM0)R}6^VWo z*c0H`F|hnINqnlR;d0)Z8L_Mx6AT@$ps+3D^A<>uQ)}Yg_`c#k%P!xxyva*OK`}Ny zz80DRMYg5oK4r*1rS?_jwu!20bbiw=1mxKd@5aHRf(VJ2I%>?$D+FujF6|tTq1FM* zlY#KwxSN2maP_xu4HXHHz@g~>7x{HJY=NoZ|ZS2_H$tq5)FFaq`!d6m>B%Z)d%H zM*(*F<8sz@MM}EHCh$4y`#)K)x(e_E*w)GsOA8Aia_%BqQ1|jX;dyI|XkP2&{J77Y zAaA_K#KQ%L(Dm!&f=<5&Z_R@Gl$o6!Vfz4Pz+nX{`NXv}3Yz*5j)*|TGX^q3NdNXA z4?vj){^*?rg<#8Xsj02IX+pgN15ibd1JpxnegWUW?|NMge0tR&wRLvNDJcP){Lrfz zxB`Tme_eN#<{7vepo}$;jcNnJ)&cS+%mrXHD3ERA##gbZqy;R83d9n_Fsq?1wY9Z% zgvJ9fvLal~k}nOEnEJ#di?GPR67mmUe1xRv(Y*ER*DnZR@W}2w0d=bE{J7@)7Qb&zfXR50Mod{6~LXTUX@HORC2 zbB(||2T=;StPJLZNB~NDu4?|TK{wZC2e+Xj^Qfk`oF>$V#`s)QczKuhgO8{Ui3W%2x=XwvZ7$JARmH!DZUg4CTCz_lHv`H*T#X-oMPz%z^6B+lF|tpVc>U>o}xr&9vHz7a5~;`S7D zJJ@)TOYMHuoAiD;gj5;-MwS*Vy}6$ z;6;D0{g^7Sq39gHPHf)@FzmBxnf zt1)wZ$m;b&p2s?#OlWqXrNtSLsl8TLS639y_**D$A3wf!3F|juB?r%p%E^!E7u*bEA$9?oDjs*DWnIMbo&86R{s4v_lmZxP@Lu@YhW zC~%tq&MPVHmU3->GH;o+NzYhvsIc^=8lJU5+g-%ly3|Q|;=z?@oaC-NunQ)~b??lo z^_|G0G&1L7*d4V8vzw@JO*h?k*P-G!BY-8GhfDRw3qvdyTw_29*xV$F3A;&MrcPDy z4FjW*rD-0@c3{i<_wH!0R3F?8zEhhA%l`^I;Quz;r>VSiy9c+yhvC$V@u9E3UmOvJ z%*VqS?X{@3F;=VS>Z5;iu0CpT51_KqtAh)oVg+m}#%zKKf#)ewKfGk&aIo>(zX6FB zqmrDmWZNI3CqSppZTtoVz^^7*`A#Pf0Az3&yMv{|?O7uiG8>s6MMdDXL+*Gw3dUxs z>=qFjfp`^i8ygA(cCvMKbsuAGLPfkmk3y7z+Jjw$_ky_-^##8eAVi=@p&7GSMyGm5F24>p7vDG&AWJ5_4tvLg(CN2NfU!^nBH zHJT3z2vpH=--WFy>I>)FN- z{m#@?K87+9xrD^39B=5jYB3?Zbt~Ca9jaSUj)6Z7sC=5LZCe(Ku-6^-0l}2Bw$lUKwc-G*HDk*6VklnfCus)s; z8@rT$C3f?VtND-o*~|%=)!`y@u!lm4=q8Nk<(P*Ow&|`siLmYgDdis@H9Z{cu|rGa z1x+O&I>v$SJ5Y1B3(V?vk#TF^p!BTY$OLr4KvsdD+@Ic)E{AhGH4o1mP}o6RQO%@Eac^bQ%ynm0u&BK z0t8ne%t7Y2(JIW$SLMpd1;q=DOB)4jN?3(W%?f5$6E7eL zZNN8~9@yS$Cr4Nc;J46Vj0_100W1WG5OF%wfQaD=^#)jOv<5OWG7yQZ#vJA&0O@mU zru!zOS!(qqIr*1fzDzXhm&(c$2AxB{BoD(3N)i%ZKfjks_EuJTm6e)3KXP(%E@9%X z3>PuLW8&gc>YS+Uc(xXK5gEp`0u*x4?}R@Ej{{8R;N^IsWDkWj*mBq#DEaLc;QoN- z`JS^3=IT4eKS3mv!`cKH+^M+`5;9VhXJi1?98On#L?{Z4a?n#*2s;t{64}|SwQn!k zgo&G*FGGzF1~mO(p~&dy=3uArvO94)?-0p~q||Ei7Z^dni0h4yiAM>oFD^^zX#j6w zE|7H#^&<|=BL)WOOF^Wgh4M4J^9{VZ;zQsX2IO7(Iags{_y+`Vb{FP)c;i<%tRDRd z_OOG2WoD>DpJUv_i8yXJ6iBeo)fgk=HMbE{s5{0elhltyn8J2hV)L7GP#}4vyKo)_{bzix~Vi*%%pR4hA{sczK-~14yA{ z6UEXW!_zs%rjd*1y-7sG4fO?0J;Zke5xVZvJ-<`%zq|mbxQ;n1aHvT@^9G<5*ohEx znxrT&P>fk+AWIE+Z2Ie*Ac)Ws97TX6KzT;Gi9~&22SB0Oh7F~lrKxFX6TmM}jUt<1 z?2h~iTdHf#OpE2HPtufBfxiI3H0!6Z=$y71L1j5(lLypq_3>KxNLWiD1qB7jf(Tmz zodAcjZ^`Z;d&4?ABjeG%d(W``jEyCL?WM^*E-o%5CB=}tNR<&Wy+#1%0?N{iH5C0f zwL2Eo6mF+ze$bjui5Xc<6!EMUglWqcggA+R7mN|r)gHida~QRQCjmi!p^1jU5F^TS zfIAx?X}OBnDs%(D*f)VHVespQpWfbk13f0@<|AO>N~VuZg(L%uvZXbOMF)CMKBITXOXh)yn% zFvBX8&=7MBW-dT=6TRt*XhoI#UHT>^(Dy*eS(wRnK~|z)xv63Jg{9yj-@2%gA#z8s zX8@Y@15k!b^z{|FA3LOkzI}T^OaW>KAPV&K^bTav!9)e9RvQnGGuTHpJKtDf*0Qy$ z%5!tO&@Gt=8PKGc|2-oEDa_~cU&n-LF-Jic7pBRy`xEEC`A5-N4++XFI#g;zeStj$ zlI-u_ztEHkp{Tq2rI-TvD&oaKJuGlL+=4ejUiOee&ts9*e1c;&gh;ee9+<$Ni*|q- zNL3BJLH$}=LzSgSIXaeXijn$r$to)KRr1BN3BRHI4%Gu}mT}my-(Zmt^QIU9wM}x ze6kG!>urDoz+B*CW}f*&g+^Ng_QxTA!HtFC=+73t`>-w%0|Fyyn(*n4qI1Zn zPp`DKnS=LNhV)-yUAxBTe)K~Sr1IV9FKjao)=!C!mQ=7d!4^ig{iW{LuYf*5z-=m7 zs`=o7dZ?JX@&4Z$arrOO;89?3u!#NAD{$g~Rz&-N0W5-Trnf|W!Q%ExS=kJLIDnIg zKaxP8g8j`KAEZ(k$OVU0p@v_`V?z`i@a=4se)~qp&8;j~48BW^DwkadKR%;>@M~}Q z#E=1AL~`Fv<<1mIdHD$-LIF8JM?JLcBb_?{aY3PI;V&yIgRP@eY%z4#%LM!o!$^zP z-rAS|Bs`ciU-9@SGC>L`AW- zhpj+4b^{_Av1b9ofNK8EEMVc}LtVtR;M&#FLRz3h`Wwj2B1pB6GND+8l}QOQ4`5Ku zA~Pj0cw{|AT}53y=^_CcHRSzo@N5E5fSU$+9jtxOwf+W$LJXl<;b1I@j4ZYUYvS=9 z#4FMXCT3=bGEKw^1e4!EW@rh`{2+tOT{?H$g;-Ev@EqbI*kWN;TwPtE8~RgZq{D!g zBa>P|eY9vtEr%6>E@&#O9>@zP3OzrN4jW)8!3F}QI6yow9Rs5XGhZMI_Bxm>=!Jl- z+7J!+4kk3yR9#A{6`oe0(d=E4mX;O}M$RfCk&A=LJ%P(ySwcbrf-Lxu!2tnu1?Zb# zuexl@jkdWD)RxqozS))#Q-BbQd|3h7*9OMfKA^#=s4No$6rd~kk~z{F12x-eGi@+X zrz~K*;^OKv*-JWGO!C49Wj;GQ`>cZdV961bX@EYuKvVRYC9oSx85qof+0T*@Yc*dQ z=RdM2J;vNi-~-vHT6bTcjnX-rg<$*(hb3T7#0L93<`Qe;!Gn7kwSi5m4wx@dD>t2r zj(6*TBrFT1`8VFB8g1eG_^zLVon5NmeQZp1_2*CFRq&$PBVz+{fjK;hizAxaarD+NX6ockmw%A?Ng#19`mFq*f*01L% zKXzgOwf&#Dar2I;OgG6M0}!f|1*5!s;iyZd6Xy?;Ijj`**oiRyrtTKyx(E7TAkp>l z<3#59x|8O9>%j17PPp% z{|@;-4n*=1#@{(zd;SE$D;Ok6uap2831Y%`cq{@(w|yH!cN9p>+5@RB;C>V{dP+Vm`rh@7}$)UKnavH2RDd7DP|4-z%PeBN%PC!W(WcN8Z)WN17B) z{(ytec#3Az<5t}D;wS&z;N{lMdvev_jmeYG?i1=2>gFs;yQkJ2$7UIs8JXVrs|#mm zztcTVm&T9RvX{zTc8Q+h@UD?Q!M}|BVRaS%_e)5b_{8tukFj2pTy=j-jWs2V^$x1^ z-QB>CAD>uKW4$X?*gF9Vl0Z~YNaznS);sF8OI_O#qriRwvInEfr6>6Hfd%tmO^L!! z9$5bOk@wVCruI#&6{FrxOv zoABT4%a<>ICV+vB`dK_EijJj5XTy-@f7*@COtDV z$ftf|CfX^3j;FSA6Q6;wIP1}Oy$eFTht-FwWkbLn1pZ@|(L?LqV zX9Qs4S-1?p@yx`@zSP~}cn33aKf1%n?&3RY-(#aL-XFN=qmvBbLnTm#2@3v3CIhvz zoHdYw9x;!r(f^vlzg_HbnCrX3tH@0uf6$jfeu*)+(j23BYAO{XmzFZ|D_>mUQG_7_ zoC)h9jn`|EeK(1fFajf{n5&}63wx$X4YN-!d0B3wPg6L5#Sic&)Be_0^8bCL6**=c z#`3Pqetgmlav*6C>4(joop`EMW-ZDP<~mPa#x}jZ0GJr+Xd#vty#svKri8cC;F@`i zI24(vxR9~xZ@Tqi5kE$UyiLf9^vD0#XH9y2E|+rZ)|wg)VVCggzMtlm{JH+ge@=>B zi0JZ@l@I|gqo-N|UE7ZRtjLY2Ej%PI$B3bTHvM%A|5nR}x!VpE6ylli{Hd{QBxnVQo5*5->K2Fu2<nt*DJ-xw{M@kp+E&8Q;%iTwbl&6jZ(D`c=a?thGl>5S%mg7@H9Td zdM+j9a&|bcRpe=B_X+-k_A8;ohh-!pm=`dCLj>x})bnB&+)wNXBzd=cnD{_dh?sGASHFoc&-K zt}r!xg1_KvW@Gz;i;K`}Vb_Iz(m4?hbV#JeVjWjWR?njFdb(`FWj}9X-3+i>TDlFs z7Uh*FM*mBusm&=}%C>@DZq`ec7wGt*CCxaCEmg3~(ZK=oT}TK%d`AsHuIE=Rzc`knfRpoq6A{V5g=NZxW3ZT|Qwse8O0(jxrjzrIE9?e8Z+ zR}y^L1$UgRrkYkK<8{SgYMA(Uj8=K;hd~$oA3%g{_NZ_>wAqyS@cI>zXGm6EEo;En z^?vIwA2v6w3x}XL{W%s}TnC5<7cN}b(P+tW4e|yZ2lgq6%{Z&{7g);_+B9T zfO3`c$7$Je-cWYd*~3Ag&^G~NaMj_t-h3~gI{8J-DwjSb#n*!$yGw!u;(p%>WCO~I zrE43&VpUZYcx@58?VC5C&y#i}YL#;vy&24+_5BwYXl<`vmvje)#h?cHCMkWnmFVBT zV(A8QK_juCcy9|*k&#JbLC-gQ=?l~lwmiho<3E48oGAd$W5F84u;yk-AeO><$jc(U zUP{X(xhy?=f`9-1eNdiGPELTRfktxRzV}$pw^%sM9f#e}VUgAK%oQVyl0;w=oHFBr7Xf3CRi>Mdbg!bl<<{`TZZS`_)%&@%dcWd7bBRyw^c@ zp-W8Wn?J+Ra!N@Fm35^tB{lV~f;oV#taZp=sm}672@9C##S0!CCCCp33hj=kw3}O4 zsKm(Uw|w{j_ZI>J>{tu1Zc>`!V=H~V=GXqbg*}C=Idle+Ou&}Uf<&uhRZfq0~ z6uiIv*5-Ls)J4U`U=^7Hwo+5yzk4^k#~QC6hYYzd*O4RP+q#)9Oca61K-deEE3uOH z$#67eW**wN@6^2*U8ZDq1>yo#PVKQ%`n!-Kw?mO=avnt+pw&#m@(1iCD=SOL4FJNu zf64;D!9U^%x^T#uxay=rw(R5ORfr_#;Qeg!*1V?*QZ$Nh38nMR$7ZKF{?1b9&7%WE zGX@HAaF8JIfsZ8^l_J!^A{TBNqu@JtIQmKV;eHhM?T{96zic;mqqlLVm&nCHG?Y~A1Z3}yYVwau9R#| zw-9;aIqS>uB00Hgz_~?k-5nO0H8B~P{_gIAlbn3;i9{aI)~`)g^5 zh*knyEGP(I+?-IK^xHf$P%}AL-rU>_vD8jQ&-Fip*TRQio2YZ&`M`oO3QoTY5`U@( z1bX2Yvc8hJUe&k>^$gjcxc*&C7Mp~rk?*j8n`>C?^ngy}$dQ`)RfImwlQ+pi4WgdVab#+Z$-SIJVpyAH@dPYWGBX<>o-ZZe7j$}Kk+7vK>1 zfRM!L)~!a14;erxF6ih``o8u?yc(DgMaI*V2;|toWoBzj7y29cmg4DKx5T9dpG!j~ zqwJ}y+%VprVsJB+;K1VE0>%FE4-NK$d(zsJz8wK zYrlS)loS@WMY>9H|8~)$FX6~%>9DC`0hBpSKfRowYh)xREuGdrE(Z9QiOEXj zN!jX8Rpqh)XqhM#;rAW!0j2`X3$AJbbN6oBSYwE7Zyw#7n$h;TRa?)vz8!26{gs% z)>l~bWR$eDXVuhTxOwZkcopussdY&fF>9S%3!26pr{YpbegTlad82JT0A&IoNN4BY zi<8~(-wi$6%=Zee8qYPU{$2e^QS@z-e`;z@1enO@FiPeMtI7D(ODEyLoKINb&cZagbg$ECAE z_NpZyXZUTwMo>^tKuusAXNp{`ew)Bm>Kx1ZZ$rZs6}S6sQc_dy9<8#2K?t7YHGpRR zetx%KsmBg?aOGuQLqZJ7d1!82hWvN4a@WqU;=4Q$QBrDnBVP|bT=-Hh>FL#cTmJLM z>sRsM8Fh78_us+`wy5?M8X#uLFe+D9(l6X~;ikR0lod*x4$uFb8joBoOoaN=bGGi- zD9Nc}p$M#xycakCu>QM45rmddI6;E>$>dT>d*zA4Tfup?k2^r43AYOny#^Qzporm* zvjF*yB7aW+EMz`wsqm#h0hqh8;`(_|u(&_q(+ki5mu_;39TgR|uMVI=K%z3*j{5pS z=efN{k3tM)a)ZVz@sz~U{Csbb<26rD+367b3D%VD z&(}2}AAr;;3n^Q6O2?gJaD3k8MW$LoX>=?IrG%T!dOSx%b8Kpvo3j)Hx-QE3p{?oEJ#f_5V2~AdnG91+a z%mEi-lf$V5Gd?g(Hi3dSZ$zkbou)sdUQ#>_TpooKZ^K@*7Cbw%JBngV9{67(%NrXV zJvWW7U~2$6sIgh>=WV57Tv=@F*uW8Pf?^EVcf5W{PoN*3dkYJTph5Fvj@TkKhJ^3e zn29ueCX{tZvqBszqw0kVVd^QU`WPb?;vG>%*^mK{kP}!2a}?LF1Y^= z3~YY&k?%kIqbOc62h3WE*BoJdtu(e}l?yM$hyX(uAK$1=N2WZn zFQde1TJO7zxo+f-?+VzV(G6`sq<;GJ7yMUI<9%;lG=Epz$c#ZWX91UE-dB^E|0mD?gx? zyX^t0A2nV)?d<~tf4@cF5X#d=u`uBv)o07TfuZct)V53nZV_OD1Uud}uPkH#%jSyp zXkLxIXi5za=?;9ln*UU7Ux10)zMXE~fq8!W#TM+PuBGgZ z?wkG~&1%R5F=sd{sNK#8yxl7Mu!+Y4(>bw~2Q7PBZ~9ftx>?7wz>vCHa}go>_tHi8#-U6Z$$JYY3R;_&dZA(}lYK^R0oL9&10k zNb@}b-iLESdnQp;K^$o;423^gna_s?(`*MPr;k&*2|H@e%ZqT;R97F5(eZs1&$jg2 zSeNmQTl{`l2HzAETuSdkbpi1^9zOhu^9GqhV$on0PWT`DIz4@cvTbs)Lwci4*`${Z z!DF|fTY6EEUMTNQMIoaywO=PRRnD8JJp1HncegM{^)N$wPmeO?^XiL7-rIEwM^Nsq zFM0m+0xrK#&wSO%zV1{q9w%`B#=4P0$GIqdrueArgs6&bRrxDEczJap^B zR)GVQKI$o9JZCl2)Khkj8LAj`eEo?76O|KM99UN>D&!N}V3P0X@5hsQJzq~tDu8Rw zKiHOk<7o7&vSU?Ko|>4r$*OQpOAFiPPIOhQtki!j9wQG-Y^SD%YK7ca`p2d!9;z49 zAoTRlFER*4`3rF2TiET}w^0-y%G0)Ig$a~x@F-rb@zQ-O5({4>1VVMO^W7d`WVE!j zb6vMX-vgy@Y@~|x4&y0sCNSBIJ&No&2{pNIqSNPb zstUgnEO%USiQu51iK!_-1zdhFr{*bs@>ZYTDDP|7b@Hsvfv3UFi9_3beX_o##R#dm z^76M)yk1^X3*^2)#iptsbih5Sef%YNRWDsm%VM;Z(`z*>sxBCmE+!k{3swtVe)!uP$)x%qS zue8je3^{pnOSLfgC!vP_z8f{Q4^VZy5$-M9RKTZ1pr198!OBs?q@+uak?C+M@tnS_ zl+=WTGdCwEQUS6+jsu0t;rMhZm_(r6+|m+G;g8DRKu+)owjQL}6V-2n$X7qXrmOi? zj1HmtJBz$)S?)1Cc!wuHdkO!XFQv!n#0j!$VbpW@K(WJGcT!0Si>Klvg4K5L4-2rC z-y}}bM@PW4YQa;K`SN9m`%zh08(}8&tj0-lbFz2%za7Xwd0DNtjE$L@ALQSaD?7-% zg;@S)pIY~dYg@(*vDuPw(ko@%!>%G*T~jk$J>}2pd`qoAaUuQvgCn^2?$wDbbr`1? zTr$ho%hZ3XSf1ZIot4)Eqv0GPBA{yWLKqp*TTe}Z$S2Po1x%t7>7RF(?&IL#dgnzW zg2MENhXWpkd4k3unadJ*m&~QHipZD}B5U3S+MFw3b57xcM!}g|k8lqI_cu|97 zWT?joK5hC2#eRSZ(M@Ca) zR$EI;6j0E+5a}d0cz+1hI$XWF?Sri2#IC$MKOBZbSr1y>=X^LhNysA@)cBq+bZH4*x_{7BCfd0m@0TqW-EaCA@OgwHX>@E!%985$nhW$d) z($b(-hg!n}?jKw+6h*)kHPp}goyme6u)eA1#_VpDn&G%w=7_%04#|n_k4}Gckp+H+ zAD)zSGT|`#I%KCnb+vQnP8=Uty%)vLmY%q*b~aA>0A&@@2$7M5E%3~~FvCova!(mH z|EZ7p&y!B5l091X8*}MVSfWa?-<-L5<9I4l@Yq2*S3sza)l-HgegF+w2F0^Q;kMoO zoQR9*dZ=y?C5~R}*)woMA+@H@FTX;$q#GGwK*7InUoxb8rKK{wyyi$FK{Hm2h;9^^ z6unO+n5lb~kk{@GjsH`b>UZ7%lwdW&v5jXrtCJ&~6ep=*BP@2I(Ns&7gUQMJBF$^B z+1xqG|F-d!eFxj#N7O8jaGT%c<()o)#0X~49OTv8d*=h~29N{69E}0N#c6-> zS{fwr@%6=bLPNb@XkmUHp<1?Stc;9K&@xuXx#zisvR99k*`_r{Z3n{~v#r(@3T^17A_bo_z@0fiKYzu`9tR(? zczA=*HnNEt(9%AHgVKl37z+z<{;tfpT0foq+5Z+qcQahK}z-F(3f0WY;tA| z_4T%bK)#O}>~C&ww+H7p&v@bcApo~TP{R6oJC+GmDDlm#j{8$ctUiK>P z_ay~7w5kZ4sH>~P%HE;?p@a_JCv-*v0{qBdICSVN9oeBnnUEqOz$#7~y*rRhh*rGU z3TpYGU)jse&6NoZSQjxez*Eoz;77Q+u0RCBqX(4)jOew;trg(a8bFf-{2Q;^)^--3 zS2E3gx;r&x9XyP0iw`l0Lg+J~sD>|k*{67K{oB2HseF(`m5-wehqRpwQYPRXKm-e3 zE>L8uZQK4Lvm!Mr#W3M;GG@(?`&JGP${`#U{U&56&@xH4w10Z*dfn=Mb$}1$46p&RB#;oJip1;u?aL+j~0y0ChDPIXRI+i^3e1SZt02;N|U2 zZ$KCq0iV@|?Z!%hZ7()F{KW_v!>w1xu({`iF1oG}oxXCrPNYG(C$N9m6YmBE5gD^Z zbSb=grbyRr$Vn?GxCL4O_=<{3P-@eyPT>dt;g=f4W0eaz*H=m1jP8X=FWx|Bh2*yD zVk}%W#=-zSz%BD>v9q!wY~6zCU3H(7V1r&BW5fEF6iR%4Fv9VbA3 z4i1R08eep!BkBL3NmXaJFKp|Sx7pJmW;V9in3xfXU~_;>MsR;|TWelE1Hzn|t~%_zW0^mfuM;B;^!tIzYODCUJrJUCD->>!(j60yxH z+`zvgiP*&2v58f{a06{%+4WwrC|QE1Aqv`)bY#K9M>5=2nygzdT^ir|F}df-wy<@c zj}B6?Q*K^Nw6+3?Br#H!jN5n6J}7j2*5|5LTd^+MVUQasdU3~z4borN>PuSXjp}j< z>f!T0Z%y8NF`yDR^0NPxOhJPBJ$rq}J83fZ(Z`CIFYt<59JI9g#}QFcu>M*-xO_;- zenn)z@<3WH@5T9Mmn5fGO7vi*RNn@bs8w%X`?pZL;un@^*LR zQdiBZ3E!7_yYL)ywA?WQOeCIuy!mhai?1(h@eV4|lOFf09S;xX!|C&OSNbO92*Lc#`ZYz8=oW(cK-z_4j@DiH}16S)wYT=F#tR1Px4EUST~7)rLs2ds}FH^11ecmuqXsC@h#U4 zGv-=8HhmqedNc3EqP>J1J@GpKHdi#rZ(PHT%Sc>I{112k-zT8)Hz;*{(SndN{O4-_ zKi~F${@gROQt5@R~G4m-OCogJX z>nt5X969rcG>Q%H)sj$5ERL0M{rIMHOO$2U$K6fR>#y|2^~Y7i4oLRz4ORp>!u#mT%hN3$fYy;t@%}09JC4eSs)ZM3q>oSAi3Ui~lGwP*5_pm!%X20ds-(JaeDlK1|zOj`HTNS5v zv0;FTgA`k1&Mh9*#HB(Orrp2pQ;9sQX!*(ZmW1Hh7|NCn7|Dj5PLE;3>ydN`s&_io zOfX#y4a!-qbC<5-=gr2qt|SkpJ)EQ2J8t@I_I+jH zmzH)C3MCujZlHvcq4KGiFX5!5u5R7k2fvN8R|uZ!I9}YJ(LRn#LgpPrvK;JBU+TbJfLa zWIc}!GW4yaqoWG}1rQdND8#`mFcS}{aFtm-UTYUq*vOdtASg`iL67J=bJ^jIP34Z0%}hN_fQe1m z$XgM$zK251jRp*qDNNMli%TjCu7G)!ln5uL+~2u}AYVKw*1iO6uKHgWeSU3;(U7nG zp}nlI-rkVc7tZA&j_A_kL&a53FO&*4PAs~j!3Ft%ngcQw9wX(ncPr}CPXr|Svz-|3 z-*fwSb%fpGe0e@42`craNQ|*r(|c>i1|<+Spsvwl!P0i0EAV*(f;dT>w0+Tuh=Kws|g**bVeIKP3a8z@T2-(Wp zWRx`KAbRI}eLdJMq=a*F-ljw8x^vH-1AB^l(73X((WC$wzn8CJ0CET*C!+pf1*)r~ z7&)u1zJ2?4R2CqgfMiAJMzR6ZVrSpyr!ibv1>8(ROj{Z2C25^EX5uIY`Q$DWdf98& zsAy>~hSEOpzw6L(gMSI+5~zV+#Pl^W4vuF?b#-*J;HtC81?CUUYos~A2KeSU!vRnU z3q3K30xO1ZdOBOF@eNc)%5Ikbxs&zR8{+U{iMX?0zkZ=&l>=!J^0)*tYr;Kc#kMjB zua!5wD-l~$p#Z`UJ}pWv!q9{P5nH)n_W2C9r_JhxeHEJ1?QBvDpxas15o)>f+Vdi~ zu89F+zyV-g0*k8Xf=C}QO{l{#%S?VukX{kNd4x({fetBOS5h8mwWabHZFMX~KMfTE z8f!oU@DXc=t}pf8nCW{vj|d)fCJRJYfhW@_7(=kf00=m!;YEdov)~7Srlbpbto`g4 zN8$1-fkA6}dK%)LvoedCSFiGO5d*4__i-9yk@VT&YZ*Yumhlnhp>RU3SorDHeY+=t z|Jg-Ee8>q7he1Fa<`BY-2Re5ff}(32zbirAg^vJ}k{cwWtaXH?tQSlW(E0VX!F4u9 z3V6e>A={R$5{e3IF$Fqc@AE%@zGS`2_<9m5XI02x(4!I@OyeN-;`{gSV@)B|E+va^ z^DGD2LsZ}@r%&Hz-M-DlHIkd(HDaV%)xK^;eGvwilGUG$>kDVsU+k6Jx9=O?gDP5; zJgYYF^iv&ia45j$1BgjPLgKeK1v~Pk&J|#T0dre!QXK&MF&;HGIZxJY#Kn#6{rq)+xAA>y{v-0$@W;{G(cBw=% zBywOZ2|l(c%$9BqzvbwN8Md9r9VoyT@E`#sGl% zbVg6v6AneNijKrNh2M#nFtG$LG-6b?`Ft54??FJyrAw(c4^wZVDNQHPGlwt5N zFtGSOGm-o^Z>j*sXQZa?d>CtW{d&@%)Y`4>!y-5Ah<%st#4!ZC~S z)THOnOZQn5eKVuKk4f-0Ll=v% zJ5n)(v_*Y{h$LjRVslbj+6Sv6KL$!K(fQ%g1x$*-B)((EqMbgsO-UjzMNml_BVN3| z-rY|^LIOJo6)y}Zc%_K+6k~n>q#t@EOeo~^L&h}dS%C4;!xDFuCze#-M~nzOPv|xl zZXE`C4^qc**{RqA9!Xp=V4E1;8E`+fLp-`k4)#r7A0LTefrAIN3hJ~ZaaZtzi7!K3 zhhSGiAf>R3wi|ciOJRP#BeoLZX#0%+^*(b%=RnprHu{cIirpB%h)<5=k{`aOv=R_S zC@HbMfu|4-BgPcsbH5N=F+j@-bWfwB_XI$oIWaR6C}mr8f~qqg^eTv=dxX?%i$By2 zXpmF2)A#y;^P5A+aMCC`YR(HE1(p#-rpzO^I$N!R=NWHy_wDR2K;6;5^Z!KSgBX(V zxVY^f^TRpFs>VG>ZM3h24R(1ZdDxhb#P~cTL#QQt{5m%s#`9a=2Fc23VO;rb>1Tbp9 z5WvN#StzSe@Ra@jN~J&tHn3##t&Y7yCGc{7iOM($@`i9(R?qp;%6{tYrK$sHsd)nd zzdFqV+h2ay3eEHj8d&EbjU{jw3yV`H%fRcWz&{J*?q%=gf?mKoLkKD+jil7f#$CgO zf&&d+)7cqq1%=JwhxGDZ=H|AWW><8yAfDAu_1Dbcp*;O13M0AplKqhZIj^=mmUvK;VBi9s+^@gDeC|wW$OA<}D6W zM-2{Oz>cW2G;1)fxN$504jPP6tspTAN1&=+gPu~U%FhUmHq}`2L~E0a(!5xMv2jA| z-xJP1+egflK|e~IEpWE?d#$fIgwQsv!mfq04NVMSDL5#J~VnWso=fbBQipeP{LzkR;WyQo8Sy-rg&g$#4 zQu8O}l4lwelhb02ct#yPJz5_c5>hcQopyQ?F90SOja~t*br~=guBc+8FU6}f<;r>T zZ_6CeXcJgUhjRDKnUkLG?$V3B-@m`S;D*6k&T*L4fHv(&zh(|@1FY-7-?;n`K38gZ z_Eyo{{Jbdh18k?L9uTGqe9JVj@QB`~|JfNwB6G$D;kXL!nTLJ>>I$rvd%*d@CGW}F zoH`QZU(q2DU{dqYw%(JPoRm7fYjQD!`s9fd6++kW%Vs;F^;wX)mtreP5>cyMf#(WC zPPb{_O_5VSd-mR9kUug{%WcEcUR+czJ0F>x@VIL?nTdr3xwgc)M=d#m{f;q9YpK17 z?c?zwOK13dM5!c=vv|s=tD*Y@ii~CugYpm;{6Xqu^?&y@&`k#%A_NWtV~2|5ij~#v z0n-NV7zqb~kM4@0KjbeS)?_5}9&=H=Q(g{3XMT@$mJ8ei1$ybY@+VBTCF(Gz9U`aT z-02j2dz-_US?d;8g#)8Ngfq??3Po$ecEiBZV&S4^M z9DznPS65%gOya@33z>o4gTZ(G1&NL4UMZJNW{_cY6S>E{Ur1ZqxzqPG@p4;v&iAv| zb(5$p74ioL^g@rKHhvL69V&Qu#WC3@)Ie}l`+x1Bhe{VhFArgwkNt+q2b#;kKnjC1 z)HioT>5fV~zW1#wuco{E*3FyrD-rwm?;mIPLrDyRbpy2p(yw#m_MMfXa4E_wp_?gA zCC(vNS8~Cu`l_jEDVk$nUGD2w?xUO%YMA{o=MJ8Ow%s9b<33-I&fc$yj-QlLZ> zoxcXXA|7G2eeJMiG9EG%+;g2;_57Xgy_zJ$BG3L?x#)Gfu`@G6(31G%h{xq0#40K* zMYP^F=Y4q}= z1ZO%28f^S6xvzq){7L^%_X(PY%G zKjI3JKH)GPky*B)(l-KfF(*f)?xa7Ww47(ZC>-qmzgm$#%a*TN6W`-4i5;A5Y7_EX z-ZwV#T5cgDYwcr3=tM#%{yxMjQZ0;g5oHfBZG1rBhrjBryknh203wHs>#m~jsCkI& zGQP9Q%FkVK1$mwXk}*6WF2C`w6G1_S#)zCmN%8#o=77A{^(iU9T8{_5boJ1s;O{}n z1ltI1458bs2S|)JUaRnHem*rL19MKpV*Yepx>35=b&2_q=r5%n3JXL zzfp6+SnU5Jkr7$p1_ohTC`G#DqO#1WmVtZ z{doIye41YV1dJN9SO0(-^dm452ye>~tM5k_JZ!bJlY>J}QgUmwgqphgM;dNoddeMI z`8!0q0TOsuP?Q{Gyr-U`s;1_LYG?|%3?=xttaWXV;`#Z;wL)nztQLdB#l*!$sYz2_ zeqV!qpLB9@VsQo0T2&#s49nPi;4-n)jU00+Iuu(Z6U;}f16)GfG*3d*UKMZl;tb5S zgj(5IrcdgBc5OjcGkWu$-J{?|;47E1{{~xHQX#2?xOn%~d-*AsP#`7D7TckgRHKcT0qF0v~M;{X$^ z)`8p%y`!Qc$@e4`Esc+r=Xv-l20@(@}36FGMOk4!A)yBt_ySKsLt_$+bx;_Vj)*_MEHmklY z6VkMU2o)nQl2%kxqh4hw_a)~k+I0483uq&QA_uUf;40e}?H-)EjD7q1^@A<*sBmA5 zz29~YXuvaz{rDYO8Ce%f5o-zj6~7car)F@_DmooF{2|jscQe6}v=Zvnwz2Kh84E)i z8FTDbGqTnF{IFrSO0m|}0)nBS`1AYs>5?M6ng{>Cy$5YCNbeU7X4@z!Pphe|R?>RP z=MKSMW`_D3WED2ZyqIrYP|SY#@+IE6($DS3TZ*oH|4!;nAO&FouN1iiR5P(yaus>s zd;M@0M5*n&t4wbYj_w}mR5!8hVjxLLi9AG{X(J&|o+!6y(I+HaRF>u9IdWtH9Y{G! z?HW9j*F>HyxOyPSHTG(<5Mjr_5B3#oy5gZ+T*F}wh%N@Af;x7$4`w3ED=R{}IewA7 z)?#vU<*4H8xa7Z<4t7=+e)!kZk+n68@64^y^`~!jq&UW8&#ENOHzcuLEGi`2SLc&^ z^c}{|1QzB=2dOz<1VC56UAW!XcRtwWdW4@ zQNtJR#~w$->Ou+vhlBUP2HCJ6q{$$YUJGSXkT~C8xwp$rY!45x)@2K-hEe}M-Qr(! z(mm+ClzC1M1Es^NO2T7pjrSwOHg+*bCDHKrFJBWT-sKSTyX%)XmmlbS9DZ8eAZ?4s9;q2(QOIcM@eP$QhPpLg>OOwkNPw~ytS{W5N7yynUnew=OPrv57Dm<#(v zE9uv)(Hxz^!lx4Jkx?pxS@#ytA2atSI-?oq1Z%fiSMzmCjZisJQSM3c|1Q?PAlAFe zaHpUEATn}7FXo&1F+EJYSKA>ckyN8hvv$MBT%FHfOX4~Es%04gk<3eV4`xN|tOwah=7%ATg0-Tap z+A8H56l(ai4->~4ep~AX7k|WruZGNrTNBYb}+v23Q9Ln{UW(XJw%#Ux_#o&yX=6}}? zui?jxiyzOu=6NR7p52#SR^vIRqzmXWu3KMbP1FC*a+niw9{}SXHo0jln^>7^93eq{JAeR}A56vs zoy+>dLiOpxGc!mvpO+=L67kKyra;o#DM8P5N5G95Ld1Vem7qR)6-q9NPvl_V`hO>1 zOiW9o_84kL@}>^;pGzjMhd=u>?Y>X-l^-RJA6;(G{S79pZfZHbU_jBRP}He-t@kGh z(j7&qbLGjend*o1BHw|6%goq#(?79@doEvE5~cRfZoFl- zTw;V@QEmi48~bCK=Mv?oUB@fz7FX;C=x*5y`V=n5@xQF8(Vzf4e|U(tv{n)}aYUcInzgsaBt2)|Z^mj^EY4@!w^;CgG=kV?kw_l3Uy zzgM5L8Gf-GhjZUQr_0zL&T_ zW+pe?{={7u>y4==!p;a*O!V!UVBPN?_#5)i7*bf`j!i&C$Xa*h1LauEv9jaGoNs$# z%*Pk6I)T8*3K7FEGPbdVmI3mDsqme=laQsxMs zo632*6M8<5#kEzO`mSuou>FVwY6^tESJ3P)yJ(l8}-rq@5~lHGy)+L8_l^ zydrU_?*OPN=p62n)+;~+$ePK@2VLcu%hO#|=S_1m-*g_5X1=9N*^x=X%Lz5rqJx2` z?jQ4(q)y}fz#D&Gb&l&qqDyxzHFP%taZ}I>N7M;shObwPE$rA7m(;utLv6{O`u5d& zvsDQPTl5l?@x&A|u(^4*s9^{K0|fBc`u3wt)Ib@*MM7s4l1_(dZr$C14-XSh%&E+9 znhy;-?J~qnwr<}Z*K2{Y_*yo|-7&O86oVn{9N zg2nFLvFiIJ&((S+m7Mt~gw;2h+!n*M4R-GBy^X^6i_=5DecJZmSK{S%^k}>WTYWfp z?cP0u+^4_2qcbydA|eUrhnoLR5|`Nc(b-31S8HnZ=O8C7emekD*kA4YelpCAQ(BZB z8F^z`TOtm}7t~LOrS+3e@XogirF3&GtQD^_9G(1=jb;m~CH>IHk1y)#x+v*on>RAL zpTG`O$n}$391AVgJQTDIcBXGRJ=^D#Y|hQp)R1x23=SF@q=gQ=eQM|uy=q(hTy!Xp znx*heaM1-WjgPVymkN2tngfh&ybkB}J){S61?buVA%Ykoqo;$^%L-E3yn=$3^{?+S z+sYHcvRbEX3L7?-Olyc2sX(+8mH3XCO9BnK<4WJ>R)`*F+cqANT91pIN>1^VyL?!C zc0~?juqnm9yLH#ze?HLFC`|1^=Lt(ZU@!Ux!s8lbsJpCjVQKkw0_+C>lA%03Xi(Jg z>e=&b)AB2?Xh&}c$>fG`XPj+xiQC<6w{qhXE*(1v*sw6tCFJfv3_t*QxSRyXcIcH0 z#B-w5?fv~8!|!NvdtefS4F+M-e}UO5#KOVOOpNo?G&s~@rrT9lw;yA5V8b4D)hNG* z-U*E`;8YMJOF=Dv05l&jQHeA-dwl#a&L4#z zwo7RXn{FRif-f0>VOWJl?p+S{1@8N6h(D?Tt#+^>ZhVR_Dv2xt4POO zJY*|l_@gRbbWdIht+Zp6c6;f5*D&hg7JsB7BJkhg1HUG!vHjb)4K)ewx3;Ec*REZ6 zav61(^RjcML(^$51Y7;%mE*<~c2WCnF{&JqWL5!jF1v$B{sTB3BC}Hw>D8FdFjKz% zm(W<|oYgyzd{~U)KnvxuvDxyLX{VDmL?wGmO1Zw< z`9;4}aA-f-)hNarR^CEnL!pL1{;&{0mJ+i+b>;dhOfbqILI*jB1P@fN4hx+_kYVFbOt< zYJ1pNUYt?dI)ivX$p6_IA&*?au#6_JV&jT;DC)}`<+5;|dJWe9lHq^_50Q(-XRZ{z zc<5qNr-6$7TppN+OOG@2vSN#11fQ9nh6DdBrnx~W5n`_U;P1Jsk1u#hF}yt2te^f~ zkrIA>WM|+h!dt%z8Z#5pYZpj5L9Zb(H+UGAx*QHp=1L#|*BJv)s5K=s?4`$--{iJjxi z3mQ0<{Fl=z`^xX%R_ihZpZJYtd1{#$-{ra_J;`AgH&)wX(NK3uNx3X20hq#E*Qh}H zYEs7I;X;skAl5F|1;3`VGY>QIbvnp7;`L> zoEi)RRn9O0q48XGMlKy>*CQY>KYvEb@3ZD1k93~8&bM}Y+F$LdwK3!dz}w{}q|c|U zcQ;MXFmN8T=}rG;5BZw$((3v$rqQxeVO}W?A&1`(2IHj(Tb};;NZo+GCESPF7`8xH zSB%`i9E^t)uq({W92)oa9>1U&tV7i~Iy@{YDcLYzf(M(r!Cbcsf#+w=%t>RF;e#fk z*0t7tGx#8^Q&yJL4R)a}>O$$hFxahj!K@!pq4M*2w($1Ql{2+*fP2wSWBcByJ=u<> znxVI~Wfcbu#jUiqy2?4n#=!vz#+Dnx)R)Dg@fA&18pvpYHQ-$WZNZ<2JNx}xBK%kv zkKZl^2FxIG##RNu6?r&tUV}$Y*r6GeoMx!kZY_qOl)sRj+bff7*(ZWWioiM+m?QIz zYMYCSq!jC+wnmQuA^%@u_8by3kyqZ@u2xt7w8`T1%ohhG$*-Z1c>um95S1hYmG0-~ zFXKMLOu&v&nt>di63|DW;duG-^mv)}+q0H->+cP3sFaJUJdRmeydv_XE7NG^69?RR~JuHQO1)q!0s;p_W|< zaK*%}`bXSEdQ=QM*zzt#$LruuA=p7%f&m)NDk|H;#g871mGy81(*P|7)F1JSnTDmV zuoWoKAsPRGCv(HfNkVPK+p&mD2ke_TiSVpeyfo5XZvBME<1n>7XqOD#+*AE=a9?=N zAfNzKxdQ?NVQnGu?mn~ZCm;-JT3QV1O@L+!#v9020xk|HJ!FT7S|C>X7EUB!Ip;?Y zx8zvkHp55@G!r<(PI~(Iu$IF@8aJ^&p|2qftr1URVoGfKrBd3$J5?V(I5iB#Ho`Lg z*70sNMVN9Kh6X{LC0|Q#cXzmekOI`#>tL1!ml_ggPI;z$qdKM_+kP-L!Wb9qTL@Ib3@!|gZB4lWX6DaKIm%$u zY@M33gTy=>X=ijRbB(%5YhhXh^i%a}0Mq4te0)%25w}D6FQ%h0?%A`9N2juC_tz=i zSDsEzOGDLxkn&^5vIlPbM+Q=(3N@XePpodGT{!3$g8WwO zx*G*x4pgytRFGd;1)6QsWce}tx!=0VRq-ZREaaJl`M zo|b_LzA4Upjl2ozZJoc}2u$h2{`Il7LwF=m?buW)mU( zHZ+u;FD5FA@8ChUJ$sOy1Xc-!hK8(!#OXzCO-&6hmEi*s#646znYlr=O1HqVB;yMI5B)S{ZGv^9RGrGlBU7-Ebcgpc)4SpjoJ}C(aNcJ9U>S}qfw^JVJH=h-`uJapg?6xnB zp5ZlqUEF*Cgyn2Y#AWeWaJ~8ZJa}`c#g23>$YQI_OM+$Wzgz7}TxaeBC~Y8oQlLX! ziKY>btfcenclXC}`jvo+vX#fVkLghTc~`TI!GkCJtAx6YT*#+G2QEU^aiLUr zm&oD6JKjmWuFp(O?Zt0VPq}7gRp_}UC1{&^zC0)ACM<;7sf*YPL9i3QT64-y3&Bv0 z2$6@u1FsijnythT?A{MwZ5>twkbHGh5z04FCW#pD4bo#L|m zz_)Q+^r|C(vtIAjKIWd22one-hEhL6fs8D4VFqP?)NMPy{VsRj$#)28zCV9{2E_%w z4Nn#dI7%)^fB+)zd^Ui%l%BW0^?Pi}i7{!IgcjfO23H;=2Jv?ax!($i9+_@OCKf0d zq`dYZrK_Z|%c`7gL;9A)HtiRJX$X%V?QmQM9gXQ{{kfJ8D~;p()%h3y{Q2|D`RiSd z_1|@9YA)K@Wf#e0ynlrP*v4i6>t1esUQP}`CqOohIGFc7eWKLGsdeepsetyWgIrw5 zE4X25T4g2z$;8Wxn2foC{2$)Nz&$p5CA;o)Ud0?nk~H(fR8q%|LHcMse7ufL`N(I< z!-qG|xWv~$UJAGUG-VH_*_8jCEdMwbG;;WOE^EW)>0_AV+T7H{ z><yzY&pblmk~?R5-S@YGD-rnh?Sf8^XBC!#p$+&_MP=CV`DU?~o<7?N+Z`>=+2N z<|{|D0`5!U&<9C->-^t4Hfly_@x}!lb?i6A`K$cI1B=bcq;MYJR(WG$5q%#fBR2}G zVHR@#`4bHg3TbL-!6J=b3f4ui;|3+pk1VzV2K7yb01-O9jw{b>PM@Z1na9pY7_oWP zBXOi_YiY$ICms0_kQihCm6q1;qkZkcb@I-!I=kfc?ty#?aYy|%H%DGw&+jHCjkL>L z4UtBletU1;dHOaFZz~=B$Kb7JI7FXck(xc5ESi_JeoJKGaM-xnz5{A0CZF@3lyPp| zsYdyL!n%Ttl4&RVJKC&~KrT6J(D@PIFO47^Bx%~ zgxY0iBX9}{E$2qO73;?4C1cgk?TS@T8JtP!c(DNGkmAA}!uQ``bp)nvN~Sw?!I6P!YVtFs z$=|QMUQrDd|0s1l+w{QCyH#BgsV@v^l}Q=oZ<*~o;o-4{q1N#R?&nXt`wl^S?$7O; z6Nm0sSXl7>;_ByXnXjHbWR)bL{qEcqK*ORTz1OplPR!WV4U%lR)gjt8btfngK9OU) z+N*rt&8-+)+V$%YWaH%6YI%YVnO()xfzFmG4(B2f0v7Ky z==tY*(>Z~FG@HjKo{^~(7jl6N-Od%wvl7a~<<$v==Ag?Mo2wU(GCElAepjS-;Q(0p z`+^9HvqUKiXXQrn9QU<&Jhjjm|KNosP3^ntHwhs;wc_HxFoP8A@m97@5R_(6z!slx zqusQL?Sb+M1lZaGu@?S_w9k) z><=-=?OBU>f#!E(nd*DeExwD?WtPGy^{D(68&23v^%k^P9SKU1kd)Nb*DryEm#5CZ zk!vem@9o|n_4HbkM^B!;&}kG}lC-VJJ@i}fm`hW|90#TwE5EsCc^|UXb~=vO`ZXQF07D}L#bGD{i>sGuHWS$?d)Bd=Z(DC!p7%PR)IK;^ zj#;$})9jsg60Df=yK5V!nnEH`nBu!VR{f%(q37!FIh?nCzZ&uZ03dDu(?`bEN~#% zqhaMy;{3UaxmA!`&{9)ZyfA{G0p~#YYR#^Amxr~cwp+zcvh$t77UPBdCo%<{Y|||( zQfDXR{I}DSE*NL)AWwZaH90J>X1d$SeH(OIYzkPCaazG4USpA~Fu4`W*hFOQL?-yo z|Fy4>7|3#+Cu!Mwhv$T7q4e?}m5Qr@3!DhQH?32iGNMsR`-kHputjC385{HkKd$7f{4K{ zwRi7smAH2HmOz!Ik$X99U^T?1Qq~i{18`7c9v}HMf5H<6?%F?@~ywEk3>iJFsC!^_F3%UJl6^&1o(-l^v!N74N_Tn+KTOeKcT zKvrZNzH4yO-KM5pusbjkLI%D2-4pV=o~O<^_gNjeI`Q94<5Ab1P}z^8h+*<@b=C8@ z^<`lp@AC`wt?*l=v}3M8V-61YqNYbR;vZMSZ2xoJZ%poyT*q*vbX&3k=(&-TSY|uq zvvOLtXi59J$NQZ78Ofw~5-4xUR=*=3R8H5v#zVj3%$oLLY-p~u> zkv1axEa5G9^`dChWXd8$v75@Hc)??8V;?-rJ>9 zX}2H(47!`^n9_SYSftePT?86-I-r- z_z-*ton7hyTAtIPM-V>=Gz6L?Vq^_1Ew}xH4zDu+Q*mp3?t%`h2!gTUxkmliy!TAc z%&+RjMThf*YifwdH6&a)7??{88xb8U+;#J`BJedp3!KqB4h*~WFJvBYm7-Yd3@1*= zM`l6pK*s_UpCgu_R=~FW*JE8vEJV6LNP*cxem$_hF zhl!`Ep_-Ty7nIOuMZ^q#c96WO&-t0lOqcvA_R}r9t3)LRfH;nf@UX@dx&6v8%nW2B zIcZYmn{c^43U;Y1k8M7)m=)`D5V<66ZO2a*Z(UZr`uGIL7`b^#(7q6Z#V?hl^-1#2 zGrzHv$_i7^bALH;<#cGJs!iqEn1oYAp!osy)Z^i$+Y?R=WGesywN z!gKiu(D9-oBAle}U_sGo0YZiA!MWd|bQ8o^dD!1!Hc7J#dYL*JLUyl~o|>GCk}PKO z>CGfM$NaeD*X2Ae-07k`9xodA`@QF@x@e|bhG5<*j)PktJ$r^2LBU3mxKGhF;?gUu z>uHZCq~2BFBP*n9z8ur4;IIK{|D?$xtRc^FQkzdnEF<|AP1i4H>0qZ!Y=x(JNMzrf z=J9bl6x}2SV9u<8UN;h@{3H8&HoWm`q!E_p=5SodAq6bBZWz0XdDZ(5A5Ki~vu6=~ zWkBz-MZDGdz_d>%iA5!hXwD^k3yE!fg=w~B=O(zRHVv99uRS4+MUMkXf6!hV=AY6t z$U5SXjWMgDajqSAfK??mD~qnpJM-hLq+(__l~4R%_3KBNyVEZ{7OuS^f>7U6b}a`? ztgY`47ZO@;AI=I2Z=k@qylU%q@(H6*Tv7TJ-kOQ)w*gCazit>@6u`#_b7BG!(g@MXo~@!RktJyo+6G03qU^hjr5M}qdUby1JAc(jGkM>4p69vm>%JC$KfeX> zZ1|@vF*LL@t8-z-z1R2M+Ichn})uiEc zX20ZoEn#~~Cz-)BJR_$pTj`DpdJ1aR(myIi;<`C|U0MrQZg)D>Qj(D%@>R;cxSW;` zMGpK`+@-fc9ndP3Lxu(2_}CbRiie`0Fp{f@==K^5j<_f(c#Z({4lej$;@r0O14n|rsH;9;K(SluxdYd*~nz&jQRXdf;pP`pghY|u^0D#?v z(efAH89~Z}2SUm*)$sY<$thKVV{d1-nlAQoqqs2d3`XS1wLx`Opd;3vHX;dyRxpR< z9w^~}08hS1kac7eQoG=*$>f^3?}IDryZ-S7dc;z|nx0TP4HB4}Pyg>ZWRyp1d?FHi z7BQXg?k|9=*R~eMmG=s!TBP#+@r(FHiIO#*PrCBm+qdAvy8OEbhm@Sin*TyOqdiIa z+jhDL+QWvtIQe~AF$p4vqI6`~&!6*XC!D2vv(i?c+h^Xe0&pS!Rj(@=Q9KEZuI=x? z|154kb&!KxlK_!1crBr5VhjxoSj(nZ*+2V6-;VS#9yY9KjGfuAWCZ+-rHU7fB_9+D z?i%%uD?ehMrlF#$3aorN3_ipzNP$z_KWu5rU$JN{<`v>gLN7lNV=WtWB!$}1KH33kkNywN2?`HXJ{>1hYlS$ zM*1TF;3I2FezsfyN44r%Z+|~amE>EIkfgL@FuHDCfOI839bz)h?^4`vc7*!_ zOT^$Pxg#@C&2Yy;$mdJZ#TsDInkcbg8$ zZ|?GHq2*&wCvu%Ux$AM$f#jkuvw!NbXjWQQb`CsX>c7>qf?I6=5~^(P2pX9Og?uvf zsUIibg?@pesLXe6_IQVX_at!2cy{;bB&<*^ip8I~+X>`Qxo?O~d{calS`?$B)qFtB zG5aSVEvStEkm0-39E)?`9S98w<~Y&8kl`GRYhLrZ{LRYiyIXnBeO75QC?1H%5szecRC2UagDH4k%cEgGHOOHMbC^vCuL-I+2H*iu8+IF>E4K~4c8{X^N5u_i9z^yA zx5zF!T@#-|G@0PxMs;lZq@M4eF{&&|y2!@TnkxI};IFNKW^9H|gZMSc@*xOBl8Ik(l`W6IUa>g;go zcY|kP)E}m)&Xi_;<1j!cLURIG5_3Snsh7#rY*oZR&suhvp1v#JtLUJM9fe?*W?ZO8 zCkHc>Gg`9?Rps$*nZ8&?e#1Df73{WY*KmIFVqMi=5A@NIhAl5p`>tFE26p8QSs2HO zQUkp9Kb>MN~Y0f=hX-QNH z3Mh@EAYYvXIdE7&&Oje%1aVFxymVs@**Mwa<2|gXGN_O7Mp4SLpm~WnTnyUlez7+cRc!5@lUfc}%-y}+`q}ueh z#R$*#g3(!OaTs5P@ic&#wMbt?kty1yjp1Zh=;y&9XiEnM-oAbSz7T?(L7}cGe|SN8BOkoP7fjvGifZ|A8&+koN$7m+dlcw3zxEvN848& zpS+hT0URE+{w)HkLCHP?=(%TbaC~aUPtHhTxe0f7UB9(H)3B%{S+(t(LPSBSr>3#pzW~_9ck=H3Zs^5%KB?FAyNra)w_;{y2$3#> zzkt`NQ(2z}VSX&@I7rOU# zL~4EN_u*7X008e*(5FeHR@3r}?6aUxa4e+rZmiT#gjxGX_?phbd;o%h)Uo)FY!gxr zfQ$knAPi?W+jn-FI0s+PQn@7R7Vdy9-BKb@1FmBa;xc4@? zJ~>Fn(cR-_xJoM0}XMK<`Hoo;y z|80E9son|@W@AmlbhP9V=25P{xi~E+#EdRV5pbx1s{s-XwEenkDGmq3}4ZZP2_uTkla;W1WXh`MT%!NDi4hhUlrYKOb~ zW*NSx@J=p#LkHN|;~=)2DC?vvF_;794HZs%1Aj&{P=qVxXndI9H%zB11Ya~XWD#ax zaospD?>y2Aac}jd{cslXEOGn}%7)EDJ1m?xSOV|%^5%7)YQ3jpVx<cABOqf*-&SWmY& z9@5SlF|e}$3)L{u{OD2nFWLL+TtY(b5iR5gduJ7HdX(9h=V0+;(_tmMB=xTZVlFu8CbeOE}N33KjA@0zzJDYWNoZ z*N7FXI3^UxDva1IUSY1nSDhPP?1}atDp|6Vw&!=0rNipyzs;UL_6k%#-qq7i4kfF@ z4w8R^Z1P+r)}y?c8Az=;lr9YK==ROAKfdndLgGCkDl0$GqZh>`rc_ z-)=8Nh>~`2q?1oY;jrG;sVxFKl2op;S{d4~zCj;tu9B$|0;Z=f{TokFn&FnOn{F!- z55A++5`tC%E+CJ`ojCJA>Cs+%o1;0Js?~xy{ zZ!*NSA=dlKqMA>Y1z&)FU}3SmNX*Z3MV!)HqEW5c$0S6KO3Df^ zSCH}+`W&E^W0g-4A8*}8x;K~7aCxpL#MD|=bJ5rWwxlW3Z0n!&Eai<^JMMjoW3{QlQmwk{@+ zQ!7n*@4C@Xk}gWE-#h#kh4=7W?RlH8ep8V{yO)(FTA$1A_#6;R;)cA;3L0SbnPqya zj8iO1Fm&$lVg!|0c2#C^LprpN>RCP1i`R)~k>5TYJv{D~;y-f8(lV)PVJQN#1M7CQ z3B8xz@l{TPBo<8eIN?m-xed9$!P@PJRa`eHTjW(&vI9lURH@7)>66ysalx#iI|1BB zib>xnCf|k6DBLtb3qP=8;(fUfr_SySBRI(d^lrfgT)%5gEBWMQZX`d^3?|l3<9wCLHi#J+Z~lIX@b5Pg@L1OF&VGDwi3mKO;uVS* zJ}=E~ljVRy*M7u-Vk%`Cab6JCqgEoS-iAqnQvCG}2i_=CDlF?TxS7XbGdr!0maX5f zp)zZoEf$-cFwJj6;;-#kW4`;G(1`}yo?qYlX|LFtFq7;+F`Uh6#$p!a^ zyLs1Elq?jVtflWb^0xKU)a6FwK0S)(*2&<3^%YyFC~E3eyN3%jJHuaW%NK5UxYwU= zhl~7bJsxJA6~*4z{wnp(Cz>o@+DNj?$Wj$qEsu_;-Ep5W_!W@#PRPoxIXsVTP`WSJ zxZ3_ztrY1pE3u2aB&4Mx*!%~7U76;Z19|rwZI~j;Vl&5I-FbvlETTH)M~FqA)wJ{c zvK5m>mj|vz(Bbs6;Cyu`FOU4|wNSt$ji#EvS2eB1LSRUFg>}TVcAJsO3gfiD#VWG4g(=)yd-aKP;wq?eU15V0tfnJ-m_fp*o0ne&g{z$nJBsSrRG? z+05LA(|H(5L!`7za@nnfDP8(o7G1`scyaw)z>7~8N@$ZWdCTP)9YQJX_M$rvjP4bj z|A=Fc;~F(et2nRKvZo8))|&Zpt&mujl$Us1pL`{-e#l_lm)CjNMcXmodp%FEB1cbx zHW6Ff_iGObJKi2QUp#cJfI$cx1uk~QIJbZ~_G&2s3RNtO(z!*PQk(re-Yq5myM?*G z{{1tav(f>?Pu$yl+X;6msg0|)V1HIH9XK|WsjxJ+EmPvT_LAL;UzEC1{R! Y=MFcICm*DEk>$xlrR+D#GC1P*e`SQA6#xJL literal 0 HcmV?d00001 diff --git a/dependency-injection/docs/autowired-type-demo-classdiagram.png b/dependency-injection/docs/autowired-type-demo-classdiagram.png new file mode 100644 index 0000000000000000000000000000000000000000..5f3f3415566893568d451f5ba4f7028e9b256a14 GIT binary patch literal 23197 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 \ No newline at end of file diff --git a/dependency-injection/docs/inject-demo-classdiagram.png b/dependency-injection/docs/inject-demo-classdiagram.png new file mode 100644 index 0000000000000000000000000000000000000000..9996fdc733f23d2ced4d5587a2d0cbe4b7d552bc GIT binary patch literal 38729 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 \ No newline at end of file diff --git a/dependency-injection/docs/inject-name-demo-classdiagram.png b/dependency-injection/docs/inject-name-demo-classdiagram.png new file mode 100644 index 0000000000000000000000000000000000000000..96a6a3425e0e6fe8ec6982cbf0470a692163abfa GIT binary patch literal 23358 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
    eZ{>Oqf&*F697h`wmT+%?vO9Ye&oHg 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 OmzYtk$ajt1BL4^N?liCf literal 0 HcmV?d00001 diff --git a/dependency-injection/docs/inject-name-demo-classdiagram.xml b/dependency-injection/docs/inject-name-demo-classdiagram.xml new file mode 100644 index 0000000000..5a8bb9f8c4 --- /dev/null +++ b/dependency-injection/docs/inject-name-demo-classdiagram.xml @@ -0,0 +1 @@ +7VhZbxs3EP41AtqHFDqydvOoy20KJwgiF2meDHp3pGXC5ahcyrLy6zPkDrWnYQVe5yGQIAjit8Njvm8OiYPJPHv4y4ht+g4TUIPxMHkYTBaD8fjP8YQ+HXAogCh6UwAbI5MCGpXASn4DBoeM7mQCec3QIiort3UwRq0htjVMGIP7utkaVX3XrdiEHUtgFQvVRj/JxKbBrYsS/xvkJg07jy7YvzsRf90Y3GnebzCerP2reJyJsBY7mqciwX0FmiyJVoNIK7tv2cMclKM20FbMu3rk6fHcBjSf7YkJ4Rz2EHyHhKjgIRqb4ga1UMsSnXn/wK0wpFFqM0VfR/SVNjWH/xj3g89u8Efkh8nUKeNW3YK+SaUu0CtJJyqmfAFrDxwNYmeRoPIE14hb3qc4szvoo24zlOPOxGxFYx9IwmyArS6PlFMkA2ZARyYTA0pYeV9fXXBMbY52Ja/0hantppm3vhdqx4teSVDJ7PBeZPBWf6EYXkCGLS3yvcyU0I70Cs1r1DYo5MZCyQ2RuYjJezAE3IOxkqJ5yg+sY24Wp1Il1+KAO+d9bilUw2iWopHfaFkR9qDHxrIUFPZVi5WbyYoZyMnmQyDezSyga5E7wNnEqJTY5vLueOCMJJB6htZixkbBUxcNc1RIbhABIXmC5M4x4CLzmOhtOUNVKiZwSQqRvy/ze3LJOqWV3H7Dds+Rn6thRf5XNNSkfbIASoYEdEzHmhI4NXfSGmEOlQfNqCAKvGZlROTW4FcIvGn0EbOuUMlQiBQFa7dCd5zkWxFLvbn2NovXJfKRWXHQPpUWVoS7M+2pCbhcpfXWyqd4KhM6u68VVlhRSO903qLU1lMZzehN5M5dfYjIrzmNScEwprczN3aOmvwTNI+mAcXVHlxsnRYSXtF2SHAQhIL+VBAEu+cEwetWELSEVbKZ6oWwoQf55P9hVTPSwtdtlvHG19FXfvma1JO21A5qSqjEHagPmEsr0a1vCtuGtD9BvYgZfEo9TvzniBd1iEcuNHP49t2/q5vb2fL27ft/lvOb5eJ2jsZQdVec3itriN1zRr9YTFycWNb7yGheohIUn8FONdoUzCl1/Nzde+zuUWjUob+P2rX9+LO71uC5Oz8nEvzvyFaD94XynPc95b2X80c6eafafeQ995NzJ+9NvY5O3qleD52c/6i3OrnFIkd/+/2csT9F845O/WIZO+LTVVT/CP/vJHWzExT2Pe9RHh1V7rLC9cVGyz5Fas5hp2sPXXDU7IIRp0yF5UB8jeQe/uWO2rcc4RbmF2E3umywe9FRt16K3fYlwi/G7njYYHfY0dP7YZeG5R2rf1a5x54svwM= \ No newline at end of file diff --git a/dependency-injection/docs/inject-qualifier-demo-classdiagram.png b/dependency-injection/docs/inject-qualifier-demo-classdiagram.png new file mode 100644 index 0000000000000000000000000000000000000000..1ffe6453cbec44b8961f222bd034c65e5c06ba35 GIT binary patch literal 37170 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 Q(7=BRGOE(ArA&kVFOC`r#{d8T literal 0 HcmV?d00001 diff --git a/dependency-injection/docs/inject-qualifier-demo-classdiagram.xml b/dependency-injection/docs/inject-qualifier-demo-classdiagram.xml new file mode 100644 index 0000000000..ec122afe71 --- /dev/null +++ b/dependency-injection/docs/inject-qualifier-demo-classdiagram.xml @@ -0,0 +1 @@ +7Vptb+I4EP41le4+bEUIUPZjeenenrqn3tLT3X6qTGIS7zox5zil7K/fcTLTvHbhFOAkBEKAx87EM88zL7G4cqfRywfN1uEn5XN51e/5L1fu7KrfH/dd+LSCbS4Y9VAQaOHnIqcQLMR3jsIeSlPh86Sy0CgljVhXhZ6KY+6ZioxprTbVZSslq3dds4DuWAgWHpNN6d/CNyGZNSrkv3ERhHRnZ/Q+n1ky71ugVRrj/a767ip75dMRI11oaBIyX21KIncObtVKgWb7K3qZcmldS27Lr7t7Y/Z135rHuLcdF9A+zJZs5z64AodKm1AFKmZyXkgnmX3caujBKDSRhJ8O/ISb6u0/KM8GX+zgepgN/VuLjNW65vFjKOJceidgR/klX7kxW2QDS40CUbGDe6XWeJ+mlWh4olLtoR0wznjDdMBx1U0ushaWLkPPfOAq4rBlWKC5ZEY8V8nAkFPB67rCr/ADXdvuZtzLM5MpKr0TXPp/pkyKleD6Y/wVaDzjkWrAkWxEJFls/V7y9ErFhkCyY9ATgD9nHniEaxA8c20EEPoWJ4x13sQLhfTv2Val1iOJAbbSaBIqLb6DWkb3gGltEA1gfnnFwl6JoGmewJoHAsNemYvuWWIFdo2npGTrRCxfNxwBLCKeKGNUhIvIUkuIqZIKzAAHUPz8BHVrK8fU8waiNIt0x7REw00R4+4NysJKfKOwCwcwA5Y48M5mSL5iqQToISZ8Hnuws1sQ3+qlMJrpbWmiP5IWJ188w8/A/gQFIxZZYONlkn2xiPs1XdUVP1EMBpR0N4gILs5oUpAwMVp94wRVrDKSrkrooYjIKfnKaminZrJmnoiD+2zNbFBIPiMOVrQJheELkNs9baD02AwB+lYySyyh8MGiLEMZZljONkuttRKxybAbTuANaE5tVhqCXVMYA2loDG+7XJupisE+BtfBZRyovOGWzi0spODezUKkHZWRXbQbDLqzDlWUWNcAVop6dsmBpcqX5Zv/jGoEWGTVAmF8zLL3u0x9BWq3CbUV1SGUbMnlg0qEEcrq1/naGrQnQI+Q2oXeuDt4DhLlDKvzsFmdHYTi9OUZN1MJEjCjB6VZltLp06e/Fo9Pk/nTxz9+n08f57OnRep5PElWqZTbX37NU/ezArWX5Lln+HUt4WPs6XZFo4vltwtNMBpLNGmtppcG7ngN3IgenKiDQ1hL8DujFvjfH6CBQ6bVGrisLuWRvzAaQu4S+/vGPsVTl8apFW1a1wVtLN+Xxulg6A3Rg7vQO0DjhKcxjYJuVB6jVKsvEXtkzAnfU0Ssg23cobvl6xuoMqWO2bnuuWMSPHAtYKe2ZGNf/dpIL6WyNfaYXbRDh6OlNhq5f/oumjZT7o9iZUKuL23Siduk4bjaJrmDZhz2e20nXSTsRITmceelU+r2lLQ/A95ulVoBP0jibR5tXnqljvi1NEut+B3ilKntjPDSLf0fUdvSLh0vapvPs5/5v6mAorYHxFnpe9OR1le2ubHlsVa598Eaw9gCe4BiOKgXw2Zotbakh6iEzafIM/XxsObj8Qmd3Hzao1b5TLzr0vEVpYnmoSc58tDOJR3n69xhzbkt6eFozm0+MZ0bc2u516FgPYV3m48h50ZdSqlE3eHRvAvD4l9J2Vzpn1/u/Ac= \ No newline at end of file diff --git a/dependency-injection/docs/resource-demo-classdiagram.png b/dependency-injection/docs/resource-demo-classdiagram.png new file mode 100644 index 0000000000000000000000000000000000000000..1f0a41a19e921af046deb26274c06872d89339a6 GIT binary patch literal 46095 zcmXtA2Rznm`?q)Yo{teiR>xZRFroa)bK-WSGD^}*fW?6#J6ZEP+fOWP!K3; zigNm%f7g9IJoQJ?E;FY-&?M_@-C$$Jef?UN;irD!%FG*QtH*P#eeAz%Gh2W0g=gNU ze=$5(^;pI{SU?2JV=%p3QAbIhK@IVzUO8_dO8K4FlYhUqVqb`PzbrtQ+N^!|-_A*s zSjzHl+{)U^+VTleBF2y-Hswv}m>=74M?;6tJRN#un;>m859PDHf4%-^jTPN=kg~IA#^IrRyec^Z!}IF#3c|-d zi`6aBezXK{#LjRWf)Jw)B5!YEVPUm<5W?>gOzW|&9CK(_$)UC&6iL7FG=9v1UG2A3 z#i+x#7y5bH^H-N!SAN?wa?4n6G22ZaZ*1$PYJA)(ta{gGi4WH@d zjAzy3L-xXI2{Alfj@5gfl6AqT-yT}|;M)IKbg4Dn^cV`fy!4A#eT^9?fNgPuGV&%l z-lSIfcDN}o6<)~8XbL(4tP+FnMJG{_^yiaxZn2WPoyW(=9>?Dv!}Fe(r`&*7BPRCh zbbqBgg>T$Jr2XBa$}#FY{7O1A0#Shi_i6@c(tF!&E1OnIW*U9Z7F@)3O6dQ!2%y1F zW6-HB=7yY3zaa6yyxRMBKV78vmVra{c$s;F*Fq-=ud4tz_p`x|_l-*bdl=5I#v4c^ za-wWa+*CoJ6fEs4Ly0yfH&tDvWrP^GFz0%8hskLs^M&8g=l{ zy5N^G`JX%IC{ClLwe#V$OFhL`(z$czPWc!aUWkwMv`(~KqG74281_Q}C7mmkiJfN3 z>-DHcNz+i4DbDZfbPzeK?30#oSx}Xgm34C3e&M%AXJKJcJQP7BFJOzSx~i+ExA#k8 zD~?S~CrK7T9ImLNql1ZwNkc=E^OT3O+qP1NJj6~a(^`)_gnn*TBdgc;Wvyxbq-FwJ zY)77jMgm)C%dC^=c1f=-S!A1LxP&Q+K3z=uOz5)7pPMy&nMo~%af`uiRux+T1JN&L zB~j9$BeiGP3!#HF$((qNxY01e#GeLXmBxI2cipBu^}T)<&f-&W{Yn`fDE}Qt zmIttepA%xH(PAyWd+r==j6dLd@bF>UfE}A@!C?#1sSZhoAs{ZUPTcx9R?1e0_EyB) zj;DRq>EEhn&CSi@)h|5k)fG=h2K=dWmTW@x5H(cGC9F-4s0Gc0*Y>U2wM;|oOiG3u z8>OR_6EiXh%+Z~+k+V+alMF4+66(aSLqj`)iKICxBZ(Nqh4}erM4R8sFfT=oIb^YJ z3A2d=m^-hS*ayl6RG0j>7m1xYaDw`lBy9N0OC83)ZR~U~@$vEX_4TP_5qK{1+v4_9 zM!f&=;|C$5M5^#?1@!hzlsh??Q?wk zDvL;ErSzE7{PF3Eb@Te(sHbm#HYiR>p^_uMb?cVq#f$*It=ja(`8iHdoGKe>_-jPi z4LXti{r&Gd?R554;zB}ytSW>=L_~yzR}M};efsqMyJW2?VdECmMi-Yab#-->m3j!` z&nDHSB_;RS6Di2aq26dopRmcu$OsCOhM4=D?{qjjJ3oE;6fb0Mra9QX-i#%loSgi_ z$B!%$;-kL`K7Q295RH$I&(-EEDlS%#mp3RgXP~8x82uehcXxGl70$7pot>s8p$}&C z{=vZmeSHm0O=BL)Lj8B|-qrb>xYSQdi-|qd(GifAmKG3*Pff*Pl-uT-)xSd>^N|dW zdE!r;ARJuW6Td=iqlqgIy+E6A*z*EZD1ia=gijnC9AfAPtbCXrRgXWhwO#gU8y}b8 z$-!WwGW^DW}Hny)TnLA!Z-NaM+a&bumZPw7j+DzgALBdE0nlWu?}po031IXlQkBsm~wYpMruyczC#vG?TMe<(TP% z2M5C@FW_XtisaL&@~w>%Cif)C@>kPlLfJOV7l4AEo0 zkWH+;pkX-{Ig`A1^Mq?dVzTV9*}F3lio~C6@v0vS3Iz6$$6Sd4c~2q@iWhf0x37wd zir&4Wtu^IMRu2sg<>uzr)7ACy@xck|w-bUb9vmDDTfx1)p`xPV<43H8%75*LRc$6H%llMokQUZ=5TOJGw`QR&N;VIn90YB#__82WN&u1)ya zaHq9kdar?@p`n2Rd%P-i=s)&uN=j|Ji`}q?jCc(0-@k8WmI>!1rF&?_RX(>IE?QUT zb#}NxPpDEbs6+nX!Gpz(joajS@NUS+$Y^3@sj2y!b;*?yK4^1(HR7@GTJd<0{4-vG zC1~ehH~N+O1j8N9mK=psYigUwHfWJs$t1=l26i1%3SY(?oc@HpUNwrww4+=leKUB} zYG3t(bCUa}P1wwMD^K!5aTKmX{ES7aFuzB3cR&h52kj#t3emU8D_dJvbCG;3EG*v} z8aOyOm|qUO@INz2(>R>+-WnPi8G+hJK|z9{V`AccaeB}eNhNdeM~^Fcb+1o`1Lw!c zNJ`D)atzI=k0jxWb1N%q#EN!y%ee}n=jZ2wckZYqxMl<)<);S+UtV1tU7e0Jm45nk ze7@Hgt(>R9PDfAAbL-ZCeU+BX#eNVbzVz`-ut~LJa!QKKe!l{ST!w_lCe&JJ12=GS zD~wAL6BD5WI6i$k*61rC=&3{Qw%CL7sWH$mtv~3twfcU`c++Mz>8A66Gs0ZZ>+OS%M-m}()DubBIaDIpLy!K5c?`Wg z9~L7Nb-`>bV73aINvAg9FTNADyMF!p!p|(De|ai_b+xXmeA4{s>7*es^8@y}WE^r(UT4{-u&p zzY@zpPmcy%E4`Nx7x!mx?+qNB?W3cPLVbaZUlkT13UwBba{mT!#~f8{-}pS}@kpd{ zI;)`e0)TgruFU{(^r=spZ3uxlBlyhDI+l@v2!%ZILTp=U)D~*>D}3Je(_=}EG+Dy$gf$aDCNg5UX)Eb#>T`@Mz)o*wc1vyC@Z&j zbS%2O^7IsyBfhw}02BvR^8lOOG+vc0@u#JIi?T-tYIauE=GNBI-id&KfF$FKLxt-< zs-lvto^Q$&gM6qQ$pIvV%X1Q-OF~)W* z?MX>V-6X|5{Qd)Z{0JRqzo&-)0OyV;R(>}Th&ONEB&pkYcpUxtlQd)> z9TryOd-hGY@bxqy0RfNkS5AI@D2}@)=SfLPIXQ^n=77(}1ZyawTWEZMB0A=2qLqc_ z1wLbmq~GS|j_jCUIq(WsOh`yTYZ|f>YH4YK-r(!&tDGmm#RcsXKKOn$t}D7F2Hq#T zi-3I2&d#tgFg|?v04RnoT3K;oc9@6qUcq41w{M60`-&=mIMR@(0{Q2zG7nf9%S{f&JjBLlPg^x zvdqj(XslOB=Aqr085vR0(H9*um(8uyQU!5-* z6dy$2ol@1*{AR>MP)#r7>vKFC`l9LL5CGS4fy_lXBJA$8Pvw^{qynmuWKRKXUO;tS`fl_&O@N4}O z@7?*B{)U~MouzDlKQFJ-WJ7bc`}Z^NXFtL1ufDvze3JF*P4}Xgmlv81Rb(3!Ho%Ve zQh0m2x`L#*N_Bz)cN9Vlij!5@${J6L#vI;wmOSo=5f&1Piiv?m-u3(rEN5%7o+@e> z6%{pw*DNA3QlUxd4!Vndfl0p^!&>g|f>L(MW9H)_{$CjpvrKEsfM?I(2iE-*U8rlu7A^1Nf^n5SfxdOjd5K{?|2`T3tee@68` z7SHAeaJ0J0b?X-DoZsvZOsAXH2x)2avXPGVc6bZ&JRyUr#&eFpMD~M2>dpVz{&hP| zo>wEzBe~oA>&spY6*A!H=m`268OF|0(^Y0oVm;E=U;7yquc_VBrzAKSn&D>-;{R6F zjb#4VAN2G@>2n<%9i^*^(9nu5(&M>rp6?&^nS+zf~d(Mb~5b++D5!6)(Ucx&P)u zX<|yslPcp_da?Hdc2IKw#Y$hD@4+zx20A$6vHg|=F9doEtVMWqbX%tk=`l#Ib9u48=;TUvHCV@Yws&`{bUu*TV@|)ji&~d^2QEfrG(+ zC!h$);c3mk8UBtxCJbIv3ZKRG?&H_zGp*V7XgV|V_m|N?^YimtSy^$)*XDd}NXqWh zz7`(j-an_5-Kv^^5vrx=Tw_`~*p(Dkh|Gq9DI~NHty`ZfnLRPQ*Y@oAn8&P+{J!4N zq(}CUJp&ybzzHBsp9%|a-M(#BVTEarD)qwDbmCuc`W-<*z?(V8>h7QOE#1xD660D^>e59ejHgdF)``O z5UX@q1bCtT#JKX2WTggeM2zSp^1&1xWu#Kyn!MJYyl8Q-)Y-4Tf3)TFE#^2xsufZFPSqD6U+8Tgia^o zOt_N9OBU*P*;YQfgA!Gncl`-||0yaeYJ1zsa$NP^miWv*p{O}-;xEIL6-jLM_`u7y zLS}(Y3a6Y{f(K}U2zGYcp`r&(XOmlSOrT%FyJPg-*J*FXyuu|Q_+wv1u7tV<*x|RG z5b+wO*x1Z>+Ab|ZLPFYT=6YaTwcC} z(ot$q+#CiG8F+G?23Y&W|Qng-f&iSVniiUU18*8XAhE&ca0qE3fy=cVh$o zhBgQ{+~XI8zPiR)5CRCB z^yTrq#pP~_BqI^yLa_&OsCs#CYyu7a zq@<)hwlDqt{q^<#^!IB6c=GX)G#wlm5C8ydKg1P;n46zJJ3TG6Xd)zsqWGb#jE{o@ z`yY^YJb}EKx>u`zZaLw6*y0ED)bEw_h~fSSS|IY4R780AQ#d7sg>v74n13!T#1+)f z5_<_<*>U{ajmC(uuyW&)xMeI#@?%)uobqyhK(CeV1O+)|!ccAZqZBHciB#QY7me%P zpX=zvtLLN9iCK5cu4wq34rc%R_fK9_bW&a=dt<9>j^FvJz?m6`MOgSiMdmcVxZ>V_ zpFI2?is~Gqio9Zi;NJdua@@bQxZ1#)K0yl(if(lffgJ|K8`|eBay;@svHxrgz2)lM zUW#xn{~PFE+P9sY2zo^8>Od)7%Z=&$*zaS#JF!sqo#U4x=R{_eAXn5yen^iIm|{5^ zcK#!sdXHhS=U)ErObHLc(k2d)8d9nG2h-o4gR;Q5j*g9uO-DCcs|x+ z<1Ymb&B>xGvSCi_!bhYUIpb1`tboSbW4qVi9|r(dYkS7BhjC`;%|{!=&Bn$?0J$S& z7O@f6lGxS7^wq`L^p!LMAzNawHQkimW`*jkrKQ#6d*-gD_VbHPH(*sax2j%S^cxE< zwYa#r3=9lzZf;Ii4^2!W4ah3T2oke23($+dw^;>7-04igI_F|22wPZKh=_=|JLTCj zICw`|`WjqidQ7csZeq=uTUcDn<4jCU6clZ?mGC^RRsxEHy5u1}=HuUkV!J-CakG`}aZo2j)mlo|KrVa8xAo zYS;SV!-wYPQ_%5Nu=J~peYaARJV;WCh4fD?Owcqw>YwPz(dK6Kp+5+^Y9QzhUDCXnhftiJ)iVT!p}v}KT_(o zCOL_5fH#3&XU(xfX`maNdK22OSPRGBQlzP;U(% zJZKK97;`Apud^F?|L2eXX(`cEF|aRqGEQ>5OwA|N0C0kpwE&m+IQ}Oop#tm9t zTk}5KsE$^ihc&u5n$Av05Cm1u)Knv30T?&PJOjf!r7WU;=bpeL{roOhhl+uZpPrq8 zN*^_qaPyv(l@;|McFi2}Rdq^A3dl!_ETCyD^<_7?tr^_Ahrdr*H9a}$JKugIS=~k? zJw*Q6R537k3#BEY6YwplO)vlZ0NYhoR(23cS7cGs)HMI*K%O~x7IW(J-zAV|6L3q{sBTbhSw!5&ACMHa4c(}QXfn&jX z7?%v&3CW{y^BAE8TK2vZF3`&MTggwE5vAo>15U;NxCs!rRYgs0?ZaGc$)kyv?)4WT zROZBZA^V*-j#DZQ+uGX!z%ojC?N^PM2WPhT_Y;fnK#v5?!~0;!u-WznKQ$;w!=+~T zh+qG--aR-lt8tqBl_`Obj~`goVn+Y?J^#NumW2-r^{*`fMHU@j-v&jNSDUp|2O*QBV;)fv06$^qI~Z*MP%j==I_rhhyi}31zQT_>d=<>pVlA+C=20| zd2r~_jg~Xq-b6B6Vm++1y+Q18{1X(CYXK6D+`xd&cCtmaV`fv6zoO#n!LL>2{V_2y zj52=be+uA$hJt+0@c^I+|jB;%xEXhl1SdrZ(jxHfY2JuuYf}rmX*c!+TOi;_v+u>ri$?m&^zP&Je{1J;BB%e zuFSPX0@2+@)4G43f{H3z)ERBLrmSoWe%xlYb1iq{TrVbY=h;f`X#Nyn&WCCN|ch)@2d= zhr_LDKGJZ%gJKIf2&leGJD$%*N*nwxPRD@lWJ;u@rJW3BU%FmhURWCH77vv*U5X0{ ziijNUcJp;F?t;s#$w~f09lK0y{&jSl)tG}wg;7R!wm&oqC>>C=!`tSd^?)*h6o&PO z^@VM}EJYW)j7tt-^I(SvrT6kRoqvIi z3ZB9#W4x*4Tqk=&ajOOwh)`W8Zt4mgunDx;L^sxHDb~-vbP~R>-eq_(r{kgOU zo$%X>X%NGaJ{T!{g9 zvbz6nVm7}OVI1nHCBM(%*b^wL%j@fkJ-S@U@{P1!LIS>}k1C926hk(Z`jB8us;jF{ z!DR;vwDKsiu(5ANfDsMaROqKjFn++~NCE9jkkY=&%hS^+S9|dR>(~F!0&pgGO`rd} z3$_7ZXttlwp)!C^f>3VVMc1*@|1VfxADBp?Y;%e*uK}BZj_9 zGE>U?@OWpQiqBlpQ2q=gvDw*KHnqcp0}_ncjSVR=vBCknxaCI}mZ4bE@4!n}bUNLC zT89H%NP|65m2Fw|iKS%#A`AeCKb(8m5%Rb0Q{aUd@o1{4K}UOI`RbT{*to%*k1`Uh z7CS>*+keny%FODAM@K&y6z8(l4B1OL&$Wg!`5Ecx1Y*Itg>(bJe(Q+flsOaq zB?Uzl(1`>#&{uvB4yHgEe=*(o;RD;~ZEG8wcs3d;Dv&E2C+k8q15kAfU4id)CS!{2 z1>E2i6&2;<)5;sbz{W<8)lydvdX|#}yACcqzjp!)0$SbC?(Xju*MWfnc+-8qeqjX@ zYIs>b>sa!nCYU2!%>)#7=T4<%Gg|%R)W87hO<#~)TKODB*^IiVO%y-40GV|SYPOy- z-8@(uA%aE)q(<>Ils@o5HQ2{1pAhjZrq)c;S-R{T9jRo4r5>b(bMXaAJvug_^^@yQ z9?Gk_6^2f3R+Y0ty@G%&adxkQtFfsmLfl&LWRV`kel|k1ATqh^E~vF1K-ZD2L_q6#=m`{r&xc=-3E4@gU=p%b8#zWH6>Q>RB|{y$W*iCm2c8 zN{YfzoQ{rIhczd5#;!d_@F}4t#D75pCiwU7Utqc$?q}c;fV&xKBw>aDo+>m}xMyC9 z(_fnFu+Nq;(0|UYk5vMGEk}RTDqUWMnIYqUIq5NN^O_9mIHRZ&0(y;<6oX@tHYXHN zB2CeKZfFqYhmV_<^#rTG-^2lmf;;)CPW1 zVKMj-ARH^RCxRPq+xrg89z?I@N4Y=+*koWfdczSGqu12XAULig_Mq>ob{Nw&GP0{2 zQ)G#UE(_W;QMaC=Vk>xdoDrnqithCcrt}cT00y>21(v?d)k&XAE&asOa^VZ+HCY1# z1GxJPK>*+&q3gnW`w6_5w!Y8R-sR#q$;+MIu~E^QwrBV{L$wv`|d zGl)8&e5D#jFvc#etc072H}Pf$W(2|>wmXM%buAXNQh46G*WDb9y|=py41UrUdVlq-wMd3DIy?O<3M@}yAOjU(37Tb}nwzd|Il1O?9R7l`!@Q<~% zG+`1w2g~6AEFsin&rb~%4iLbj-hTTkIO;&WlarGHV3CG{KP4kIpsd2J5R zc>cW@nH?BI=5#=M$~e|K!C9Uia5>4 zLJkCuhbiw9>tq@_I`mNaPPuD($r$SaDYp`XaZn*O`NJg&?!f!#liVZ72-hPQhF&8n zxxTgrKCQ7)_ahJImEZZm$wx;=p~;KN$V|iWu@(e8a*I3y%J}c!zcVuE7nHX)HZEGp zw4hf)wh?4M;5@pzyO1nEB?{0jb2@?;#rjl(2^*=Khey+H7dQL@xDsqTB<&+k`j*n% z3{)>`A+)=oh=Qo-zBvI6mm~3~YC=?OEE6Lm$YKHGCB{|u9We|5%KDDlzl> zw{Eg}a#GUQCw*D#>mVk;_BJ*)2JB~IY|LxXn30~oR>a1*9x~Gdz2XQ+%2R#)q%j99 z>KyBb*Bqb$90Np#!x5vd1hmFncov6ez-UhbD#bsP>**rRG^z`Yi z(IVjf9$QlkjEuh)U0}npb8rL)1Wk1~9$5lKI0G|3Oz}O?N<;X60Z5vhoCNxUK(pQl*gzz6?qqJBRaW)_nDc<$=d!ZU z8r>gmN(!zPMy>#fGgJYnf*4#p^e!{A0q$de-!)!UNJombMgmDY%^hn5=W?jcF#F^e>f_ zfi)5(HLnepV8@o0^46L*J|F)EFBjl3#NIYH!Rzz+*OLaWG9Vdni!JAV(eDGK-X8ym zF4>lg#_5{`#sf$)4d1^T@x1+Mji%+8__K9s4`eSkRc89%az*+@P)Z0x6O)sxVEd~| zQ&Uh34G+5mu7*9QjJ6BR!7j8y&a}?8P?05&8V9ZjusVUwMlh|{_6{{c9DbXF2>Q-* zd;9m;Tfti2ASU@=__Dj38w_$#6(uF<32#6KW6Z%F)Eyli5_0^o@bFqlH9{t!v$GSL z@-p7iKl1RMWK&)~9-fKXmmHHUP*U{_4LfWrf%9%PU0njJX})9@6m+q+#t_U3dMpl6 zR6R%V*y`mI*yvrs0UdYvRzLj39P|^|%OIQ*nM|dnrNIsYka$Nu|GgtHROlwnSU;@= z|Q#PVUZo^LvjnS01U=2k>3oshgRvs=ckbeMEl|TXe{CQ!=6B<7R z!hkvi-d+QcDMWiC&TZ5f>iX-~uiw9C5#1>t-+)~TWjn5jw2i2Ti54RriHT2XS7ls2 z20__RvjLu@N%UDVkbSPQ0|As=X@J$dKLdSW6%d+Lh3pRYsO;~189!`hawxzrGbo1W zFd)&H8AJo4$T{9__4bKR@lcoOkxKY@JVz=R=d|N7r%~#BExs%Hc>{sWUlqzIv1J~S zr?n%UDsco&jdDLzr}sjvxv#IRzCK;<%G9|Ng2-WK@8{1?_V%AqN9V{uKunnSKACoW;<>|2W3z@LDh&lA2cqZ^x+b57>&!!jMlsYhQtW|Z4I@QCEOBV z3vVC*PWRKZvfiWs?y7l}r;WY4w`W*l970$Gm>sm>GO${(Nn!xgR~wfM4h{lg2c??! z^D78E4;O(j&u#DzP$n08Q*{w1?hsf`dp9!hpbNCKtNxe zZsCU)VnM;dcO6DiNYEf|Zlh;jWlxcm#Dc?e`}U1g&en){Hr#3>a8$cM6R7|x-WR$V zTmdj){jX%14-YYwuR+|^fyLG0>}<2;YRne-HxH|c;+TPF?E=!+(N;->)}F(;Wf*9I z^0@%+uj}K0o$EQXeVo%<@fHE5cj*uMD&FN5AE8YSRGcznwL553#~7<$r?30h4r0Vc zn%vdLMn*u&2F@yTwq6N&64?lu26G}cQ8>dBW&if#Yl7oInt_1;1~Z!(lXf1Ikb8hA zU%spy6v?EO&}mPG67OUe_`bjU?QQfjT%izD4tyLO9DMvrBcAf3cd4lWTf&2nhh|(bH=QYjV|>GaR(h)YO!hM^nxI$Tuhnl~ z8OVxvj(?!N?q2_x_Z}n!;y(glaV7asPyo8#@bEAT2{I2#3INn_MV5&7`(6;&;;?3@ zp&d8D@`KmAP)Btvr=fh0RrP*0j0tk`i=jTJ!JmyCrQ0|9p^AY?7 z-U6`!CImz&-lRXGu(YPF<#sNR5Fqn#`IBRU zA0q$e7OmF?{$@sZAati9x)W&)Ic>4y|%*!6d|GXPNR7QE7sdK-QlXB&i2|TtBNUBl?fD z$Mlm{7%m>Gn{T9DZ=zxKy;Wt4(`OuFQL0<8HJbTMvxzg#oP;3#l`|Ku-piFDx=(Ti zXMU~WI_9*7ES4EOEkqCl&7cMCHqcHx6r?957LtZU$ozSFQa7+iN!^~$UDm;7Qxg{- z`7IF~c4k&hFQYn4*w;P31Lv{ElvlGqMj$1SkYY#M@;m_bUQwGBVD{ki51ZlMV4%4K zUb+m^fHrU)#&C8Jp+lo$&d)8D?wK~+$x1K`*to;RwL11B`zFp001L7NDcz8ghHT+) z$DG3G_<8yuW@HJPQI#I#kre^WL#d^qras;u)B=!<=p-_x3|BNRxt`sSa9`Ih9+E{9 zr6-K-cwBj{#~@r7W2*sbMZB-8uLryf>Y;kRy`5cZYHE$o$u96MgmiLaLmnp{sf4_+ zM3AjkJ~#1kHq!7@U7X(BrhQNICEhGzh6^2)WgDXRY-%q5b1yS8G8Bn$!pR|!#>`#r zjXU-1RFc>k@XVb)NreP9ZLMwN*&R>$T;c>VmOYUR64`ybk=f%fa;>@Pw~#s*#2Cuw zFCX$2y!cY=LAPlqk}jt+y98Yr@;bH^MnJz%q~z4k@|Z5{+9D|UXNYOAs+GOur(cUY zu2Os7X(z{O>&&^g9ks71k1_7Ux(O83`*1xxEG)ol#B;VaH9Y{s&PYkXZ`*4VlvGIY ztXKBcacmN>{!Kwq?8q-D*cz|aDi{ppxcy%c)0EecB|c!Oq?nB!3Oagq079v9OoPeS zy3HD8H%*l-0q`Jm6O}lUIh^^a&@upTK--+@V22Ua2urlzLMsXUd<)ny{EKYA)52y; zSxgU@v;tpPJ{NQ!NE=tCcf1y)1i|=SS{e;4?K_}dG&DO02Nxi}Ayn|nALVM>38sO` zY5=|3OH@b*gE>5IEGcKmPd*(x2;nMj_Uu`)9_^CrAZ`<+FK^$z4OBC(9P?n4 zN+ca{8Pq5c12#UY7J**d6en6YBa#1RSz%irY&bd*2d8)56z&!?|ExvQ0f@eIaRI^< zcNt(7F~Gfy#fIgqQH#PSBQy$;k7?f{W)cEILU{soE_SCf3GXBoN-w(#BTvcem?VTX zAo9svgqnrpiVzbUD^#wQ*Mn-&%6sF}mv5cc*3h1@bfqa*ld>FH9-%bOE-h8R+Oxf@(f)wx z-wUjp3(|7f;$J*8994-i$Ri(p%^R}kGyjgG<4e#-1`~0#v|UyerGUn+tq6!9nbo=C zqWMxYqJ45=a2bLC49025IZWY*c)qBvu2#5jCJslT>39x5X9UbLa9Q7chd@a<02f%F zuFlSY4CeB|nZ1)ZukW8fN10E-oD8|kACzj=O`~@(-vL@u-DgM{|IWYX7$ym`6|_H9b0PvNN+~HXzRsu5odr2)MUtBA_PCYE+r^ zpP?P|%mw~Xa|xoh=w}F}yw4)J30G|8*fv``Awc;%oY)cqH8nNVJ~XCPBL3kL>n_Jv z1d7-+LM+fdK|(DqUITNv_|qqTY63R3YX=Op2Eer^)&6JIfIh_U1v7y~cJt;<5)5as z%K4;`!V`h9DtAZ?uj?qTnQS%-`hTxW|?N9>Iu(|NoNR z@MoZYLG-Nw6bFCE<;?Jd7Pz|Qe|1*zxC6v|;X8Mr#vy9?Cde6Kbb*X?1%$@rw{MGv z?DGb$Q|&;QVSxdK}q%9aEKdo0cHyfR1(ezX6xQl~T_KuFg(**qe_3J*k znGoR`UORB=XbB}ke;&d$ET6mGlXmCD_Z=+JWxDA0tgI})#^X7d`?)sf5ihqLIOo^- z!XhK_adDqMf9?xL`?F`yqLpE&2QTD3+%Pf_y-)g#XPq0)8%+2?4sEE|5C&DIhlfR^ zq;9BCf=rRG_p1M9v@);yTJuZU948*_k&6)zv3KiI2T-kW0O z8+Bdz0!(H$0XnrFmT2(^#wLfcFRiVuuqlfT%eoeKfkirr(r0Sk6&D8rjrZW*N)Og+ zDr)M~%uF*=Q%MmKP?W@Af^^m?;8BZi^eD$f7_ZCdQ#G~($XkId5h5=jEPOqqLyU9n z3PC5mK}3`-?fciUT7kI-I8BJWGgx#0+fPR(C$CBD;vxlWl5%1E^Yn92w`WOg3} z;2|S(1#1mq3(%uN6td&vNf0?eH?)bu5Mdzmfm8!G19?)IY@&=zR$qiy1#0$*k91eq z0@o>JzE)Rvcd!K*dj^7wZ>+znH+bGC%*g z8YUEz<#WN2pq9eN6T)xYiaHb5mG$zY`_Y`j4)l?i7jg>=P*M2pUllb8}~b z_LMsVv*YIBk#wHJP)h*wn_LMK0|VY;viboCy}u`ob6x-f#U`ZR-rED^$Dd#zh|4*3XuE{dc^FmqvK51by$Se4bTWt53OJ17|Lm`)XnEI<4D zuAuWmo(NQKOte6dhLrPeadQLp;YaKL@g1_P4MIHBdt8!K0J(|bW~M6ZyGkmAo1+#*p6<?`10o_X%Xd zuWXzhOcxW#=yn)*h8e}gL^4K3X;IP9i3y*x!{4r zy|#JT*0pL>^P^-Pavz%_Ai-i@=eh!SeFLkdAlna*k2+~5_;nP2*8e;?&=LU~Kv9DS z2-=hr68F7}LstZ64+<^Al$wl8)7P&;?G^Blz+g0GWl`v7goK3pmEvG_#JLZnH?iv$ zrt9~aYu~PNZ042H^agm6GB5(R9Uzi^pNDd3VF7tro}a%6BVhaM85p;<@&{2}hq!AP zgkTOFh$gL&%bSD+6@b+0)}{EHfK=gZ%QI%vuXfWFwDDWvkKaSSa=} zJ>JqM$Vq@U0aJmH4HBa5g$RdEG9zb;;>7Lxc1f1aPpwi$9nF~|;MenW7CFHntc#g! z+W%((U^Eu~nEkV79UUEkpV8S!)l5z4kEK{0F+NAO%(AhuLHSt(g$R!MjF%>HE2J64 zB_x1d>gUVdmG>tV;yZyzcVwFj)ZVEnb55Umz#|YYYcQYg??-lGtu8J;Ffzh%+__He zM?}yvGTPF&swgP|pSfZ6HW%j?0#AeyK1fhWl!z<-4+`fsRo9wj})Fc~T7TVAs|cr&Wx!GEqD<3MaiQQuS7XV175 zOu%p1tlyG8mRaUlMVVkwv;>TgVfPItR#-Q!i)|{5psK(Wp>TRHRO0=JK>$MlzvLfY zIU6YchfiKGRYq05=fo5JF!&`MCu)&Yl(9>Yg%sX+1XxY9w6x0^5eOW}AHo=uYEaOi z+~r_QM2!g-(=laQGia+2cNo-?>7CyJXc$E8E-Qn($UhCs(olvQkC@k#8nJbA)6W=#@a1W+*|{4a2%^RF065 z@dvUjdjQHB!2T8J&%aM>Ai)3V(RHW}Y=r<0F!*4}V&8v)L`trDK7e*D$(>eso#7H= zYoHs!!vGk)Mza#~kjm*zzY7}))wv)=SDsbY9~CuNv=x{N;#G!9|(+4 z-?0p7mWNnlCDBGeXhvnVt}uduB>-C!-=5ROb_6@iK6y}TYO~B>*-37brbq>DETqeM zQ%oS}VO|bH6<`g*#agC%9INp|e!!>+{d+g)`j0|qz&(1oq^U0)jR*r}I4X)DY)8pk z@&_}KxLN{;&8ir778MZrgcM8Z!%D1+4Cmo?ZHgbvW~|rqHP9ZxaR7l?k=+NzVZ?7y zMnc#Ecrs^%{fieW;%P}qu0SuIk9}!Ne)}6cPI@NpiX`75h(|3}`t;L~{WTxzPvwDO z4R}Ui8&vah|Dg{4f9y@zM>AtJT{(-t2N=9y#ubn@;LchQFRkogFF|n!VjSo|Q);&g zB_eFtVY063`*$Bm`Z9B1Z_T429#+W3;_FZ{6T1g<<&L@!^_i0;nHxskUR$o3lcTJ;uPP* zvVh*Esz$g{2gzWgYcG!+4^u5cw@?ViBcK{VMc;Q_fs+D>XnaCKh>L>h3q!l`HejR$ z-a6RIVKFf;~Z#Le^3>%A#b7c@L??+ z{$nx`$>lcw^j>IJGBOq=2G>r8k52}h8oV&bHYX(LYHOq1l4JJw*VgWbiOw2RM`dL! zhfknmMn*(vBW}qNL%0UwzIGC&19s3Y0~N|lsx^y;f>OjxuiFqyz*(2IARC(MyehFG z94;6okds5D)gr#}p&UbtYcw6aMLaH1Su772Zr<1cT$cb1AUPQ`$g*;bUo-~`o&c7f z3I_ug7y1f>S)ok}3JOX{&`psqBO#^@`Nb77J$-$Bkoh5{7>3eo08`BlPoK)E5WCk) ziHmzd+6hArwga*rhJhO)+6OLU!Oty$|F-8p^3a976JSE}#dN`qtc?{ei(SwJ$z=H+ zKGc7(gpJF;_;=$FjvcH3JT`=&3=8&P&%y^b13VW-Nzt!`g%6qq!IpwB`$>!g-_8&l zOC)3^L<@oIz`U?Ft3St(yNCJkILlmZ(EZEwxu7vFx`_4fz+O#O2QvnzkZ}bT5P0Q( z^G@VHgmUi}58*K~z<{rAsQhiOu-Mn#U?CZoyrCB@kAx&V==GwU7h?c^K{=D8O6jHu zS0sMzuyWK8I@GynmS$$AeaF_+glwXVhbT!8aQxMo7up(t!@+}Oy$0?Y`{MNP1cgBB>u zn{tN~2~bDA(I?JORW%Hf96$&+Hmb%P;Okbj&nWe~lX3bP0IDXd=R+jbx0)IC_9u=g_ z(yz*SI{CU_VD9rC0~vj1AmfSD<0g+tG51=5bmnx8^L%kxBVMD^Xa@t};CTrQ;u+}q zH8r9T%!Mz6k%SmBalEPp_j3^w7<-vtZAalrfdg+DPY)yszK8@5FKE3lOb>i6#GCe6 zC(AUfH~(rh^vJKj07B|we{ipJj<5w#5@hF>*FFs%Buh7zZ^5L#>;tpKp^uy}%oQj= zCro%r9n*w|i;Eh}Z3=swkRa=k*Vpk4v_O$hL}NyF1uB z#JVsdl`P1MjxOfR@inPs7QAQC;cR(>2MKI24E`8{nkB#|i6uTvZjdI{vdUN|=9M84 z&Oj-+^82AKLUW)bB1x|aN`o7W%m_C%Cf}gkT?~MmkZ>akvEgolH$D+q-Kz1L1E(97d!9P zHpYpAt;ruL=Bs>-DhQ&)x|wG?C*u>uba_r);Cm1h6)`-=-w%-)W$3+8p13_1Dbd&F zG}5P|f0NC&cBFl46=mk@_JY}!tAgvqf`TGcl+KWr`$Q|WVsu(q?ZTy`-qXqXwN33q z=;Bkqo{s4Q{i>h7AWXOim4s#Oz)VS_X)A^Ooo1+=2#eDLwBe_J@86X@3E6Z*W=^>t zR_RYpprz<`{D*+2;@cm(bb8x3w@$J&*6ca;$KMSq2L8_7dTZBHvQ-jkk8`N=2eC_m zWx^_2nv)ULn)x|?n|nrs*a6R5Sd=C7JExOGM+x0=1izI)vum{d=P#Qm6BUq84*Oj%Ndeb zObDP8^hy9GkRF7j)v*(FQ*Gw%l{te$61*WW@!xMW3e)0q!#G)IC9 zcfDCVSQSIFuyQ`Q#-HUhKw=|6kEDNEkTDkK$oUabhXT(3dt^Un)%Ml)ny3oXAK6IM zWj1WtGOl^sw5)Ed^|sTNwp3^f?WKs4 zB$YHtLfR^oG__O+32iCblJ;H_Qc0m54bh;KsD7U(=bYdB$2sSFj^llw=eeKzzOK)@ zUPWHp$z&tuaWHaX*H_BX!~6cE@WwQo-{NRQ4wNh7*MLzm4-SvY=E>29)ARd1l_>H) zrh2`atS!Hy;i2r~eB*S_<8R!_XkVnEEa@oSv2k!=BX_*)XC_%{hwSfJB3>MUo42~M z2OiaN+iJ3SIK+SC8D)&H%g;NCtDI+U)~!FIK-U)^TvVtJ++BI9a5&}-RKt~=C)v@&@WbMWbSCaewXf=^8RQ$a!|idc1$_I znwpC0??V2S;!oev8eH$--F*4q86;CJU`NeN-u(B&RBq71-+mSK`j5PH3og+5n*vcqJD>mG_lj@z; zeJ+u{P{O3wFN2ye2|Kucip=;v9F8yM(E`E z4?Ev}KQ`DX+Biw+-?e8YlF##7r^U1kb+cbUzY_$|=-1ObCOnj!ot;w+!w2^h->TSj zjW!5;G-92sV>qt3!&!GEyW4^(4A3f!LKOhQpvjS1OgjJg-fMd)P*ZMaE)D4&x%JvU z_}MS(sGb@KHBKN?C|~tj?Ycu8@AwrBC{JzzohAv-0bu$U5y$Y4eg8~5ct(ndG%|L$J z1?V{s9Ehl?sWFpirVJt$j+dEo!AM_UpW=(i*Y-b$8^YH1q!;Ll)Kd`1!qOw5xYpXe zR~v?hB&>+P#GS>x>j_2G$>2SRY1m2%5;-6tx&AmPcHfT{BtcY*gfrqM&(h+@Q8z!R zNAaY|;{Na*HOs}wv=mc|<;b81O=l>@MYV2zR$rZq{r2r!PL4!y-B5MVo}~$BX3z>k zN+PAIx?)d_z+w>Z{4w&$w4}arp{$^kuwY8lGP=&5XT<6F&>f;i3nobH4K^`6b z)!QP2+W9CC*Y#M7u)covN(G4l%qp`Q1_m)!`7|xAsfJ4(`vnqJE*VM1qZU#}92oWz zugib)!;gEKrFZ;YU91@_I&&CBc2xtRW`ffn-ME&P7Loc=X0dw6i<^=%ShEi&^nsf) zgYa0gX|69@z7)j|=ZfEK8)5pp$!DRak&pBMPw=vf*!5F^8na)s^AC#L#D%WcnSF!k zf3TKe*0=&|2L!daRF3#IphVUqFSz*w+Q+XfPi6vm5+$V-6wDU3@CQeZFdU?-yyMD+ zHbed!+1G~}e;@{Yo4OYfci0hG4$*Jw!V$e z={xk1gz^Sg=fTZh2#bdj)HCQtow(!53|Sc{Ppz_e-F<4~8I(Zx-*@_6T%bH1Rgm+& zp4a}$f%?z-@&`sHCbGnQH3k(9074)p1T`m2(%Py$yGB<*Pa~wq~3L2G|sNm zS67QdNMznv>7b?YlD0&^$-2Dr{m%Wxx#inW9_R8nrp?81J0{?Ih_RNIuF&mywFCBY zag$#Rey_~E{N3+tFGpqJbzHSwKqkR=rff!ayic+HQoH-W;&_jAaNXTq=S@63<{`Lh zj=JMq^2zpLqrmJLX{j@U6NpY*{rekwN$-@Yx9!|{G`oAZJS=F`^KEC2B&5^< z5(YX5^^MdkLHt30g@A`MG9Z!La`RVcz`xH>jqScb#ZNUh=h>6nX{wNBvGM)H=PzFl zC8_*|w(!ze!WnRB3jnSB7il+TxE?d9~yyYzv zrOJs0;Y}b9`Iy3>cahjirWulc_xwqp?=A`&Z#p1j^8(QCJ|-CQ%~QF52iQjFD^|r4 zedM^Wp%@N%J3rZl-n{?N24$G45O9I$szNfPML}gb%$9U91g!Rj;hFz!d z!#4yZLBMT0GVP%Rg}bR~4}t?8bxlqzg6e@3e9-UbAwNI(sq2oXO-%dwRcobkJI_$e zx~0^^4%BqAY}Te%n?5YhY@A(Z&bty49Ee5V*~tw*AzQd%o~!0DVF=G32cyaM+urm~ zqm0KQso7Zmeg2vUUfTF5r)Mt%v&62NeIrbN1Z9;&_SeTo#+JKZo_z^}A3QcJECH9q z5@ln(B>U(q-^`MWEBmE)O(M1p+MWvfggP6IaKHXaoyfU~lKrHLX1UF4s; zz*qZpx8L^3p`s49mEnf10b52EJI(Y|H5caz(iHQO?POS`{wnO`7E;WNj2ux-y*9lL z4Dr6Qh(^Fq=#3uo&)>oG-z7D>gL+H_pz50M3fZ?Zr4c5Bxw$dKEh+Ibl|SNlko{HK z&@tC5bXoc_y=xe=p~Q9X*lPk;wy{P`Y&0J7P5A*|S!{GP=oiOdhcDT|gos`KpNk}vfB=0sB67Z5h4`5QzI9BxY^YKMH44 z%lOTf=5jhAPZp~i#Aw6t^@AC(uW8(?GcfF3gzZo}4ey<3oTBF9bM)0{Csp}*czKZ@ zhhK@wAV8_TV~nQwfd8%mopd9v)p@yqhpt85dRtf?L zmdL~6>;`YE7-{dSq@|<`5#%Hj)18AEIGFumbvw2R)gj?l0}5@H`yQ19@J1bNZI(=B zq(k9T=NwkCB_xJdvGe1{uTN=ys2lVtD=SxR^zylSWQpvJIeZyF7Gdt`>I!CoZ4Fdk z3b(6LBI2L$IN-a>&(8;pfg}JZ=tV?AUfZ9SzXuW<+-7E%qMTe>&lIx1Qthrc0^9;W z{HVIx9~TP=`;X79*bqa8BoR5905lBy5p^d|$lHXSX8=pGEY2B^X}Cj50t5*8v*J%u zQ$dX#&ou!yI*x<@cuHnw4#$6~HP%k=Kz)T&fb8y%aK$7g`5(I|Ul4-mq7T-e5qt`}}7(W0y+KC5~WzCafd`gqZSKe%pIzi(S4#hVrz83?z& z*+W^5EIHh#r%&a!Zv6tr8pQ}eSlXC- z6nSIXp6jLDwl6Bn%0iB@Gb&e5TF?v-$_BOl8AdP}%z9UXQGgkNAgFUo2DVE`AV4Az zydorU4-a03901~`;Vw>1i0Aodww%q;W_;UpH;Y{PXV z!ZQXtJYFXCmC3`TRM;L-@L-$WDk^&N4I{-03}!x7Vlx19u#y%QboT8-q*32K8y8RF z^St|9KO`npjLiyHR{fAJ;N&z-FI^eH0-Z$(7#pY_Nv;6SiO^9FDNil=ORk0<*tS3uqYjIU?5; zs{3yqjgCgxoyRF%Dj>bbZlIZz0;gqboY)$YU7+H6s1@(0&#xJKYebH@?!Z16G1(5Q zY-C}vk>^R(phmp;?qARb0)=O>R^I5Pz=vK0EF*x@{lo3}>yDY2Af|Wtzy>YxEn7yR z1~~=YCDqFZ;V}m#IDr{r!#p6u8a~GKR19kc+v({uXSRgkU2)vLAZM8#HWOlS94rP0 zM<}B|QduVdzl``wZtQ{(CkUPK-i~fy{_92I{v0(Ewz>gISFbbI3*6aX_@6m54$lLm z34uT1BK`|S#GV9wk`OFSaL;aMw^>6a3*9XGVj-%)_HB`FN{K9ocw0iLrnv!1=J0t& zxhe2Q@1vxKS~f$@TWa|9ebL>UGuc4xyQn1v!bRW^o4!A`zLKuvW{p#C0XbdA)PiW- z*`T9RuYy5wfsY39Hsp!O?vsVJd1QT(aDPn7@`{bPhV2T3{i>7k>WRLKJ(eyp2Q!cz zYsK(uLem+T0J4SY=qL`|(iOp1!N>fWPxL=)K$5IYi4!Cq);3R6}hY9X>U`yZjqBi2bQFA1`S- ziF7=LV-g`+VeK}(@GDrVOyexry_-`C#inUx`X5@+xNQjML!1FLh=Gc&u$11BI36UG zsl+3#UF8)}x2NADE~*6yCi`@BI@;%$7NZOHrOzRVL%M3d6CRY{IuO?@An4xb9N#;` z@%i?D??X4`=MOM(?tiv4YIFNcv@fD;u)oEyu+oL%3?7GT+q#t*Hq{LQE=8cp)-J}tl0eZ7q>&AM-iAqKiQQ2XZz1{ng%{SJ@G8!uxkpOX$AW37 zEGKUq+k5xL4xU#wGPO35X%o=N&=A`J1ALuuze6ZI8_?Jftq1X$ouc;KN4bWsvga6u zs7vlsOL0EKXObtL_xb&NUHi3mXY7__uojwGnzQ#nuBdFm)uJ*b0%AlDCqdH&Pv??f zHA)Oe9X{z;X5*u9e8LqAV@lv;S7wxU8g?!sC>T{lpu4vU|7G>9TBIE(X6*ui$ebwM zaZYBT@#bc4-mnJXE@&s3?^C~R_lj@CrYaR5)%|OJXpyJ_3s3F$^4jz8KDKLO$5uZz zNw!(VsyQoSGsA_$`CCQfE`7RCvI1cA`?qg)atUkOga3E_@6hlvB6hIpg>+Xhr9}19 z$`{oeoJydE?o@r-+x~jk1*bfu5>PYH<>VC<01ym%ibP=K>Bw<2;1DLo#IV3qcB;_K zg<>q;Ln^$e4XLbsE)9$*HD*=4a z&L6u6xll{ZHZmxnUWjc7^|*KuTlh=6rx2e7mrg_mZOSS~F^ejNE7)}_9yMGZvn{@| zgzdn|1!_(+2~_I^CEP*}yCxCa1+D0%xc}T6|MLt3>CcwbPq(ivJ}VdS%#1aYAUC>$ z671tg^N_a?uEwgb;)m8{A}UJ(+6la_Na$?{g_{`-6wShhfm%9`4=bE3Ei9`D36>BS zM+-4~2AVZU31bWhAOHzBTzf8o=Sgly0p*^+N{0Op{QCQWA%W5)`Lo`qF>lSxwb^+c+TH^&HeH5~kV+1?NS4_2TfyVX7HqW|{sva<|z+kMrkH*-wJ z+U^EhLKJv$ni}9Q(bTNNO#<;OG)v#;iaZ;%x-ikBWKs27!T=ELG}vkdKc&Q}FEbrk zQWF!)%*Z$my(x8YV4Y3hrSU|d?5IOSef{A}UGE&rJA+H*YW?aLduAKU#dUSA7QFn05@B?G!g}L2A3X;8jtmkxC|@iV(OR}D*IL@6|J}gv4^Q27I-dJ}Dv-i9`p;oa zKGmepQd5EF1?v~#HN|QMy^88$tUcM<#DqG}b@zR^pQ~XfLl>Bo#E%GS9v&Z5=RqSI zNb-Or72QP}6Y5;M)(cZS4`8GF(r>hVfmK?WHwIqN(m%Jh9YtLSvor?4=!zWF(>qb& zDfxaN-~w89JXK`TKz$o`*}oRpIc(p?EY4m^>`WhPO-GrZr`ySx8WP z0Dd`hMojf3qg4#vImA5kZ`uUHUM4Vb)0@gmKe1fF^}n(>x4q<$JQHs4Ykj)ghw* zKAxz|<)JXJVcJC=%D!E@IL>vh_{o@wutHD{ZwGLZ@;aAl4MF_1NO~&ON|oV>?zMph zYoY7YCpf$TQsLcybU4|->J+>@_yi47$Z)VnHIamRUtL-m$~2SiaruHDp)K5jFgVD& zAZA1_w)^x;_P@1|We_>#2%2EgLKG7g6XvP*bW~J#)BWyd8sogl{;YP{2BCNVqEao-VjfS5MCun0nwnVxB?A?s{zY zFkV3PinLQiE7EU(*KR#SidofIjQhcj8*{LnBAHgh2eB2Y5RNZ5QrpYn-2wbC!?>qU zo0XnFrFJTnG zR#t*%sk1@l4QH@xvJW~XHRPQjt_Mb=dB$p7Gurf@s14Eim`Nn5T~^}OSNR|M!$%6O zpL)NY`u^+Z9~=qT24AIW^*~dpnckmb(3d${%T({M%ymU8!CCKHR^fjX2eyo3x{a5M z!C&+Eo&C~{31_R==FW$Y`d?u7ZQ6Y3tqq<}GOhOki21D`IfpFS1|0`N2d2>wPSohE zgHCJyWaM|+zCcJx9XyOT`x5MIVB_<$6{hiqHz7-^Pvekoy9d4(kLoI^q z*v4O*`i>n_UDb}P+8w-h;js3<0!d@mnh|q?WVn$}uBe~@ky`$aWP2nH`c^*FwW_s~ zL-{^nA64~DLH5Z{xwoee(2j-9lBd;IRD@YZhHA~8WeN*Uk|fcb%shG}p4Gx>*ocD4 z(p7<%zu~ABnRk4Dqtpj8RW)gYZwJ=~R?Ni*u`7MPEUZd-e_lZLfB2#)LuMDP;=aR3 zwZf4))usEZSe5&_jeg_gH(r6J&+SdA^gbS5b<`pKfhRR9HN~dq@7Evs{D?kt@MGwE z%B>ljua->2h-KDo_LdzCHGVpMMyqgItn{$X#9?6X&G#F;AOBuUsawB$1ZsEiB~!@z ztnjME5dEFJ3HA%e`N5N?vM8FJiIQ6gy-dz8MkOjqnFFT-xpj*1v*`qQHn9($WwX7c2wAE<~+PLv!Fh`gxYWzA47r>qZU22`I2`p`kzDoxb(G_{b73+RyIB zv6pudkqsF}+u~YLcTI|{KXX&fKEO`>PBj?kgABr7?z=Nl`Gz$F>Z~C12AxqitBh1& z%cyLE{!_odC&&iq>xW%HQlFi--gG|9abpV4U&U650NGJ*3H2I{*e@{JL-6*+&9#yX zXn)ZMmsJ(1cwfdU_HQBjAFqJ7lK;!${b?Gk#J$>#@FLfsbB~Q9S%l9Y zTE8kbsE%t<%#%O>H-2%;Ph}^$qXiNyM_L;+pcYbIBk3EZG}qY$5Z)!9A|`&DGUErA ze7dNVXef?UgohnhPJ;fXFE_ znNlNmh!G}2VlQo~d2jEol!($;>(Z+4T`9+to=S@; z2@)XZ-yJ)q_OU;YsXd~=C=sIcP@L{7XJq|``perQ>zlBGIHN8$E!M9TgTiw8 zPNls0`S3(XI#Fd|0YD{BMN!vyg{5yQu+yE@KB*WvlgR5qkD!+m|majSB`Z< zJAJ`V#PNW}3^6n_>xJWmp07FMd~}aql?s#9I5E>8{7tGreXNnGDOVr6&@(7danJ(_ zmLG5`Y4FR>%9=ntAIdc(gEWXDObfUrh;zYdkw=`wwif6mQ*~{R!ku~!@=CA)Lw8O% zkyG!6sr{Iz2C}2*g}a>e2Gs+cIjkQl_i)`PuKqd<#~E)3G~mP*kZba9C$&`(y&hXQyjI z{RFUx^1|f{IqcSGT8a?U19TGt)Y#YqGa39R-uklTAQu)h080hxYvM!?A(|UN#rcg| zsCp;12iIy0<1i-%!ol9b%nWyrg08{AgOOl1(dcOVzg>TmNWE6nZ4r8hYTG#Aa{#m$ zwH}ELY9+YiCuG?m8#7;Hx^V>&PXlnLpI3fkXb4+&YXEB)5mVylCXjxtJ9QzG5U-@p2` z{fVb`s0r2k$;{$gdPeRCslxoEe8}=S`P)Nok7*F#^2H5iFXRb1RsXi{r6(V;nd!mK zMry5Dk7RrZg*!_{usM%#DJDtAMo;&P#9G$>F=o@I$FwR;{yACb4R#?V3MVc23`A+c zaf|>P>3Rpc`XokE&q(n0wrfP3HS%~#{XixtwjEMt-5MqcU>9svNVOlI0 zxGBOvg3~ZIGLnOX4oPLb1CSF#WkmQ?(G8*?zq00k{WumHVg%C)W;716}5tV|_ohSVU6z9e1BNd2$4`GG0qW0pL6x$k5m) zy1ve`1*b=&d1VZ`!p^94zHI@sxaUT(_p+spVavPMmZT`J{xXXo7N7A%FEo5eWN8?N z5FFh!ycGa6@D{ojK5#1dBg8c_(q#Vm?2%6yynZo1<(jj@=A6Dd$*jKZ?p{DYfD0kDUt}$>d6amnDBISIA(Rri+b+nO?3#QU-x9W)g8%38RKD}aXWLX&6Vt?% ze1rQ#YU5O%BwI2(Ix1|T$o6dtZFsJLR1;71 zRZynIA3+e4y9zi<)!E4*u(?gTh9Q3REJth$W@sVJM^tnSc)B(z^y*dNkk4+H^z~mM z7b>+JM3n#9pF#DxMmG3!kVls$zCMj&ZSl(59!bgEva;W0<4M6XhX5a;u_p-`UiMBf zZ>Xq*UkKiC;7$CoT>Sh5Tg%IynmO+`uZCUFHLlKQs>9rkoWj0~z?BR#5p4>E(rSAq>n7 zG6BQGubXyIKihm&)klz?%bT}mI7TYQWqBwp%xJk-!xiYej?M-x2b==iZ%4L_&i(!i ztPA}za1UqQcG+bJRz8lC!pw1z) zZOE9)%i|+{$oUaY7(z8jF-7Fy;Ak^r%>Xx2w}Kpx`k74xAiGqgI7x4AL8Pj-VWI z-0gMoqEHCR0vkmP6hW2_7W3fBwAbh{u19YG%aBsR#lx9aXqJNrRT$0SipLgp*Y(mj znSv+5$xME|3O>x$i7kVHJE~1E6AF=z`8^d54~E3&5xm#^_AS}qXmr`W^um%7Q_(m` z9bhyUf6y>Izqr`&nX&IHza=+n#`bY2Wy(VG(iV;4y*7Pfz75g8uaA$Bkx|Oeu3aiJ zi$un}qa!S3e>rIC*D=*D6w#Ou| zkkC-Y#5bV)Ejw7Hoz8My9j@X4b)eBDx3N@V2r6rf(hiQz{pklxzeTcf$p_!tAoQ-M zhsJLs4Xf+Ms0JD=X>440)1iaGNa9_hqRmbv+1+0ee1~*9a8~eb^r4>o~ARe${;k4k!5pv71LiQCdl|m1?3==kTW0c%VpwJw5SpaidU8Sl-1hL*#iu zWLI2WZI#{uORgW{-l5&uwW~WcCAPdb1c46wWl{vJ+rd9vIGGx(mBRoC5#&MA>t7B2XKrqYt{Shu z+Yzi@Hqjb=h{Z-g>}&xI)9&nUA4t}*6RdNz!&6h6VcF#1_;N&fcq32r7&vUqi-Ad} zsY#PXo-?W&3-;|>LDmQn)>ia#R21a=Z3+7J7cS%?Nu|{e$2Fv|O($m^v=Yz?;%_E2 z*@1zxjA0GLr~we{)6mAe$nNa!hJF6k7dJ4rqKEELS-G?LLBkSz?OMPu1aQj;3291j z27lTt^bVT>Qo7_4?BqV+Xmfd13eGSxP4MaFf>r>W8Adpk^%YWqorBWcx9|D0XAbiB zz@Orwajym<<7yspo@iO6;x}V*1}7)=6IQbmGZPa)y~ck2hNcJfiqtL(Yimras2~4{ zOu6CBKoF_*lT^wI3ta&*TCp+nKY+2}&yx&$rRul=f!7sl2K(s0( zjO=ufrNb(NuvBO+QBY#M1r#_KU}`9ivudaPE3!hiBwci@klMU|FB;#5K^(fex)2U( z2$D4)g#rSAh42wPi-zIZxw!k@-V>K*vOT0%E;5!Z^@V34ENUi_-2 zNba1cFN$#)=NujVKwm=^9#vJw6t*|jFvqNrV%4J3yHHmoNF5ehmJ62k^yuo4{|t+k zCi7?z0`RvWKQIm58j{JVH+l<>sphDFv_?n*XAOIS2t}eK_8qwSF&DJF51bah2;vZ= zQC89KL~2!~34HU2ypc=zhKT|YG61m!>qfBVG*#?1CWfZCW#exW*@zG%h~KKy(zMb$ zh#6h^AM0i`kdOf;D#sEN41F)NO{L>UyQv(5dcb| zr6o+w7QRdrr#LCR4_?(nJULh`oD7A98>NMA+C~sSl8sg)-vhh#v6Uwksr+cm+%W14 zJ)bX%D+It_2KWmdt`+uk`0in0w(!GPk8{u|A$JDO&3sIMBauo+W0ap?_(biv0Qw2} zAD9|}X$`X|Z73BFx_A<*7rfpCOG!+s!0Hsn+PcgRk7F=_-U z4SxV%qhkOsNEBbFv}_OCV(JR^VJj1pF~pCzNtURf!Mbip&HNiJ0rY){JHrM`oA(>c z-UF3O#B2^f+&n@Hwz7guK^LIcQCR6YN~Hhh0#FCfL0HZc-HeU(521d5@sSBLs;mEC zz(e?l6QI9{d{rx}H=}b9L_EFlX?MY$v@Am4k6@?k4_BWbPlE7Ut(=xUa4KPF_o;*^gMt-HG&H zJ(SjyFXj~4jzdgv&cox~A4TAG4)W!Gk9(#P^ocnEdIt|eUJc4|n4`cvH)ZybH7g(A zWju(xug5AYD-jw2v#sinEm^@VT8_JwRaG%^CmNRu%_~uBYh__)#Cl2z4(p+7+>RTF z`-4QVgBeeAavTv1gmMWlcF?VT7E*A=^z`)9U}fQKzEYM*po1I6sHiv27nGhJ%gl46ObI}(#&(=tWGT65&}~V z9uC4@J~-mR)G&U^7wbItRu6mjkfn(@JGM>l&o}lX+IFwlv{E9I6QgC2LEnYlo4>8V zbW}Q4o3f4))$o=2+y-X)wgofAhK6huwsS_+L2_<}b25fs75gnF@1frVK!Go;Juwza zHAJ3+KbxMuH@^p^9JajYm{s;yA9Pw;7ET3N>PUC=nco?jnEb+vZdvJ#!^C)9B< z1?A7^Fx%$^nICmUL!~eZ388Fx{`|d-%>1ukoLpRcNj$yEX7F-<`0%*<93yowg58{) zke>&5S!M!80jN3c*C*RR1B1;Mxkv?1@aRfQxi^!EEZ}x7-9Vx`NN;0vb0shvJyUHj zUxL(=)dOR=T~ZQ5bpgI$D+3)HTFN%z)_523hccyES)_THy9a>(M(=}ziA_Ktzr#Tz zA)4hJhI6~AC@44}Dfjh51gXBlX8y6n*&3t5;E|p5fD#xCD8vH=caT|zZ^QRIGtV`8 zEFmRDBr-XYdnhIPRQaQrB(%)C;Q{TMd}Y6rH`G&l$Bqi`xiqVMSddWqVx{<0@h2H0 z+OgQYqTdNw&1hI@L;<^|9EAo0Xi7MzD6c0c-k$mgSS2~Q^2$nHw{YPQJRl}s1!T{r znBYCQh(I9ti7;j-t1^wU{2+28@Nkh|h)(pwB)y^P>8ki7bMD;|Bk6csZOct2n;|r1#I*K16DcToAa5!`Gsnwe1%L* z1yntre6QP3qC`F0*<$mhjiq1ioWQY(({H#Ms0XyqD2O54MUes&p`6Nt6IQrWfilfm=YL^K_+6c7R9H+ znlMKz)XU`he-AExujQa>T@g0{Et?_SA9Sz2PL*@b2*id6Hz08Gahf#i&?v*`sM6yJthi|@sjhU>?~1e9TTW~lQph({Mw2T<}r zvkH!#sc@D>3#BrG5#;6JlLirI$pYbOFJ;L@65kaXzCUI`!s}cbw-MR(y2!Sf#Fd$@^c*oF8 zCUrQxb0ESmX5XQBKm{)>Jc1pNMz$HM3!xVWfCb@rV`d8biCA+9tI8$dGtf_=l$@17 z&%X-Q0}5u)4cp-GGfKeuf;2TCbilcJnZ~h|ssi?b@Jl{YzqIEJbm zJ{-pLtNyko5g(re6n=4jUO!Q(xUB5b$7g5ZSi^}E_3CO`7J?MubBAz)aNLN9G=AwO z>!zD0_rBfh_)A+jo-&szHNGXfN#U^A-Ti|FdPiVmN=Ds^5YjntYh){j8h;JZUT|=5 z05Wd>Y~ay?zUYc)O3CEROc)d9?{WbNMyd$(z}Pd93Z?{^651(5ZUQMmy-NhL;1bYo zsqvC+bi}03S$^n*0V^U%aI&}X6bd<(q0T?&cO~7>7yX%VCTZBM47JCBW5>FQ$#0Qq zh}fAoa@a7dUAo5=9vfJpLbQf2l=NTa+9cYES@OiFd7S!gWkezlr2nXRl(7dOX>6{O zMxqBhMQ>(QU)ovC^jeiL2Hk&@gz&VCKaN^x!HPa0Y!h$?j#}#JrjBDS|7#=Ah?yv0q_OQ@IeSzwH&}*;#PYJ3?O?M zbuWGzq}2f|2X%G5zdp`Hq?M4~j`+3>)~C=Ez6}~}iTyY6_T8k%om;nD%KDV2OHU!< zMJe%(Q;DguF*HkP#u*tHkYSMzt0sgnwFbZk)mN8JxdbC~1zI)i07R25E*{=$M~o=L z5r7|#iIfl$No_Za(AE-jFL1&579=sW zP`jXh4_DUR^5%i!PPE3%PT^Y`po^3QV2S(`Qfkf0cjpT18l|qMEG#UbBGOMrh{p%G zQUTU>iT+uGWc^k zDvClg33fVH3qGGmLeQRUY}(*3g(Dfr4SLZ+)_ZB76@wV6_0+ z%j5r84Kh8LIFwuwuVY3zX4PtlYYzPnVhL1(8-t_15ZzPvIW(s@Es!jRwiJ0dfNroC z_@QM$Sbot5B*O^Cz>YGHvjJ?(E)4t99BHm%ywBJ-mm0>85Vw$xNDT8u|1*F66^n7* zWwM<-(L}>m>LT2 zo`Ko&H=3Sc+KBFRc<>kk2{A$_5Dh3p6}&Ln2kA6Wl?4R_v1nl<$Nr16!kamvMPb6@ z{=dn4b#djG^lYf0koX3sFM#Xl@PcAFpTDk4(haUN#ACrYknr&>w-3&gPvy}F__2g( z1ilT#7K~($_HmjG8&EI>s<+$81vc`A8#p>T;#|Nf=GwUc1OoXqWaks0xoVUOIf*yy zwA=@zWCp(N^B#>Bw5!jdUm1KQCl!|s560d+?~u2kQs!Y5#+bp+yS|I(?LaoI>@9!P zk#VhrHFKy9FF7XYp@19yie3(S&ro#?iN3mm@=icGZnZ;Q~ zm>#Mu=y&jwQt|%rs`+7%wIdRRN4G9f(f{_Vw#u(DKVNvA(qaJ!!U@ds!&BLa@nsI! z#t=@%$HU`R_&TFwxE)nI++w8NMF7tb!^p4Z$311HBD(jkLZ9!pSKo!S*09{kD=1Pv zesTLvtR)=22A@6oPjy?Dx&$^1tNiLcHTwnOM~EOTw5K)w=zSs}PlykAFg`-l>d^xK zyfx>Fk@Nu|65zzopD;o)kuDJ8ful}NdB)o}%=DuG81x=xMB?QQ*~1c?&;uQVevjcQ z&d{O{IXzRu+o7zzp^IOsdM>Eg9BMCoK!jrCMJY{Mx~;^sML?~kF0EL zloS*Q9yUL50?u9CBhZ|3e^W<79rXu%Wup995Y9cQ7EYZ!sqwxB@AnW302j`v({LUe zIs$Tl91bXS00#ngzZEq$?DXUm4nbZqWX7`wy^Ilu^Kx_h3v3%8MVt*+^P090G-BDm zRZy_@T=6-1V%{(Gd5A*AOuAlR_ZSUw_iits{Sjg0!HCm7Je~;HUw&= z9FrYT`68x9M_MbZqQVz#TS0VetKHbx7&5frezfrgup-DZvEZZ97No6irhNlxfXKU~ z4#q^HDS`=jLSZj$NFqH#NHGT4Bbif*tMd`&ot?-vStN$xEd2b5JOciA?of?kEYCo1 zO7}Sol_Ty|-7!E$_zc;K)dz}4-h)F9SO(BYGIx;)Z~jvOK@~iWDwqd`NH5fESl|ek z&M?xH#&nn--jK~CC!EyCydB^{C>kP=90lk6CFKvo*#MiS;Xaq>iXO^e)z%&T)BZwl z?nK64CTLXeT(D91Ujt|g{BRG`Z@M`vuMvs_5f+k5F2-*#-3k9a@i9E=i!PR(R;TUHipp5(eOP5y`q` zUkHPTjSMPH_!k4`u#Ew81zN<(&YoqwJ$zFqp!<1o35joy?mHp6cc8>M`8A<&!FEW9 zX_p=@_*7xo%$2eaj;JYdO<15(n)h1tv?Jp((%Tf3=gy+H5PV7VlvMkaD#PeEtSdCL5G?PGF-s3b)-L5gsu;WLqfwxK$B+^q0wW)Jdm=ZR6 zQYeeb0t2FL*S3CR^>pTftlM_aP%2Pcuy|l#QHLhC@8M=ZgL=@t)k6={GH=fDKoHFE zT)Sbb1ZNb6w(SaO34HrN;gi&SYlMrT%jWh6ibpfM;A&i(i@l;9Upzw=pCY`(qD4yE z92ydWhTlBbq|Cy~$VfP@)v0_^v{GRC9GGG8Nb_=!vlvun^cW@zAl+A1|3;`V`C%Hm zC{+%|mHsL{z_o`wrbph@OIdYT9LGU+H^QTjpyS2#vj}aB8Y?N`Drc*FXmeMOtwH`+ zs^J3#SC}E)TwJiKXR+awu5}5FN8Zfb;U7FsHtR`^f_qoV4jSD)|BL8I(aR$v){$yIx zT z$kmZO7>!61S0UQris|wxfJLD?0f6c7msREDFjT%l35RHBAh;uDmO>JRfdYvN8SfEMwmrYd+C8g#8`lljk=UBh5Wv>r#x%mRW`J-Ug(^Jep5e@SweOy6bYXi<)RY z-gUonLwodx1RV{X587&F$^tW`m8JtR1-)G7wVLne+QwN_r+U#ocy@DOYaZ$T>pR%j z1q7T6%}}uoZSG5%reJ<00e3f{o;Qf;nnZI4NURriCjeGry6RKQiz5Lxp?EEpkajuY zDl%#3CHzGK9PMsDqQT^^*!oW8vq0681@fFBcwxM0Gb$_pqJy39q5HffvtzHkx~jZv z_!tD)=#Am71}rIbNJ8g`TmnPXEsGykmti0a zWRUcJ@juERo7pvq?w_)nOfA`Y_kAIM_1z$d;0404I8yE5nhkwiKkPP+tSi`Mj*J+@ znvkcP6YeY)DcUO8!iFv770<}n_P=5W1rZ~lF2xyz3Skq&K3&}xKopQ6>YAeZO{`h- zOJ9k*tpNXJ7NjAie7*XU7}*Yw>6Nurl$ZFEaLc3WLT23F5H;PuRP`K)5lc#{KG*#O z!F#Cju~*<<_l7YM22w4HQw9-=!k*J7m(Le{nALAS{jP;mDbYZ1rMEkb`3U<4i%n1X zf{f7R2+PT_Qt5(>!wh?9@LX0ACSoDA22PONl^;Gp1vxnie+MtI>^~vrRD^>B7{wA6 zxi@Z*j@78%E)}ngkW46mg6m|?yy2CK-@zFLK|%H9KYfXVhH6yYfohav!(+|W7b;IN z-={jTRrTKIo8f0h44gvVqNfC<6KHQ6sGKuClt5-D1_a7XFlIB?hz$7ZnZ7c%F@qlJ z*)w~?UAf-JNX?L4ZEo7N&nsb+8LE8i%L~WA!8`VbMsWJq)ON(MAaD=Q_3QhJ;7!@} zDTE(97UZ45F!5I-2j+V=|R0EnmEdjG%rxOJR+1Er6A%uz+u8E^k@eTT) zdV08=Uyp%zz^XfK+fgoNA#5d z@j2e2x+*I#j}UIlryqhF_$`^jXeiaS7k#0V@jimP>-Y814u-e%@vgQ;Ug_ z4(7Qr(b0%V@Kdu+HKd}Zt`|pCrQi`2eO3*@5WZ*UihWdGYMt51K)pplfjevWqu|~` z)Nlx?5{hTxhH(LkWKm8qSIBZo6Bv2C@w5EJnhIY#)p&JRJ}nt-kK-ir<^Yul0~Xne zpj&%nZYX%q4&eoMs`yR}Kt%P4>V~k&S$|8!S9eg-PGeeJTt@d_qeGk5?4?H0h6t%Sxb*q zE4P2m^Vgh~iXtm*Zh&G!20_#+fP*kL9jB1r5??PiZ8($3_oI$|r}$_TIpJRZyvA5# zwI+_SR+LILnd6?wV?%% za-v_XXI12v1I76w-FCC^^+~+^P@xcj9kiIdpXow_+Q&yzoJpw|ijMeN`j-eloD!bZ zotzfBTE{#F6JN*4LPK^A$To*faNgq`f##Kt?gy~ag@sU+?+nzZY;1;*XjE$m6$0L# zEyBV8ZDw^6^qWWL1o@z;hLZ+&3P&?F5Ba8k#MD4KHs=jA5lxtaaZ#JxhD0)1?rYDU zJ%a`iGyvr!m~H6L1z*CE1(Z=^s?H`tyA#uYm0h740alGMML68B?h$QV4;2Py&~Jgs3k5c`Ut}>GBP$809OToDRowKj`~m*i;X{!W(dNej|IvJve0ulCo;Ng=r%emex{OT$ zmPO0~x9-Cv0`i!ph)XgO)YjT$Db(b&mw%ZRD_%unEX;W*Ho8|fcq zil$(@k99yOFC2G+cSrFU5<(T<0~&*VtlgvPPLwonuRA>FAVVf=S)Kv&#aUT9J30av$%g2_a3T5Sv2k-#lWiH(raSAZR8j3dTaU2R zn3mDu4oC$~c_{ej^fUP4qR+dMM zo5}9)np2z(+|vAqjU*o1(y#&Omk~R9=v@#-0y@%swJF39jT&m6{&(-FZk-491}|c- z!R>=!{8OmG=I_Qg6G5S{1BMCCqb~;fg^2HYg(z>+C*fjEOg0b+rmoL&TRok_m@ z3zNA4Cv(@=lx9m^N9Fw2GhY>%Ra#gUO3Gl&$E>vX7pZ*CKG7 zb44F4uF)dU^qfZtqju+AU)yXr$iBKL5Wjs8+cuIbAaU{<&3|9@y;G{x4Xiw@)PONj zu?KQdbcC>zkil0ZJ$yNvJGcEHD3P74u!3#+Z?~R)Br5!P!h7 zst?Sxq%m5t8d*0lSg{~M|{KRel+9A=aS7#^^FjZgjdM8=X9S(*CD(i9<0}I z+;GJNGr}_km4iX1J78Q$6VR}L#{edsotNjSz~$1Y=>l`kD#| z59DWsy@SqVsJ?~A3*orN+lTS1#os(;+AAH^bZ_?sb40A*=>lVgnfljsKX5$yZ5iM~ zXH85oW*hSPCr`FRtJXCM^wGI=n3_a~gdPHP1*DCV)w}cI0sIcwtf5YnIRGP~{l$w5 z@L&R-&=@C^-RE)$9A>OB%xai~f$oq{Md8HfWomJNrhj*k8hn39s{n$zis5dK&dx}d zz@ZBYMg!@N-3FmuWMphM2edVfsiA+x7)7#FnRVYDHe~FeXRchS>33?O){xv3z3;&d zaIx<~Gw@an&(4DI$j-@u&fuZ02!_Ff=LUaWdsDUxM%<_1@n;*DH6?B&Bq$>O9+CPO zTw-dvSW>gXSnr`B^yCS9OI!D`|JTfGQ;Cl96l`i_Af`RRb0Z&Mvl{JE@2QrXF_*v`D!wmHf z(_U&=OLd57&K~n(Lo$vCo$PKUEG--sd(%fh1nDs{Gcf#xn;X(g zgi_;3LeLGOY;alr`m=9nCb)@2u<&rqlSSOXnW7I+QXo)SLQ)c0Fk!kPNbbS*C3XKO zk!p%z0pCB3v*xjz;79mi9071-&n8Qnb?SzS|KSE1e<+YVfcQ%#nfKZyz)%0~-8?o$ zGCi|OZ&|zJEo~#19`P8^SkW2ghm-_U51E#m+YdY|XwxyQ9&9Z_e_(m8<8|s6S9I z`RUtyDsK1Lj5YtmLuG9V%HwYy_)eD%{ssY*q<)2e)3k=neoodmtsOqXn%7VVBgJ%V=kZfxj?5DP+@G{X}t<47vq^8)$LBSY&qtn4n&g!WeI?OF(|eG*{q- ztQH3hO~VFGF`&Fyxj<|D)Yh;9ATn}wy&++AZIS8nP1p*oK^#E*gJBDqplbcpYH*OL zs|!?)p>{$<3H&0!FlYa)KxI-?#CB&NTwSiN8$+YW;Ir-Qyb0{atxWcpa6$oVg5c+D zhdxvZ3qC7Q0ss^z+aHE*6Wev|^WaFFtk9Go6@J*I*S-jeU4Y4ukA-a)mBtSY(}? zL$IBQv4O!pRzN+bQ>EjH_7B-(P0|7B~pB8Dcx=Se=VL)DO>MQS@QWLxiu9fWjN$ zxbnH^KunJv+YsX?Uu?V20y741iUNSj&u_PpNzn->)ELD?MwK`_1b^7LQKLQM{pt{c z+8qN`AWlSlEmY3vbB`WBerb9BY>@V3!{{97RH9Bo#7yI`OIG(+$k}wq`#yYt9j0da z>yGU1?Wpyd}$nL&!x`G;SHRb49k4u=O8~V$* z){{Rv$kKleH-w=F!4!K8_3m&0>LbK|WM9D6BNi68HhE0%N{|@#Dzg~)_|XSrE-;Kb zLi^u&53O&VD*`(p?y9W@&VpoI#}n98*?ly}d7$BB$?$^0)6Q0;r4EU@*EP4_4$|wL z^Z;WASvKHr+j-PeIJb}_2Yshn@(d(?ICQW80O=YOU^Wr@1K^V1zh79|{C_o_c|6ql zAIC8mkFb z(k5F5KN5CdV;{foUmg#S#~7dQ_xt(0kLUaKD*X0v@D4Dl(J8b>B*1|P1ZYNCg&GSs zJ{)uziuo%*Q?d>m2?a9vZslI@fPG&zrIA30`59q9%`RaIM(CDETon;*5o z5`zP$Y}Q{KjWDyw_XTCt+pBSCNTf`jMuMz8^UAK9FK16%kT)pFppo#OR7FV0js0b1 zrKJ)(shxammdKX;DM#q^x_#@Vm^*gu+NyfKVPSUk&p)&JzaWA}dl!%d^O1tjGhrZW zYz)1wP&$3>daGD!<6sy>T%c{%+nbx0XXmz+?U3+r5DfQdL>*?V@G}Bn*x)Fo;d{wB zZ!1X!^84|(I{&qn5>Nwu@t39`M?I(Sf{$KeY2j)lzgqAPbNd54cHOA z8gT!Lt}<0wNtU>-)1tm^(t|a-)R{Y4MkdnLO~pbpetfGA?sjQPVP_CZC?@K89FAg& zP029AF~n;EYoL0tn1t&ADg#BGjh!K=Fy-cgXiBp?v~#B%Cs#jDNI0qiB@Q!z`T*i; zR7ug&&3rZ-CcclXv}Nm7OU$60I+fFoe#c04W##aP4;e=bii!wZjxp6(Xk&cJVj3hVN`4D z&TN4=4VLxL=JZ!gzzd2f~8TN+0ly9a?_nUU@azm7r<|Mw6{&kM47!GYU7NGCs}R)bx@?k!mBxqrot%0#_7z zP=R9*bLZx%%x(K{enRjQ`N?M0^I&YAx3xiubU;LR&w+9;RPAAWD!!yx2!C&2U}>Q=`a1DAE3!+BY580DiKdJ zT7u_7Nye5=r#}xo8W8XZn1ZM0?EKkGo`0o}7TW;XFX-m0$d)AaXZ_rFjT9OzNd01aav^|f*M7bvtMdadq3>~OwH|HH@#6g>qbkKUVj zMX{f79L zJ?!h)k1slIAm*TUXM(;^=5Sj z!Qlb-$F&J70h5b*lIsklRA7-Noe)U@uYZ zF8$2F<_V0~i9YAEuVKeM7yy8eqvr5o-RQ=_qYyaIyMo+7vr1b_s|b|}ZUBT` zjvSF&XG>n4VuMaUo@hw#2@9RQ^~5;H@*&o}CI#_SdCzQw3MWo1zq&gh zp!muAH*ep@1t(r@=>Gx>(~6!kdUZWOgu^R8NpQPICLV~R127q74)hUcBYNm&O-OaX zNrHog1~W!IK%VGk(w_3Og9?Qp3=po!$UWyF68?uv>|iw%B?KlDD9 z^HhryV3+YmC$qu#txJB1+<272MNY5f8dvJ8``vk$o#+?%gq=YH6t&#+(tFPXvQsyz z{7qIhEXcCxyK?p}mCg6v5Mx^$JgR&BG3jg;hvV(;K6IjirDzNAY3%Bw^NX_bfBn^laH-|_e* z5t9+rvlUHLd;eDLYK0JWnMB4!(j{>vI^q+k+C5ly<&%-BxTb^7_nZTJ8FR@z$JD%a zT<85CXr)2MA?03-CUZOO6dN&n3C-|zwRG8^wm;++p0VR6icW23&|?qyxYg@6kb^3f zGL$cyTAe9<5Y((Ts4}lNYGlx8bdk5@{kwPjObB=G-A=ef0_Od?d^z{rf2H9!TcMc)89GA?v5@Pc8UQK52_KS}oXKz=@oKIx&wIzj88xws%OHdT+yPQJ4mxgm5W8A6`Pq z;fc?N0X+z%T0k4^veQ}Gmg}!8KekPq^QP5&JotiPK?(0;Op~i+B*bYiTWcj>q$kz%Wx5{ak&-nux)``>(EqT`vCpJv zJ<+PwiskcdZAfBLBl{LNFG74@7%_i!$L$wc@QGrHE`TR$yo0bRsFq@6w4lh4$GC}5 zK#5Eh^LBB$w#>x(z1vAkX@nas9p50n6m6b|`2!^-QQi$k7g0XWQiH8Y)=`&lnCx<5 zji0+K4PjUCEYgk(>(Uwm_y}uoHum+cQk~#$Qa}|B*IaN-yq9kO;Wxh)6`Qbw3*l?<#!e4m{jhX6V+%6`1yVA2}?>RKE0fRY%q45KM-Ly zf7WspadDe_(ip=VzyKD8Xs0-2Xei;Fk-P y1EhcU-7>_YJpM-wxH1~Mc11I1gh_5}x$hh?f{`;RLmj7x;M!s9VsqQdFYaF&^=wuE literal 0 HcmV?d00001 diff --git a/dependency-injection/docs/resource-field-demo-classdiagram.png b/dependency-injection/docs/resource-field-demo-classdiagram.png new file mode 100644 index 0000000000000000000000000000000000000000..0d6207d09a6e6623281e605d26431d1a869f6e28 GIT binary patch literal 17692 zcmeIabySpH_%@1&I)F5YbPS;=Ac%A`q#!voBHba~NDmDHQc?p742^Uu(xG$;C?Sn> z$Jyi0_gm|H=ll1p^Urb3V$HnI^XzBGz3=%eUvsXDC6Ph_S7dbKejqigSHg^boPjd?NT61fZ z{2zpiP=}w2)$+*FY|jr6;Dr~v)!Ftaj0Wq{G7z19-X*~BpS&j4ydPR~w@*>_BvNw! zPTD!^ozX$O<>|TDg@A@vL{H5B>*9~FNil2_cDi`qrI~K^}VYZCH>l_tWec}k! z;q0H+Q#ZXa!u;9I0vyFIDaTz!NYxu?RjzH?vvMw;ku3*0RZ<;F8TKfVJ}AjQkj4_V zbUc!hNUEQ{yOY?|R?TKi)!vL<$<=0+zVmc`x+L^1UYzqoW$7m~5sp=6J@4GB!<6UY zh1IiEYffx*Ld}2JTJCR-it=JcyM8Utnvi8kNEw~Sa9+| zR;;yEJrG(!=ARZ@;B2sLru$A}PuG+;WkHUA`-??OgZF^#8T-<$6{0)8QXXaa2pN4H z`p9zw8KiCQ+xui}JO@`aG=6(M>hN|}|JB&@8+fqCY|o>UylI_|=2}F!#AUWKeJ{^& z5@M|i4?4QK6|;bYU9UIPFG0#71He3hV9sji&Itqy!XYa66W{# zS0~2_xW~@);ho~-mn0pwZdOmIYbGLT&B(e#KVpXdK)Hs!7_FaLlC9OR5$b+`NrH8P zs=>d}@HAc!%fr?!{~=tj;7hT=L>>IwCEj+D_nnF*?PsNL<)W~TNBvW@<1=WFoL5sF zt7)6on|w_^%csWi?br%p#2PQ0BVLEjwmX>F{hWMk;sV2_WQJI%hgefohVwOuz)lc}WNT~7&a?Ba_$U7$T|C?f9@ zYE&>?)ugWIx;pbP9APdvW11edT|)l3+3WELUc0yIm|S9~db*X~cOR2D`H1q_J$&Sf zkwC=P0+dqVyLNomg_}kF)1CW4toNy$*Hu_u?f&>Ey}h<^cOG`;(&ka^*2@k1#Wuxolp~_LlZh-gY;Yk+1aW$5Wtxee8t>xwsc+dd%k@ z4ez>qLE(~;B%b;yCRS)g;%+wG-Q8-(-uWpEL;bHha5$FXCCB{XqX}G}z$V0TpGk#U^PlclCL{mMQIX+eRDx!#RU^ zb%~k`F3t`zxJcE0ZRz+!1fvYYVk+c1eXw<}^_t`CjDVAi{SgKRJ%&6?Lc`
    qwa zQt8@If(W9UU*0gb2GBi~xr?~*=>ePh-3K@k5lCa0G?8sWi^d{U$Ias7SFP`#2sU51j};z|x=c*0Xt*Y%rKM4-6Wt&p{J(!vm@$SljlH{)rgD8SjxYr0`3wys*dH!lc;}YlX|J8 zB`uECDjqg>q2!F{RV+S@fg z9rnL(qsPQ!pjRCu^b*uUH{%4_w~_D6XJ4^ZS?yXo4Fw z!3Ncb|JM^PW_ndJ^{(#6;F>A8rtopzwEAyP-avSQ-@xEft84n`w|9dse_&wvH-IT9 zy=sz3R#6w2Ju@bHRk%zY>c5^CD~Kc6KE}lBfNMSAT9RUGkM+MLw1j}k4ILb*N6&hk zlsHmBO7hpO8t5l5U2o;VeW`v4W9TNpXOIxA z9bQhpGk6Y0ANB^86dL?*0H(3vu_K>STCgUG@!&hfFVufMK|BOKNfDGW2bRN>0IqRg zvJ|140H16IuwIms$}17*6~Vs|&W4BmZvfr2;4z$&i{p9!TGw$M;Jr3Dz4r(BZ1nVv z!Y% z{IZfvOMhs_`*2KagL))amO$uF(|)m1IxpF(t7lr>pO$mmFdDZVztW0M%3D;}P4D!b zdXV~&I^nIIv2+dtY0vg+z*I9Ws-Bo0%#kXA z7iqdJ#minje|&3Sk_N#UEL~b~cCr|2xAq~qCY*$Iy7y7pCUQMDR)uNsia=SSi`>ze#DFN;RV?eQc=;ObI>a?S67bn<20{x*uI=Jy%z z5ea%7Se`FLa&CgwYiZnn3^lm_5$(%}j6lsbdpG)*wwzg){mDysQK|ky!0g?|c=#AA zFg#znZp?pcQ^12>8$yBvOGY_ZDsnki?5h0JchMQ$D$8F(1T2$KnW*wej)rc(%R{Xh z=kFq0#S9UYfR!b}m#+t+k zbl&P7lBKirzdFsQo2WE7jygOMfJv9w%Y?8nwBoYAdW*_1WA*`3iLi!8opic&bt)RaV13k>56ED;K=ymz*p zb)6_7gU5=VS#Gtbni%?>nw34JEL^yta%dW2{i&Y+!u3nw8+v1z=F@3`{r;zRV{om* zZVFY>>C2t31X~&IbFTv`CygULg%Ckubbga9r@yJlBOv(5*9_6|qO#{5OLV(rI99GV z@8DNiWO{bi{BU~iy;;$90d0p!7E6WUb4=IFy6MIKX8+XBeFUuh{w01q>K3{FAk-mI ziFc|U>NqJidWS(1M+=Kq^6>{ES=*yLpQAtX^Bna{#L9NpRJeUla zy||3#o7=H8W$=&3L8;LKU$^`VrTfoO(SJj4=${!rHkOu0RU^{>wr%x0n@{4 z)=NtD)I16|y`*NkH}|<>=czwJgDAT0^mn=lQYtT0qn1G`bd(5QZ-cVj2VTORNId;? z+H*B0Eb34MLbC~Vl1y8;O=bJ)yXbi_?k%jFn0Ps%gV4a>&y2+PHlb={(Z#c18~Jgl zzPoYrw#N*Fah!-jvOJ0RyV$i4xh%||P$k{Ip)mhPhWB>;9N#dtvox7;Z~>`g(5Nho zVBsTaX-@0u=A>QitZ+x1D3L0o0{OUx(IcBl#5bZG#K)R%m^8zDRf72u$S}luux(_XvJu@&*FEW*yrHoBq*inQE?#&d5il zM^DZ^O#plR7YF{vSzwNx;)L)#8zNVR=B+=i*GGqRY5bWRgjT!xOicf$`yc@Xs&DRJ|$&&X>C*>jm zDVt{mcEf)6-2`uz1z2Po?EM3rjl{O46nU|YGUS^7&@;H$#ZFK@>Dv|=1uCKnpRKsG zPFO}&CD{K1gpRO}DOFG$tD8e_9^fJ)lo-m%<0S;4g(2@_yP?Bhm&9PGw%a6=O2N@C zQfeCreTE;a(853j+j`zSq|j>QqvtgBnp-`RZL^c_scKSLYhG_jWiOlOmbU-pp~24W zm?1ebBA!iF-yH-r#?hTIf-o2IaF{EX%6f?e9zd4hsCLIHmZ$6WVyCCzVt=QEhQ_Vi zLvC}v$FqS~ZJnOKQ}Z!%#k`gN7mE6et3a50b(eGoUj!J{%>+}mSp-M??XI*(?IhQ4 zX}j`-sJmqD9D6vkpwE%ia-#0UFA_^?RR6;;T$5)^7Lk7m5B=~vYG zRH?>YzvQ$aQTMfmS=Y2gg$Q}`#)-mB)Z;qH4V!q?I=oneAG%e9-@*jU3K=&lc>lYi zMo3Hf5w@!07tL`Y1|Hn#Ao`b9P#9`290fv1V|MFKtAZy8;z?me)@1)sB0ou70qTvr zISUGD6N^wFI;D?}l3WMA$E`P#w#(ixFFhohl#ovG!q8_|I#y1IuG z8I4+xHnbhzD~BF`vLv=!M~)LWt0MgNLL|0uI#c=D&5%|6K&X~Rhzoy=kva~R1g$me_67wlgnDHtr6&$8M-&V5+8#|h|DHFVl^O|{DqaS~q*Wh&r*&H3x z4)P_=`gmN=L8sP!R)11OJF=4t@$<*A6~jHE2-R!YL=zDgR1KRGC%(ma5yRUa>=0em zj`}=dnNxbF$kQTBDX|3f8V_%+SN#ug?nL8l7YxEvaR`H7n|H}xszQ6%)>lu7t>Q$< zt@3ml67O~M^FvGQEFvSL{FWcz5j;uO1VoIs4>ZX2fH)_=l<_!Ao7eHR=uu3@&0qfh-WvX zQN~-e6s&;x@L)!0Fb|ki{w08ba!|eiCi3epJP2(fqr}~;sM5LxoEgj9Xxk7nO~Qx& z+8_)dMRT+q^)Y79n{^@(LkiXNr|VuX7JDCW^S)kyZA?~}9Nty$``1Un&Hz(`^H!k% zMWv6#LLyQA*H>;m%*p(>!%>f8ZXfFWWjyqc0FbC$usT!+?1vG{Y2@1P`qEv`>O<1z z(Tsyu9*U7x1^TZ|6;Ch=NfxE|00>c21Z1q^8+-yyo6yV&15K9j(A~9!f!m@X>hS-_ zh9pEoN#hc5i}7NePrF-w5SM0%SLASFFLGg7Nu$a6-xDEj^qV@&eF(s;~&u(qcEB)*9!pd ze%6GZX$!Y@Qrc*jy=+z})w=^YV4@6I9iA703je6;Ff4lrHWo$k)V6v|^Ao_M6|2UZ zfDz8K9yqj|eq^s`Cq6W%FgS=#NkgM?fIiF7X#DJ8%>)c9nZ~J`;b_9p-*Xm?g)djc zu6IrR&bRpVyw*NYRaw6G%JSY8*!WTZsn(!$Z?}uCvH8%mYyhw;vo2ci;#vRe%eg-) zX?za$;G4UhuVdhBP8h8&$3DCaV){;8RJHn>;KpS2#LJ>+Hf|xd(bs>cHlT{cGOhqj zK-ngm_Q=xtj^c}+yb?O!{A5#$ceR=uE6nEdr}_A7=@QM&07m={eHbgehu8wtM6~Bs zx)IAMo!?2$wcYAqPR+?e9xb<57E{j#JM?`nV#E2e{2l#Mavuo+0 z{@Z~tdRi=V9SsJLloW@$U!k-VlGMTngHlI;kWO>=JvIRVt_imku!<=$=;3Bzex{Rz zWADTK$pOCkO`^OSyP30jLDzLt@|PYtN~zo(>X6e@VCq|7Uft9XxBO(YL$<=hmjJ(@ zb?YG0n!KlHYjlUkB`z|d#rNDxBa|D^e%&y9n!U{VQiH}Ow;0N2z0zcBQT6e)mS=R= zvKYUoV+WxfL^DV8{{FZRBb&-X5kxgHG(zL|^c^L{%s;=mQ3GK5C%n#1V$4%4 z5+5Q7J%{G%Pd`i(l-A#qFv4wT_0`oEhfrXG2B1NJ4i_v_z{u=Y_DL=srmL)kWeSQ3 z1A>8Cq>%E}^skTvyb%v(01|1vK3a$d-=0r#*{kBNgWD)SfPw!2sLLQ7kf*3AP+~EvcccmpECl`1%kr4E${(BJ3BVS{gnW_YVS)>D45>D<*;t4hCGmbFD*?L$OfV2H5PwNze%W7&x}Z1J?+?ptu8%MRh1?! zj=My#BDEn83D_lv&x5=%Y4tXQPkHGB zST2$Z-n9Qs$Za`EYZ^!$YbyzRp$Nu~Seom=0>-qjoj7@w?A4=cnZ#XZNHkf7zJ%4Z zZMzpglx$iifitL)89dU6C}1#)07SAqpVKt_M}U9&WB2c+vGEqt69+wE%!tJnO@B)7h{z-~0HRWq zYz!fpEu(}fLJr8q5IiJbS<_yGtP`TQ%6@iw1E!JTGAw@tw37Q)2naFOXE3D(=~rFf zJVw8p-@ni^RE77y;7xy(i#^U+am1EbP#~#&uafRYL;;gD@yr_3|7&N*J-z<#-j|0H zv)lXM#pZLh@+6(8yW*y06LEj_Hat^f3ST8Efkw2OlcRMawDxpr0*yzhNs|$^98MUv zW@pK*X#jn@Knz5|v!^2z|CyKz=BLM~RgZ&aImI&~B?u$SrsCODUO-!nD=bS}7DlP} zXRi6u9Sd{eQE{~~9 z0%zn}(9p3JS>;pP*>BSvNTpL4*+w_cl=9L;+uyIx*7ChaBP3h-<~&TU#WpflS^vaK zs(j(h`!fqU2ZgXTctiMz8Y-Y^OLe z0kBeqv+r5|=UY*-*%C;cPvKAES-N?b>Y05y1yPcXJ@J&?op{CMj2&?X=Lq80!dW5i zDr7U!G3;H=wM=CM!)lv%4;f6g`#NOEiWk|;{TZmx%H1EE{+T{EycWJWNjnA)Bel{ zh2D)CF#!56YZsy6+g-xJcAlFrURaSob5mc}b_Iz70KI^o6Q~mn{H|%p8FC)+LCskJUJKCbdc-SDG*Z)H$PTyC z6wYYzv)=spJ%2qODA~(sxi_X-7u?#7aYIS*>CdG^H&qk94>9msfZo{9JcTi33;}M{ zgjgD$Y40`0`o9x>6%~wEieFmv@d2y54%+D?!wh+tB&Q7va9?(*Py;eS$_+BM(zGEj6&C6xR>uF+ zEFQN$CGA6UFhL)7|7I!7=s`;q*{I$K!okTBuq0}?F)16(-k{i?1BVXhW}|t4c8VWJ z1_zp5GzGa|f+iN133Sv2Z$!@y>#TKm0?#>iq6p7LWAYUHZAvV8=In}ejqg47(FV~0 z)&Pm4SbVENCM8Z6v!OnJyt?pDN~it0!TV`^Fz4gd;j1YyIO7i{DCqKA8PMfCPsJm2 zCn$0Mwe;bueK^YHM70^KR6?Ju}Bx4*urd4VR3x3mG`zHZaQL}&rj01Ql3{>oai6~ zTh$Ek&P=kT+wPUgjUkAjo5)CxN<;t4v7;Z(%0d8P+m_bblbkVCehD|?Ph9t zotET;mg1x~0kAmIif5_^X~rqI zw@+aCzv|Z5uEo=}-zju04nU_Va1$<%=jQ>8H_s4strS>!Ka%PBn}X_@bs}BR&(pR1 zEMc{d>5txjnkUe(PFEQwJ=R6%zp45Vsgbv>lp#1aZs2ZU190TT1W4*m?*~TLbAS|5 zF?-WaTeVFa61fhNOzu?qimApXolzB=6p6eKV3(&q}UOCx*GLbKxAPF`tJv;AzZTHl? ze@Ejhm}tSWf`-4Max+*f*E7kq92gwg>IJ+F@S?r4^z3}cdqipjuYqTw()!+Ano0z0 zB02&El6QSjMF6!vI$%hg(GF#m>&=6ybeM5yZO%0sfv8=-)3tsWtJn<0{!kUhVVFqX zZw3_M^UXHC;~&o6>#rs+{{Xyx*gbx-yJ&C$@UVHF)-+A(X{{o*rU@_GXP0zQzAe}O>a5*?3?`CIL1?XK!_d0sR-X<$9YyjMR6C|LH2bjiRdfUx+#5$Mf4A%Uq zM@CpqpeaJ&Ht6?p^s{du%P_AWbRcsjJvi|6yRaE8!*a<>B&x{=-UuR?40hh~?@ZNW zvxXVU##A?dq)^to3Mw*YkmCu%%>$bLn6EQPbxboS>o2VNq50+YR*FeX1t1o+ZtSG~ zP$Zcs>)VhMV=Yle7_6erI~U=C&KR~t(l3PBeLoc;<&Dp_S2*xhr}Nnfh(!4`UWd4A z?^5u>zC+oh+qZ!1c_=7=(5%#z^3%^ZfL51308%=nm4YHOOV zK*z|Q#u|2XF5{J|HlzWYdF)rICe;giJd@;Z;&j>a@SB_`(f0mxj*_UH_W+Xg%4@j- zK@6x1l=j=Ht}i==I3=uS>y_mX5l00*K8 zn;$x`t|UCxVNy+EcCg4RL#IM70ZF6fHgx=Q>*?^uaHD(+Z=}KEOOJT^nYM-RAhXD~ z{rjp=9%6%W?0*sSk=a#otmyr?;&2Fc*oWue4)sO(wId)phm^58@hwEc~``PD*8!LM6 zhBs<-ESiIt}f5dV_*kKwblFf*eyl%dgZsJIO=|4USC9Vwm4Gdu8==H0<^ILkMGA| zX~Q~O<0>-p!Yue=Zt}zAGgf!ov0A&?9~;jVyShSvvFHmk2(3Q{i`CNZ;$uQwP*9)? zGBLiAT5?ag;_3M8-?w(uPwFKRSt^!$K6fe7EV;1adC*9d*JFO)EJdT5}wDxWfoVnqI{w|4?NmIesOC zjHvJi&ozjLJguPv!hq`>rz(Q$kPdi-PTbQpUOQ{s3WamnZ*!JTqA&;}tu1}1`3Kl} z#2`AycFDf=g=5a0=tM=#C!8Nxio+Ft1mNz|vV-(Ip5Je`QQgpsA-{RA@%O8noUBWi z6d|256{4%ZMIS*GSK0%>TvIp2DN%VqdT(~>_*$q&-eb4^sGK#&lzuR}VNLR1?NS;~ zA^4X%6_SYE?K)wwLNe^LCIxc%VR+R1gRCjSBKbSxW-PIaia`a&$PTIu0{)*EVxi#_ zE2`fFR;c|SP9Cg{MCbn~Dr;%jYCfKGeTjc>ePMoe#B*-2e;(oSBwXllRDG-X(>HD; znPN=JB;#kK-TofWnbbTHeiJ;+?s540SGdTncv;$AY(WR#k1+q%oi<#%!VmBE1gAcP z$V1%*Ss4k@Dqkyhx|>788jFA1_xWFS01}O!W$|go(uz#qGjLHQCvBRH-UDI-`O=#L zCSAfh6CvfJUw!i)Ix|486Xx#5qQggvC^NyU*>s4zbBWOd)O@y+PySeJzeZ3nMk8V+ z-$zWTTV~(+(zb$DtIVRxH$ha+LJQroJN=3pTsg9i^x1^er0r~r7>1!-=b+NU^V+#f znTv{|5$5hO<6-}0B}%d#tE%2?2BT?AhROMYK}(%Xl^xA>mZc#LTXx`23xV zz62K*y}T+eE0aJH7+HK6K!t6cpc296rH3952@lIY!(}X=Si)XMyT#7WFC6z$>UKv{ z5I0>_l@S`gK-Cbng2inC0G;_8hBFIBV1W+a%5xsW1N9Q zTD_-JOdqg$A<8ViXmK$znQ#af38lNkk^w19cp=z>u8|=xRMbtCqjmrBx)Y09D8+PN zfQShBXs7dq&l@F0rd@K(;99q*6|9)VBKS3mrWIv`tSng}n-5vES2-^TymD1s0WxY+sXyLUBzeRXVT6{8wp*o(UxNI(nRz_c8hA$1Eb;;caBmF+^UG*E$%IXExPSHxe>H2z_MMX16xv}jg77{)wYZ|pnwvM}!z^$_? z)O(X`Jyz!9D&Jz{?i<1dL1&<%j@R!xsmm-WWeQJqXd^7u2`>ANeSdnBmkK~$(3U$k z(>HVuh)}*R{?nnwcYH=Xviq6=;7D?1(=Pn&(_coFFu2=AW=$q#|FXuoNC{qmKj#Y%Cn#Jbe&~jsV^}hgE@+oGT`X1aL*19@7kr7)A;_Z^F6!UcIG_ z$t5V(l5!+lz&iIiBK01o8=p3Mgv1=540$5nPWbErT!Sk-j5&}fhYClL5F@7_RnSZ0 z@T)EB5$Y$RPWEvd$uAt|N%DxgBx`jBRWe)p;hyOage6k_KlNyBRS0pO{8m~M=J_n6 zMrZ_MA`_zzjEFuav})sn<(-Pm>z0*kvP0Zj#J;>Jy%W-so5!*j7qUwe4E5^>gURDI ze+v3TrCPY-Yf2qg=?UajT~Hdh=SPRQPr|j77Bo0xT~wm~AoPy_fezAbbmcaXNPI2V zCi&6SKY_2(B-?P6bdTCQVP@w zT@)q5ZJ&HGRg=M1%b!%s^+l@@R@c(TdQr|XH)WBnR%jY#hq};UH5k49r>@4k5w$R z_sND25mjHRT96TLDg9xq_b##H**1;TA{}v5xsYsm9BsiaFtraU7qYjUQpCetwNLq% zWeyZl6GMBreTY1w@Wu<`w-Ir&)FcAX;ZLA~!y7BsRUv1Pa~z*xTYgrOpXk=zkZz`x zVTW;5RfUXfJ`Ii6qJb0=(&6@X@sIGs%^A#*8(;Q(3-?P38JlBQ@z?T%_362#c!++r zd#rrHBB0bJxz|Ztm^&GAKZLKa4&vQ@tLZrf;CO7d_un=aN{OmUx7Q51CpLL?zT%N= z2cXPAO?>v=geVChAe;b!NVgJ{n+!0tJ=x@jK>f7xtTi1t1vv`=WqG?^ zZ#u)Snq+(3q%H`eI1v!sD9#Rq-MDg^?Q9Yb% zrU)F~xAd1EMUiaBg`$`-ydKudXZPbNSo}Df58jG(ShNY6_unVy+q?)Zc*Q91#gGN{ zNtuMoO)>>RAa>=r6dUhO?gq#!(2z`&hd$iAxK|Uv^7d=+HmCzWEWlS~$HKIdL6dq} z4LRB1n+ZnkuUvvK`4e#N5L}g%6(Ai(={B={&$>qZuWma8Ll_gTN0fsdCS#}@!_7k$ zPxutGiN-tlrJ>Y^L~sbrZAQk33~Hjp6Xu31#BN}Ttx&9rab@JJQ4nr0R$!W|jba>8 z=Rra@lOJs7-E)l)EkPx>R&+aPv9dHJFo8+!v99?bP(@@}weVAQW4ZPj7bCa^-ezJbe^GOYwr$&LdO z;=jaTG%JMljC=XfY%WFp=t_WMPhr|iz?8%2OgoB63X%(OtZan`zSVvfL$I;L<H*l6o*qu6UMtt#cXF|=ov4=NuS`Tvapyi zWN;{+gumQ99^|kJJ4ltIAmL;2ACfdg;1I2eH!UxIHWkieaN;1*!-A5S49}+MLscFq zzCAUP>}{ZA*@1B&4uY$VZDl0Z$u7+$`|#iV;>V)(m3dFLK&lkkU!6brZdCEe(?OlE z8-aHfdtXvtW?o6!g@hp@Rw{s@Fx`m$X@$jr{(}=-+HwNs+JRJGU-NrYZO2j1+;aQO z#Ajg=g!K$+N#~htSdR-mRH<;M5*@aPiCAgzgUM;2nNpOGE-f|(Z(l;@A9ms`LZj4! zAz}#Xme>zb?rIVgBtHIxw#7ZYtl~&T5Nt%B+hkKN739R|w{{my1=iPd0^J#L$_PqavaUO=~xh>L5@0O#l6$fFYJ(fmlUGq4vt>pZjzjxq|XYDT0 zeH&`SxBkL=Mtuk$B_CQuu8=Pze)kJzAvybzjQ2E0I&XQJ_vvkj1|#-K;xpI!kZxS7 zS5?Uy^FFT7al+W4*Mu=pW?~|Z!Zr`-rj-~jTP7vWh7b>~^jDuxEZ&n*mPHZpM*TYf zqW$w6@-&9iwTYaP?!zA20nKtqtB)*^depN{Ik_VC>g_WhI;YlLA9pG*k>Pe1O_2}# zC?!Cpr)j&*&wqUpSv#99U`#imUu(A4Q0*{%@80}`0`&(butsm@Z-lvt)2-Yh&oM-d zOd5L(xi^lz=U{JCLiaEsi4F17CtYMvbc0-etxpo$hB91`#P>t67A4b%>$DV>4)w~X z$!|JKJ7H?rmYXbN&THk3s?uZ$YUBG)um_?C^KK@4fh35^L(DuJl82`Ic;ir(tu$o1 z_XnAXX)9YG_(Usd9Ks_2BmE#(l;ML#3D>{|Cr*Is{`s1CaKHe{PzW@agmrIPaQILpKy7^u z1^JgB!i?SuK-<(~dq|^Yg=uTt{zwkU?^^ytzM$@JJq28`iY;h<0IG(f@1S#Y4{m}i zNFN3qt{DtEC;g--UWe&3M?jNUqPx*vOD}!7M=L|)#NPUSGNOXpz+qUcXr+Uf6|w^0 z^f&Y3wl@61{9twH`noiJ^hkr|IqnU&_2rO*rbTrm8~aP8mtr6`tUT2LwOVl)U|86W zZxu;_I8S}!WxYgVgeBRZ6ehelx|h0Ta`1&8scb>aD7EDmt};OX<^W*@9r(e_#@)jN zaI_kv9qJK`TV*yArLGMhH|%wVGy47h*SQ?}-&iirvGqZwnLwXgfHZ+PI-VmH7U;Io zkj|g{vG-LtN~2yq1LPeMxM0+a|C%PlY}f{A!`;n%7+m<0u?UE2#4o_42MekE1|l3& z%$w52aAzIV-FF2FNkU^3AeC50I5;4}kr_t=rUE4XHtaQpX}aGMgAi-=MJ-xxV)l8JE8l@I%+LRoZ# z#)pa8^;GaE8TRV$m(nNJ;G_?I0+!3{K;DeWh*dahvQ9D-*iK$JNKT=h!TH|#pVk?{ zjbamUY`{9>#U@aAcul(rfsn71>%JXIWna$Oa?8Y*-bDm|R8sYJ7Ss*b zOj{R?P4n9S;75yE&3nC%z$uXZDIf$}G(#PBlm?wSN;i)+aZE6z&MQg8wwo;I?IrK4pNenAvCqvXLFo z3aiwWMaIxshZ(0n_AQ`>x}R(R@Ev$IF?r(-^-tb8pZ$TFl}zt6URuPMV?;Ao!*=JK zbRn+_l5K1oz5;9lB@JxCI$o<$6_Y{D^>jH|FaJdbNTL=Ea|lvep(FP(;rWg|Jn6&p#A035ssaL7{qOWEonM zJ31zU%6QC%(Rvlg_J9s4QSsWQY=PRMzZ$>re!mH5E>mRZ^G%L&bR`hFilZ2${*Jn# zu^w0@&MV*M#$~ANn8G5&dw{jDQzYR(z6tg$w>Ufr7%F3SdSjnt%CzvMPRS{8OYJXqLj82k2;?7 zE;~9#7k+&NS)j|aLub{H>}kiZc$X<4{W&grd7y3sj+Ov9!*Kk=b8=_0&m57*=sG!e<-Zj}30g zUqhL9z-k;M0-_W_DlvSj-BtY=6Sqz!UD&g-+GgTg2kl1H?+o{s-hjR7AH=_u%V1+v zVFMfIIrE3bUI|bTK&=7)pZvn=@61yMLR^dx7@1Asv@k|x7~IC;59`$qss<%$XCLn+GQZPqlcv2! zA;b&OCY+QQ^XLvRVJ8)M1~B1NRuJQUhlwv>#2v|6O;wuF%mBSY%fFT^9bUeR1(r)3 zdKR2w4JuxHE}2UlK?P_gX16(MP8{Y5$j+UX!3wJ~yn5tZe_j&}x@t+~q=68Fk~g#i zem?IV7-XTVow?8vs6CuS*C0Y=V-76eML^o4K?r!gFITe}U(oxmbxaQ!Dh?5-W01@q zQ|y40hj$dH<_aq$Q4OF{h^*zXKm~-W*4NzsXX7P;Ea32~Ie1`MXayN;}1$fns-fLd!I$pO#|>(Mo+o*Hsb3fsbHXq63+PVu^`;UNG#I-n3k>s_rbILAu} zjQH7Y6gVx4N;?><0dKPg;VV;j0%ZaQ#l;Mwq#{iM(I+Mp_kyJ>y6(9WG+y@Dp&HBy zJvt!W{XYaGco!HHIN>@mnegV3Y+k&(Qb@EVN1X|0fImW}`F$qLCo3q!j%Ooxd1j z%1*OaL66>wF?+)*t*NjDjW5AR+zME^!eU-7+CH+GfTv?N8kPVzqCatL;CG=@z91AV zrycnIuX+NE4a^hzXp69OHK^Q)GX~clx|KHkT`lnBEl}KKW%;*#C@9UbhNYnXtJfw5 zg-vV>F@G!0dq6o?(p|A01@vrzkEJ4LCt64 zCZdldoKB+5|2>9y1Xj1sOU4a6#`G3kW1MBl1smt@kR-tPD1((*!E*?41JFJt(SM^8 z0l%j9>(NIARAj(+v*02S$p1bDwh|M{c>R7VGZ-DZS3L*m#s3}s4h3~())0}5N9ais z05^hC(|?b7V_8eXj~YtRr<@Vuo{-Ve(Zqb?F}AVud eU=g0sH9VOS%;Cm!1OL|(40-7nuu{oaf&UkRp&W$( literal 0 HcmV?d00001 diff --git a/dependency-injection/docs/resource-field-demo-classdiagram.xml b/dependency-injection/docs/resource-field-demo-classdiagram.xml new file mode 100644 index 0000000000..44c742f2bc --- /dev/null +++ b/dependency-injection/docs/resource-field-demo-classdiagram.xml @@ -0,0 +1 @@ +7Vhtb+I4EP41SHcftgICtP1YoN1bqXtalZ7u7lPlJiZx1/HkHANlf/3OOGOSEPpyonfaOxUhFD8ejz3zzItDL5rljx+tKLLPkEjdG/aTx1407w2HZ8MIfwnYVsB4fF4BqVVJBQ1qYKG+SQb7jK5UIsuWoAPQThVtMAZjZOxamLAWNm2xJej2roVIw441sIiF7qK/q8RlwaxJjf8iVZqFnQcTtu9exF9TCyvD+/WG0dJ/qulcBF1saJmJBDYNKLpEt1oA1ExP+eNManJtcFu17uqJ2d25rTR8tucX4BQtWAu9YtN7w4nGpdMCH1J6uFJSJzeyhJWN5SfzgP5WYOYyhyCK6nfSbJbbBleWG5VrYXA0zVyuERzg4xKMW7AQjYVWqcHnGM8tLQJraZ1CQi54wkGBaJwpnVyLLazIutKht8NomoFV31CtCHvgtHUcW6PzlsSCViLcR9TKEmW+BJfRygq6FiUBJBOD1qIo1f3uwLmwqTJTcA5yFgqWXimtZ6ABzUAHBP6Da5rcMF1kq+TU8RBz9VFCLp3dokiY5bDhtBpxmm3qGI1GLJI14/OUBQXnRbrTXMcGPnB4HA4VVtEIlQ+U4XIpVtqhzQheIPAg1uJEwYlH9oMBzfRU1YFQOgtfZXCXAR8oy4YHGQoBouWSNBwOj7IQsTLptZeZj2rkhn1B0CZTTi4QpzNtsHwhBqhvqX0iZipJJKqcWnDCiYpxorcAZZz333iKX3TzrH8y7o3RrhmOkbgwxi+JWzcDg/YJXIfLJIbTRlJIHYiEkIcvR0KgngvOS9RHXLKOYX50oEjsEavVfoZXxIbq6XP+b7OaIxe0Q6Dxllief/DqW1RHXaoJ2qdQi3upv0CpqIIhZivZPWr/BfbOxq9j7+x48ninFnloQr/QaFko6xfGkKvQK3eff1vc3l19+nV+N69T+6efq+ReA6p9T+p/KizOX1nPx4wdExennbh4tnL/GG0cL2A/SBvvkHqgsz/Zxk/77T4+CNfBBvGDyaF6wCF1DPHcON6reTNtX6DTJ8uTaRteC15ib8SN9KhbGJ+uwZZM8N2Fh2hoBikYoS9rFD2HLySSNJDfGrSigXb7B+N+8CcNsOLRMLmgVynSWkhzmykqoIhSYvCSB+nclnNTrBxQ1d2d4Bo8wbRPdWY66PMZg3b5ftS6cWL+p/J5IqzU2L3Wbe1Hubn7YnQj/1opLCmv6H++8DzZZSgiyVlUnPbq5msaIacNdb03KEXjvVeKwaQbzIdiOVSso5zcfaXoRvd/2rtR6NTh3te9tQdHvrlzu7f2/5lzJ6fszRC6I1bx9t7FYf2fjJ9r/O8VXX4H \ No newline at end of file diff --git a/dependency-injection/docs/resource-method-byname-demo-classdiagram.png b/dependency-injection/docs/resource-method-byname-demo-classdiagram.png new file mode 100644 index 0000000000000000000000000000000000000000..c5cd0c0fcb8a0d1d3275da9875be05663b4db51a GIT binary patch literal 29579 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�{vW65F0TH+<3m9n|HDlsaDg-wA85FD=#cIrU65>iWRL@;ivPjmI{Z-} z!iiJ(dkISN5~BShT>V~3;Nab1fUx(y4B(r6B2I(@`8zYAb%VTk9=!`O4PS_9NRpzKys0b29sme_3hbi=ppXtn{aiBuT{q-#y`|??6$=S32pG!WoijXn|A>l7P1Csf=#VrUy)3kBg25BA_ z1u@SxhktooS^{@p7Uac*j9E=i$Oyj2xI@>3u?TY|F^nkD@J0?_L$i6_u6DeM4DTL-2x{nh)Pj$8Az@k&?3 zc#bSS{xWcBZG$f2mjh2~&QN~a;gHi?s=WZ>!jR8~gyi3!WVoXD^2=Wpx~qpu`qCmE z6bOdYM9zPKRw;AHhzO$HfZ)Y%YA$0T`%U<=yC>u*1#rC^EZ%C%e7%h!ieYf2cjTyWAmsh$B!_|8IL43J!(0 zhPlYbAsB7dgC|596Qw#kUiZ+gRZpvV?AA2a2U1d^Q|-q!6=0y+TMpWHUIN$TjN`m} zN-?uW`BycOI2OIsqZ2<=>}?>lSMSa>@u7+fCvli9)$%L_P;Ubrv(6)y|RYj>cNG-6QYOa_e zaNeeYZ*T*-!tMO<6!hXWZaCx)`&t4}>ZsOpd$lg~SJX|s(Ez<;eV~-Wk?MJKt{~$J z^g6zg{bI=z7!hg|0VL3G0reX6pZ8qHGcu0cv}fP}q+sfnT&?yEJk)rP)k)Q$D(rBq zmmc<}_z;F4XKDbw+93F;1MXMGJt>&UpZr%0?4|%7kcD{HFDHtTxT^m>nmPNy^5U!I{B-eFN%ye1S%d|7(ANhe(u$UXBntWeA)SOaqMqHl5rT;xX|YaNqlJ&^9vQ z6vi%Khw_f?g^+bImYx|*>GM=f7$a_(+y^$fKFhA;(*Vu2zw}kGXzly(^BZt7Vpn@# zg#yRLlwY$m3#EW#if#JQ+ty6>VllZR?=c9=kd)VwfYl_Yy?H*hn<_q;$kzekSB*IKF;F5T5xGfg8p|L;I4y;%-4T_vkhnC=UL4HPhC4S8~`m_2aXw< z0Vg2Cbwjzufib`1)5P41z#2~XvDA8yvLzE3_;t_Dv%MYasJwcqCXaLMQD8xPb!FfT zUnp$%wybS)RVQ%6>MCR4Y&mG=n`IMd&Azv={G>#0C+A5Vt>6s+z*txb9KZ23 zE&M7DTCe{Tya)m)8VTC=u(Xr^ZpKn8=%4gogmmd)DnD;Tmn6ynH+e@TJQv?5HMF9Y7Vdy0^F}L>&FD1Xd$UdE*d;wmjJV^DKK1Db*|p80IDq6 zp`s^(fKjaDTjSBD%gO7hB+>>mdlu09SC3qs4_y}k36wAMfK^$Pk2=^IPgH>2ine(9W39~xLQc6%S3|%<_ue)GhWSHef&RgqwK33 zSU~B362+w>?I|}VU6`Qaln9DUP<*Ze=73<|n7^z*y3`IPI!(xd>59t&1I`@a%zWAH nbN^QX8+A}gkS;FHKlWbYbAsL~JG=rO&BoyA>gTe~DWM4f06-Nq literal 0 HcmV?d00001 diff --git a/dependency-injection/docs/resource-method-demo-classdiagram.xml b/dependency-injection/docs/resource-method-demo-classdiagram.xml new file mode 100644 index 0000000000..94b39279fc --- /dev/null +++ b/dependency-injection/docs/resource-method-demo-classdiagram.xml @@ -0,0 +1 @@ +3Vhbb+I6EP41SN0HECGQbh8boNuutkerltXZ84QMcRL3OHFqHAr99R0749y4qCpdqV0eQvx5PJ755mJDxx0nm2+SZPGtCCjvDPrBpuNOOoPB14ELTw1sC2A0uiiASLKggJwKuGfPFME+ojkL6KohqITgimVNcCnSlC5VAyNSiqemWCh4c9eMRHbHCrhfEr6L/ssCFVu3vAq/piyK7c6Oh/4tyPL/SIo8xf06Azc0n2I6IVYXOrqKSSCeapA7BVqlEKBZvyWbMeWaWktbse7qwGxpt6Qp2nZ8ATq0UlvrOg2ACRwKqWIRiZTwaYX6xj2qFfRhFKuEw6sDr7Cn3P5G3Az+04PeyAyDSx0YrTWj6SxmaYFeMTCoWPJAldpiMpBcCYAqC34IkeE+hc3a0INeI7QSuVyiFKakIjKiKDUqGYdEpiKhYDKISMqJYuumdoIpFZVyFa3wgsweCAtGe014jlrv6GPOJOR4m39FN2BdnVaQYs9kYQQ0TZlgqTLWjPzOaAII4SwCOidL8J9KANZUKgbpfIkTCQsCEztOFpT7ZZKOBRcgD/vaNLXsag0Uy7lZbGhJlcN13k0+7TKKivo9DAK2he6wGL6acNT8UzNQqe2CeE2r01IgwnAFEW/HqzTvVSFEw2sR7Aw8riOVNeLnPea6dv0E0kyn+CXM9rMNPA210AE03lU6mfXcsDanQ9/FWOo5DGepE94i/DY7LyxwS6FKgjtapPtN+gBhYiKd0ERYWfCvFC/Xa90NBKTAnSYWg1QfMrDpH3B8yKw3EcJpCFIlI23dXX2Y0JDkXEHDAM1a8oGsSY+JnkHe2QMLaIwkECw/Xaz0l5VZZSTd6yhnKe3GeDpoM52ezpXWVjVn5re/7mdzfzq/+ef7dDybTuZjISWEkEPOl14V+zXtPNGGsy/F5FpAlh/faR+tO8CJ5hwh+6j/BQYlPqk4PavnxlvdbHXmdlM1NVz23iKBfQFSITfnXGhONj8UqcJDzYEOZsZXJGEQXXdyTfmaaq3Nln+wB++ccQd7rWPbM3ZFF4dP1X3G7SNmQ2PWnSN4yoFnDtaP2i0PtI2d9vhhm+En7N+vNflTl5xna8xeRIa7Ned4e2ru4h1K7nyn5Owd+MS7JVzEMXv0ghb3+wMErXXJ0mhmbuxwyXsXdodavsbuBTaZGrm25dW5tdgp3OKPu7+XW8/emW3men+MXBhWP2+Li3j1F4I7fQE= \ No newline at end of file diff --git a/dependency-injection/pom.xml b/dependency-injection/pom.xml new file mode 100644 index 0000000000..46f57e512e --- /dev/null +++ b/dependency-injection/pom.xml @@ -0,0 +1,81 @@ + + + 4.0.0 + + com.baeldung + dependency-injection + 0.0.1-SNAPSHOT + war + + @Resource vs @Inject vs @Autowired + Accompanying the demonstration of the use of the annotations related to injection mechanisms, namely @Resource, @Inject, and @Autowired + + + + junit + junit + 4.11 + test + + + org.mockito + mockito-all + 1.10.19 + + + org.springframework + spring-test + 4.2.6.RELEASE + + + org.springframework + spring-core + 4.2.6.RELEASE + + + org.springframework + spring-beans + 4.2.6.RELEASE + + + org.springframework + spring-context + 4.2.6.RELEASE + + + javax.inject + javax.inject + 1 + + + + + + + maven-compiler-plugin + + 1.6 + 1.6 + + + + org.apache.maven.plugins + maven-surefire-plugin + + + **/*Demo.java + + + + + + + + + java.net + https://maven.java.net/content/repositories/releases/ + + + diff --git a/dependency-injection/src/test/java/com/baeldung/autowired/FieldAutowiredDemo.java b/dependency-injection/src/test/java/com/baeldung/autowired/FieldAutowiredDemo.java new file mode 100644 index 0000000000..c71365097f --- /dev/null +++ b/dependency-injection/src/test/java/com/baeldung/autowired/FieldAutowiredDemo.java @@ -0,0 +1,27 @@ +package com.baeldung.autowired; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertNotNull; + +import org.junit.Test; +import org.junit.runner.RunWith; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.test.context.ContextConfiguration; +import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; + +import com.baeldung.dependency.ArbitraryDependency; + +@RunWith(SpringJUnit4ClassRunner.class) +@ContextConfiguration(locations={ + "/applicationContextTest-@Autowired-Type.xml"}) +public class FieldAutowiredDemo { + + @Autowired + private ArbitraryDependency fieldDependency; + + @Test + public void fieldDependency_MUST_BE_AUTOWIRED_Correctly() { + assertNotNull(fieldDependency); + assertEquals("Arbitrary Dependency", fieldDependency.toString()); + } +} diff --git a/dependency-injection/src/test/java/com/baeldung/autowired/FieldAutowiredNameDemo.java b/dependency-injection/src/test/java/com/baeldung/autowired/FieldAutowiredNameDemo.java new file mode 100644 index 0000000000..c11ed5286a --- /dev/null +++ b/dependency-injection/src/test/java/com/baeldung/autowired/FieldAutowiredNameDemo.java @@ -0,0 +1,27 @@ +package com.baeldung.autowired; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertNotNull; + +import org.junit.Test; +import org.junit.runner.RunWith; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.test.context.ContextConfiguration; +import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; + +import com.baeldung.dependency.ArbitraryDependency; + +@RunWith(SpringJUnit4ClassRunner.class) +@ContextConfiguration(locations={ + "/applicationContextTest-@Autowired-Name.xml"}) +public class FieldAutowiredNameDemo { + + @Autowired + private ArbitraryDependency autowiredFieldDependency; + + @Test + public void autowiredFieldDependency_MUST_BE_AUTOWIRED_Correctly() { + assertNotNull(autowiredFieldDependency); + assertEquals("Arbitrary Dependency", autowiredFieldDependency.toString()); + } +} diff --git a/dependency-injection/src/test/java/com/baeldung/autowired/FieldQualifierAutowiredDemo.java b/dependency-injection/src/test/java/com/baeldung/autowired/FieldQualifierAutowiredDemo.java new file mode 100644 index 0000000000..5afce6ab6a --- /dev/null +++ b/dependency-injection/src/test/java/com/baeldung/autowired/FieldQualifierAutowiredDemo.java @@ -0,0 +1,39 @@ +package com.baeldung.autowired; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertNotNull; + +import org.junit.Test; +import org.junit.runner.RunWith; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Qualifier; +import org.springframework.test.context.ContextConfiguration; +import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; + +import com.baeldung.dependency.ArbitraryDependency; + +@RunWith(SpringJUnit4ClassRunner.class) +@ContextConfiguration(locations={ + "/applicationContextTest-@Autowired-Qualifier.xml"}) +public class FieldQualifierAutowiredDemo { + + @Autowired + @Qualifier("autowiredFieldDependency") + private ArbitraryDependency fieldDependency1; + + @Autowired + @Qualifier("anotherAutowiredFieldDependency") + private ArbitraryDependency fieldDependency2; + + @Test + public void fieldDependency1_MUST_BE_AUTOWIRED_Correctly() { + assertNotNull(fieldDependency1); + assertEquals("Arbitrary Dependency", fieldDependency1.toString()); + } + + @Test + public void fieldDependency2_MUST_BE_AUTOWIRED_Correctly() { + assertNotNull(fieldDependency2); + assertEquals("Another Arbitrary Dependency", fieldDependency2.toString()); + } +} diff --git a/dependency-injection/src/test/java/com/baeldung/dependency/AnotherArbitraryDependency.java b/dependency-injection/src/test/java/com/baeldung/dependency/AnotherArbitraryDependency.java new file mode 100644 index 0000000000..27ba03f6e8 --- /dev/null +++ b/dependency-injection/src/test/java/com/baeldung/dependency/AnotherArbitraryDependency.java @@ -0,0 +1,10 @@ +package com.baeldung.dependency; + +public class AnotherArbitraryDependency extends ArbitraryDependency { + + private final String label = "Another Arbitrary Dependency"; + + public String toString() { + return label; + } +} diff --git a/dependency-injection/src/test/java/com/baeldung/dependency/ArbitraryDependency.java b/dependency-injection/src/test/java/com/baeldung/dependency/ArbitraryDependency.java new file mode 100644 index 0000000000..bab289777c --- /dev/null +++ b/dependency-injection/src/test/java/com/baeldung/dependency/ArbitraryDependency.java @@ -0,0 +1,10 @@ +package com.baeldung.dependency; + +public class ArbitraryDependency { + + private final String label = "Arbitrary Dependency"; + + public String toString() { + return label; + } +} diff --git a/dependency-injection/src/test/java/com/baeldung/dependency/YetAnotherArbitraryDependency.java b/dependency-injection/src/test/java/com/baeldung/dependency/YetAnotherArbitraryDependency.java new file mode 100644 index 0000000000..1f59500ec5 --- /dev/null +++ b/dependency-injection/src/test/java/com/baeldung/dependency/YetAnotherArbitraryDependency.java @@ -0,0 +1,10 @@ +package com.baeldung.dependency; + +public class YetAnotherArbitraryDependency extends ArbitraryDependency { + + private final String label = "Yet Another Arbitrary Dependency"; + + public String toString() { + return label; + } +} diff --git a/dependency-injection/src/test/java/com/baeldung/inject/FieldByNameInjectDemo.java b/dependency-injection/src/test/java/com/baeldung/inject/FieldByNameInjectDemo.java new file mode 100644 index 0000000000..a670ee8313 --- /dev/null +++ b/dependency-injection/src/test/java/com/baeldung/inject/FieldByNameInjectDemo.java @@ -0,0 +1,30 @@ +package com.baeldung.inject; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertNotNull; + +import javax.inject.Inject; +import javax.inject.Named; + +import org.junit.Test; +import org.junit.runner.RunWith; +import org.springframework.test.context.ContextConfiguration; +import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; + +import com.baeldung.dependency.ArbitraryDependency; + +@RunWith(SpringJUnit4ClassRunner.class) +@ContextConfiguration(locations={ + "/applicationContextTest-@Inject-Name.xml"}) +public class FieldByNameInjectDemo { + + @Inject + @Named("yetAnotherFieldInjectDependency") + private ArbitraryDependency yetAnotherFieldInjectDependency; + + @Test + public void yetAnotherFieldInjectDependency_MUST_BE_INJECTED_Correctly() { + assertNotNull(yetAnotherFieldInjectDependency); + assertEquals("Yet Another Arbitrary Dependency", yetAnotherFieldInjectDependency.toString()); + } +} diff --git a/dependency-injection/src/test/java/com/baeldung/inject/FieldInjectDemo.java b/dependency-injection/src/test/java/com/baeldung/inject/FieldInjectDemo.java new file mode 100644 index 0000000000..df40e516ba --- /dev/null +++ b/dependency-injection/src/test/java/com/baeldung/inject/FieldInjectDemo.java @@ -0,0 +1,27 @@ +package com.baeldung.inject; +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertNotNull; + +import javax.inject.Inject; + +import org.junit.Test; +import org.junit.runner.RunWith; +import org.springframework.test.context.ContextConfiguration; +import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; + +import com.baeldung.dependency.ArbitraryDependency; + +@RunWith(SpringJUnit4ClassRunner.class) +@ContextConfiguration(locations={ + "/applicationContextTest-@Inject-Type.xml"}) +public class FieldInjectDemo { + + @Inject + private ArbitraryDependency inject1Dependency; + + @Test + public void fieldDependency_MUST_BE_INJECTED_Successfully() { + assertNotNull(inject1Dependency); + assertEquals("Arbitrary Dependency", inject1Dependency.toString()); + } +} diff --git a/dependency-injection/src/test/java/com/baeldung/inject/FieldQualifierInjectDemo.java b/dependency-injection/src/test/java/com/baeldung/inject/FieldQualifierInjectDemo.java new file mode 100644 index 0000000000..3cc9b643c7 --- /dev/null +++ b/dependency-injection/src/test/java/com/baeldung/inject/FieldQualifierInjectDemo.java @@ -0,0 +1,40 @@ +package com.baeldung.inject; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertNotNull; + +import javax.inject.Inject; + +import org.junit.Test; +import org.junit.runner.RunWith; +import org.springframework.beans.factory.annotation.Qualifier; +import org.springframework.test.context.ContextConfiguration; +import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; + +import com.baeldung.dependency.ArbitraryDependency; + +@RunWith(SpringJUnit4ClassRunner.class) +@ContextConfiguration(locations={ + "/applicationContextTest-@Inject-Qualifier.xml"}) +public class FieldQualifierInjectDemo { + + @Inject + @Qualifier("defaultFile") + private ArbitraryDependency defaultDependency; + + @Inject + @Qualifier("namedFile") + private ArbitraryDependency namedDependency; + + @Test + public void defaultDependency_MUST_BE_INJECTED_Successfully() { + assertNotNull(defaultDependency); + assertEquals("Arbitrary Dependency", defaultDependency.toString()); + } + + @Test + public void namedDependency_MUST_BE_INJECTED_Correctly() { + assertNotNull(defaultDependency); + assertEquals("Another Arbitrary Dependency", namedDependency.toString()); + } +} diff --git a/dependency-injection/src/test/java/com/baeldung/resource/FieldResourceInjectionDemo.java b/dependency-injection/src/test/java/com/baeldung/resource/FieldResourceInjectionDemo.java new file mode 100644 index 0000000000..fbb378d672 --- /dev/null +++ b/dependency-injection/src/test/java/com/baeldung/resource/FieldResourceInjectionDemo.java @@ -0,0 +1,25 @@ +package com.baeldung.resource; +import static org.junit.Assert.assertNotNull; + +import java.io.File; + +import javax.annotation.Resource; + +import org.junit.Test; +import org.junit.runner.RunWith; +import org.springframework.test.context.ContextConfiguration; +import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; + +@RunWith(SpringJUnit4ClassRunner.class) +@ContextConfiguration(locations={ + "/applicationContextTest-@Resource-NameType.xml"}) +public class FieldResourceInjectionDemo { + + @Resource(name="namedFile") + private File defaultFile; + + @Test + public void plainResourceAnnotation_MUST_FIND_DefaultFile() { + assertNotNull(defaultFile); + } +} diff --git a/dependency-injection/src/test/java/com/baeldung/resource/MethodByQualifierResourceDemo.java b/dependency-injection/src/test/java/com/baeldung/resource/MethodByQualifierResourceDemo.java new file mode 100644 index 0000000000..fcca34dc2f --- /dev/null +++ b/dependency-injection/src/test/java/com/baeldung/resource/MethodByQualifierResourceDemo.java @@ -0,0 +1,43 @@ +package com.baeldung.resource; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertNotNull; + +import java.io.File; + +import javax.annotation.Resource; + +import org.junit.Test; +import org.junit.runner.RunWith; +import org.springframework.beans.factory.annotation.Qualifier; +import org.springframework.test.context.ContextConfiguration; +import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; + +@RunWith(SpringJUnit4ClassRunner.class) +@ContextConfiguration(locations={ + "/applicationContextTest-@Resource-Qualifier.xml"}) +public class MethodByQualifierResourceDemo { + + private File arbDependency; + private File anotherArbDependency; + + @Test + public void dependencies_MUST_BE_INJECTED_Correctly() { + assertNotNull(arbDependency); + assertEquals("namedFile.txt", arbDependency.getName()); + assertNotNull(anotherArbDependency); + assertEquals("defaultFile.txt", anotherArbDependency.getName()); + } + + @Resource + @Qualifier("namedFile") + public void setArbDependency(File arbDependency) { + this.arbDependency = arbDependency; + } + + @Resource + @Qualifier("defaultFile") + public void setAnotherArbDependency(File anotherArbDependency) { + this.anotherArbDependency = anotherArbDependency; + } +} diff --git a/dependency-injection/src/test/java/com/baeldung/resource/MethodByTypeResourceDemo.java b/dependency-injection/src/test/java/com/baeldung/resource/MethodByTypeResourceDemo.java new file mode 100644 index 0000000000..af6a805bd9 --- /dev/null +++ b/dependency-injection/src/test/java/com/baeldung/resource/MethodByTypeResourceDemo.java @@ -0,0 +1,30 @@ +package com.baeldung.resource; + +import static org.junit.Assert.assertNotNull; + +import java.io.File; + +import javax.annotation.Resource; + +import org.junit.Test; +import org.junit.runner.RunWith; +import org.springframework.test.context.ContextConfiguration; +import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; + +@RunWith(SpringJUnit4ClassRunner.class) +@ContextConfiguration(locations={ + "/applicationContextTest-@Resource-NameType.xml"}) +public class MethodByTypeResourceDemo { + + private File defaultFile; + + @Resource + protected void setDefaultFile(File defaultFile) { + this.defaultFile = defaultFile; + } + + @Test + public void defaultFile_MUST_BE_INJECTED_Correctly() { + assertNotNull(defaultFile); + } +} diff --git a/dependency-injection/src/test/java/com/baeldung/resource/MethodResourceInjectionDemo.java b/dependency-injection/src/test/java/com/baeldung/resource/MethodResourceInjectionDemo.java new file mode 100644 index 0000000000..d746fd4d85 --- /dev/null +++ b/dependency-injection/src/test/java/com/baeldung/resource/MethodResourceInjectionDemo.java @@ -0,0 +1,29 @@ +package com.baeldung.resource; +import static org.junit.Assert.assertNotNull; + +import java.io.File; + +import javax.annotation.Resource; + +import org.junit.Test; +import org.junit.runner.RunWith; +import org.springframework.test.context.ContextConfiguration; +import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; + +@RunWith(SpringJUnit4ClassRunner.class) +@ContextConfiguration(locations={ + "/applicationContextTest-@Resource-NameType.xml"}) +public class MethodResourceInjectionDemo { + + private File defaultFile; + + @Resource(name="namedFile") + protected void setDefaultFile(File defaultFile) { + this.defaultFile = defaultFile; + } + + @Test + public void defaultFile_MUST_BE_INJECTED_Correctly() { + assertNotNull(defaultFile); + } +} diff --git a/dependency-injection/src/test/java/com/baeldung/resource/NamedResourceTest.java b/dependency-injection/src/test/java/com/baeldung/resource/NamedResourceTest.java new file mode 100644 index 0000000000..8b218dfe98 --- /dev/null +++ b/dependency-injection/src/test/java/com/baeldung/resource/NamedResourceTest.java @@ -0,0 +1,27 @@ +package com.baeldung.resource; +import static org.junit.Assert.assertNotNull; +import static org.junit.Assert.assertTrue; + +import java.io.File; + +import javax.annotation.Resource; + +import org.junit.Test; +import org.junit.runner.RunWith; +import org.springframework.test.context.ContextConfiguration; +import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; + +@RunWith(SpringJUnit4ClassRunner.class) +@ContextConfiguration(locations={ + "/applicationContextTest-@Resource-NameType.xml"}) +public class NamedResourceTest { + + @Resource(name="namedFile") + private File testFile; + + @Test + public void namedResource_MUST_FIND_SPECIFIED_File() { + assertNotNull(testFile); + assertTrue(testFile.getName().equals("namedFile.txt")); + } +} diff --git a/dependency-injection/src/test/java/com/baeldung/resource/QualifierResourceInjectionDemo.java b/dependency-injection/src/test/java/com/baeldung/resource/QualifierResourceInjectionDemo.java new file mode 100644 index 0000000000..0aaa2085d5 --- /dev/null +++ b/dependency-injection/src/test/java/com/baeldung/resource/QualifierResourceInjectionDemo.java @@ -0,0 +1,35 @@ +package com.baeldung.resource; +import static org.junit.Assert.assertNotNull; + +import java.io.File; + +import javax.annotation.Resource; + +import org.junit.Test; +import org.junit.runner.RunWith; +import org.springframework.beans.factory.annotation.Qualifier; +import org.springframework.test.context.ContextConfiguration; +import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; + +@RunWith(SpringJUnit4ClassRunner.class) +@ContextConfiguration(locations={ + "/applicationContextTest-@Resource-Qualifier.xml"}) +public class QualifierResourceInjectionDemo { + + @Resource + private File defaultFile; + + @Resource + @Qualifier("namedFile") + private File namedFile; + + @Test + public void defaultFile_MUST_BE_Valid() { + assertNotNull(defaultFile); + } + + @Test + public void namedFile_MUST_BE_Valid() { + assertNotNull(namedFile); + } +} diff --git a/dependency-injection/src/test/java/com/baeldung/resource/SetterResourceInjectionDemo.java b/dependency-injection/src/test/java/com/baeldung/resource/SetterResourceInjectionDemo.java new file mode 100644 index 0000000000..25dd5bb9ff --- /dev/null +++ b/dependency-injection/src/test/java/com/baeldung/resource/SetterResourceInjectionDemo.java @@ -0,0 +1,29 @@ +package com.baeldung.resource; +import static org.junit.Assert.assertNotNull; + +import java.io.File; + +import javax.annotation.Resource; + +import org.junit.Test; +import org.junit.runner.RunWith; +import org.springframework.test.context.ContextConfiguration; +import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; + +@RunWith(SpringJUnit4ClassRunner.class) +@ContextConfiguration(locations={ + "/applicationContextTest-@Resource-NameType.xml"}) +public class SetterResourceInjectionDemo { + + private File defaultFile; + + @Resource + protected void setDefaultFile(File defaultFile) { + this.defaultFile = defaultFile; + } + + @Test + public void setter_MUST_INJECT_Resource() { + assertNotNull(defaultFile); + } +} diff --git a/dependency-injection/src/test/resources/applicationContextTest-@Autowired-Name.xml b/dependency-injection/src/test/resources/applicationContextTest-@Autowired-Name.xml new file mode 100644 index 0000000000..d7fe3abcb3 --- /dev/null +++ b/dependency-injection/src/test/resources/applicationContextTest-@Autowired-Name.xml @@ -0,0 +1,12 @@ + + + + + + diff --git a/dependency-injection/src/test/resources/applicationContextTest-@Autowired-Qualifier.xml b/dependency-injection/src/test/resources/applicationContextTest-@Autowired-Qualifier.xml new file mode 100644 index 0000000000..d7fe3abcb3 --- /dev/null +++ b/dependency-injection/src/test/resources/applicationContextTest-@Autowired-Qualifier.xml @@ -0,0 +1,12 @@ + + + + + + diff --git a/dependency-injection/src/test/resources/applicationContextTest-@Autowired-Type.xml b/dependency-injection/src/test/resources/applicationContextTest-@Autowired-Type.xml new file mode 100644 index 0000000000..c65b85ccf4 --- /dev/null +++ b/dependency-injection/src/test/resources/applicationContextTest-@Autowired-Type.xml @@ -0,0 +1,10 @@ + + + + diff --git a/dependency-injection/src/test/resources/applicationContextTest-@Inject-Name.xml b/dependency-injection/src/test/resources/applicationContextTest-@Inject-Name.xml new file mode 100644 index 0000000000..610e8687a7 --- /dev/null +++ b/dependency-injection/src/test/resources/applicationContextTest-@Inject-Name.xml @@ -0,0 +1,11 @@ + + + + + diff --git a/dependency-injection/src/test/resources/applicationContextTest-@Inject-Qualifier.xml b/dependency-injection/src/test/resources/applicationContextTest-@Inject-Qualifier.xml new file mode 100644 index 0000000000..627ec37914 --- /dev/null +++ b/dependency-injection/src/test/resources/applicationContextTest-@Inject-Qualifier.xml @@ -0,0 +1,12 @@ + + + + + + diff --git a/dependency-injection/src/test/resources/applicationContextTest-@Inject-Type.xml b/dependency-injection/src/test/resources/applicationContextTest-@Inject-Type.xml new file mode 100644 index 0000000000..405164e603 --- /dev/null +++ b/dependency-injection/src/test/resources/applicationContextTest-@Inject-Type.xml @@ -0,0 +1,10 @@ + + + + diff --git a/dependency-injection/src/test/resources/applicationContextTest-@Resource-NameType.xml b/dependency-injection/src/test/resources/applicationContextTest-@Resource-NameType.xml new file mode 100644 index 0000000000..82cbe97157 --- /dev/null +++ b/dependency-injection/src/test/resources/applicationContextTest-@Resource-NameType.xml @@ -0,0 +1,12 @@ + + + + + + diff --git a/dependency-injection/src/test/resources/applicationContextTest-@Resource-Qualifier.xml b/dependency-injection/src/test/resources/applicationContextTest-@Resource-Qualifier.xml new file mode 100644 index 0000000000..1680a6f66a --- /dev/null +++ b/dependency-injection/src/test/resources/applicationContextTest-@Resource-Qualifier.xml @@ -0,0 +1,16 @@ + + + + + + + + + + From 7ecd7ce02d412a495bc2bd79fece62aa315f7d2f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miguel=20Garci=CC=81a=20Lpez?= Date: Sun, 12 Jun 2016 21:28:49 +0200 Subject: [PATCH 22/26] Code and tests for the lombok introduction. --- lombok-intro/pom.xml | 151 ++++++++++++++++++ .../lombok/intro/ApiClientConfiguration.java | 22 +++ .../intro/ContactInformationSupport.java | 17 ++ .../lombok/intro/HasContactInformation.java | 16 ++ .../baeldung/lombok/intro/LoginResult.java | 25 +++ .../java/com/baeldung/lombok/intro/User.java | 43 +++++ .../com/baeldung/lombok/intro/UserEvent.java | 29 ++++ .../intro/ApiClientConfigurationTest.java | 43 +++++ .../lombok/intro/LoginResultTest.java | 59 +++++++ .../com/baeldung/lombok/intro/UserTest.java | 73 +++++++++ pom.xml | 2 + 11 files changed, 480 insertions(+) create mode 100644 lombok-intro/pom.xml create mode 100644 lombok-intro/src/main/java/com/baeldung/lombok/intro/ApiClientConfiguration.java create mode 100644 lombok-intro/src/main/java/com/baeldung/lombok/intro/ContactInformationSupport.java create mode 100644 lombok-intro/src/main/java/com/baeldung/lombok/intro/HasContactInformation.java create mode 100644 lombok-intro/src/main/java/com/baeldung/lombok/intro/LoginResult.java create mode 100644 lombok-intro/src/main/java/com/baeldung/lombok/intro/User.java create mode 100644 lombok-intro/src/main/java/com/baeldung/lombok/intro/UserEvent.java create mode 100644 lombok-intro/src/test/java/com/baeldung/lombok/intro/ApiClientConfigurationTest.java create mode 100644 lombok-intro/src/test/java/com/baeldung/lombok/intro/LoginResultTest.java create mode 100644 lombok-intro/src/test/java/com/baeldung/lombok/intro/UserTest.java diff --git a/lombok-intro/pom.xml b/lombok-intro/pom.xml new file mode 100644 index 0000000000..8204a0ee70 --- /dev/null +++ b/lombok-intro/pom.xml @@ -0,0 +1,151 @@ + + + + 4.0.0 + + lombok-intro + + com.baeldung + lombok-intro + 0.1-SNAPSHOT + + + + + org.projectlombok + lombok + + ${lombok.version} + provided + + + + org.hibernate.javax.persistence + hibernate-jpa-2.1-api + ${hibernate-jpa-2.1-api.version} + + + + + org.slf4j + slf4j-api + ${org.slf4j.version} + + + + ch.qos.logback + logback-core + ${logback.version} + runtime + + + + + + junit + junit + ${junit.version} + test + + + + + + + lombok-intro + + + src/main/resources + true + + + + + + + org.apache.maven.plugins + maven-compiler-plugin + ${maven-compiler-plugin.version} + + ${maven.compiler.source} + ${maven.compiler.target} + + + + + org.apache.maven.plugins + maven-surefire-plugin + ${maven-surefire-plugin.version} + + + + org.projectlombok + lombok-maven-plugin + ${delombok-maven-plugin.version} + + + delombok + generate-sources + + delombok + + + ${project.basedir}/src/main/java + false + + skip + + false + + + + + + + + + + + + UTF-8 + + 1.8 + 1.8 + + + 1.16.8 + + + 1.0.0.Final + + + 1.7.13 + 1.1.3 + + + 4.12 + + + 3.5.1 + 2.19.1 + + + ${lombok.version}.0 + + + diff --git a/lombok-intro/src/main/java/com/baeldung/lombok/intro/ApiClientConfiguration.java b/lombok-intro/src/main/java/com/baeldung/lombok/intro/ApiClientConfiguration.java new file mode 100644 index 0000000000..74cc929d32 --- /dev/null +++ b/lombok-intro/src/main/java/com/baeldung/lombok/intro/ApiClientConfiguration.java @@ -0,0 +1,22 @@ +package com.baeldung.lombok.intro; + +import lombok.Builder; +import lombok.Getter; +import lombok.extern.slf4j.Slf4j; + +@Builder +@Slf4j +@Getter +public class ApiClientConfiguration { + + private String host; + private int port; + private boolean useHttps; + + private long connectTimeout; + private long readTimeout; + + private String username; + private String password; + +} diff --git a/lombok-intro/src/main/java/com/baeldung/lombok/intro/ContactInformationSupport.java b/lombok-intro/src/main/java/com/baeldung/lombok/intro/ContactInformationSupport.java new file mode 100644 index 0000000000..ea9c3d23f5 --- /dev/null +++ b/lombok-intro/src/main/java/com/baeldung/lombok/intro/ContactInformationSupport.java @@ -0,0 +1,17 @@ +package com.baeldung.lombok.intro; + +import lombok.Data; + +@Data +public class ContactInformationSupport implements HasContactInformation { + + private String firstName; + private String lastName; + private String phoneNr; + + @Override + public String getFullName() { + return getFirstName() + " " + getLastName(); + } + +} diff --git a/lombok-intro/src/main/java/com/baeldung/lombok/intro/HasContactInformation.java b/lombok-intro/src/main/java/com/baeldung/lombok/intro/HasContactInformation.java new file mode 100644 index 0000000000..9128df5fb0 --- /dev/null +++ b/lombok-intro/src/main/java/com/baeldung/lombok/intro/HasContactInformation.java @@ -0,0 +1,16 @@ +package com.baeldung.lombok.intro; + +public interface HasContactInformation { + + String getFirstName(); + void setFirstName(String firstName); + + String getFullName(); + + String getLastName(); + void setLastName(String lastName); + + String getPhoneNr(); + void setPhoneNr(String phoneNr); + +} diff --git a/lombok-intro/src/main/java/com/baeldung/lombok/intro/LoginResult.java b/lombok-intro/src/main/java/com/baeldung/lombok/intro/LoginResult.java new file mode 100644 index 0000000000..6e75696612 --- /dev/null +++ b/lombok-intro/src/main/java/com/baeldung/lombok/intro/LoginResult.java @@ -0,0 +1,25 @@ +package com.baeldung.lombok.intro; + +import java.net.URL; +import java.time.Duration; +import java.time.Instant; + +import lombok.EqualsAndHashCode; +import lombok.Getter; +import lombok.NonNull; +import lombok.RequiredArgsConstructor; +import lombok.experimental.Accessors; + +@RequiredArgsConstructor +@Accessors(fluent = true) @Getter +@EqualsAndHashCode(of = {"authToken"}) +public class LoginResult { + + private final @NonNull Instant loginTs; + + private final @NonNull String authToken; + private final @NonNull Duration tokenValidity; + + private final @NonNull URL tokenRefreshUrl; + +} diff --git a/lombok-intro/src/main/java/com/baeldung/lombok/intro/User.java b/lombok-intro/src/main/java/com/baeldung/lombok/intro/User.java new file mode 100644 index 0000000000..d032d1f9e7 --- /dev/null +++ b/lombok-intro/src/main/java/com/baeldung/lombok/intro/User.java @@ -0,0 +1,43 @@ +package com.baeldung.lombok.intro; + +import java.io.Serializable; +import java.util.List; + +import javax.persistence.Entity; +import javax.persistence.Id; +import javax.persistence.OneToMany; + +import lombok.AccessLevel; +import lombok.Getter; +import lombok.NoArgsConstructor; +import lombok.Setter; +import lombok.ToString; +import lombok.experimental.Delegate; + +@Entity +@Getter @Setter @NoArgsConstructor // <--- THIS is it +@ToString(exclude = {"events"}) +public class User implements Serializable, HasContactInformation { + + private @Id @Setter(AccessLevel.PROTECTED) Long id; // will be set when persisting + + private String nickname; + + // Whichever other User-specific attributes + + @Delegate(types = {HasContactInformation.class}) + private final ContactInformationSupport contactInformation = new ContactInformationSupport(); + + // User itelf will implement all contact information by delegation + + @OneToMany(mappedBy = "user") + private List events; + + public User(String nickname, String firstName, String lastName, String phoneNr) { + this.nickname = nickname; + contactInformation.setFirstName(firstName); + contactInformation.setLastName(lastName); + contactInformation.setPhoneNr(phoneNr); + } + +} diff --git a/lombok-intro/src/main/java/com/baeldung/lombok/intro/UserEvent.java b/lombok-intro/src/main/java/com/baeldung/lombok/intro/UserEvent.java new file mode 100644 index 0000000000..6a13608664 --- /dev/null +++ b/lombok-intro/src/main/java/com/baeldung/lombok/intro/UserEvent.java @@ -0,0 +1,29 @@ +package com.baeldung.lombok.intro; + +import java.io.Serializable; + +import javax.persistence.Entity; +import javax.persistence.Id; +import javax.persistence.ManyToOne; + +import lombok.AccessLevel; +import lombok.Getter; +import lombok.NoArgsConstructor; +import lombok.Setter; + +@Entity +@NoArgsConstructor @Getter @Setter +public class UserEvent implements Serializable { + + // This class is just for sample purposes. + + private @Id @Setter(AccessLevel.PROTECTED) Long id; + + @ManyToOne + private User user; + + public UserEvent(User user) { + this.user = user; + } + +} diff --git a/lombok-intro/src/test/java/com/baeldung/lombok/intro/ApiClientConfigurationTest.java b/lombok-intro/src/test/java/com/baeldung/lombok/intro/ApiClientConfigurationTest.java new file mode 100644 index 0000000000..8283fc655e --- /dev/null +++ b/lombok-intro/src/test/java/com/baeldung/lombok/intro/ApiClientConfigurationTest.java @@ -0,0 +1,43 @@ +package com.baeldung.lombok.intro; + +import java.lang.reflect.Field; +import java.lang.reflect.Modifier; + +import com.baeldung.lombok.intro.ApiClientConfiguration.ApiClientConfigurationBuilder; +import org.junit.Assert; +import org.junit.Test; + +public class ApiClientConfigurationTest { + + @Test + public void givenAnnotatedConfiguration_thenCanBeBuiltViaBuilder() { + ApiClientConfiguration config = + new ApiClientConfigurationBuilder() + .host("api.server.com") + .port(443) + .useHttps(true) + .connectTimeout(15_000L) + .readTimeout(5_000L) + .username("myusername") + .password("secret") + .build(); + + Assert.assertEquals(config.getHost(), "api.server.com"); + Assert.assertEquals(config.getPort(), 443); + Assert.assertEquals(config.isUseHttps(), true); + Assert.assertEquals(config.getConnectTimeout(), 15_000L); + Assert.assertEquals(config.getReadTimeout(), 5_000L); + Assert.assertEquals(config.getUsername(), "myusername"); + Assert.assertEquals(config.getPassword(), "secret"); + } + + @Test + public void givenAnnotatedConfiguration_thenHasLoggerInstance() throws NoSuchFieldException { + Field loggerInstance = ApiClientConfiguration.class.getDeclaredField("log"); + int modifiers = loggerInstance.getModifiers(); + Assert.assertTrue(Modifier.isPrivate(modifiers)); + Assert.assertTrue(Modifier.isStatic(modifiers)); + Assert.assertTrue(Modifier.isFinal(modifiers)); + } + +} diff --git a/lombok-intro/src/test/java/com/baeldung/lombok/intro/LoginResultTest.java b/lombok-intro/src/test/java/com/baeldung/lombok/intro/LoginResultTest.java new file mode 100644 index 0000000000..56878e4a03 --- /dev/null +++ b/lombok-intro/src/test/java/com/baeldung/lombok/intro/LoginResultTest.java @@ -0,0 +1,59 @@ +package com.baeldung.lombok.intro; + +import java.net.MalformedURLException; +import java.net.URL; +import java.time.Duration; +import java.time.Instant; + +import org.junit.Assert; +import org.junit.Test; + +public class LoginResultTest { + + @Test + public void givenAnnotatedLoginResult_thenHasConstructorForAllFinalFields() + throws MalformedURLException { + /* LoginResult loginResult = */ new LoginResult( + Instant.now(), + "apitoken", + Duration.ofHours(1), + new URL("https://api.product.com/token-refresh")); + } + + @Test + public void givenAnnotatedLoginResult_thenHasFluentGetters() + throws MalformedURLException { + Instant loginTs = Instant.now(); + LoginResult loginResult = new LoginResult( + loginTs, + "apitoken", + Duration.ofHours(1), + new URL("https://api.product.com/token-refresh")); + + Assert.assertEquals(loginResult.loginTs(), loginTs); + Assert.assertEquals(loginResult.authToken(), "apitoken"); + Assert.assertEquals(loginResult.tokenValidity(), Duration.ofHours(1)); + Assert.assertEquals(loginResult.tokenRefreshUrl(), new URL("https://api.product.com/token-refresh")); + } + + @Test + public void givenAnnotatedLoginResult_whenSameApiToken_thenEqualInstances() + throws MalformedURLException { + String theSameApiToken = "testapitoken"; + + LoginResult loginResult1 = new LoginResult( + Instant.now(), + theSameApiToken, + Duration.ofHours(1), + new URL("https://api.product.com/token-refresh")); + + LoginResult loginResult2 = new LoginResult( + Instant.now(), + theSameApiToken, + Duration.ofHours(2), + new URL("https://api.product.com/token-refresh-alt")); + + Assert.assertEquals(loginResult1, loginResult2); + } + +} diff --git a/lombok-intro/src/test/java/com/baeldung/lombok/intro/UserTest.java b/lombok-intro/src/test/java/com/baeldung/lombok/intro/UserTest.java new file mode 100644 index 0000000000..b3bf21478f --- /dev/null +++ b/lombok-intro/src/test/java/com/baeldung/lombok/intro/UserTest.java @@ -0,0 +1,73 @@ +package com.baeldung.lombok.intro; + +import java.lang.reflect.Method; +import java.lang.reflect.Modifier; +import java.util.Arrays; +import java.util.List; + +import org.junit.Assert; +import org.junit.Test; + +public class UserTest { + + @Test + public void givenAnnotatedUser_thenHasEmptyConstructor() { + /* User user = */ new User(); + } + + @Test + public void givenAnnotatedUser_thenHasGettersAndSetters() { + User user = new User("testnickname", "Test", "JUnit", "123456"); + + Assert.assertEquals("testnickname", user.getNickname()); + Assert.assertEquals("Test", user.getFirstName()); + Assert.assertEquals("JUnit", user.getLastName()); + Assert.assertEquals("123456", user.getPhoneNr()); + + user.setNickname("testnickname2"); + user.setFirstName("Test2"); + user.setLastName("JUnit2"); + user.setPhoneNr("654321"); + + Assert.assertEquals("testnickname2", user.getNickname()); + Assert.assertEquals("Test2", user.getFirstName()); + Assert.assertEquals("JUnit2", user.getLastName()); + Assert.assertEquals("654321", user.getPhoneNr()); + } + + @Test + public void givenAnnotatedUser_thenHasProtectedSetId() throws NoSuchMethodException { + Method setIdMethod = User.class.getDeclaredMethod("setId", Long.class); + int modifiers = setIdMethod.getModifiers(); + Assert.assertTrue(Modifier.isProtected(modifiers)); + } + + @Test + public void givenAnnotatedUser_thenImplementsHasContactInformation() { + User user = new User("testnickname3", "Test3", "JUnit3", "987654"); + Assert.assertTrue(user instanceof HasContactInformation); + + Assert.assertEquals("Test3", user.getFirstName()); + Assert.assertEquals("JUnit3", user.getLastName()); + Assert.assertEquals("987654", user.getPhoneNr()); + Assert.assertEquals("Test3 JUnit3", user.getFullName()); + + user.setFirstName("Test4"); + user.setLastName("JUnit4"); + user.setPhoneNr("456789"); + + Assert.assertEquals("Test4", user.getFirstName()); + Assert.assertEquals("JUnit4", user.getLastName()); + Assert.assertEquals("456789", user.getPhoneNr()); + Assert.assertEquals("Test4 JUnit4", user.getFullName()); + } + + @Test + public void givenAnnotatedUser_whenHasEvents_thenToStringDumpsNoEvents() { + User user = new User("testnickname", "Test", "JUnit", "123456"); + List events = Arrays.asList(new UserEvent(user), new UserEvent(user)); + user.setEvents(events); + Assert.assertFalse(user.toString().contains("events")); + } + +} diff --git a/pom.xml b/pom.xml index ce7dfca62f..9abd2d9376 100644 --- a/pom.xml +++ b/pom.xml @@ -67,6 +67,8 @@ spring-zuul jsf xml + + lombok-intro From 3c0a53ea044d0341342c177cdd011640b8666e89 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miguel=20Garci=CC=81a=20Lpez?= Date: Sun, 12 Jun 2016 22:33:45 +0200 Subject: [PATCH 23/26] Rename lombok-intro to just lombok. --- {lombok-intro => lombok}/pom.xml | 6 +++--- .../com/baeldung/lombok/intro/ApiClientConfiguration.java | 0 .../baeldung/lombok/intro/ContactInformationSupport.java | 0 .../com/baeldung/lombok/intro/HasContactInformation.java | 0 .../main/java/com/baeldung/lombok/intro/LoginResult.java | 0 .../src/main/java/com/baeldung/lombok/intro/User.java | 0 .../src/main/java/com/baeldung/lombok/intro/UserEvent.java | 0 .../baeldung/lombok/intro/ApiClientConfigurationTest.java | 0 .../java/com/baeldung/lombok/intro/LoginResultTest.java | 0 .../src/test/java/com/baeldung/lombok/intro/UserTest.java | 0 pom.xml | 2 +- 11 files changed, 4 insertions(+), 4 deletions(-) rename {lombok-intro => lombok}/pom.xml (97%) rename {lombok-intro => lombok}/src/main/java/com/baeldung/lombok/intro/ApiClientConfiguration.java (100%) rename {lombok-intro => lombok}/src/main/java/com/baeldung/lombok/intro/ContactInformationSupport.java (100%) rename {lombok-intro => lombok}/src/main/java/com/baeldung/lombok/intro/HasContactInformation.java (100%) rename {lombok-intro => lombok}/src/main/java/com/baeldung/lombok/intro/LoginResult.java (100%) rename {lombok-intro => lombok}/src/main/java/com/baeldung/lombok/intro/User.java (100%) rename {lombok-intro => lombok}/src/main/java/com/baeldung/lombok/intro/UserEvent.java (100%) rename {lombok-intro => lombok}/src/test/java/com/baeldung/lombok/intro/ApiClientConfigurationTest.java (100%) rename {lombok-intro => lombok}/src/test/java/com/baeldung/lombok/intro/LoginResultTest.java (100%) rename {lombok-intro => lombok}/src/test/java/com/baeldung/lombok/intro/UserTest.java (100%) diff --git a/lombok-intro/pom.xml b/lombok/pom.xml similarity index 97% rename from lombok-intro/pom.xml rename to lombok/pom.xml index 8204a0ee70..b816642165 100644 --- a/lombok-intro/pom.xml +++ b/lombok/pom.xml @@ -6,10 +6,10 @@ 4.0.0 - lombok-intro + lombok com.baeldung - lombok-intro + lombok 0.1-SNAPSHOT @@ -56,7 +56,7 @@ - lombok-intro + lombok src/main/resources diff --git a/lombok-intro/src/main/java/com/baeldung/lombok/intro/ApiClientConfiguration.java b/lombok/src/main/java/com/baeldung/lombok/intro/ApiClientConfiguration.java similarity index 100% rename from lombok-intro/src/main/java/com/baeldung/lombok/intro/ApiClientConfiguration.java rename to lombok/src/main/java/com/baeldung/lombok/intro/ApiClientConfiguration.java diff --git a/lombok-intro/src/main/java/com/baeldung/lombok/intro/ContactInformationSupport.java b/lombok/src/main/java/com/baeldung/lombok/intro/ContactInformationSupport.java similarity index 100% rename from lombok-intro/src/main/java/com/baeldung/lombok/intro/ContactInformationSupport.java rename to lombok/src/main/java/com/baeldung/lombok/intro/ContactInformationSupport.java diff --git a/lombok-intro/src/main/java/com/baeldung/lombok/intro/HasContactInformation.java b/lombok/src/main/java/com/baeldung/lombok/intro/HasContactInformation.java similarity index 100% rename from lombok-intro/src/main/java/com/baeldung/lombok/intro/HasContactInformation.java rename to lombok/src/main/java/com/baeldung/lombok/intro/HasContactInformation.java diff --git a/lombok-intro/src/main/java/com/baeldung/lombok/intro/LoginResult.java b/lombok/src/main/java/com/baeldung/lombok/intro/LoginResult.java similarity index 100% rename from lombok-intro/src/main/java/com/baeldung/lombok/intro/LoginResult.java rename to lombok/src/main/java/com/baeldung/lombok/intro/LoginResult.java diff --git a/lombok-intro/src/main/java/com/baeldung/lombok/intro/User.java b/lombok/src/main/java/com/baeldung/lombok/intro/User.java similarity index 100% rename from lombok-intro/src/main/java/com/baeldung/lombok/intro/User.java rename to lombok/src/main/java/com/baeldung/lombok/intro/User.java diff --git a/lombok-intro/src/main/java/com/baeldung/lombok/intro/UserEvent.java b/lombok/src/main/java/com/baeldung/lombok/intro/UserEvent.java similarity index 100% rename from lombok-intro/src/main/java/com/baeldung/lombok/intro/UserEvent.java rename to lombok/src/main/java/com/baeldung/lombok/intro/UserEvent.java diff --git a/lombok-intro/src/test/java/com/baeldung/lombok/intro/ApiClientConfigurationTest.java b/lombok/src/test/java/com/baeldung/lombok/intro/ApiClientConfigurationTest.java similarity index 100% rename from lombok-intro/src/test/java/com/baeldung/lombok/intro/ApiClientConfigurationTest.java rename to lombok/src/test/java/com/baeldung/lombok/intro/ApiClientConfigurationTest.java diff --git a/lombok-intro/src/test/java/com/baeldung/lombok/intro/LoginResultTest.java b/lombok/src/test/java/com/baeldung/lombok/intro/LoginResultTest.java similarity index 100% rename from lombok-intro/src/test/java/com/baeldung/lombok/intro/LoginResultTest.java rename to lombok/src/test/java/com/baeldung/lombok/intro/LoginResultTest.java diff --git a/lombok-intro/src/test/java/com/baeldung/lombok/intro/UserTest.java b/lombok/src/test/java/com/baeldung/lombok/intro/UserTest.java similarity index 100% rename from lombok-intro/src/test/java/com/baeldung/lombok/intro/UserTest.java rename to lombok/src/test/java/com/baeldung/lombok/intro/UserTest.java diff --git a/pom.xml b/pom.xml index 9abd2d9376..4116c0aca7 100644 --- a/pom.xml +++ b/pom.xml @@ -68,7 +68,7 @@ jsf xml - lombok-intro + lombok From 31eaa0e16d68e7ed24920b4c012a9e1e86256cc8 Mon Sep 17 00:00:00 2001 From: eugenp Date: Sun, 12 Jun 2016 23:45:42 +0300 Subject: [PATCH 24/26] interesting httpclient digest auth example --- httpclient/.settings/org.eclipse.jdt.ui.prefs | 55 ------------------- 1 file changed, 55 deletions(-) delete mode 100644 httpclient/.settings/org.eclipse.jdt.ui.prefs diff --git a/httpclient/.settings/org.eclipse.jdt.ui.prefs b/httpclient/.settings/org.eclipse.jdt.ui.prefs deleted file mode 100644 index 471e9b0d81..0000000000 --- a/httpclient/.settings/org.eclipse.jdt.ui.prefs +++ /dev/null @@ -1,55 +0,0 @@ -#Sat Jan 21 23:04:06 EET 2012 -eclipse.preferences.version=1 -editor_save_participant_org.eclipse.jdt.ui.postsavelistener.cleanup=true -sp_cleanup.add_default_serial_version_id=true -sp_cleanup.add_generated_serial_version_id=false -sp_cleanup.add_missing_annotations=true -sp_cleanup.add_missing_deprecated_annotations=true -sp_cleanup.add_missing_methods=false -sp_cleanup.add_missing_nls_tags=false -sp_cleanup.add_missing_override_annotations=true -sp_cleanup.add_missing_override_annotations_interface_methods=true -sp_cleanup.add_serial_version_id=false -sp_cleanup.always_use_blocks=true -sp_cleanup.always_use_parentheses_in_expressions=true -sp_cleanup.always_use_this_for_non_static_field_access=false -sp_cleanup.always_use_this_for_non_static_method_access=false -sp_cleanup.convert_to_enhanced_for_loop=true -sp_cleanup.correct_indentation=true -sp_cleanup.format_source_code=true -sp_cleanup.format_source_code_changes_only=true -sp_cleanup.make_local_variable_final=true -sp_cleanup.make_parameters_final=true -sp_cleanup.make_private_fields_final=false -sp_cleanup.make_type_abstract_if_missing_method=false -sp_cleanup.make_variable_declarations_final=true -sp_cleanup.never_use_blocks=false -sp_cleanup.never_use_parentheses_in_expressions=false -sp_cleanup.on_save_use_additional_actions=true -sp_cleanup.organize_imports=true -sp_cleanup.qualify_static_field_accesses_with_declaring_class=false -sp_cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true -sp_cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true -sp_cleanup.qualify_static_member_accesses_with_declaring_class=true -sp_cleanup.qualify_static_method_accesses_with_declaring_class=false -sp_cleanup.remove_private_constructors=true -sp_cleanup.remove_trailing_whitespaces=true -sp_cleanup.remove_trailing_whitespaces_all=true -sp_cleanup.remove_trailing_whitespaces_ignore_empty=false -sp_cleanup.remove_unnecessary_casts=true -sp_cleanup.remove_unnecessary_nls_tags=false -sp_cleanup.remove_unused_imports=true -sp_cleanup.remove_unused_local_variables=false -sp_cleanup.remove_unused_private_fields=true -sp_cleanup.remove_unused_private_members=false -sp_cleanup.remove_unused_private_methods=true -sp_cleanup.remove_unused_private_types=true -sp_cleanup.sort_members=false -sp_cleanup.sort_members_all=false -sp_cleanup.use_blocks=false -sp_cleanup.use_blocks_only_for_return_and_throw=false -sp_cleanup.use_parentheses_in_expressions=false -sp_cleanup.use_this_for_non_static_field_access=true -sp_cleanup.use_this_for_non_static_field_access_only_if_necessary=true -sp_cleanup.use_this_for_non_static_method_access=true -sp_cleanup.use_this_for_non_static_method_access_only_if_necessary=true From 14cd93227bf82bbc0b7402e3a48dd103b926dbc2 Mon Sep 17 00:00:00 2001 From: eugenp Date: Sun, 12 Jun 2016 23:45:58 +0300 Subject: [PATCH 25/26] interesting httpclient digest auth example --- .../org/baeldung/httpclient/SandboxTest.java | 86 +++++++++++++++++++ 1 file changed, 86 insertions(+) create mode 100644 httpclient/src/test/java/org/baeldung/httpclient/SandboxTest.java diff --git a/httpclient/src/test/java/org/baeldung/httpclient/SandboxTest.java b/httpclient/src/test/java/org/baeldung/httpclient/SandboxTest.java new file mode 100644 index 0000000000..23f3c6ac76 --- /dev/null +++ b/httpclient/src/test/java/org/baeldung/httpclient/SandboxTest.java @@ -0,0 +1,86 @@ +package org.baeldung.httpclient; + +import java.io.IOException; + +import org.apache.http.Header; +import org.apache.http.HttpHost; +import org.apache.http.HttpResponse; +import org.apache.http.auth.AuthScope; +import org.apache.http.auth.AuthenticationException; +import org.apache.http.auth.MalformedChallengeException; +import org.apache.http.auth.UsernamePasswordCredentials; +import org.apache.http.client.AuthCache; +import org.apache.http.client.ClientProtocolException; +import org.apache.http.client.CredentialsProvider; +import org.apache.http.client.methods.CloseableHttpResponse; +import org.apache.http.client.methods.HttpGet; +import org.apache.http.client.protocol.HttpClientContext; +import org.apache.http.impl.auth.DigestScheme; +import org.apache.http.impl.client.BasicAuthCache; +import org.apache.http.impl.client.BasicCredentialsProvider; +import org.apache.http.impl.client.CloseableHttpClient; +import org.apache.http.impl.client.HttpClients; +import org.apache.http.util.EntityUtils; +import org.junit.Test; + +public class SandboxTest { + + @Test + public final void whenInterestingDigestAuthScenario_then200OK() throws AuthenticationException, ClientProtocolException, IOException, MalformedChallengeException { + final HttpHost targetHost = new HttpHost("httpbin.org", 80, "http"); + + // set up the credentials to run agains the server + final CredentialsProvider credsProvider = new BasicCredentialsProvider(); + credsProvider.setCredentials(new AuthScope(targetHost.getHostName(), targetHost.getPort()), new UsernamePasswordCredentials("user", "passwd")); + + // We need a first run to get a 401 to seed the digest auth + + // Make a client using those creds + final CloseableHttpClient client = HttpClients.custom().setDefaultCredentialsProvider(credsProvider).build(); + + // And make a call to the URL we are after + final HttpGet httpget = new HttpGet("http://httpbin.org/digest-auth/auth/user/passwd"); + + // Create a context to use + final HttpClientContext context = HttpClientContext.create(); + + // Get a response from the sever (expect a 401!) + final HttpResponse authResponse = client.execute(targetHost, httpget, context); + + // Pull out the auth header that came back from the server + final Header challenge = authResponse.getHeaders("WWW-Authenticate")[0]; + + // Lets use a digest scheme to solve it + final DigestScheme digest = new DigestScheme(); + digest.processChallenge(challenge); + + // Make a header with the solution based upon user/password and what the digest got out of the initial 401 reponse + final Header solution = digest.authenticate(new UsernamePasswordCredentials("user", "passwd"), httpget, context); + + // Need an auth cache to use the new digest we made + final AuthCache authCache = new BasicAuthCache(); + authCache.put(targetHost, digest); + + // Add the authCache and thus solved digest to the context + context.setAuthCache(authCache); + + // Pimp up our http get with the solved header made by the digest + httpget.addHeader(solution); + + // use it! + System.out.println("Executing request " + httpget.getRequestLine() + " to target " + targetHost); + + for (int i = 0; i < 3; i++) { + final CloseableHttpResponse responseGood = client.execute(targetHost, httpget, context); + + try { + System.out.println("----------------------------------------"); + System.out.println(responseGood.getStatusLine()); + System.out.println(EntityUtils.toString(responseGood.getEntity())); + } finally { + responseGood.close(); + } + } + + } +} From 73471f6ec97c91e4d8f61e3853024c9395916345 Mon Sep 17 00:00:00 2001 From: Eugen Date: Mon, 13 Jun 2016 00:34:53 +0300 Subject: [PATCH 26/26] Update README.md --- spring-security-rest-full/README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/spring-security-rest-full/README.md b/spring-security-rest-full/README.md index f648c49244..72e8636df1 100644 --- a/spring-security-rest-full/README.md +++ b/spring-security-rest-full/README.md @@ -2,6 +2,8 @@ ## REST Example Project with Spring Security +### The Course + The "REST With Spring" Classes: http://bit.ly/restwithspring ### Relevant Articles: - [Spring Security Expressions - hasRole Example](http://www.baeldung.com/spring-security-expressions-basic)
Name :