From 3a6f1b18cf4043bd45ee53df9c730700c98f42ce Mon Sep 17 00:00:00 2001 From: hugod <hugo.derigny.etu@univ-lille.fr> Date: Sun, 8 Mar 2020 21:49:53 +0100 Subject: [PATCH] uh --- .idea/.gitignore | 2 + .idea/.name | 1 + .idea/artifacts/pizzaland_jdbi_war.xml | 14 ++ .../artifacts/pizzaland_jdbi_war_exploded.xml | 73 +++++++++ .idea/compiler.xml | 21 +++ .idea/encodings.xml | 7 + ...__ch_qos_logback_logback_classic_1_2_3.xml | 13 ++ ...ven__ch_qos_logback_logback_core_1_2_3.xml | 13 ++ ...thub_ben_manes_caffeine_caffeine_2_8_0.xml | 13 ++ ...un_activation_jakarta_activation_1_2_1.xml | 13 ++ ...__io_leangen_geantyref_geantyref_1_3_7.xml | 13 ++ ...ctivation_jakarta_activation_api_1_2_1.xml | 13 ++ ...nnotation_jakarta_annotation_api_1_3_5.xml | 13 ++ ..._json_bind_jakarta_json_bind_api_1_0_2.xml | 13 ++ ...n__jakarta_json_jakarta_json_api_1_1_5.xml | 13 ++ ...arta_servlet_jakarta_servlet_api_4_0_3.xml | 13 ++ ...alidation_jakarta_validation_api_2_0_2.xml | 13 ++ ..._jakarta_ws_rs_jakarta_ws_rs_api_2_1_6.xml | 13 ++ ...ta_xml_bind_jakarta_xml_bind_api_2_3_2.xml | 13 ++ ..._javax_servlet_javax_servlet_api_3_1_0.xml | 13 ++ .idea/libraries/Maven__junit_junit_4_12.xml | 13 ++ .../Maven__org_antlr_antlr4_runtime_4_7_2.xml | 13 ++ ...g_checkerframework_checker_qual_2_10_0.xml | 13 ++ ...ty_jetty_continuation_9_4_17_v20190418.xml | 13 ++ ...ipse_jetty_jetty_http_9_4_17_v20190418.xml | 13 ++ ...clipse_jetty_jetty_io_9_4_17_v20190418.xml | 13 ++ ...se_jetty_jetty_server_9_4_17_v20190418.xml | 13 ++ ...ipse_jetty_jetty_util_9_4_17_v20190418.xml | 13 ++ .../Maven__org_eclipse_yasson_1_0_3.xml | 13 ++ ..._external_aopalliance_repackaged_2_6_1.xml | 13 ++ ...fish_hk2_external_jakarta_inject_2_6_1.xml | 13 ++ ...Maven__org_glassfish_hk2_hk2_api_2_6_1.xml | 13 ++ ...n__org_glassfish_hk2_hk2_locator_2_6_1.xml | 13 ++ ...ven__org_glassfish_hk2_hk2_utils_2_6_1.xml | 13 ++ ...ssfish_hk2_osgi_resource_locator_1_0_3.xml | 13 ++ ...aven__org_glassfish_jakarta_json_1_1_5.xml | 13 ++ ...iners_jersey_container_jetty_http_2_30.xml | 13 ++ ...ntainers_jersey_container_servlet_2_30.xml | 13 ++ ...ers_jersey_container_servlet_core_2_30.xml | 13 ++ ...assfish_jersey_core_jersey_client_2_30.xml | 13 ++ ...assfish_jersey_core_jersey_common_2_30.xml | 13 ++ ...assfish_jersey_core_jersey_server_2_30.xml | 13 ++ ...lassfish_jersey_inject_jersey_hk2_2_30.xml | 13 ++ ...sh_jersey_media_jersey_media_jaxb_2_30.xml | 13 ++ ...y_media_jersey_media_json_binding_2_30.xml | 13 ++ ...mework_jersey_test_framework_core_2_30.xml | 13 ++ ...sey_test_framework_provider_jetty_2_30.xml | 13 ++ .../Maven__org_hamcrest_hamcrest_core_1_3.xml | 13 ++ ...ven__org_javassist_javassist_3_25_0_GA.xml | 13 ++ .../Maven__org_jdbi_jdbi3_core_3_12_0.xml | 13 ++ .../Maven__org_jdbi_jdbi3_sqlite_3_12_0.xml | 13 ++ ...Maven__org_jdbi_jdbi3_sqlobject_3_12_0.xml | 13 ++ .../Maven__org_jdbi_jdbi3_testing_3_12_0.xml | 13 ++ .../Maven__org_slf4j_slf4j_api_1_7_25.xml | 13 ++ .../Maven__org_xerial_sqlite_jdbc_3_30_1.xml | 13 ++ .idea/misc.xml | 14 ++ .idea/modules.xml | 8 + .idea/uiDesigner.xml | 124 +++++++++++++++ .idea/vcs.xml | 6 + pizzaland_jdbi.iml | 78 ++++++++++ .../java/fr/ulille/iut/pizzaland/ApiV1.java | 59 +++++++- .../iut/pizzaland/beans/Ingredient.java | 87 +++++++++++ .../fr/ulille/iut/pizzaland/beans/Pizza.java | 94 ++++++++++++ .../iut/pizzaland/dao/IngredientDao.java | 38 +++++ .../fr/ulille/iut/pizzaland/dao/PizzaDao.java | 60 ++++++++ .../pizzaland/dto/IngredientCreateDto.java | 15 ++ .../iut/pizzaland/dto/IngredientDto.java | 20 ++- .../iut/pizzaland/dto/PizzaCreateDto.java | 15 ++ .../fr/ulille/iut/pizzaland/dto/PizzaDto.java | 33 ++++ .../resources/IngredientResource.java | 102 ++++++++++++- .../pizzaland/resources/PizzaResource.java | 123 +++++++++++++++ .../ressources/UncaughtException.java | 22 +++ src/main/resources/ingredients.json | 50 ++++-- src/main/resources/log4j.properties | 8 + src/main/resources/log4j.xml | 18 +++ src/main/resources/pizzas.json | 22 +++ .../iut/pizzaland/IngredientResourceTest.java | 143 +++++++++++++++++- src/test/resources/log4j.properties | 8 + src/test/resources/log4j.xml | 18 +++ 79 files changed, 1893 insertions(+), 27 deletions(-) create mode 100644 .idea/.gitignore create mode 100644 .idea/.name create mode 100644 .idea/artifacts/pizzaland_jdbi_war.xml create mode 100644 .idea/artifacts/pizzaland_jdbi_war_exploded.xml create mode 100644 .idea/compiler.xml create mode 100644 .idea/encodings.xml create mode 100644 .idea/libraries/Maven__ch_qos_logback_logback_classic_1_2_3.xml create mode 100644 .idea/libraries/Maven__ch_qos_logback_logback_core_1_2_3.xml create mode 100644 .idea/libraries/Maven__com_github_ben_manes_caffeine_caffeine_2_8_0.xml create mode 100644 .idea/libraries/Maven__com_sun_activation_jakarta_activation_1_2_1.xml create mode 100644 .idea/libraries/Maven__io_leangen_geantyref_geantyref_1_3_7.xml create mode 100644 .idea/libraries/Maven__jakarta_activation_jakarta_activation_api_1_2_1.xml create mode 100644 .idea/libraries/Maven__jakarta_annotation_jakarta_annotation_api_1_3_5.xml create mode 100644 .idea/libraries/Maven__jakarta_json_bind_jakarta_json_bind_api_1_0_2.xml create mode 100644 .idea/libraries/Maven__jakarta_json_jakarta_json_api_1_1_5.xml create mode 100644 .idea/libraries/Maven__jakarta_servlet_jakarta_servlet_api_4_0_3.xml create mode 100644 .idea/libraries/Maven__jakarta_validation_jakarta_validation_api_2_0_2.xml create mode 100644 .idea/libraries/Maven__jakarta_ws_rs_jakarta_ws_rs_api_2_1_6.xml create mode 100644 .idea/libraries/Maven__jakarta_xml_bind_jakarta_xml_bind_api_2_3_2.xml create mode 100644 .idea/libraries/Maven__javax_servlet_javax_servlet_api_3_1_0.xml create mode 100644 .idea/libraries/Maven__junit_junit_4_12.xml create mode 100644 .idea/libraries/Maven__org_antlr_antlr4_runtime_4_7_2.xml create mode 100644 .idea/libraries/Maven__org_checkerframework_checker_qual_2_10_0.xml create mode 100644 .idea/libraries/Maven__org_eclipse_jetty_jetty_continuation_9_4_17_v20190418.xml create mode 100644 .idea/libraries/Maven__org_eclipse_jetty_jetty_http_9_4_17_v20190418.xml create mode 100644 .idea/libraries/Maven__org_eclipse_jetty_jetty_io_9_4_17_v20190418.xml create mode 100644 .idea/libraries/Maven__org_eclipse_jetty_jetty_server_9_4_17_v20190418.xml create mode 100644 .idea/libraries/Maven__org_eclipse_jetty_jetty_util_9_4_17_v20190418.xml create mode 100644 .idea/libraries/Maven__org_eclipse_yasson_1_0_3.xml create mode 100644 .idea/libraries/Maven__org_glassfish_hk2_external_aopalliance_repackaged_2_6_1.xml create mode 100644 .idea/libraries/Maven__org_glassfish_hk2_external_jakarta_inject_2_6_1.xml create mode 100644 .idea/libraries/Maven__org_glassfish_hk2_hk2_api_2_6_1.xml create mode 100644 .idea/libraries/Maven__org_glassfish_hk2_hk2_locator_2_6_1.xml create mode 100644 .idea/libraries/Maven__org_glassfish_hk2_hk2_utils_2_6_1.xml create mode 100644 .idea/libraries/Maven__org_glassfish_hk2_osgi_resource_locator_1_0_3.xml create mode 100644 .idea/libraries/Maven__org_glassfish_jakarta_json_1_1_5.xml create mode 100644 .idea/libraries/Maven__org_glassfish_jersey_containers_jersey_container_jetty_http_2_30.xml create mode 100644 .idea/libraries/Maven__org_glassfish_jersey_containers_jersey_container_servlet_2_30.xml create mode 100644 .idea/libraries/Maven__org_glassfish_jersey_containers_jersey_container_servlet_core_2_30.xml create mode 100644 .idea/libraries/Maven__org_glassfish_jersey_core_jersey_client_2_30.xml create mode 100644 .idea/libraries/Maven__org_glassfish_jersey_core_jersey_common_2_30.xml create mode 100644 .idea/libraries/Maven__org_glassfish_jersey_core_jersey_server_2_30.xml create mode 100644 .idea/libraries/Maven__org_glassfish_jersey_inject_jersey_hk2_2_30.xml create mode 100644 .idea/libraries/Maven__org_glassfish_jersey_media_jersey_media_jaxb_2_30.xml create mode 100644 .idea/libraries/Maven__org_glassfish_jersey_media_jersey_media_json_binding_2_30.xml create mode 100644 .idea/libraries/Maven__org_glassfish_jersey_test_framework_jersey_test_framework_core_2_30.xml create mode 100644 .idea/libraries/Maven__org_glassfish_jersey_test_framework_providers_jersey_test_framework_provider_jetty_2_30.xml create mode 100644 .idea/libraries/Maven__org_hamcrest_hamcrest_core_1_3.xml create mode 100644 .idea/libraries/Maven__org_javassist_javassist_3_25_0_GA.xml create mode 100644 .idea/libraries/Maven__org_jdbi_jdbi3_core_3_12_0.xml create mode 100644 .idea/libraries/Maven__org_jdbi_jdbi3_sqlite_3_12_0.xml create mode 100644 .idea/libraries/Maven__org_jdbi_jdbi3_sqlobject_3_12_0.xml create mode 100644 .idea/libraries/Maven__org_jdbi_jdbi3_testing_3_12_0.xml create mode 100644 .idea/libraries/Maven__org_slf4j_slf4j_api_1_7_25.xml create mode 100644 .idea/libraries/Maven__org_xerial_sqlite_jdbc_3_30_1.xml create mode 100644 .idea/misc.xml create mode 100644 .idea/modules.xml create mode 100644 .idea/uiDesigner.xml create mode 100644 .idea/vcs.xml create mode 100644 pizzaland_jdbi.iml create mode 100644 src/main/java/fr/ulille/iut/pizzaland/beans/Ingredient.java create mode 100644 src/main/java/fr/ulille/iut/pizzaland/beans/Pizza.java create mode 100644 src/main/java/fr/ulille/iut/pizzaland/dao/IngredientDao.java create mode 100644 src/main/java/fr/ulille/iut/pizzaland/dao/PizzaDao.java create mode 100644 src/main/java/fr/ulille/iut/pizzaland/dto/IngredientCreateDto.java create mode 100644 src/main/java/fr/ulille/iut/pizzaland/dto/PizzaCreateDto.java create mode 100644 src/main/java/fr/ulille/iut/pizzaland/dto/PizzaDto.java create mode 100644 src/main/java/fr/ulille/iut/pizzaland/resources/PizzaResource.java create mode 100644 src/main/java/fr/ulille/iut/pizzaland/ressources/UncaughtException.java create mode 100644 src/main/resources/log4j.properties create mode 100644 src/main/resources/log4j.xml create mode 100644 src/main/resources/pizzas.json create mode 100644 src/test/resources/log4j.properties create mode 100644 src/test/resources/log4j.xml diff --git a/.idea/.gitignore b/.idea/.gitignore new file mode 100644 index 0000000..5c98b42 --- /dev/null +++ b/.idea/.gitignore @@ -0,0 +1,2 @@ +# Default ignored files +/workspace.xml \ No newline at end of file diff --git a/.idea/.name b/.idea/.name new file mode 100644 index 0000000..7409a65 --- /dev/null +++ b/.idea/.name @@ -0,0 +1 @@ +pizzaland_jdbi \ No newline at end of file diff --git a/.idea/artifacts/pizzaland_jdbi_war.xml b/.idea/artifacts/pizzaland_jdbi_war.xml new file mode 100644 index 0000000..2e5cb50 --- /dev/null +++ b/.idea/artifacts/pizzaland_jdbi_war.xml @@ -0,0 +1,14 @@ +<component name="ArtifactManager"> + <artifact type="war" name="pizzaland_jdbi:war"> + <output-path>$PROJECT_DIR$/target</output-path> + <properties id="maven-jee-properties"> + <options> + <module>pizzaland_jdbi</module> + <packaging>war</packaging> + </options> + </properties> + <root id="archive" name="pizzaland.war"> + <element id="artifact" artifact-name="pizzaland_jdbi:war exploded" /> + </root> + </artifact> +</component> \ No newline at end of file diff --git a/.idea/artifacts/pizzaland_jdbi_war_exploded.xml b/.idea/artifacts/pizzaland_jdbi_war_exploded.xml new file mode 100644 index 0000000..13a6e3c --- /dev/null +++ b/.idea/artifacts/pizzaland_jdbi_war_exploded.xml @@ -0,0 +1,73 @@ +<component name="ArtifactManager"> + <artifact type="exploded-war" name="pizzaland_jdbi:war exploded"> + <output-path>$PROJECT_DIR$/target/pizzaland</output-path> + <properties id="maven-jee-properties"> + <options> + <exploded>true</exploded> + <module>pizzaland_jdbi</module> + <packaging>war</packaging> + </options> + </properties> + <root id="root"> + <element id="directory" name="WEB-INF"> + <element id="directory" name="classes"> + <element id="module-output" name="pizzaland_jdbi" /> + </element> + <element id="directory" name="lib"> + <element id="library" level="project" name="Maven: org.glassfish.jersey.containers:jersey-container-servlet:2.30" /> + <element id="library" level="project" name="Maven: org.glassfish.jersey.containers:jersey-container-servlet-core:2.30" /> + <element id="library" level="project" name="Maven: org.glassfish.hk2.external:jakarta.inject:2.6.1" /> + <element id="library" level="project" name="Maven: org.glassfish.jersey.core:jersey-common:2.30" /> + <element id="library" level="project" name="Maven: jakarta.annotation:jakarta.annotation-api:1.3.5" /> + <element id="library" level="project" name="Maven: org.glassfish.hk2:osgi-resource-locator:1.0.3" /> + <element id="library" level="project" name="Maven: com.sun.activation:jakarta.activation:1.2.1" /> + <element id="library" level="project" name="Maven: org.glassfish.jersey.core:jersey-server:2.30" /> + <element id="library" level="project" name="Maven: org.glassfish.jersey.core:jersey-client:2.30" /> + <element id="library" level="project" name="Maven: org.glassfish.jersey.media:jersey-media-jaxb:2.30" /> + <element id="library" level="project" name="Maven: jakarta.validation:jakarta.validation-api:2.0.2" /> + <element id="library" level="project" name="Maven: jakarta.xml.bind:jakarta.xml.bind-api:2.3.2" /> + <element id="library" level="project" name="Maven: jakarta.activation:jakarta.activation-api:1.2.1" /> + <element id="library" level="project" name="Maven: jakarta.ws.rs:jakarta.ws.rs-api:2.1.6" /> + <element id="library" level="project" name="Maven: org.glassfish.jersey.inject:jersey-hk2:2.30" /> + <element id="library" level="project" name="Maven: org.glassfish.hk2:hk2-locator:2.6.1" /> + <element id="library" level="project" name="Maven: org.glassfish.hk2.external:aopalliance-repackaged:2.6.1" /> + <element id="library" level="project" name="Maven: org.glassfish.hk2:hk2-api:2.6.1" /> + <element id="library" level="project" name="Maven: org.glassfish.hk2:hk2-utils:2.6.1" /> + <element id="library" level="project" name="Maven: org.javassist:javassist:3.25.0-GA" /> + <element id="library" level="project" name="Maven: org.glassfish.jersey.media:jersey-media-json-binding:2.30" /> + <element id="library" level="project" name="Maven: org.glassfish:jakarta.json:1.1.5" /> + <element id="library" level="project" name="Maven: org.eclipse:yasson:1.0.3" /> + <element id="library" level="project" name="Maven: jakarta.json.bind:jakarta.json.bind-api:1.0.2" /> + <element id="library" level="project" name="Maven: jakarta.json:jakarta.json-api:1.1.5" /> + <element id="library" level="project" name="Maven: org.glassfish.jersey.test-framework.providers:jersey-test-framework-provider-jetty:2.30" /> + <element id="library" level="project" name="Maven: org.glassfish.jersey.test-framework:jersey-test-framework-core:2.30" /> + <element id="library" level="project" name="Maven: jakarta.servlet:jakarta.servlet-api:4.0.3" /> + <element id="library" level="project" name="Maven: org.glassfish.jersey.containers:jersey-container-jetty-http:2.30" /> + <element id="library" level="project" name="Maven: org.eclipse.jetty:jetty-server:9.4.17.v20190418" /> + <element id="library" level="project" name="Maven: javax.servlet:javax.servlet-api:3.1.0" /> + <element id="library" level="project" name="Maven: org.eclipse.jetty:jetty-http:9.4.17.v20190418" /> + <element id="library" level="project" name="Maven: org.eclipse.jetty:jetty-io:9.4.17.v20190418" /> + <element id="library" level="project" name="Maven: org.eclipse.jetty:jetty-util:9.4.17.v20190418" /> + <element id="library" level="project" name="Maven: org.eclipse.jetty:jetty-continuation:9.4.17.v20190418" /> + <element id="library" level="project" name="Maven: junit:junit:4.12" /> + <element id="library" level="project" name="Maven: org.hamcrest:hamcrest-core:1.3" /> + <element id="library" level="project" name="Maven: org.xerial:sqlite-jdbc:3.30.1" /> + <element id="library" level="project" name="Maven: org.jdbi:jdbi3-core:3.12.0" /> + <element id="library" level="project" name="Maven: org.antlr:antlr4-runtime:4.7.2" /> + <element id="library" level="project" name="Maven: org.slf4j:slf4j-api:1.7.25" /> + <element id="library" level="project" name="Maven: io.leangen.geantyref:geantyref:1.3.7" /> + <element id="library" level="project" name="Maven: com.github.ben-manes.caffeine:caffeine:2.8.0" /> + <element id="library" level="project" name="Maven: org.checkerframework:checker-qual:2.10.0" /> + <element id="library" level="project" name="Maven: org.jdbi:jdbi3-sqlobject:3.12.0" /> + <element id="library" level="project" name="Maven: org.jdbi:jdbi3-sqlite:3.12.0" /> + <element id="library" level="project" name="Maven: ch.qos.logback:logback-classic:1.2.3" /> + <element id="library" level="project" name="Maven: ch.qos.logback:logback-core:1.2.3" /> + </element> + </element> + <element id="directory" name="META-INF"> + <element id="file-copy" path="$PROJECT_DIR$/target/pizzaland/META-INF/MANIFEST.MF" /> + </element> + <element id="javaee-facet-resources" facet="pizzaland_jdbi/web/Web" /> + </root> + </artifact> +</component> \ No newline at end of file diff --git a/.idea/compiler.xml b/.idea/compiler.xml new file mode 100644 index 0000000..177e39e --- /dev/null +++ b/.idea/compiler.xml @@ -0,0 +1,21 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project version="4"> + <component name="CompilerConfiguration"> + <annotationProcessing> + <profile name="Maven default annotation processors profile" enabled="true"> + <sourceOutputDir name="target/generated-sources/annotations" /> + <sourceTestOutputDir name="target/generated-test-sources/test-annotations" /> + <outputRelativeToContentRoot value="true" /> + <module name="pizzaland_jdbi" /> + </profile> + </annotationProcessing> + <bytecodeTargetLevel> + <module name="pizzaland_jdbi" target="1.8" /> + </bytecodeTargetLevel> + </component> + <component name="JavacSettings"> + <option name="ADDITIONAL_OPTIONS_OVERRIDE"> + <module name="pizzaland_jdbi" options="-parameters" /> + </option> + </component> +</project> \ No newline at end of file diff --git a/.idea/encodings.xml b/.idea/encodings.xml new file mode 100644 index 0000000..aa00ffa --- /dev/null +++ b/.idea/encodings.xml @@ -0,0 +1,7 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project version="4"> + <component name="Encoding"> + <file url="file://$PROJECT_DIR$/src/main/java" charset="UTF-8" /> + <file url="file://$PROJECT_DIR$/src/main/resources" charset="UTF-8" /> + </component> +</project> \ No newline at end of file diff --git a/.idea/libraries/Maven__ch_qos_logback_logback_classic_1_2_3.xml b/.idea/libraries/Maven__ch_qos_logback_logback_classic_1_2_3.xml new file mode 100644 index 0000000..6fec8f4 --- /dev/null +++ b/.idea/libraries/Maven__ch_qos_logback_logback_classic_1_2_3.xml @@ -0,0 +1,13 @@ +<component name="libraryTable"> + <library name="Maven: ch.qos.logback:logback-classic:1.2.3"> + <CLASSES> + <root url="jar://$MAVEN_REPOSITORY$/ch/qos/logback/logback-classic/1.2.3/logback-classic-1.2.3.jar!/" /> + </CLASSES> + <JAVADOC> + <root url="jar://$MAVEN_REPOSITORY$/ch/qos/logback/logback-classic/1.2.3/logback-classic-1.2.3-javadoc.jar!/" /> + </JAVADOC> + <SOURCES> + <root url="jar://$MAVEN_REPOSITORY$/ch/qos/logback/logback-classic/1.2.3/logback-classic-1.2.3-sources.jar!/" /> + </SOURCES> + </library> +</component> \ No newline at end of file diff --git a/.idea/libraries/Maven__ch_qos_logback_logback_core_1_2_3.xml b/.idea/libraries/Maven__ch_qos_logback_logback_core_1_2_3.xml new file mode 100644 index 0000000..9eb8596 --- /dev/null +++ b/.idea/libraries/Maven__ch_qos_logback_logback_core_1_2_3.xml @@ -0,0 +1,13 @@ +<component name="libraryTable"> + <library name="Maven: ch.qos.logback:logback-core:1.2.3"> + <CLASSES> + <root url="jar://$MAVEN_REPOSITORY$/ch/qos/logback/logback-core/1.2.3/logback-core-1.2.3.jar!/" /> + </CLASSES> + <JAVADOC> + <root url="jar://$MAVEN_REPOSITORY$/ch/qos/logback/logback-core/1.2.3/logback-core-1.2.3-javadoc.jar!/" /> + </JAVADOC> + <SOURCES> + <root url="jar://$MAVEN_REPOSITORY$/ch/qos/logback/logback-core/1.2.3/logback-core-1.2.3-sources.jar!/" /> + </SOURCES> + </library> +</component> \ No newline at end of file diff --git a/.idea/libraries/Maven__com_github_ben_manes_caffeine_caffeine_2_8_0.xml b/.idea/libraries/Maven__com_github_ben_manes_caffeine_caffeine_2_8_0.xml new file mode 100644 index 0000000..8f636b5 --- /dev/null +++ b/.idea/libraries/Maven__com_github_ben_manes_caffeine_caffeine_2_8_0.xml @@ -0,0 +1,13 @@ +<component name="libraryTable"> + <library name="Maven: com.github.ben-manes.caffeine:caffeine:2.8.0"> + <CLASSES> + <root url="jar://$MAVEN_REPOSITORY$/com/github/ben-manes/caffeine/caffeine/2.8.0/caffeine-2.8.0.jar!/" /> + </CLASSES> + <JAVADOC> + <root url="jar://$MAVEN_REPOSITORY$/com/github/ben-manes/caffeine/caffeine/2.8.0/caffeine-2.8.0-javadoc.jar!/" /> + </JAVADOC> + <SOURCES> + <root url="jar://$MAVEN_REPOSITORY$/com/github/ben-manes/caffeine/caffeine/2.8.0/caffeine-2.8.0-sources.jar!/" /> + </SOURCES> + </library> +</component> \ No newline at end of file diff --git a/.idea/libraries/Maven__com_sun_activation_jakarta_activation_1_2_1.xml b/.idea/libraries/Maven__com_sun_activation_jakarta_activation_1_2_1.xml new file mode 100644 index 0000000..dd97b21 --- /dev/null +++ b/.idea/libraries/Maven__com_sun_activation_jakarta_activation_1_2_1.xml @@ -0,0 +1,13 @@ +<component name="libraryTable"> + <library name="Maven: com.sun.activation:jakarta.activation:1.2.1"> + <CLASSES> + <root url="jar://$MAVEN_REPOSITORY$/com/sun/activation/jakarta.activation/1.2.1/jakarta.activation-1.2.1.jar!/" /> + </CLASSES> + <JAVADOC> + <root url="jar://$MAVEN_REPOSITORY$/com/sun/activation/jakarta.activation/1.2.1/jakarta.activation-1.2.1-javadoc.jar!/" /> + </JAVADOC> + <SOURCES> + <root url="jar://$MAVEN_REPOSITORY$/com/sun/activation/jakarta.activation/1.2.1/jakarta.activation-1.2.1-sources.jar!/" /> + </SOURCES> + </library> +</component> \ No newline at end of file diff --git a/.idea/libraries/Maven__io_leangen_geantyref_geantyref_1_3_7.xml b/.idea/libraries/Maven__io_leangen_geantyref_geantyref_1_3_7.xml new file mode 100644 index 0000000..4e4c2ae --- /dev/null +++ b/.idea/libraries/Maven__io_leangen_geantyref_geantyref_1_3_7.xml @@ -0,0 +1,13 @@ +<component name="libraryTable"> + <library name="Maven: io.leangen.geantyref:geantyref:1.3.7"> + <CLASSES> + <root url="jar://$MAVEN_REPOSITORY$/io/leangen/geantyref/geantyref/1.3.7/geantyref-1.3.7.jar!/" /> + </CLASSES> + <JAVADOC> + <root url="jar://$MAVEN_REPOSITORY$/io/leangen/geantyref/geantyref/1.3.7/geantyref-1.3.7-javadoc.jar!/" /> + </JAVADOC> + <SOURCES> + <root url="jar://$MAVEN_REPOSITORY$/io/leangen/geantyref/geantyref/1.3.7/geantyref-1.3.7-sources.jar!/" /> + </SOURCES> + </library> +</component> \ No newline at end of file diff --git a/.idea/libraries/Maven__jakarta_activation_jakarta_activation_api_1_2_1.xml b/.idea/libraries/Maven__jakarta_activation_jakarta_activation_api_1_2_1.xml new file mode 100644 index 0000000..a96bbdc --- /dev/null +++ b/.idea/libraries/Maven__jakarta_activation_jakarta_activation_api_1_2_1.xml @@ -0,0 +1,13 @@ +<component name="libraryTable"> + <library name="Maven: jakarta.activation:jakarta.activation-api:1.2.1"> + <CLASSES> + <root url="jar://$MAVEN_REPOSITORY$/jakarta/activation/jakarta.activation-api/1.2.1/jakarta.activation-api-1.2.1.jar!/" /> + </CLASSES> + <JAVADOC> + <root url="jar://$MAVEN_REPOSITORY$/jakarta/activation/jakarta.activation-api/1.2.1/jakarta.activation-api-1.2.1-javadoc.jar!/" /> + </JAVADOC> + <SOURCES> + <root url="jar://$MAVEN_REPOSITORY$/jakarta/activation/jakarta.activation-api/1.2.1/jakarta.activation-api-1.2.1-sources.jar!/" /> + </SOURCES> + </library> +</component> \ No newline at end of file diff --git a/.idea/libraries/Maven__jakarta_annotation_jakarta_annotation_api_1_3_5.xml b/.idea/libraries/Maven__jakarta_annotation_jakarta_annotation_api_1_3_5.xml new file mode 100644 index 0000000..cba9dd2 --- /dev/null +++ b/.idea/libraries/Maven__jakarta_annotation_jakarta_annotation_api_1_3_5.xml @@ -0,0 +1,13 @@ +<component name="libraryTable"> + <library name="Maven: jakarta.annotation:jakarta.annotation-api:1.3.5"> + <CLASSES> + <root url="jar://$MAVEN_REPOSITORY$/jakarta/annotation/jakarta.annotation-api/1.3.5/jakarta.annotation-api-1.3.5.jar!/" /> + </CLASSES> + <JAVADOC> + <root url="jar://$MAVEN_REPOSITORY$/jakarta/annotation/jakarta.annotation-api/1.3.5/jakarta.annotation-api-1.3.5-javadoc.jar!/" /> + </JAVADOC> + <SOURCES> + <root url="jar://$MAVEN_REPOSITORY$/jakarta/annotation/jakarta.annotation-api/1.3.5/jakarta.annotation-api-1.3.5-sources.jar!/" /> + </SOURCES> + </library> +</component> \ No newline at end of file diff --git a/.idea/libraries/Maven__jakarta_json_bind_jakarta_json_bind_api_1_0_2.xml b/.idea/libraries/Maven__jakarta_json_bind_jakarta_json_bind_api_1_0_2.xml new file mode 100644 index 0000000..ce5bb38 --- /dev/null +++ b/.idea/libraries/Maven__jakarta_json_bind_jakarta_json_bind_api_1_0_2.xml @@ -0,0 +1,13 @@ +<component name="libraryTable"> + <library name="Maven: jakarta.json.bind:jakarta.json.bind-api:1.0.2"> + <CLASSES> + <root url="jar://$MAVEN_REPOSITORY$/jakarta/json/bind/jakarta.json.bind-api/1.0.2/jakarta.json.bind-api-1.0.2.jar!/" /> + </CLASSES> + <JAVADOC> + <root url="jar://$MAVEN_REPOSITORY$/jakarta/json/bind/jakarta.json.bind-api/1.0.2/jakarta.json.bind-api-1.0.2-javadoc.jar!/" /> + </JAVADOC> + <SOURCES> + <root url="jar://$MAVEN_REPOSITORY$/jakarta/json/bind/jakarta.json.bind-api/1.0.2/jakarta.json.bind-api-1.0.2-sources.jar!/" /> + </SOURCES> + </library> +</component> \ No newline at end of file diff --git a/.idea/libraries/Maven__jakarta_json_jakarta_json_api_1_1_5.xml b/.idea/libraries/Maven__jakarta_json_jakarta_json_api_1_1_5.xml new file mode 100644 index 0000000..6203aab --- /dev/null +++ b/.idea/libraries/Maven__jakarta_json_jakarta_json_api_1_1_5.xml @@ -0,0 +1,13 @@ +<component name="libraryTable"> + <library name="Maven: jakarta.json:jakarta.json-api:1.1.5"> + <CLASSES> + <root url="jar://$MAVEN_REPOSITORY$/jakarta/json/jakarta.json-api/1.1.5/jakarta.json-api-1.1.5.jar!/" /> + </CLASSES> + <JAVADOC> + <root url="jar://$MAVEN_REPOSITORY$/jakarta/json/jakarta.json-api/1.1.5/jakarta.json-api-1.1.5-javadoc.jar!/" /> + </JAVADOC> + <SOURCES> + <root url="jar://$MAVEN_REPOSITORY$/jakarta/json/jakarta.json-api/1.1.5/jakarta.json-api-1.1.5-sources.jar!/" /> + </SOURCES> + </library> +</component> \ No newline at end of file diff --git a/.idea/libraries/Maven__jakarta_servlet_jakarta_servlet_api_4_0_3.xml b/.idea/libraries/Maven__jakarta_servlet_jakarta_servlet_api_4_0_3.xml new file mode 100644 index 0000000..5343c74 --- /dev/null +++ b/.idea/libraries/Maven__jakarta_servlet_jakarta_servlet_api_4_0_3.xml @@ -0,0 +1,13 @@ +<component name="libraryTable"> + <library name="Maven: jakarta.servlet:jakarta.servlet-api:4.0.3"> + <CLASSES> + <root url="jar://$MAVEN_REPOSITORY$/jakarta/servlet/jakarta.servlet-api/4.0.3/jakarta.servlet-api-4.0.3.jar!/" /> + </CLASSES> + <JAVADOC> + <root url="jar://$MAVEN_REPOSITORY$/jakarta/servlet/jakarta.servlet-api/4.0.3/jakarta.servlet-api-4.0.3-javadoc.jar!/" /> + </JAVADOC> + <SOURCES> + <root url="jar://$MAVEN_REPOSITORY$/jakarta/servlet/jakarta.servlet-api/4.0.3/jakarta.servlet-api-4.0.3-sources.jar!/" /> + </SOURCES> + </library> +</component> \ No newline at end of file diff --git a/.idea/libraries/Maven__jakarta_validation_jakarta_validation_api_2_0_2.xml b/.idea/libraries/Maven__jakarta_validation_jakarta_validation_api_2_0_2.xml new file mode 100644 index 0000000..e66afb9 --- /dev/null +++ b/.idea/libraries/Maven__jakarta_validation_jakarta_validation_api_2_0_2.xml @@ -0,0 +1,13 @@ +<component name="libraryTable"> + <library name="Maven: jakarta.validation:jakarta.validation-api:2.0.2"> + <CLASSES> + <root url="jar://$MAVEN_REPOSITORY$/jakarta/validation/jakarta.validation-api/2.0.2/jakarta.validation-api-2.0.2.jar!/" /> + </CLASSES> + <JAVADOC> + <root url="jar://$MAVEN_REPOSITORY$/jakarta/validation/jakarta.validation-api/2.0.2/jakarta.validation-api-2.0.2-javadoc.jar!/" /> + </JAVADOC> + <SOURCES> + <root url="jar://$MAVEN_REPOSITORY$/jakarta/validation/jakarta.validation-api/2.0.2/jakarta.validation-api-2.0.2-sources.jar!/" /> + </SOURCES> + </library> +</component> \ No newline at end of file diff --git a/.idea/libraries/Maven__jakarta_ws_rs_jakarta_ws_rs_api_2_1_6.xml b/.idea/libraries/Maven__jakarta_ws_rs_jakarta_ws_rs_api_2_1_6.xml new file mode 100644 index 0000000..fb37acc --- /dev/null +++ b/.idea/libraries/Maven__jakarta_ws_rs_jakarta_ws_rs_api_2_1_6.xml @@ -0,0 +1,13 @@ +<component name="libraryTable"> + <library name="Maven: jakarta.ws.rs:jakarta.ws.rs-api:2.1.6"> + <CLASSES> + <root url="jar://$MAVEN_REPOSITORY$/jakarta/ws/rs/jakarta.ws.rs-api/2.1.6/jakarta.ws.rs-api-2.1.6.jar!/" /> + </CLASSES> + <JAVADOC> + <root url="jar://$MAVEN_REPOSITORY$/jakarta/ws/rs/jakarta.ws.rs-api/2.1.6/jakarta.ws.rs-api-2.1.6-javadoc.jar!/" /> + </JAVADOC> + <SOURCES> + <root url="jar://$MAVEN_REPOSITORY$/jakarta/ws/rs/jakarta.ws.rs-api/2.1.6/jakarta.ws.rs-api-2.1.6-sources.jar!/" /> + </SOURCES> + </library> +</component> \ No newline at end of file diff --git a/.idea/libraries/Maven__jakarta_xml_bind_jakarta_xml_bind_api_2_3_2.xml b/.idea/libraries/Maven__jakarta_xml_bind_jakarta_xml_bind_api_2_3_2.xml new file mode 100644 index 0000000..bdf217a --- /dev/null +++ b/.idea/libraries/Maven__jakarta_xml_bind_jakarta_xml_bind_api_2_3_2.xml @@ -0,0 +1,13 @@ +<component name="libraryTable"> + <library name="Maven: jakarta.xml.bind:jakarta.xml.bind-api:2.3.2"> + <CLASSES> + <root url="jar://$MAVEN_REPOSITORY$/jakarta/xml/bind/jakarta.xml.bind-api/2.3.2/jakarta.xml.bind-api-2.3.2.jar!/" /> + </CLASSES> + <JAVADOC> + <root url="jar://$MAVEN_REPOSITORY$/jakarta/xml/bind/jakarta.xml.bind-api/2.3.2/jakarta.xml.bind-api-2.3.2-javadoc.jar!/" /> + </JAVADOC> + <SOURCES> + <root url="jar://$MAVEN_REPOSITORY$/jakarta/xml/bind/jakarta.xml.bind-api/2.3.2/jakarta.xml.bind-api-2.3.2-sources.jar!/" /> + </SOURCES> + </library> +</component> \ No newline at end of file diff --git a/.idea/libraries/Maven__javax_servlet_javax_servlet_api_3_1_0.xml b/.idea/libraries/Maven__javax_servlet_javax_servlet_api_3_1_0.xml new file mode 100644 index 0000000..c24f7e3 --- /dev/null +++ b/.idea/libraries/Maven__javax_servlet_javax_servlet_api_3_1_0.xml @@ -0,0 +1,13 @@ +<component name="libraryTable"> + <library name="Maven: javax.servlet:javax.servlet-api:3.1.0"> + <CLASSES> + <root url="jar://$MAVEN_REPOSITORY$/javax/servlet/javax.servlet-api/3.1.0/javax.servlet-api-3.1.0.jar!/" /> + </CLASSES> + <JAVADOC> + <root url="jar://$MAVEN_REPOSITORY$/javax/servlet/javax.servlet-api/3.1.0/javax.servlet-api-3.1.0-javadoc.jar!/" /> + </JAVADOC> + <SOURCES> + <root url="jar://$MAVEN_REPOSITORY$/javax/servlet/javax.servlet-api/3.1.0/javax.servlet-api-3.1.0-sources.jar!/" /> + </SOURCES> + </library> +</component> \ No newline at end of file diff --git a/.idea/libraries/Maven__junit_junit_4_12.xml b/.idea/libraries/Maven__junit_junit_4_12.xml new file mode 100644 index 0000000..d411041 --- /dev/null +++ b/.idea/libraries/Maven__junit_junit_4_12.xml @@ -0,0 +1,13 @@ +<component name="libraryTable"> + <library name="Maven: junit:junit:4.12"> + <CLASSES> + <root url="jar://$MAVEN_REPOSITORY$/junit/junit/4.12/junit-4.12.jar!/" /> + </CLASSES> + <JAVADOC> + <root url="jar://$MAVEN_REPOSITORY$/junit/junit/4.12/junit-4.12-javadoc.jar!/" /> + </JAVADOC> + <SOURCES> + <root url="jar://$MAVEN_REPOSITORY$/junit/junit/4.12/junit-4.12-sources.jar!/" /> + </SOURCES> + </library> +</component> \ No newline at end of file diff --git a/.idea/libraries/Maven__org_antlr_antlr4_runtime_4_7_2.xml b/.idea/libraries/Maven__org_antlr_antlr4_runtime_4_7_2.xml new file mode 100644 index 0000000..d0c6a38 --- /dev/null +++ b/.idea/libraries/Maven__org_antlr_antlr4_runtime_4_7_2.xml @@ -0,0 +1,13 @@ +<component name="libraryTable"> + <library name="Maven: org.antlr:antlr4-runtime:4.7.2"> + <CLASSES> + <root url="jar://$MAVEN_REPOSITORY$/org/antlr/antlr4-runtime/4.7.2/antlr4-runtime-4.7.2.jar!/" /> + </CLASSES> + <JAVADOC> + <root url="jar://$MAVEN_REPOSITORY$/org/antlr/antlr4-runtime/4.7.2/antlr4-runtime-4.7.2-javadoc.jar!/" /> + </JAVADOC> + <SOURCES> + <root url="jar://$MAVEN_REPOSITORY$/org/antlr/antlr4-runtime/4.7.2/antlr4-runtime-4.7.2-sources.jar!/" /> + </SOURCES> + </library> +</component> \ No newline at end of file diff --git a/.idea/libraries/Maven__org_checkerframework_checker_qual_2_10_0.xml b/.idea/libraries/Maven__org_checkerframework_checker_qual_2_10_0.xml new file mode 100644 index 0000000..2301054 --- /dev/null +++ b/.idea/libraries/Maven__org_checkerframework_checker_qual_2_10_0.xml @@ -0,0 +1,13 @@ +<component name="libraryTable"> + <library name="Maven: org.checkerframework:checker-qual:2.10.0"> + <CLASSES> + <root url="jar://$MAVEN_REPOSITORY$/org/checkerframework/checker-qual/2.10.0/checker-qual-2.10.0.jar!/" /> + </CLASSES> + <JAVADOC> + <root url="jar://$MAVEN_REPOSITORY$/org/checkerframework/checker-qual/2.10.0/checker-qual-2.10.0-javadoc.jar!/" /> + </JAVADOC> + <SOURCES> + <root url="jar://$MAVEN_REPOSITORY$/org/checkerframework/checker-qual/2.10.0/checker-qual-2.10.0-sources.jar!/" /> + </SOURCES> + </library> +</component> \ No newline at end of file diff --git a/.idea/libraries/Maven__org_eclipse_jetty_jetty_continuation_9_4_17_v20190418.xml b/.idea/libraries/Maven__org_eclipse_jetty_jetty_continuation_9_4_17_v20190418.xml new file mode 100644 index 0000000..a595715 --- /dev/null +++ b/.idea/libraries/Maven__org_eclipse_jetty_jetty_continuation_9_4_17_v20190418.xml @@ -0,0 +1,13 @@ +<component name="libraryTable"> + <library name="Maven: org.eclipse.jetty:jetty-continuation:9.4.17.v20190418"> + <CLASSES> + <root url="jar://$MAVEN_REPOSITORY$/org/eclipse/jetty/jetty-continuation/9.4.17.v20190418/jetty-continuation-9.4.17.v20190418.jar!/" /> + </CLASSES> + <JAVADOC> + <root url="jar://$MAVEN_REPOSITORY$/org/eclipse/jetty/jetty-continuation/9.4.17.v20190418/jetty-continuation-9.4.17.v20190418-javadoc.jar!/" /> + </JAVADOC> + <SOURCES> + <root url="jar://$MAVEN_REPOSITORY$/org/eclipse/jetty/jetty-continuation/9.4.17.v20190418/jetty-continuation-9.4.17.v20190418-sources.jar!/" /> + </SOURCES> + </library> +</component> \ No newline at end of file diff --git a/.idea/libraries/Maven__org_eclipse_jetty_jetty_http_9_4_17_v20190418.xml b/.idea/libraries/Maven__org_eclipse_jetty_jetty_http_9_4_17_v20190418.xml new file mode 100644 index 0000000..3a5fa91 --- /dev/null +++ b/.idea/libraries/Maven__org_eclipse_jetty_jetty_http_9_4_17_v20190418.xml @@ -0,0 +1,13 @@ +<component name="libraryTable"> + <library name="Maven: org.eclipse.jetty:jetty-http:9.4.17.v20190418"> + <CLASSES> + <root url="jar://$MAVEN_REPOSITORY$/org/eclipse/jetty/jetty-http/9.4.17.v20190418/jetty-http-9.4.17.v20190418.jar!/" /> + </CLASSES> + <JAVADOC> + <root url="jar://$MAVEN_REPOSITORY$/org/eclipse/jetty/jetty-http/9.4.17.v20190418/jetty-http-9.4.17.v20190418-javadoc.jar!/" /> + </JAVADOC> + <SOURCES> + <root url="jar://$MAVEN_REPOSITORY$/org/eclipse/jetty/jetty-http/9.4.17.v20190418/jetty-http-9.4.17.v20190418-sources.jar!/" /> + </SOURCES> + </library> +</component> \ No newline at end of file diff --git a/.idea/libraries/Maven__org_eclipse_jetty_jetty_io_9_4_17_v20190418.xml b/.idea/libraries/Maven__org_eclipse_jetty_jetty_io_9_4_17_v20190418.xml new file mode 100644 index 0000000..f14494d --- /dev/null +++ b/.idea/libraries/Maven__org_eclipse_jetty_jetty_io_9_4_17_v20190418.xml @@ -0,0 +1,13 @@ +<component name="libraryTable"> + <library name="Maven: org.eclipse.jetty:jetty-io:9.4.17.v20190418"> + <CLASSES> + <root url="jar://$MAVEN_REPOSITORY$/org/eclipse/jetty/jetty-io/9.4.17.v20190418/jetty-io-9.4.17.v20190418.jar!/" /> + </CLASSES> + <JAVADOC> + <root url="jar://$MAVEN_REPOSITORY$/org/eclipse/jetty/jetty-io/9.4.17.v20190418/jetty-io-9.4.17.v20190418-javadoc.jar!/" /> + </JAVADOC> + <SOURCES> + <root url="jar://$MAVEN_REPOSITORY$/org/eclipse/jetty/jetty-io/9.4.17.v20190418/jetty-io-9.4.17.v20190418-sources.jar!/" /> + </SOURCES> + </library> +</component> \ No newline at end of file diff --git a/.idea/libraries/Maven__org_eclipse_jetty_jetty_server_9_4_17_v20190418.xml b/.idea/libraries/Maven__org_eclipse_jetty_jetty_server_9_4_17_v20190418.xml new file mode 100644 index 0000000..3cc09b3 --- /dev/null +++ b/.idea/libraries/Maven__org_eclipse_jetty_jetty_server_9_4_17_v20190418.xml @@ -0,0 +1,13 @@ +<component name="libraryTable"> + <library name="Maven: org.eclipse.jetty:jetty-server:9.4.17.v20190418"> + <CLASSES> + <root url="jar://$MAVEN_REPOSITORY$/org/eclipse/jetty/jetty-server/9.4.17.v20190418/jetty-server-9.4.17.v20190418.jar!/" /> + </CLASSES> + <JAVADOC> + <root url="jar://$MAVEN_REPOSITORY$/org/eclipse/jetty/jetty-server/9.4.17.v20190418/jetty-server-9.4.17.v20190418-javadoc.jar!/" /> + </JAVADOC> + <SOURCES> + <root url="jar://$MAVEN_REPOSITORY$/org/eclipse/jetty/jetty-server/9.4.17.v20190418/jetty-server-9.4.17.v20190418-sources.jar!/" /> + </SOURCES> + </library> +</component> \ No newline at end of file diff --git a/.idea/libraries/Maven__org_eclipse_jetty_jetty_util_9_4_17_v20190418.xml b/.idea/libraries/Maven__org_eclipse_jetty_jetty_util_9_4_17_v20190418.xml new file mode 100644 index 0000000..c9e8270 --- /dev/null +++ b/.idea/libraries/Maven__org_eclipse_jetty_jetty_util_9_4_17_v20190418.xml @@ -0,0 +1,13 @@ +<component name="libraryTable"> + <library name="Maven: org.eclipse.jetty:jetty-util:9.4.17.v20190418"> + <CLASSES> + <root url="jar://$MAVEN_REPOSITORY$/org/eclipse/jetty/jetty-util/9.4.17.v20190418/jetty-util-9.4.17.v20190418.jar!/" /> + </CLASSES> + <JAVADOC> + <root url="jar://$MAVEN_REPOSITORY$/org/eclipse/jetty/jetty-util/9.4.17.v20190418/jetty-util-9.4.17.v20190418-javadoc.jar!/" /> + </JAVADOC> + <SOURCES> + <root url="jar://$MAVEN_REPOSITORY$/org/eclipse/jetty/jetty-util/9.4.17.v20190418/jetty-util-9.4.17.v20190418-sources.jar!/" /> + </SOURCES> + </library> +</component> \ No newline at end of file diff --git a/.idea/libraries/Maven__org_eclipse_yasson_1_0_3.xml b/.idea/libraries/Maven__org_eclipse_yasson_1_0_3.xml new file mode 100644 index 0000000..9e1e8db --- /dev/null +++ b/.idea/libraries/Maven__org_eclipse_yasson_1_0_3.xml @@ -0,0 +1,13 @@ +<component name="libraryTable"> + <library name="Maven: org.eclipse:yasson:1.0.3"> + <CLASSES> + <root url="jar://$MAVEN_REPOSITORY$/org/eclipse/yasson/1.0.3/yasson-1.0.3.jar!/" /> + </CLASSES> + <JAVADOC> + <root url="jar://$MAVEN_REPOSITORY$/org/eclipse/yasson/1.0.3/yasson-1.0.3-javadoc.jar!/" /> + </JAVADOC> + <SOURCES> + <root url="jar://$MAVEN_REPOSITORY$/org/eclipse/yasson/1.0.3/yasson-1.0.3-sources.jar!/" /> + </SOURCES> + </library> +</component> \ No newline at end of file diff --git a/.idea/libraries/Maven__org_glassfish_hk2_external_aopalliance_repackaged_2_6_1.xml b/.idea/libraries/Maven__org_glassfish_hk2_external_aopalliance_repackaged_2_6_1.xml new file mode 100644 index 0000000..aa22cc1 --- /dev/null +++ b/.idea/libraries/Maven__org_glassfish_hk2_external_aopalliance_repackaged_2_6_1.xml @@ -0,0 +1,13 @@ +<component name="libraryTable"> + <library name="Maven: org.glassfish.hk2.external:aopalliance-repackaged:2.6.1"> + <CLASSES> + <root url="jar://$MAVEN_REPOSITORY$/org/glassfish/hk2/external/aopalliance-repackaged/2.6.1/aopalliance-repackaged-2.6.1.jar!/" /> + </CLASSES> + <JAVADOC> + <root url="jar://$MAVEN_REPOSITORY$/org/glassfish/hk2/external/aopalliance-repackaged/2.6.1/aopalliance-repackaged-2.6.1-javadoc.jar!/" /> + </JAVADOC> + <SOURCES> + <root url="jar://$MAVEN_REPOSITORY$/org/glassfish/hk2/external/aopalliance-repackaged/2.6.1/aopalliance-repackaged-2.6.1-sources.jar!/" /> + </SOURCES> + </library> +</component> \ No newline at end of file diff --git a/.idea/libraries/Maven__org_glassfish_hk2_external_jakarta_inject_2_6_1.xml b/.idea/libraries/Maven__org_glassfish_hk2_external_jakarta_inject_2_6_1.xml new file mode 100644 index 0000000..98fbebf --- /dev/null +++ b/.idea/libraries/Maven__org_glassfish_hk2_external_jakarta_inject_2_6_1.xml @@ -0,0 +1,13 @@ +<component name="libraryTable"> + <library name="Maven: org.glassfish.hk2.external:jakarta.inject:2.6.1"> + <CLASSES> + <root url="jar://$MAVEN_REPOSITORY$/org/glassfish/hk2/external/jakarta.inject/2.6.1/jakarta.inject-2.6.1.jar!/" /> + </CLASSES> + <JAVADOC> + <root url="jar://$MAVEN_REPOSITORY$/org/glassfish/hk2/external/jakarta.inject/2.6.1/jakarta.inject-2.6.1-javadoc.jar!/" /> + </JAVADOC> + <SOURCES> + <root url="jar://$MAVEN_REPOSITORY$/org/glassfish/hk2/external/jakarta.inject/2.6.1/jakarta.inject-2.6.1-sources.jar!/" /> + </SOURCES> + </library> +</component> \ No newline at end of file diff --git a/.idea/libraries/Maven__org_glassfish_hk2_hk2_api_2_6_1.xml b/.idea/libraries/Maven__org_glassfish_hk2_hk2_api_2_6_1.xml new file mode 100644 index 0000000..963f506 --- /dev/null +++ b/.idea/libraries/Maven__org_glassfish_hk2_hk2_api_2_6_1.xml @@ -0,0 +1,13 @@ +<component name="libraryTable"> + <library name="Maven: org.glassfish.hk2:hk2-api:2.6.1"> + <CLASSES> + <root url="jar://$MAVEN_REPOSITORY$/org/glassfish/hk2/hk2-api/2.6.1/hk2-api-2.6.1.jar!/" /> + </CLASSES> + <JAVADOC> + <root url="jar://$MAVEN_REPOSITORY$/org/glassfish/hk2/hk2-api/2.6.1/hk2-api-2.6.1-javadoc.jar!/" /> + </JAVADOC> + <SOURCES> + <root url="jar://$MAVEN_REPOSITORY$/org/glassfish/hk2/hk2-api/2.6.1/hk2-api-2.6.1-sources.jar!/" /> + </SOURCES> + </library> +</component> \ No newline at end of file diff --git a/.idea/libraries/Maven__org_glassfish_hk2_hk2_locator_2_6_1.xml b/.idea/libraries/Maven__org_glassfish_hk2_hk2_locator_2_6_1.xml new file mode 100644 index 0000000..951e584 --- /dev/null +++ b/.idea/libraries/Maven__org_glassfish_hk2_hk2_locator_2_6_1.xml @@ -0,0 +1,13 @@ +<component name="libraryTable"> + <library name="Maven: org.glassfish.hk2:hk2-locator:2.6.1"> + <CLASSES> + <root url="jar://$MAVEN_REPOSITORY$/org/glassfish/hk2/hk2-locator/2.6.1/hk2-locator-2.6.1.jar!/" /> + </CLASSES> + <JAVADOC> + <root url="jar://$MAVEN_REPOSITORY$/org/glassfish/hk2/hk2-locator/2.6.1/hk2-locator-2.6.1-javadoc.jar!/" /> + </JAVADOC> + <SOURCES> + <root url="jar://$MAVEN_REPOSITORY$/org/glassfish/hk2/hk2-locator/2.6.1/hk2-locator-2.6.1-sources.jar!/" /> + </SOURCES> + </library> +</component> \ No newline at end of file diff --git a/.idea/libraries/Maven__org_glassfish_hk2_hk2_utils_2_6_1.xml b/.idea/libraries/Maven__org_glassfish_hk2_hk2_utils_2_6_1.xml new file mode 100644 index 0000000..57730c4 --- /dev/null +++ b/.idea/libraries/Maven__org_glassfish_hk2_hk2_utils_2_6_1.xml @@ -0,0 +1,13 @@ +<component name="libraryTable"> + <library name="Maven: org.glassfish.hk2:hk2-utils:2.6.1"> + <CLASSES> + <root url="jar://$MAVEN_REPOSITORY$/org/glassfish/hk2/hk2-utils/2.6.1/hk2-utils-2.6.1.jar!/" /> + </CLASSES> + <JAVADOC> + <root url="jar://$MAVEN_REPOSITORY$/org/glassfish/hk2/hk2-utils/2.6.1/hk2-utils-2.6.1-javadoc.jar!/" /> + </JAVADOC> + <SOURCES> + <root url="jar://$MAVEN_REPOSITORY$/org/glassfish/hk2/hk2-utils/2.6.1/hk2-utils-2.6.1-sources.jar!/" /> + </SOURCES> + </library> +</component> \ No newline at end of file diff --git a/.idea/libraries/Maven__org_glassfish_hk2_osgi_resource_locator_1_0_3.xml b/.idea/libraries/Maven__org_glassfish_hk2_osgi_resource_locator_1_0_3.xml new file mode 100644 index 0000000..18fdf9c --- /dev/null +++ b/.idea/libraries/Maven__org_glassfish_hk2_osgi_resource_locator_1_0_3.xml @@ -0,0 +1,13 @@ +<component name="libraryTable"> + <library name="Maven: org.glassfish.hk2:osgi-resource-locator:1.0.3"> + <CLASSES> + <root url="jar://$MAVEN_REPOSITORY$/org/glassfish/hk2/osgi-resource-locator/1.0.3/osgi-resource-locator-1.0.3.jar!/" /> + </CLASSES> + <JAVADOC> + <root url="jar://$MAVEN_REPOSITORY$/org/glassfish/hk2/osgi-resource-locator/1.0.3/osgi-resource-locator-1.0.3-javadoc.jar!/" /> + </JAVADOC> + <SOURCES> + <root url="jar://$MAVEN_REPOSITORY$/org/glassfish/hk2/osgi-resource-locator/1.0.3/osgi-resource-locator-1.0.3-sources.jar!/" /> + </SOURCES> + </library> +</component> \ No newline at end of file diff --git a/.idea/libraries/Maven__org_glassfish_jakarta_json_1_1_5.xml b/.idea/libraries/Maven__org_glassfish_jakarta_json_1_1_5.xml new file mode 100644 index 0000000..d4a2865 --- /dev/null +++ b/.idea/libraries/Maven__org_glassfish_jakarta_json_1_1_5.xml @@ -0,0 +1,13 @@ +<component name="libraryTable"> + <library name="Maven: org.glassfish:jakarta.json:1.1.5"> + <CLASSES> + <root url="jar://$MAVEN_REPOSITORY$/org/glassfish/jakarta.json/1.1.5/jakarta.json-1.1.5.jar!/" /> + </CLASSES> + <JAVADOC> + <root url="jar://$MAVEN_REPOSITORY$/org/glassfish/jakarta.json/1.1.5/jakarta.json-1.1.5-javadoc.jar!/" /> + </JAVADOC> + <SOURCES> + <root url="jar://$MAVEN_REPOSITORY$/org/glassfish/jakarta.json/1.1.5/jakarta.json-1.1.5-sources.jar!/" /> + </SOURCES> + </library> +</component> \ No newline at end of file diff --git a/.idea/libraries/Maven__org_glassfish_jersey_containers_jersey_container_jetty_http_2_30.xml b/.idea/libraries/Maven__org_glassfish_jersey_containers_jersey_container_jetty_http_2_30.xml new file mode 100644 index 0000000..e50e9fc --- /dev/null +++ b/.idea/libraries/Maven__org_glassfish_jersey_containers_jersey_container_jetty_http_2_30.xml @@ -0,0 +1,13 @@ +<component name="libraryTable"> + <library name="Maven: org.glassfish.jersey.containers:jersey-container-jetty-http:2.30"> + <CLASSES> + <root url="jar://$MAVEN_REPOSITORY$/org/glassfish/jersey/containers/jersey-container-jetty-http/2.30/jersey-container-jetty-http-2.30.jar!/" /> + </CLASSES> + <JAVADOC> + <root url="jar://$MAVEN_REPOSITORY$/org/glassfish/jersey/containers/jersey-container-jetty-http/2.30/jersey-container-jetty-http-2.30-javadoc.jar!/" /> + </JAVADOC> + <SOURCES> + <root url="jar://$MAVEN_REPOSITORY$/org/glassfish/jersey/containers/jersey-container-jetty-http/2.30/jersey-container-jetty-http-2.30-sources.jar!/" /> + </SOURCES> + </library> +</component> \ No newline at end of file diff --git a/.idea/libraries/Maven__org_glassfish_jersey_containers_jersey_container_servlet_2_30.xml b/.idea/libraries/Maven__org_glassfish_jersey_containers_jersey_container_servlet_2_30.xml new file mode 100644 index 0000000..e5cb821 --- /dev/null +++ b/.idea/libraries/Maven__org_glassfish_jersey_containers_jersey_container_servlet_2_30.xml @@ -0,0 +1,13 @@ +<component name="libraryTable"> + <library name="Maven: org.glassfish.jersey.containers:jersey-container-servlet:2.30"> + <CLASSES> + <root url="jar://$MAVEN_REPOSITORY$/org/glassfish/jersey/containers/jersey-container-servlet/2.30/jersey-container-servlet-2.30.jar!/" /> + </CLASSES> + <JAVADOC> + <root url="jar://$MAVEN_REPOSITORY$/org/glassfish/jersey/containers/jersey-container-servlet/2.30/jersey-container-servlet-2.30-javadoc.jar!/" /> + </JAVADOC> + <SOURCES> + <root url="jar://$MAVEN_REPOSITORY$/org/glassfish/jersey/containers/jersey-container-servlet/2.30/jersey-container-servlet-2.30-sources.jar!/" /> + </SOURCES> + </library> +</component> \ No newline at end of file diff --git a/.idea/libraries/Maven__org_glassfish_jersey_containers_jersey_container_servlet_core_2_30.xml b/.idea/libraries/Maven__org_glassfish_jersey_containers_jersey_container_servlet_core_2_30.xml new file mode 100644 index 0000000..ead34e6 --- /dev/null +++ b/.idea/libraries/Maven__org_glassfish_jersey_containers_jersey_container_servlet_core_2_30.xml @@ -0,0 +1,13 @@ +<component name="libraryTable"> + <library name="Maven: org.glassfish.jersey.containers:jersey-container-servlet-core:2.30"> + <CLASSES> + <root url="jar://$MAVEN_REPOSITORY$/org/glassfish/jersey/containers/jersey-container-servlet-core/2.30/jersey-container-servlet-core-2.30.jar!/" /> + </CLASSES> + <JAVADOC> + <root url="jar://$MAVEN_REPOSITORY$/org/glassfish/jersey/containers/jersey-container-servlet-core/2.30/jersey-container-servlet-core-2.30-javadoc.jar!/" /> + </JAVADOC> + <SOURCES> + <root url="jar://$MAVEN_REPOSITORY$/org/glassfish/jersey/containers/jersey-container-servlet-core/2.30/jersey-container-servlet-core-2.30-sources.jar!/" /> + </SOURCES> + </library> +</component> \ No newline at end of file diff --git a/.idea/libraries/Maven__org_glassfish_jersey_core_jersey_client_2_30.xml b/.idea/libraries/Maven__org_glassfish_jersey_core_jersey_client_2_30.xml new file mode 100644 index 0000000..c50b107 --- /dev/null +++ b/.idea/libraries/Maven__org_glassfish_jersey_core_jersey_client_2_30.xml @@ -0,0 +1,13 @@ +<component name="libraryTable"> + <library name="Maven: org.glassfish.jersey.core:jersey-client:2.30"> + <CLASSES> + <root url="jar://$MAVEN_REPOSITORY$/org/glassfish/jersey/core/jersey-client/2.30/jersey-client-2.30.jar!/" /> + </CLASSES> + <JAVADOC> + <root url="jar://$MAVEN_REPOSITORY$/org/glassfish/jersey/core/jersey-client/2.30/jersey-client-2.30-javadoc.jar!/" /> + </JAVADOC> + <SOURCES> + <root url="jar://$MAVEN_REPOSITORY$/org/glassfish/jersey/core/jersey-client/2.30/jersey-client-2.30-sources.jar!/" /> + </SOURCES> + </library> +</component> \ No newline at end of file diff --git a/.idea/libraries/Maven__org_glassfish_jersey_core_jersey_common_2_30.xml b/.idea/libraries/Maven__org_glassfish_jersey_core_jersey_common_2_30.xml new file mode 100644 index 0000000..7b1e272 --- /dev/null +++ b/.idea/libraries/Maven__org_glassfish_jersey_core_jersey_common_2_30.xml @@ -0,0 +1,13 @@ +<component name="libraryTable"> + <library name="Maven: org.glassfish.jersey.core:jersey-common:2.30"> + <CLASSES> + <root url="jar://$MAVEN_REPOSITORY$/org/glassfish/jersey/core/jersey-common/2.30/jersey-common-2.30.jar!/" /> + </CLASSES> + <JAVADOC> + <root url="jar://$MAVEN_REPOSITORY$/org/glassfish/jersey/core/jersey-common/2.30/jersey-common-2.30-javadoc.jar!/" /> + </JAVADOC> + <SOURCES> + <root url="jar://$MAVEN_REPOSITORY$/org/glassfish/jersey/core/jersey-common/2.30/jersey-common-2.30-sources.jar!/" /> + </SOURCES> + </library> +</component> \ No newline at end of file diff --git a/.idea/libraries/Maven__org_glassfish_jersey_core_jersey_server_2_30.xml b/.idea/libraries/Maven__org_glassfish_jersey_core_jersey_server_2_30.xml new file mode 100644 index 0000000..8a6297d --- /dev/null +++ b/.idea/libraries/Maven__org_glassfish_jersey_core_jersey_server_2_30.xml @@ -0,0 +1,13 @@ +<component name="libraryTable"> + <library name="Maven: org.glassfish.jersey.core:jersey-server:2.30"> + <CLASSES> + <root url="jar://$MAVEN_REPOSITORY$/org/glassfish/jersey/core/jersey-server/2.30/jersey-server-2.30.jar!/" /> + </CLASSES> + <JAVADOC> + <root url="jar://$MAVEN_REPOSITORY$/org/glassfish/jersey/core/jersey-server/2.30/jersey-server-2.30-javadoc.jar!/" /> + </JAVADOC> + <SOURCES> + <root url="jar://$MAVEN_REPOSITORY$/org/glassfish/jersey/core/jersey-server/2.30/jersey-server-2.30-sources.jar!/" /> + </SOURCES> + </library> +</component> \ No newline at end of file diff --git a/.idea/libraries/Maven__org_glassfish_jersey_inject_jersey_hk2_2_30.xml b/.idea/libraries/Maven__org_glassfish_jersey_inject_jersey_hk2_2_30.xml new file mode 100644 index 0000000..3ce9962 --- /dev/null +++ b/.idea/libraries/Maven__org_glassfish_jersey_inject_jersey_hk2_2_30.xml @@ -0,0 +1,13 @@ +<component name="libraryTable"> + <library name="Maven: org.glassfish.jersey.inject:jersey-hk2:2.30"> + <CLASSES> + <root url="jar://$MAVEN_REPOSITORY$/org/glassfish/jersey/inject/jersey-hk2/2.30/jersey-hk2-2.30.jar!/" /> + </CLASSES> + <JAVADOC> + <root url="jar://$MAVEN_REPOSITORY$/org/glassfish/jersey/inject/jersey-hk2/2.30/jersey-hk2-2.30-javadoc.jar!/" /> + </JAVADOC> + <SOURCES> + <root url="jar://$MAVEN_REPOSITORY$/org/glassfish/jersey/inject/jersey-hk2/2.30/jersey-hk2-2.30-sources.jar!/" /> + </SOURCES> + </library> +</component> \ No newline at end of file diff --git a/.idea/libraries/Maven__org_glassfish_jersey_media_jersey_media_jaxb_2_30.xml b/.idea/libraries/Maven__org_glassfish_jersey_media_jersey_media_jaxb_2_30.xml new file mode 100644 index 0000000..1818a71 --- /dev/null +++ b/.idea/libraries/Maven__org_glassfish_jersey_media_jersey_media_jaxb_2_30.xml @@ -0,0 +1,13 @@ +<component name="libraryTable"> + <library name="Maven: org.glassfish.jersey.media:jersey-media-jaxb:2.30"> + <CLASSES> + <root url="jar://$MAVEN_REPOSITORY$/org/glassfish/jersey/media/jersey-media-jaxb/2.30/jersey-media-jaxb-2.30.jar!/" /> + </CLASSES> + <JAVADOC> + <root url="jar://$MAVEN_REPOSITORY$/org/glassfish/jersey/media/jersey-media-jaxb/2.30/jersey-media-jaxb-2.30-javadoc.jar!/" /> + </JAVADOC> + <SOURCES> + <root url="jar://$MAVEN_REPOSITORY$/org/glassfish/jersey/media/jersey-media-jaxb/2.30/jersey-media-jaxb-2.30-sources.jar!/" /> + </SOURCES> + </library> +</component> \ No newline at end of file diff --git a/.idea/libraries/Maven__org_glassfish_jersey_media_jersey_media_json_binding_2_30.xml b/.idea/libraries/Maven__org_glassfish_jersey_media_jersey_media_json_binding_2_30.xml new file mode 100644 index 0000000..ec22085 --- /dev/null +++ b/.idea/libraries/Maven__org_glassfish_jersey_media_jersey_media_json_binding_2_30.xml @@ -0,0 +1,13 @@ +<component name="libraryTable"> + <library name="Maven: org.glassfish.jersey.media:jersey-media-json-binding:2.30"> + <CLASSES> + <root url="jar://$MAVEN_REPOSITORY$/org/glassfish/jersey/media/jersey-media-json-binding/2.30/jersey-media-json-binding-2.30.jar!/" /> + </CLASSES> + <JAVADOC> + <root url="jar://$MAVEN_REPOSITORY$/org/glassfish/jersey/media/jersey-media-json-binding/2.30/jersey-media-json-binding-2.30-javadoc.jar!/" /> + </JAVADOC> + <SOURCES> + <root url="jar://$MAVEN_REPOSITORY$/org/glassfish/jersey/media/jersey-media-json-binding/2.30/jersey-media-json-binding-2.30-sources.jar!/" /> + </SOURCES> + </library> +</component> \ No newline at end of file diff --git a/.idea/libraries/Maven__org_glassfish_jersey_test_framework_jersey_test_framework_core_2_30.xml b/.idea/libraries/Maven__org_glassfish_jersey_test_framework_jersey_test_framework_core_2_30.xml new file mode 100644 index 0000000..6814283 --- /dev/null +++ b/.idea/libraries/Maven__org_glassfish_jersey_test_framework_jersey_test_framework_core_2_30.xml @@ -0,0 +1,13 @@ +<component name="libraryTable"> + <library name="Maven: org.glassfish.jersey.test-framework:jersey-test-framework-core:2.30"> + <CLASSES> + <root url="jar://$MAVEN_REPOSITORY$/org/glassfish/jersey/test-framework/jersey-test-framework-core/2.30/jersey-test-framework-core-2.30.jar!/" /> + </CLASSES> + <JAVADOC> + <root url="jar://$MAVEN_REPOSITORY$/org/glassfish/jersey/test-framework/jersey-test-framework-core/2.30/jersey-test-framework-core-2.30-javadoc.jar!/" /> + </JAVADOC> + <SOURCES> + <root url="jar://$MAVEN_REPOSITORY$/org/glassfish/jersey/test-framework/jersey-test-framework-core/2.30/jersey-test-framework-core-2.30-sources.jar!/" /> + </SOURCES> + </library> +</component> \ No newline at end of file diff --git a/.idea/libraries/Maven__org_glassfish_jersey_test_framework_providers_jersey_test_framework_provider_jetty_2_30.xml b/.idea/libraries/Maven__org_glassfish_jersey_test_framework_providers_jersey_test_framework_provider_jetty_2_30.xml new file mode 100644 index 0000000..06252d9 --- /dev/null +++ b/.idea/libraries/Maven__org_glassfish_jersey_test_framework_providers_jersey_test_framework_provider_jetty_2_30.xml @@ -0,0 +1,13 @@ +<component name="libraryTable"> + <library name="Maven: org.glassfish.jersey.test-framework.providers:jersey-test-framework-provider-jetty:2.30"> + <CLASSES> + <root url="jar://$MAVEN_REPOSITORY$/org/glassfish/jersey/test-framework/providers/jersey-test-framework-provider-jetty/2.30/jersey-test-framework-provider-jetty-2.30.jar!/" /> + </CLASSES> + <JAVADOC> + <root url="jar://$MAVEN_REPOSITORY$/org/glassfish/jersey/test-framework/providers/jersey-test-framework-provider-jetty/2.30/jersey-test-framework-provider-jetty-2.30-javadoc.jar!/" /> + </JAVADOC> + <SOURCES> + <root url="jar://$MAVEN_REPOSITORY$/org/glassfish/jersey/test-framework/providers/jersey-test-framework-provider-jetty/2.30/jersey-test-framework-provider-jetty-2.30-sources.jar!/" /> + </SOURCES> + </library> +</component> \ No newline at end of file diff --git a/.idea/libraries/Maven__org_hamcrest_hamcrest_core_1_3.xml b/.idea/libraries/Maven__org_hamcrest_hamcrest_core_1_3.xml new file mode 100644 index 0000000..f58bbc1 --- /dev/null +++ b/.idea/libraries/Maven__org_hamcrest_hamcrest_core_1_3.xml @@ -0,0 +1,13 @@ +<component name="libraryTable"> + <library name="Maven: org.hamcrest:hamcrest-core:1.3"> + <CLASSES> + <root url="jar://$MAVEN_REPOSITORY$/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar!/" /> + </CLASSES> + <JAVADOC> + <root url="jar://$MAVEN_REPOSITORY$/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3-javadoc.jar!/" /> + </JAVADOC> + <SOURCES> + <root url="jar://$MAVEN_REPOSITORY$/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3-sources.jar!/" /> + </SOURCES> + </library> +</component> \ No newline at end of file diff --git a/.idea/libraries/Maven__org_javassist_javassist_3_25_0_GA.xml b/.idea/libraries/Maven__org_javassist_javassist_3_25_0_GA.xml new file mode 100644 index 0000000..a24c34c --- /dev/null +++ b/.idea/libraries/Maven__org_javassist_javassist_3_25_0_GA.xml @@ -0,0 +1,13 @@ +<component name="libraryTable"> + <library name="Maven: org.javassist:javassist:3.25.0-GA"> + <CLASSES> + <root url="jar://$MAVEN_REPOSITORY$/org/javassist/javassist/3.25.0-GA/javassist-3.25.0-GA.jar!/" /> + </CLASSES> + <JAVADOC> + <root url="jar://$MAVEN_REPOSITORY$/org/javassist/javassist/3.25.0-GA/javassist-3.25.0-GA-javadoc.jar!/" /> + </JAVADOC> + <SOURCES> + <root url="jar://$MAVEN_REPOSITORY$/org/javassist/javassist/3.25.0-GA/javassist-3.25.0-GA-sources.jar!/" /> + </SOURCES> + </library> +</component> \ No newline at end of file diff --git a/.idea/libraries/Maven__org_jdbi_jdbi3_core_3_12_0.xml b/.idea/libraries/Maven__org_jdbi_jdbi3_core_3_12_0.xml new file mode 100644 index 0000000..0650c0e --- /dev/null +++ b/.idea/libraries/Maven__org_jdbi_jdbi3_core_3_12_0.xml @@ -0,0 +1,13 @@ +<component name="libraryTable"> + <library name="Maven: org.jdbi:jdbi3-core:3.12.0"> + <CLASSES> + <root url="jar://$MAVEN_REPOSITORY$/org/jdbi/jdbi3-core/3.12.0/jdbi3-core-3.12.0.jar!/" /> + </CLASSES> + <JAVADOC> + <root url="jar://$MAVEN_REPOSITORY$/org/jdbi/jdbi3-core/3.12.0/jdbi3-core-3.12.0-javadoc.jar!/" /> + </JAVADOC> + <SOURCES> + <root url="jar://$MAVEN_REPOSITORY$/org/jdbi/jdbi3-core/3.12.0/jdbi3-core-3.12.0-sources.jar!/" /> + </SOURCES> + </library> +</component> \ No newline at end of file diff --git a/.idea/libraries/Maven__org_jdbi_jdbi3_sqlite_3_12_0.xml b/.idea/libraries/Maven__org_jdbi_jdbi3_sqlite_3_12_0.xml new file mode 100644 index 0000000..65494a8 --- /dev/null +++ b/.idea/libraries/Maven__org_jdbi_jdbi3_sqlite_3_12_0.xml @@ -0,0 +1,13 @@ +<component name="libraryTable"> + <library name="Maven: org.jdbi:jdbi3-sqlite:3.12.0"> + <CLASSES> + <root url="jar://$MAVEN_REPOSITORY$/org/jdbi/jdbi3-sqlite/3.12.0/jdbi3-sqlite-3.12.0.jar!/" /> + </CLASSES> + <JAVADOC> + <root url="jar://$MAVEN_REPOSITORY$/org/jdbi/jdbi3-sqlite/3.12.0/jdbi3-sqlite-3.12.0-javadoc.jar!/" /> + </JAVADOC> + <SOURCES> + <root url="jar://$MAVEN_REPOSITORY$/org/jdbi/jdbi3-sqlite/3.12.0/jdbi3-sqlite-3.12.0-sources.jar!/" /> + </SOURCES> + </library> +</component> \ No newline at end of file diff --git a/.idea/libraries/Maven__org_jdbi_jdbi3_sqlobject_3_12_0.xml b/.idea/libraries/Maven__org_jdbi_jdbi3_sqlobject_3_12_0.xml new file mode 100644 index 0000000..6616b9a --- /dev/null +++ b/.idea/libraries/Maven__org_jdbi_jdbi3_sqlobject_3_12_0.xml @@ -0,0 +1,13 @@ +<component name="libraryTable"> + <library name="Maven: org.jdbi:jdbi3-sqlobject:3.12.0"> + <CLASSES> + <root url="jar://$MAVEN_REPOSITORY$/org/jdbi/jdbi3-sqlobject/3.12.0/jdbi3-sqlobject-3.12.0.jar!/" /> + </CLASSES> + <JAVADOC> + <root url="jar://$MAVEN_REPOSITORY$/org/jdbi/jdbi3-sqlobject/3.12.0/jdbi3-sqlobject-3.12.0-javadoc.jar!/" /> + </JAVADOC> + <SOURCES> + <root url="jar://$MAVEN_REPOSITORY$/org/jdbi/jdbi3-sqlobject/3.12.0/jdbi3-sqlobject-3.12.0-sources.jar!/" /> + </SOURCES> + </library> +</component> \ No newline at end of file diff --git a/.idea/libraries/Maven__org_jdbi_jdbi3_testing_3_12_0.xml b/.idea/libraries/Maven__org_jdbi_jdbi3_testing_3_12_0.xml new file mode 100644 index 0000000..9dbeb62 --- /dev/null +++ b/.idea/libraries/Maven__org_jdbi_jdbi3_testing_3_12_0.xml @@ -0,0 +1,13 @@ +<component name="libraryTable"> + <library name="Maven: org.jdbi:jdbi3-testing:3.12.0"> + <CLASSES> + <root url="jar://$MAVEN_REPOSITORY$/org/jdbi/jdbi3-testing/3.12.0/jdbi3-testing-3.12.0.jar!/" /> + </CLASSES> + <JAVADOC> + <root url="jar://$MAVEN_REPOSITORY$/org/jdbi/jdbi3-testing/3.12.0/jdbi3-testing-3.12.0-javadoc.jar!/" /> + </JAVADOC> + <SOURCES> + <root url="jar://$MAVEN_REPOSITORY$/org/jdbi/jdbi3-testing/3.12.0/jdbi3-testing-3.12.0-sources.jar!/" /> + </SOURCES> + </library> +</component> \ No newline at end of file diff --git a/.idea/libraries/Maven__org_slf4j_slf4j_api_1_7_25.xml b/.idea/libraries/Maven__org_slf4j_slf4j_api_1_7_25.xml new file mode 100644 index 0000000..20e8163 --- /dev/null +++ b/.idea/libraries/Maven__org_slf4j_slf4j_api_1_7_25.xml @@ -0,0 +1,13 @@ +<component name="libraryTable"> + <library name="Maven: org.slf4j:slf4j-api:1.7.25"> + <CLASSES> + <root url="jar://$MAVEN_REPOSITORY$/org/slf4j/slf4j-api/1.7.25/slf4j-api-1.7.25.jar!/" /> + </CLASSES> + <JAVADOC> + <root url="jar://$MAVEN_REPOSITORY$/org/slf4j/slf4j-api/1.7.25/slf4j-api-1.7.25-javadoc.jar!/" /> + </JAVADOC> + <SOURCES> + <root url="jar://$MAVEN_REPOSITORY$/org/slf4j/slf4j-api/1.7.25/slf4j-api-1.7.25-sources.jar!/" /> + </SOURCES> + </library> +</component> \ No newline at end of file diff --git a/.idea/libraries/Maven__org_xerial_sqlite_jdbc_3_30_1.xml b/.idea/libraries/Maven__org_xerial_sqlite_jdbc_3_30_1.xml new file mode 100644 index 0000000..d358bf3 --- /dev/null +++ b/.idea/libraries/Maven__org_xerial_sqlite_jdbc_3_30_1.xml @@ -0,0 +1,13 @@ +<component name="libraryTable"> + <library name="Maven: org.xerial:sqlite-jdbc:3.30.1"> + <CLASSES> + <root url="jar://$MAVEN_REPOSITORY$/org/xerial/sqlite-jdbc/3.30.1/sqlite-jdbc-3.30.1.jar!/" /> + </CLASSES> + <JAVADOC> + <root url="jar://$MAVEN_REPOSITORY$/org/xerial/sqlite-jdbc/3.30.1/sqlite-jdbc-3.30.1-javadoc.jar!/" /> + </JAVADOC> + <SOURCES> + <root url="jar://$MAVEN_REPOSITORY$/org/xerial/sqlite-jdbc/3.30.1/sqlite-jdbc-3.30.1-sources.jar!/" /> + </SOURCES> + </library> +</component> \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml new file mode 100644 index 0000000..a9cccd5 --- /dev/null +++ b/.idea/misc.xml @@ -0,0 +1,14 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project version="4"> + <component name="FrameworkDetectionExcludesConfiguration"> + <file type="web" url="file://$PROJECT_DIR$" /> + </component> + <component name="MavenProjectsManager"> + <option name="originalFiles"> + <list> + <option value="$PROJECT_DIR$/pom.xml" /> + </list> + </option> + </component> + <component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" default="false" project-jdk-name="1.8" project-jdk-type="JavaSDK" /> +</project> \ No newline at end of file diff --git a/.idea/modules.xml b/.idea/modules.xml new file mode 100644 index 0000000..8d312cc --- /dev/null +++ b/.idea/modules.xml @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project version="4"> + <component name="ProjectModuleManager"> + <modules> + <module fileurl="file://$PROJECT_DIR$/pizzaland_jdbi.iml" filepath="$PROJECT_DIR$/pizzaland_jdbi.iml" /> + </modules> + </component> +</project> \ No newline at end of file diff --git a/.idea/uiDesigner.xml b/.idea/uiDesigner.xml new file mode 100644 index 0000000..e96534f --- /dev/null +++ b/.idea/uiDesigner.xml @@ -0,0 +1,124 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project version="4"> + <component name="Palette2"> + <group name="Swing"> + <item class="com.intellij.uiDesigner.HSpacer" tooltip-text="Horizontal Spacer" icon="/com/intellij/uiDesigner/icons/hspacer.png" removable="false" auto-create-binding="false" can-attach-label="false"> + <default-constraints vsize-policy="1" hsize-policy="6" anchor="0" fill="1" /> + </item> + <item class="com.intellij.uiDesigner.VSpacer" tooltip-text="Vertical Spacer" icon="/com/intellij/uiDesigner/icons/vspacer.png" removable="false" auto-create-binding="false" can-attach-label="false"> + <default-constraints vsize-policy="6" hsize-policy="1" anchor="0" fill="2" /> + </item> + <item class="javax.swing.JPanel" icon="/com/intellij/uiDesigner/icons/panel.png" removable="false" auto-create-binding="false" can-attach-label="false"> + <default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3" /> + </item> + <item class="javax.swing.JScrollPane" icon="/com/intellij/uiDesigner/icons/scrollPane.png" removable="false" auto-create-binding="false" can-attach-label="true"> + <default-constraints vsize-policy="7" hsize-policy="7" anchor="0" fill="3" /> + </item> + <item class="javax.swing.JButton" icon="/com/intellij/uiDesigner/icons/button.png" removable="false" auto-create-binding="true" can-attach-label="false"> + <default-constraints vsize-policy="0" hsize-policy="3" anchor="0" fill="1" /> + <initial-values> + <property name="text" value="Button" /> + </initial-values> + </item> + <item class="javax.swing.JRadioButton" icon="/com/intellij/uiDesigner/icons/radioButton.png" removable="false" auto-create-binding="true" can-attach-label="false"> + <default-constraints vsize-policy="0" hsize-policy="3" anchor="8" fill="0" /> + <initial-values> + <property name="text" value="RadioButton" /> + </initial-values> + </item> + <item class="javax.swing.JCheckBox" icon="/com/intellij/uiDesigner/icons/checkBox.png" removable="false" auto-create-binding="true" can-attach-label="false"> + <default-constraints vsize-policy="0" hsize-policy="3" anchor="8" fill="0" /> + <initial-values> + <property name="text" value="CheckBox" /> + </initial-values> + </item> + <item class="javax.swing.JLabel" icon="/com/intellij/uiDesigner/icons/label.png" removable="false" auto-create-binding="false" can-attach-label="false"> + <default-constraints vsize-policy="0" hsize-policy="0" anchor="8" fill="0" /> + <initial-values> + <property name="text" value="Label" /> + </initial-values> + </item> + <item class="javax.swing.JTextField" icon="/com/intellij/uiDesigner/icons/textField.png" removable="false" auto-create-binding="true" can-attach-label="true"> + <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1"> + <preferred-size width="150" height="-1" /> + </default-constraints> + </item> + <item class="javax.swing.JPasswordField" icon="/com/intellij/uiDesigner/icons/passwordField.png" removable="false" auto-create-binding="true" can-attach-label="true"> + <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1"> + <preferred-size width="150" height="-1" /> + </default-constraints> + </item> + <item class="javax.swing.JFormattedTextField" icon="/com/intellij/uiDesigner/icons/formattedTextField.png" removable="false" auto-create-binding="true" can-attach-label="true"> + <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1"> + <preferred-size width="150" height="-1" /> + </default-constraints> + </item> + <item class="javax.swing.JTextArea" icon="/com/intellij/uiDesigner/icons/textArea.png" removable="false" auto-create-binding="true" can-attach-label="true"> + <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3"> + <preferred-size width="150" height="50" /> + </default-constraints> + </item> + <item class="javax.swing.JTextPane" icon="/com/intellij/uiDesigner/icons/textPane.png" removable="false" auto-create-binding="true" can-attach-label="true"> + <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3"> + <preferred-size width="150" height="50" /> + </default-constraints> + </item> + <item class="javax.swing.JEditorPane" icon="/com/intellij/uiDesigner/icons/editorPane.png" removable="false" auto-create-binding="true" can-attach-label="true"> + <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3"> + <preferred-size width="150" height="50" /> + </default-constraints> + </item> + <item class="javax.swing.JComboBox" icon="/com/intellij/uiDesigner/icons/comboBox.png" removable="false" auto-create-binding="true" can-attach-label="true"> + <default-constraints vsize-policy="0" hsize-policy="2" anchor="8" fill="1" /> + </item> + <item class="javax.swing.JTable" icon="/com/intellij/uiDesigner/icons/table.png" removable="false" auto-create-binding="true" can-attach-label="false"> + <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3"> + <preferred-size width="150" height="50" /> + </default-constraints> + </item> + <item class="javax.swing.JList" icon="/com/intellij/uiDesigner/icons/list.png" removable="false" auto-create-binding="true" can-attach-label="false"> + <default-constraints vsize-policy="6" hsize-policy="2" anchor="0" fill="3"> + <preferred-size width="150" height="50" /> + </default-constraints> + </item> + <item class="javax.swing.JTree" icon="/com/intellij/uiDesigner/icons/tree.png" removable="false" auto-create-binding="true" can-attach-label="false"> + <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3"> + <preferred-size width="150" height="50" /> + </default-constraints> + </item> + <item class="javax.swing.JTabbedPane" icon="/com/intellij/uiDesigner/icons/tabbedPane.png" removable="false" auto-create-binding="true" can-attach-label="false"> + <default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3"> + <preferred-size width="200" height="200" /> + </default-constraints> + </item> + <item class="javax.swing.JSplitPane" icon="/com/intellij/uiDesigner/icons/splitPane.png" removable="false" auto-create-binding="false" can-attach-label="false"> + <default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3"> + <preferred-size width="200" height="200" /> + </default-constraints> + </item> + <item class="javax.swing.JSpinner" icon="/com/intellij/uiDesigner/icons/spinner.png" removable="false" auto-create-binding="true" can-attach-label="true"> + <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1" /> + </item> + <item class="javax.swing.JSlider" icon="/com/intellij/uiDesigner/icons/slider.png" removable="false" auto-create-binding="true" can-attach-label="false"> + <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1" /> + </item> + <item class="javax.swing.JSeparator" icon="/com/intellij/uiDesigner/icons/separator.png" removable="false" auto-create-binding="false" can-attach-label="false"> + <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3" /> + </item> + <item class="javax.swing.JProgressBar" icon="/com/intellij/uiDesigner/icons/progressbar.png" removable="false" auto-create-binding="true" can-attach-label="false"> + <default-constraints vsize-policy="0" hsize-policy="6" anchor="0" fill="1" /> + </item> + <item class="javax.swing.JToolBar" icon="/com/intellij/uiDesigner/icons/toolbar.png" removable="false" auto-create-binding="false" can-attach-label="false"> + <default-constraints vsize-policy="0" hsize-policy="6" anchor="0" fill="1"> + <preferred-size width="-1" height="20" /> + </default-constraints> + </item> + <item class="javax.swing.JToolBar$Separator" icon="/com/intellij/uiDesigner/icons/toolbarSeparator.png" removable="false" auto-create-binding="false" can-attach-label="false"> + <default-constraints vsize-policy="0" hsize-policy="0" anchor="0" fill="1" /> + </item> + <item class="javax.swing.JScrollBar" icon="/com/intellij/uiDesigner/icons/scrollbar.png" removable="false" auto-create-binding="true" can-attach-label="false"> + <default-constraints vsize-policy="6" hsize-policy="0" anchor="0" fill="2" /> + </item> + </group> + </component> +</project> \ No newline at end of file diff --git a/.idea/vcs.xml b/.idea/vcs.xml new file mode 100644 index 0000000..35eb1dd --- /dev/null +++ b/.idea/vcs.xml @@ -0,0 +1,6 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project version="4"> + <component name="VcsDirectoryMappings"> + <mapping directory="" vcs="Git" /> + </component> +</project> \ No newline at end of file diff --git a/pizzaland_jdbi.iml b/pizzaland_jdbi.iml new file mode 100644 index 0000000..bfc29f8 --- /dev/null +++ b/pizzaland_jdbi.iml @@ -0,0 +1,78 @@ +<?xml version="1.0" encoding="UTF-8"?> +<module org.jetbrains.idea.maven.project.MavenProjectsManager.isMavenModule="true" type="JAVA_MODULE" version="4"> + <component name="FacetManager"> + <facet type="web" name="Web"> + <configuration> + <webroots> + <root url="file://$MODULE_DIR$/src/main/webapp" relative="/" /> + </webroots> + <sourceRoots> + <root url="file://$MODULE_DIR$/src/main/java" /> + <root url="file://$MODULE_DIR$/src/main/resources" /> + </sourceRoots> + </configuration> + </facet> + </component> + <component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_8"> + <output url="file://$MODULE_DIR$/target/classes" /> + <output-test url="file://$MODULE_DIR$/target/test-classes" /> + <content url="file://$MODULE_DIR$"> + <sourceFolder url="file://$MODULE_DIR$/src/main/java" isTestSource="false" /> + <sourceFolder url="file://$MODULE_DIR$/src/main/resources" type="java-resource" /> + <sourceFolder url="file://$MODULE_DIR$/src/test/java" isTestSource="true" /> + <sourceFolder url="file://$MODULE_DIR$/src/test/resources" type="java-test-resource" /> + <excludeFolder url="file://$MODULE_DIR$/target" /> + </content> + <orderEntry type="inheritedJdk" /> + <orderEntry type="sourceFolder" forTests="false" /> + <orderEntry type="library" name="Maven: org.glassfish.jersey.containers:jersey-container-servlet:2.30" level="project" /> + <orderEntry type="library" name="Maven: org.glassfish.jersey.containers:jersey-container-servlet-core:2.30" level="project" /> + <orderEntry type="library" name="Maven: org.glassfish.hk2.external:jakarta.inject:2.6.1" level="project" /> + <orderEntry type="library" name="Maven: org.glassfish.jersey.core:jersey-common:2.30" level="project" /> + <orderEntry type="library" name="Maven: jakarta.annotation:jakarta.annotation-api:1.3.5" level="project" /> + <orderEntry type="library" name="Maven: org.glassfish.hk2:osgi-resource-locator:1.0.3" level="project" /> + <orderEntry type="library" name="Maven: com.sun.activation:jakarta.activation:1.2.1" level="project" /> + <orderEntry type="library" name="Maven: org.glassfish.jersey.core:jersey-server:2.30" level="project" /> + <orderEntry type="library" name="Maven: org.glassfish.jersey.core:jersey-client:2.30" level="project" /> + <orderEntry type="library" name="Maven: org.glassfish.jersey.media:jersey-media-jaxb:2.30" level="project" /> + <orderEntry type="library" name="Maven: jakarta.validation:jakarta.validation-api:2.0.2" level="project" /> + <orderEntry type="library" name="Maven: jakarta.xml.bind:jakarta.xml.bind-api:2.3.2" level="project" /> + <orderEntry type="library" name="Maven: jakarta.activation:jakarta.activation-api:1.2.1" level="project" /> + <orderEntry type="library" name="Maven: jakarta.ws.rs:jakarta.ws.rs-api:2.1.6" level="project" /> + <orderEntry type="library" name="Maven: org.glassfish.jersey.inject:jersey-hk2:2.30" level="project" /> + <orderEntry type="library" name="Maven: org.glassfish.hk2:hk2-locator:2.6.1" level="project" /> + <orderEntry type="library" name="Maven: org.glassfish.hk2.external:aopalliance-repackaged:2.6.1" level="project" /> + <orderEntry type="library" name="Maven: org.glassfish.hk2:hk2-api:2.6.1" level="project" /> + <orderEntry type="library" name="Maven: org.glassfish.hk2:hk2-utils:2.6.1" level="project" /> + <orderEntry type="library" name="Maven: org.javassist:javassist:3.25.0-GA" level="project" /> + <orderEntry type="library" name="Maven: org.glassfish.jersey.media:jersey-media-json-binding:2.30" level="project" /> + <orderEntry type="library" name="Maven: org.glassfish:jakarta.json:1.1.5" level="project" /> + <orderEntry type="library" name="Maven: org.eclipse:yasson:1.0.3" level="project" /> + <orderEntry type="library" name="Maven: jakarta.json.bind:jakarta.json.bind-api:1.0.2" level="project" /> + <orderEntry type="library" name="Maven: jakarta.json:jakarta.json-api:1.1.5" level="project" /> + <orderEntry type="library" name="Maven: org.glassfish.jersey.test-framework.providers:jersey-test-framework-provider-jetty:2.30" level="project" /> + <orderEntry type="library" name="Maven: org.glassfish.jersey.test-framework:jersey-test-framework-core:2.30" level="project" /> + <orderEntry type="library" name="Maven: jakarta.servlet:jakarta.servlet-api:4.0.3" level="project" /> + <orderEntry type="library" name="Maven: org.glassfish.jersey.containers:jersey-container-jetty-http:2.30" level="project" /> + <orderEntry type="library" name="Maven: org.eclipse.jetty:jetty-server:9.4.17.v20190418" level="project" /> + <orderEntry type="library" name="Maven: javax.servlet:javax.servlet-api:3.1.0" level="project" /> + <orderEntry type="library" name="Maven: org.eclipse.jetty:jetty-http:9.4.17.v20190418" level="project" /> + <orderEntry type="library" name="Maven: org.eclipse.jetty:jetty-io:9.4.17.v20190418" level="project" /> + <orderEntry type="library" name="Maven: org.eclipse.jetty:jetty-util:9.4.17.v20190418" level="project" /> + <orderEntry type="library" name="Maven: org.eclipse.jetty:jetty-continuation:9.4.17.v20190418" level="project" /> + <orderEntry type="library" name="Maven: junit:junit:4.12" level="project" /> + <orderEntry type="library" name="Maven: org.hamcrest:hamcrest-core:1.3" level="project" /> + <orderEntry type="library" name="Maven: org.xerial:sqlite-jdbc:3.30.1" level="project" /> + <orderEntry type="library" name="Maven: org.jdbi:jdbi3-core:3.12.0" level="project" /> + <orderEntry type="library" name="Maven: org.antlr:antlr4-runtime:4.7.2" level="project" /> + <orderEntry type="library" name="Maven: org.slf4j:slf4j-api:1.7.25" level="project" /> + <orderEntry type="library" name="Maven: io.leangen.geantyref:geantyref:1.3.7" level="project" /> + <orderEntry type="library" name="Maven: com.github.ben-manes.caffeine:caffeine:2.8.0" level="project" /> + <orderEntry type="library" name="Maven: org.checkerframework:checker-qual:2.10.0" level="project" /> + <orderEntry type="library" name="Maven: org.jdbi:jdbi3-sqlobject:3.12.0" level="project" /> + <orderEntry type="library" name="Maven: org.jdbi:jdbi3-sqlite:3.12.0" level="project" /> + <orderEntry type="library" scope="TEST" name="Maven: org.jdbi:jdbi3-testing:3.12.0" level="project" /> + <orderEntry type="library" name="Maven: ch.qos.logback:logback-classic:1.2.3" level="project" /> + <orderEntry type="library" name="Maven: ch.qos.logback:logback-core:1.2.3" level="project" /> + </component> +</module> \ No newline at end of file diff --git a/src/main/java/fr/ulille/iut/pizzaland/ApiV1.java b/src/main/java/fr/ulille/iut/pizzaland/ApiV1.java index b565c83..fb76fa2 100644 --- a/src/main/java/fr/ulille/iut/pizzaland/ApiV1.java +++ b/src/main/java/fr/ulille/iut/pizzaland/ApiV1.java @@ -1,16 +1,71 @@ package fr.ulille.iut.pizzaland; +import fr.ulille.iut.pizzaland.beans.Ingredient; +import fr.ulille.iut.pizzaland.beans.Pizza; +import fr.ulille.iut.pizzaland.dao.IngredientDao; +import fr.ulille.iut.pizzaland.dao.PizzaDao; import org.glassfish.jersey.server.ResourceConfig; +import java.io.FileReader; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; import java.util.logging.Logger; +import javax.json.bind.Jsonb; +import javax.json.bind.JsonbBuilder; import javax.ws.rs.ApplicationPath; @ApplicationPath("api/v1/") public class ApiV1 extends ResourceConfig { - private static final Logger LOGGER = Logger.getLogger(ApiV1.class.getName()); + public static final Logger LOGGER = Logger.getLogger(ApiV1.class.getName()); public ApiV1() { packages("fr.ulille.iut.pizzaland"); + + String environment = System.getenv("PIZZAENV"); +// String environment = null; + + if (environment != null && environment.equals("withdb")) { + LOGGER.info("Loading with database"); + Jsonb jsonb = JsonbBuilder.create(); + try { + FileReader reader = new FileReader(getClass().getClassLoader().getResource("ingredients.json").getFile()); + + List<Ingredient> ingredients = JsonbBuilder.create().fromJson(reader, new ArrayList<Ingredient>() { + }.getClass().getGenericSuperclass()); + + IngredientDao ingredientDao = BDDFactory.buildDao(IngredientDao.class); + + ingredientDao.dropTable(); + ingredientDao.createTable(); + + for (Ingredient ingredient : ingredients) { + ingredientDao.insert(ingredient.getName()); + } + + System.out.println(Arrays.toString(ingredientDao.getAll().toArray())); + + FileReader readerPizza = new FileReader(getClass().getClassLoader().getResource("pizzas.json").getFile()); + + PizzaDao pizzaDao = BDDFactory.buildDao(PizzaDao.class); + pizzaDao.dropTable(); + pizzaDao.createTableAndIngredientAssociation(); + + List<Pizza> pizzas = JsonbBuilder.create().fromJson(readerPizza, new ArrayList<Pizza>() { + }.getClass().getGenericSuperclass()); + + + for (Pizza pizza : pizzas) { + System.out.println(pizza); + pizzaDao.insert(pizza.getName()); + for (int id : pizza.getIngredients()) { + pizzaDao.insertIngredient(pizza.getId(), id); + } + } + } catch (Exception ex) { + throw new IllegalStateException(ex); + } + } } -} +} \ No newline at end of file diff --git a/src/main/java/fr/ulille/iut/pizzaland/beans/Ingredient.java b/src/main/java/fr/ulille/iut/pizzaland/beans/Ingredient.java new file mode 100644 index 0000000..0e19e1d --- /dev/null +++ b/src/main/java/fr/ulille/iut/pizzaland/beans/Ingredient.java @@ -0,0 +1,87 @@ +package fr.ulille.iut.pizzaland.beans; + +import fr.ulille.iut.pizzaland.dto.IngredientCreateDto; +import fr.ulille.iut.pizzaland.dto.IngredientDto; + +public class Ingredient { + private long id; + private String name; + + public Ingredient() { + } + + public Ingredient(long id, String name) { + this.id = id; + this.name = name; + } + + public void setId(long id) { + this.id = id; + } + + public long getId() { + return id; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public static IngredientDto toDto(Ingredient i) { + IngredientDto dto = new IngredientDto(); + dto.setId(i.getId()); + dto.setName(i.getName()); + + return dto; + } + + public static Ingredient fromDto(IngredientDto dto) { + Ingredient ingredient = new Ingredient(); + ingredient.setId(dto.getId()); + ingredient.setName(dto.getName()); + + return ingredient; + } + + @Override + public boolean equals(Object obj) { + if (this == obj) + return true; + if (obj == null) + return false; + if (getClass() != obj.getClass()) + return false; + Ingredient other = (Ingredient) obj; + if (id != other.id) + return false; + if (name == null) { + if (other.name != null) + return false; + } else if (!name.equals(other.name)) + return false; + return true; + } + + @Override + public String toString() { + return "Ingredient [id=" + id + ", name=" + name + "]"; + } + + public static IngredientCreateDto toCreateDto(Ingredient ingredient) { + IngredientCreateDto dto = new IngredientCreateDto(); + dto.setName(ingredient.getName()); + + return dto; + } + + public static Ingredient fromIngredientCreateDto(IngredientCreateDto dto) { + Ingredient ingredient = new Ingredient(); + ingredient.setName(dto.getName()); + + return ingredient; + } +} \ No newline at end of file diff --git a/src/main/java/fr/ulille/iut/pizzaland/beans/Pizza.java b/src/main/java/fr/ulille/iut/pizzaland/beans/Pizza.java new file mode 100644 index 0000000..d7e3c33 --- /dev/null +++ b/src/main/java/fr/ulille/iut/pizzaland/beans/Pizza.java @@ -0,0 +1,94 @@ +package fr.ulille.iut.pizzaland.beans; + +import fr.ulille.iut.pizzaland.dto.PizzaCreateDto; +import fr.ulille.iut.pizzaland.dto.PizzaDto; + +import java.util.Arrays; + +public class Pizza { + + private long id; + private String name; + private int[] ingredients; + + public Pizza() { } + + public int[] getIngredients() { + return ingredients; + } + + public long getId() { + return id; + } + + public String getName() { + return name; + } + + public void setId(long id) { + this.id = id; + } + + public void setIngredients(int[] ingredients) { + this.ingredients = ingredients; + } + + public void setName(String name) { + this.name = name; + } + + public static PizzaDto toDto(Pizza p) { + PizzaDto dto = new PizzaDto(); + dto.setId(p.getId()); + dto.setName(p.getName()); + dto.setIngredients(p.getIngredients()); + + return dto; + } + + public static Pizza fromDto(PizzaDto dto) { + Pizza pizza = new Pizza(); + pizza.setId(dto.getId()); + pizza.setName(dto.getName()); + pizza.setIngredients(dto.getIngredients()); + + return pizza; + } + + @Override + public boolean equals(Object obj) { + if (this == obj) + return true; + if (obj == null) + return false; + if (getClass() != obj.getClass()) + return false; + Pizza other = (Pizza) obj; + if (id != other.id) + return false; + if (name == null) { + if (other.name != null) + return false; + } else if (!name.equals(other.name)) + return false; + return true; + } + + @Override + public String toString() { + return "Pizza [id=" + id + ", name=" + name + "ingredients=" + Arrays.toString(ingredients) + "]"; + } + + public static PizzaCreateDto toCreateDto(Pizza pizza) { + PizzaCreateDto dto = new PizzaCreateDto(); + dto.setName(pizza.getName()); + + return dto; + } + + public static Pizza fromPizzaCreateDto(PizzaCreateDto dto) { + Pizza pizza = new Pizza(); + pizza.setName(dto.getName()); + return pizza; + } +} diff --git a/src/main/java/fr/ulille/iut/pizzaland/dao/IngredientDao.java b/src/main/java/fr/ulille/iut/pizzaland/dao/IngredientDao.java new file mode 100644 index 0000000..b5c655c --- /dev/null +++ b/src/main/java/fr/ulille/iut/pizzaland/dao/IngredientDao.java @@ -0,0 +1,38 @@ +package fr.ulille.iut.pizzaland.dao; + +import java.util.List; + +import org.jdbi.v3.sqlobject.config.RegisterBeanMapper; +import org.jdbi.v3.sqlobject.statement.GetGeneratedKeys; +import org.jdbi.v3.sqlobject.statement.SqlQuery; +import org.jdbi.v3.sqlobject.statement.SqlUpdate; + +import fr.ulille.iut.pizzaland.beans.Ingredient; + +public interface IngredientDao { + + @SqlUpdate("CREATE TABLE IF NOT EXISTS ingredients (id INTEGER PRIMARY KEY, name VARCHAR UNIQUE NOT NULL)") + void createTable(); + + @SqlUpdate("DROP TABLE IF EXISTS ingredients") + void dropTable(); + + @SqlUpdate("INSERT INTO ingredients (name) VALUES (:name)") + @GetGeneratedKeys + long insert(String name); + + @SqlQuery("SELECT * FROM ingredients WHERE name = :name") + @RegisterBeanMapper(Ingredient.class) + Ingredient findByName(String name); + + @SqlUpdate("DELETE FROM ingredients WHERE id = :id") + void remove(long id); + + @SqlQuery("SELECT * FROM ingredients") + @RegisterBeanMapper(Ingredient.class) + List<Ingredient> getAll(); + + @SqlQuery("SELECT * FROM ingredients WHERE id = :id") + @RegisterBeanMapper(Ingredient.class) + Ingredient findById(long id); +} \ No newline at end of file diff --git a/src/main/java/fr/ulille/iut/pizzaland/dao/PizzaDao.java b/src/main/java/fr/ulille/iut/pizzaland/dao/PizzaDao.java new file mode 100644 index 0000000..1659a4a --- /dev/null +++ b/src/main/java/fr/ulille/iut/pizzaland/dao/PizzaDao.java @@ -0,0 +1,60 @@ +package fr.ulille.iut.pizzaland.dao; + +import fr.ulille.iut.pizzaland.beans.Pizza; +import org.jdbi.v3.sqlobject.config.RegisterBeanMapper; +import org.jdbi.v3.sqlobject.statement.GetGeneratedKeys; +import org.jdbi.v3.sqlobject.statement.SqlQuery; +import org.jdbi.v3.sqlobject.statement.SqlUpdate; +import org.jdbi.v3.sqlobject.transaction.Transaction; + +import java.util.List; + +public interface PizzaDao { + + @SqlUpdate("CREATE TABLE IF NOT EXISTS pizzas (id INTEGER PRIMARY KEY, name VARCHAR UNIQUE NOT NULL)") + void createPizzaTable(); + + @SqlUpdate("CREATE TABLE IF NOT EXISTS PizzaIngredients (pizza_id INTEGER NOT NULL, ingredient_id INTEGER NOT NULL, PRIMARY KEY (pizza_id, ingredient_id))") + void createAssociationTable(); + + @SqlUpdate("DROP TABLE IF EXISTS pizzas") + void dropPizzaTable(); + + @SqlUpdate("DROP TABLE IF EXISTS PizzaIngredients") + void dropAssociationTable(); + + @SqlUpdate("INSERT INTO pizzas (name) VALUES (:name)") + @GetGeneratedKeys + long insert(String name); + + @SqlQuery("SELECT * FROM pizzas AS p INNER JOIN PizzaIngredients AS pi ON (p.id = pi.pizza_id) WHERE name = :name") + @RegisterBeanMapper(Pizza.class) + Pizza findByName(String name); + + @SqlUpdate("DELETE FROM pizzas WHERE id = :id") + void remove(long id); + + @SqlUpdate("INSERT INTO PizzaIngredients VALUES (:pizza, :ingredient)") + void insertIngredient(long pizza, int ingredient); + +// @SqlQuery("SELECT * FROM pizzas AS p INNER JOIN PizzaIngredients AS pi ON (p.id = pi.pizza_id) INNER JOIN ingredients AS i ON (i.id = pi.ingredient_id)") + @SqlQuery("SELECT * FROM pizzas INNER JOIN PizzasIngredients") + @RegisterBeanMapper(Pizza.class) + List<Pizza> getAll(); + + @SqlQuery("SELECT * FROM pizzas WHERE id = :id") + @RegisterBeanMapper(Pizza.class) + Pizza findById(long id); + + @Transaction + default void dropTable() { + dropAssociationTable(); + dropPizzaTable(); + } + + @Transaction + default void createTableAndIngredientAssociation() { + createPizzaTable(); + createAssociationTable(); + } +} diff --git a/src/main/java/fr/ulille/iut/pizzaland/dto/IngredientCreateDto.java b/src/main/java/fr/ulille/iut/pizzaland/dto/IngredientCreateDto.java new file mode 100644 index 0000000..f6020bb --- /dev/null +++ b/src/main/java/fr/ulille/iut/pizzaland/dto/IngredientCreateDto.java @@ -0,0 +1,15 @@ +package fr.ulille.iut.pizzaland.dto; + +public class IngredientCreateDto { + private String name; + + public IngredientCreateDto() {} + + public void setName(String name) { + this.name = name; + } + + public String getName() { + return name; + } +} \ No newline at end of file diff --git a/src/main/java/fr/ulille/iut/pizzaland/dto/IngredientDto.java b/src/main/java/fr/ulille/iut/pizzaland/dto/IngredientDto.java index 1a9360b..48775ed 100644 --- a/src/main/java/fr/ulille/iut/pizzaland/dto/IngredientDto.java +++ b/src/main/java/fr/ulille/iut/pizzaland/dto/IngredientDto.java @@ -1,8 +1,26 @@ package fr.ulille.iut.pizzaland.dto; public class IngredientDto { + private long id; + private String name; public IngredientDto() { - + } + + public long getId() { + return id; + } + + public void setId(long id) { + this.id = id; + } + + public void setName(String name) { + this.name = name; + } + + public String getName() { + return name; } } + diff --git a/src/main/java/fr/ulille/iut/pizzaland/dto/PizzaCreateDto.java b/src/main/java/fr/ulille/iut/pizzaland/dto/PizzaCreateDto.java new file mode 100644 index 0000000..6540b2b --- /dev/null +++ b/src/main/java/fr/ulille/iut/pizzaland/dto/PizzaCreateDto.java @@ -0,0 +1,15 @@ +package fr.ulille.iut.pizzaland.dto; + +public class PizzaCreateDto { + private String name; + + public PizzaCreateDto() {} + + public void setName(String name) { + this.name = name; + } + + public String getName() { + return name; + } +} diff --git a/src/main/java/fr/ulille/iut/pizzaland/dto/PizzaDto.java b/src/main/java/fr/ulille/iut/pizzaland/dto/PizzaDto.java new file mode 100644 index 0000000..2fc40e3 --- /dev/null +++ b/src/main/java/fr/ulille/iut/pizzaland/dto/PizzaDto.java @@ -0,0 +1,33 @@ +package fr.ulille.iut.pizzaland.dto; + +import fr.ulille.iut.pizzaland.beans.Ingredient; + +public class PizzaDto { + private long id; + private String name; + private int[] ingredients; + + public long getId() { + return id; + } + + public void setId(long id) { + this.id = id; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public int[] getIngredients() { + return ingredients; + } + + public void setIngredients(int[] ingredients) { + this.ingredients = ingredients; + } +} diff --git a/src/main/java/fr/ulille/iut/pizzaland/resources/IngredientResource.java b/src/main/java/fr/ulille/iut/pizzaland/resources/IngredientResource.java index bc19082..f5e03e6 100644 --- a/src/main/java/fr/ulille/iut/pizzaland/resources/IngredientResource.java +++ b/src/main/java/fr/ulille/iut/pizzaland/resources/IngredientResource.java @@ -4,29 +4,123 @@ import java.net.URI; import java.util.List; import java.util.ArrayList; import java.util.logging.Logger; +import java.util.stream.Collectors; -import javax.ws.rs.GET; -import javax.ws.rs.Path; +import javax.ws.rs.*; import javax.ws.rs.core.Context; import javax.ws.rs.core.Response; import javax.ws.rs.core.UriInfo; +import fr.ulille.iut.pizzaland.BDDFactory; +import fr.ulille.iut.pizzaland.beans.Ingredient; +import fr.ulille.iut.pizzaland.dao.IngredientDao; +import fr.ulille.iut.pizzaland.dto.IngredientCreateDto; import fr.ulille.iut.pizzaland.dto.IngredientDto; @Path("/ingredients") public class IngredientResource { private static final Logger LOGGER = Logger.getLogger(IngredientResource.class.getName()); + private IngredientDao ingredients; @Context public UriInfo uriInfo; public IngredientResource() { + ingredients = BDDFactory.buildDao(IngredientDao.class); + ingredients.createTable(); } @GET public List<IngredientDto> getAll() { LOGGER.info("IngredientResource:getAll"); - return null; + List<IngredientDto> l = ingredients.getAll().stream().map(Ingredient::toDto).collect(Collectors.toList()); + return l; } -} + + @GET + @Path("{id}") + public IngredientDto getOneIngredient(@PathParam("id") long id) { + LOGGER.info("getOneIngredient(" + id + ")"); + try { + Ingredient ingredient = ingredients.findById(id); + return Ingredient.toDto(ingredient); + } + catch ( Exception e ) { + // Cette exception générera une réponse avec une erreur 404 + throw new WebApplicationException(Response.Status.NOT_FOUND); + } + } + + @POST + public Response createIngredient(IngredientCreateDto ingredientCreateDto) { + Ingredient existing = ingredients.findByName(ingredientCreateDto.getName()); + if ( existing != null ) { + throw new WebApplicationException(Response.Status.CONFLICT); + } + + try { + Ingredient ingredient = Ingredient.fromIngredientCreateDto(ingredientCreateDto); + long id = ingredients.insert(ingredient.getName()); + ingredient.setId(id); + IngredientDto ingredientDto = Ingredient.toDto(ingredient); + + URI uri = uriInfo.getAbsolutePathBuilder().path("" + id).build(); + + return Response.created(uri).entity(ingredientDto).build(); + } + catch ( Exception e ) { + e.printStackTrace(); + throw new WebApplicationException(Response.Status.NOT_ACCEPTABLE); + } + } + + @DELETE + @Path("{id}") + public Response deleteIngredient(@PathParam("id") long id) { + if ( ingredients.findById(id) == null ) { + throw new WebApplicationException(Response.Status.NOT_FOUND); + } + + ingredients.remove(id); + + return Response.status(Response.Status.ACCEPTED).build(); + } + + @GET + @Path("{id}/name") + public String getIngredientName(@PathParam("id") long id) { + Ingredient ingredient = ingredients.findById(id); + if ( ingredient == null ) { + throw new WebApplicationException(Response.Status.NOT_FOUND); + } + + return ingredient.getName(); + } + + @POST + @Consumes("application/x-www-form-urlencoded") + public Response createIngredient(@FormParam("name") String name) { + Ingredient existing = ingredients.findByName(name); + if ( existing != null ) { + throw new WebApplicationException(Response.Status.CONFLICT); + } + + try { + Ingredient ingredient = new Ingredient(); + ingredient.setName(name); + + long id = ingredients.insert(ingredient.getName()); + ingredient.setId(id); + IngredientDto ingredientDto = Ingredient.toDto(ingredient); + + URI uri = uriInfo.getAbsolutePathBuilder().path("" + id).build(); + + return Response.created(uri).entity(ingredientDto).build(); + } + catch ( Exception e ) { + e.printStackTrace(); + throw new WebApplicationException(Response.Status.NOT_ACCEPTABLE); + } + } +} \ No newline at end of file diff --git a/src/main/java/fr/ulille/iut/pizzaland/resources/PizzaResource.java b/src/main/java/fr/ulille/iut/pizzaland/resources/PizzaResource.java new file mode 100644 index 0000000..703e414 --- /dev/null +++ b/src/main/java/fr/ulille/iut/pizzaland/resources/PizzaResource.java @@ -0,0 +1,123 @@ +package fr.ulille.iut.pizzaland.resources; + +import fr.ulille.iut.pizzaland.BDDFactory; +import fr.ulille.iut.pizzaland.beans.Pizza; +import fr.ulille.iut.pizzaland.dao.PizzaDao; +import fr.ulille.iut.pizzaland.dto.PizzaCreateDto; +import fr.ulille.iut.pizzaland.dto.PizzaDto; + +import javax.ws.rs.*; +import javax.ws.rs.core.Context; +import javax.ws.rs.core.Response; +import javax.ws.rs.core.UriInfo; +import java.net.URI; +import java.util.List; +import java.util.logging.Logger; +import java.util.stream.Collectors; + +@Path("/pizzas") +public class PizzaResource { + private static final Logger LOGGER = Logger.getLogger(PizzaResource.class.getName()); + private PizzaDao pizzas; + + @Context + public UriInfo uriInfo; + + public PizzaResource() { + pizzas = BDDFactory.buildDao(PizzaDao.class); + pizzas.createTableAndIngredientAssociation(); + } + + @GET + public List<PizzaDto> getAll() { + LOGGER.info("PizzaResource:getAll"); + + return pizzas.getAll().stream().map(Pizza::toDto).collect(Collectors.toList()); + } + + @GET + @Path("{id}") + public PizzaDto getOnePizza(@PathParam("id") long id) { + LOGGER.info("getOnePizza(" + id + ")"); + try { + Pizza pizza = pizzas.findById(id); + return Pizza.toDto(pizza); + } + catch ( Exception e ) { + // Cette exception générera une réponse avec une erreur 404 + throw new WebApplicationException(Response.Status.NOT_FOUND); + } + } + + @POST + public Response createPizza(PizzaCreateDto pizzaCreateDto) { + Pizza existing = pizzas.findByName(pizzaCreateDto.getName()); + if ( existing != null ) { + throw new WebApplicationException(Response.Status.CONFLICT); + } + + try { + Pizza pizza = Pizza.fromPizzaCreateDto(pizzaCreateDto); + long id = pizzas.insert(pizza.getName()); + pizza.setId(id); + PizzaDto pizzaDto = Pizza.toDto(pizza); + + URI uri = uriInfo.getAbsolutePathBuilder().path("" + id).build(); + + return Response.created(uri).entity(pizzaDto).build(); + } + catch ( Exception e ) { + e.printStackTrace(); + throw new WebApplicationException(Response.Status.NOT_ACCEPTABLE); + } + } + + @DELETE + @Path("{id}") + public Response deleteIngredient(@PathParam("id") long id) { + if (pizzas.findById(id) == null ) { + throw new WebApplicationException(Response.Status.NOT_FOUND); + } + + pizzas.remove(id); + + return Response.status(Response.Status.ACCEPTED).build(); + } + + @GET + @Path("{id}/name") + public String getIngredientName(@PathParam("id") long id) { + Pizza pizza = pizzas.findById(id); + if ( pizza == null ) { + throw new WebApplicationException(Response.Status.NOT_FOUND); + } + + return pizza.getName(); + } + + @POST + @Consumes("application/x-www-form-urlencoded") + public Response createPizza(@FormParam("name") String name) { + Pizza existing = pizzas.findByName(name); + if ( existing != null ) { + throw new WebApplicationException(Response.Status.CONFLICT); + } + + try { + Pizza pizza = new Pizza(); + pizza.setName(name); + + long id = pizzas.insert(pizza.getName()); + pizza.setId(id); + PizzaDto pizzaDto = Pizza.toDto(pizza); + + URI uri = uriInfo.getAbsolutePathBuilder().path("" + id).build(); + + return Response.created(uri).entity(pizzaDto).build(); + } + catch ( Exception e ) { + e.printStackTrace(); + throw new WebApplicationException(Response.Status.NOT_ACCEPTABLE); + } + } +} \ No newline at end of file diff --git a/src/main/java/fr/ulille/iut/pizzaland/ressources/UncaughtException.java b/src/main/java/fr/ulille/iut/pizzaland/ressources/UncaughtException.java new file mode 100644 index 0000000..90a8500 --- /dev/null +++ b/src/main/java/fr/ulille/iut/pizzaland/ressources/UncaughtException.java @@ -0,0 +1,22 @@ +package fr.ulille.iut.pizzaland.ressources; + +import javax.ws.rs.core.Response; +import javax.ws.rs.ext.ExceptionMapper; +import javax.ws.rs.ext.Provider; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +@Provider +public class UncaughtException extends Throwable implements ExceptionMapper<Throwable> { + final static Logger logger = LoggerFactory.getLogger(UncaughtException.class); + + private static final long serialVersionUID = 1L; + + @Override + public Response toResponse(Throwable exception) { + logger.debug("Exception thrown", exception); + return Response.status(500).entity("Exception thrown: " + exception.getStackTrace()[0] + "see log.").type("text/plain").build(); + } + +} diff --git a/src/main/resources/ingredients.json b/src/main/resources/ingredients.json index 2f6d012..f1fbef4 100644 --- a/src/main/resources/ingredients.json +++ b/src/main/resources/ingredients.json @@ -1,14 +1,38 @@ [ - { "name": "mozzarella"}, -{ "name": "jambon"}, -{ "name": "champignons"}, -{ "name": "olives"}, -{ "name": "tomate"}, -{ "name": "merguez"}, -{ "name": "lardons"}, -{ "name": "fromage"}, -{ "name": "oeuf"}, -{ "name": "poivrons"}, -{ "name": "ananas"}, -{ "name": "reblochon"} -] + { + "name": "mozzarella" + }, + { + "name": "jambon" + }, + { + "name": "champignons" + }, + { + "name": "olives" + }, + { + "name": "tomate" + }, + { + "name": "merguez" + }, + { + "name": "lardons" + }, + { + "name": "fromage" + }, + { + "name": "oeuf" + }, + { + "name": "poivrons" + }, + { + "name": "ananas" + }, + { + "name": "reblochon" + } +] \ No newline at end of file diff --git a/src/main/resources/log4j.properties b/src/main/resources/log4j.properties new file mode 100644 index 0000000..393e087 --- /dev/null +++ b/src/main/resources/log4j.properties @@ -0,0 +1,8 @@ +# Root logger option +log4j.rootLogger=INFO, stdout + +# Direct log messages to stdout +log4j.appender.stdout=org.apache.log4j.ConsoleAppender +log4j.appender.stdout.Target=System.out +log4j.appender.stdout.layout=org.apache.log4j.PatternLayout +log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n \ No newline at end of file diff --git a/src/main/resources/log4j.xml b/src/main/resources/log4j.xml new file mode 100644 index 0000000..c0c0753 --- /dev/null +++ b/src/main/resources/log4j.xml @@ -0,0 +1,18 @@ +<?xml version="1.0" encoding="UTF-8" ?> +<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd"> +<log4j:configuration debug="true" + xmlns:log4j='http://jakarta.apache.org/log4j/'> + + <appender name="console" class="org.apache.log4j.ConsoleAppender"> + <layout class="org.apache.log4j.PatternLayout"> + <param name="ConversionPattern" + value="%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n" /> + </layout> + </appender> + + <root> + <level value="DEBUG" /> + <appender-ref ref="console" /> + </root> + +</log4j:configuration> diff --git a/src/main/resources/pizzas.json b/src/main/resources/pizzas.json new file mode 100644 index 0000000..377e3ef --- /dev/null +++ b/src/main/resources/pizzas.json @@ -0,0 +1,22 @@ +[ + { + "name": "intriguante", + "ingredients": [1] + }, + { + "name": "4 fromages", + "ingredients": [] + }, + { + "name": "regina", + "ingredients": [] + }, + { + "name": "3 fromages", + "ingredients": [] + }, + { + "name": "hawaienne", + "ingredients": [] + } +] \ No newline at end of file diff --git a/src/test/java/fr/ulille/iut/pizzaland/IngredientResourceTest.java b/src/test/java/fr/ulille/iut/pizzaland/IngredientResourceTest.java index 2c8b1be..9bd536e 100644 --- a/src/test/java/fr/ulille/iut/pizzaland/IngredientResourceTest.java +++ b/src/test/java/fr/ulille/iut/pizzaland/IngredientResourceTest.java @@ -1,6 +1,9 @@ package fr.ulille.iut.pizzaland; import fr.ulille.iut.pizzaland.ApiV1; +import fr.ulille.iut.pizzaland.beans.Ingredient; +import fr.ulille.iut.pizzaland.dao.IngredientDao; +import fr.ulille.iut.pizzaland.dto.IngredientCreateDto; import fr.ulille.iut.pizzaland.dto.IngredientDto; import org.glassfish.jersey.test.JerseyTest; @@ -10,11 +13,10 @@ import org.junit.Before; import org.junit.Test; import javax.ws.rs.client.Entity; -import javax.ws.rs.core.GenericType; -import javax.ws.rs.core.Application; -import javax.ws.rs.core.Response; +import javax.ws.rs.core.*; import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertNotNull; import java.util.List; import java.util.logging.Logger; @@ -26,10 +28,12 @@ import java.util.logging.Logger; */ public class IngredientResourceTest extends JerseyTest { private static final Logger LOGGER = Logger.getLogger(IngredientResourceTest.class.getName()); - + private IngredientDao dao; + @Override protected Application configure() { - return new ApiV1(); + BDDFactory.setJdbiForTests(); + return new ApiV1(); } // Les méthodes setEnvUp() et tearEnvDown() serviront à terme à initialiser la base de données @@ -38,12 +42,13 @@ public class IngredientResourceTest extends JerseyTest { // https://stackoverflow.com/questions/25906976/jerseytest-and-junit-throws-nullpointerexception @Before public void setEnvUp() { - + dao = BDDFactory.buildDao(IngredientDao.class); + dao.createTable(); } @After public void tearEnvDown() throws Exception { - + dao.dropTable(); } @Test @@ -66,4 +71,128 @@ public class IngredientResourceTest extends JerseyTest { assertEquals(0, ingredients.size()); } + + @Test + public void testGetExistingIngredient() { + Ingredient ingredient = new Ingredient(); + ingredient.setId(1); + ingredient.setName("mozzarella"); + + Response response = target("/ingredients/1").request().get(); + assertEquals(Response.Status.OK.getStatusCode(), response.getStatus()); + + Ingredient result = Ingredient.fromDto(response.readEntity(IngredientDto.class)); + assertEquals(ingredient, result); + } + + @Test + public void testGetNotExistingIngredient() { + Response response = target("/ingredients/125").request().get(); + assertEquals(Response.Status.NOT_FOUND.getStatusCode(), response.getStatus()); + } + + @Test + public void testCreateIngredient() { + IngredientCreateDto ingredientCreateDto = new IngredientCreateDto(); + ingredientCreateDto.setName("mozzarella"); + + Response response = target("/ingredients") + .request() + .post(Entity.json(ingredientCreateDto)); + + // On vérifie le code de status à 201 + assertEquals(Response.Status.CREATED.getStatusCode(), response.getStatus()); + + IngredientDto returnedEntity = response.readEntity(IngredientDto.class); + + // On vérifie que le champ d'entête Location correspond à + // l'URI de la nouvelle entité + assertEquals(target("/ingredients/" + + returnedEntity.getId()).getUri(), response.getLocation()); + + // On vérifie que le nom correspond + assertEquals(returnedEntity.getName(), ingredientCreateDto.getName()); + } + + @Test + public void testCreateSameIngredient() { + IngredientCreateDto ingredientCreateDto = new IngredientCreateDto(); + ingredientCreateDto.setName("mozzarella"); + dao.insert(ingredientCreateDto.getName()); + + Response response = target("/ingredients") + .request() + .post(Entity.json(ingredientCreateDto)); + + assertEquals(Response.Status.CONFLICT.getStatusCode(), response.getStatus()); + } + + @Test + public void testCreateIngredientWithoutName() { + IngredientCreateDto ingredientCreateDto = new IngredientCreateDto(); + + Response response = target("/ingredients") + .request() + .post(Entity.json(ingredientCreateDto)); + + assertEquals(Response.Status.NOT_ACCEPTABLE.getStatusCode(), response.getStatus()); + } + + @Test + public void testDeleteExistingIngredient() { + Ingredient ingredient = new Ingredient(); + ingredient.setName("mozzarella"); + long id = dao.insert(ingredient.getName()); + ingredient.setId(id); + + Response response = target("/ingredients/" + id).request().delete(); + + assertEquals(Response.Status.ACCEPTED.getStatusCode(), response.getStatus()); + + Ingredient result = dao.findById(id); + assertEquals(result, null); + } + + @Test + public void testDeleteNotExistingIngredient() { + Response response = target("/ingredients/125").request().delete(); + assertEquals(Response.Status.NOT_FOUND.getStatusCode(), + response.getStatus()); + } + + @Test + public void testGetIngredientName() { + Ingredient ingredient = new Ingredient(); + ingredient.setName("mozzarella"); + long id = dao.insert(ingredient.getName()); + + Response response = target("ingredients/" + id + "/name").request().get(); + + assertEquals(Response.Status.OK.getStatusCode(), response.getStatus()); + + assertEquals("mozzarella", response.readEntity(String.class)); + } + + @Test + public void testGetNotExistingIngredientName() { + Response response = target("ingredients/125/name").request().get(); + + assertEquals(Response.Status.NOT_FOUND.getStatusCode(), response.getStatus()); + } + + @Test + public void testCreateWithForm() { + Form form = new Form(); + form.param("name", "chorizo"); + + Entity<Form> formEntity = Entity.entity(form, MediaType.APPLICATION_FORM_URLENCODED_TYPE); + Response response = target("ingredients").request().post(formEntity); + + assertEquals(Response.Status.CREATED.getStatusCode(), response.getStatus()); + String location = response.getHeaderString("Location"); + long id = Integer.parseInt(location.substring(location.lastIndexOf('/') + 1)); + Ingredient result = dao.findById(id); + + assertNotNull(result); + } } diff --git a/src/test/resources/log4j.properties b/src/test/resources/log4j.properties new file mode 100644 index 0000000..393e087 --- /dev/null +++ b/src/test/resources/log4j.properties @@ -0,0 +1,8 @@ +# Root logger option +log4j.rootLogger=INFO, stdout + +# Direct log messages to stdout +log4j.appender.stdout=org.apache.log4j.ConsoleAppender +log4j.appender.stdout.Target=System.out +log4j.appender.stdout.layout=org.apache.log4j.PatternLayout +log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n \ No newline at end of file diff --git a/src/test/resources/log4j.xml b/src/test/resources/log4j.xml new file mode 100644 index 0000000..c0c0753 --- /dev/null +++ b/src/test/resources/log4j.xml @@ -0,0 +1,18 @@ +<?xml version="1.0" encoding="UTF-8" ?> +<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd"> +<log4j:configuration debug="true" + xmlns:log4j='http://jakarta.apache.org/log4j/'> + + <appender name="console" class="org.apache.log4j.ConsoleAppender"> + <layout class="org.apache.log4j.PatternLayout"> + <param name="ConversionPattern" + value="%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n" /> + </layout> + </appender> + + <root> + <level value="DEBUG" /> + <appender-ref ref="console" /> + </root> + +</log4j:configuration> -- GitLab