Commit cec9d290053c44d24fcd669314d924c749212fe4

Authored by mfcb
1 parent 1063bd27

Added SchedulerBean skeleton.

BeuthBot.ipr
... ... @@ -581,6 +581,69 @@
581 581 <element id="artifact" artifact-name="Gradle : BeuthBot.services : telegram.war (exploded)" />
582 582 </root>
583 583 </artifact>
  584 + <artifact type="exploded-war" name="Gradle : BeuthBot.services : scheduler.war (exploded)">
  585 + <output-path>$PROJECT_DIR$/docker/wildfly/volumes/deployments/exploded/scheduler.war</output-path>
  586 + <properties id="gradle-properties">
  587 + <options external-project-path="$PROJECT_DIR$">
  588 + <manifest>TWFuaWZlc3QtVmVyc2lvbjogMS4wDQoNCg==</manifest>
  589 + </options>
  590 + </properties>
  591 + <root id="root">
  592 + <element id="directory" name="META-INF">
  593 + <element id="file-copy" path="$PROJECT_DIR$/docker/wildfly/volumes/deployments/exploded/scheduler.war/META-INF/MANIFEST.MF" />
  594 + </element>
  595 + <element id="javaee-facet-resources" facet="Scheduler_main/web/Web Gradle : scheduler.war" />
  596 + <element id="directory" name="WEB-INF">
  597 + <element id="directory" name="classes">
  598 + <element id="module-output" name="Scheduler_main" />
  599 + <element id="dir-copy" path="$PROJECT_DIR$/services/Scheduler/out/production/resources" />
  600 + </element>
  601 + <element id="directory" name="lib">
  602 + <element id="archive" name="BeuthBot.services-Common.jar">
  603 + <element id="module-output" name="Common_main" />
  604 + <element id="dir-copy" path="$PROJECT_DIR$/services/Common/out/production/resources" />
  605 + </element>
  606 + <element id="library" level="project" name="Gradle: com.google.code.gson:gson:2.8.1" />
  607 + <element id="library" level="project" name="Gradle: javax.enterprise:cdi-api:1.2" />
  608 + <element id="library" level="project" name="Gradle: javax.inject:javax.inject:1" />
  609 + <element id="library" level="project" name="Gradle: javax.jws:jsr181-api:1.0-MR1" />
  610 + <element id="library" level="project" name="Gradle: com.sun.mail:javax.mail:1.5.6" />
  611 + <element id="library" level="project" name="Gradle: javax.validation:validation-api:1.1.0.Final" />
  612 + <element id="library" level="project" name="Gradle: org.hibernate.javax.persistence:hibernate-jpa-2.1-api:1.0.0.Final" />
  613 + <element id="library" level="project" name="Gradle: org.jboss.spec.javax.batch:jboss-batch-api_1.0_spec:1.0.0.Final" />
  614 + <element id="library" level="project" name="Gradle: org.jboss.spec.javax.ejb:jboss-ejb-api_3.2_spec:1.0.0.Final" />
  615 + <element id="library" level="project" name="Gradle: org.jboss.spec.javax.el:jboss-el-api_3.0_spec:1.0.7.Final" />
  616 + <element id="library" level="project" name="Gradle: org.jboss.spec.javax.enterprise.concurrent:jboss-concurrency-api_1.0_spec:1.0.0.Final" />
  617 + <element id="library" level="project" name="Gradle: org.jboss.spec.javax.faces:jboss-jsf-api_2.2_spec:2.2.13" />
  618 + <element id="library" level="project" name="Gradle: org.jboss.spec.javax.interceptor:jboss-interceptors-api_1.2_spec:1.0.0.Final" />
  619 + <element id="library" level="project" name="Gradle: org.jboss.spec.javax.json:jboss-json-api_1.0_spec:1.0.0.Final" />
  620 + <element id="library" level="project" name="Gradle: org.jboss.spec.javax.management.j2ee:jboss-j2eemgmt-api_1.1_spec:1.0.1.Final" />
  621 + <element id="library" level="project" name="Gradle: org.jboss.spec.javax.resource:jboss-connector-api_1.7_spec:1.0.0.Final" />
  622 + <element id="library" level="project" name="Gradle: org.jboss.spec.javax.rmi:jboss-rmi-api_1.0_spec:1.0.5.Final" />
  623 + <element id="library" level="project" name="Gradle: org.jboss.spec.javax.security.jacc:jboss-jacc-api_1.5_spec:1.0.0.Final" />
  624 + <element id="library" level="project" name="Gradle: org.jboss.spec.javax.security.auth.message:jboss-jaspi-api_1.1_spec:1.0.0.Final" />
  625 + <element id="library" level="project" name="Gradle: org.jboss.spec.javax.jms:jboss-jms-api_2.0_spec:1.0.0.Final" />
  626 + <element id="library" level="project" name="Gradle: org.jboss.spec.javax.transaction:jboss-transaction-api_1.2_spec:1.0.1.Final" />
  627 + <element id="library" level="project" name="Gradle: org.jboss.spec.javax.websocket:jboss-websocket-api_1.1_spec:1.1.1.Final" />
  628 + <element id="library" level="project" name="Gradle: org.jboss.spec.javax.xml.bind:jboss-jaxb-api_2.2_spec:1.0.4.Final" />
  629 + <element id="library" level="project" name="Gradle: org.jboss.spec.javax.xml.soap:jboss-saaj-api_1.3_spec:1.0.3.Final" />
  630 + <element id="library" level="project" name="Gradle: org.jboss.spec.javax.xml.ws:jboss-jaxws-api_2.2_spec:2.0.3.Final" />
  631 + <element id="library" level="project" name="Gradle: org.jboss.spec.javax.servlet:jboss-servlet-api_3.1_spec:1.0.0.Final" />
  632 + <element id="library" level="project" name="Gradle: javax.el:javax.el-api:3.0.0" />
  633 + <element id="library" level="project" name="Gradle: javax.interceptor:javax.interceptor-api:1.2" />
  634 + </element>
  635 + </element>
  636 + </root>
  637 + </artifact>
  638 + <artifact type="war" name="Gradle : BeuthBot.services : scheduler.war">
  639 + <output-path>$PROJECT_DIR$/docker/wildfly/volumes/deployments</output-path>
  640 + <properties id="gradle-properties">
  641 + <options external-project-path="$PROJECT_DIR$" />
  642 + </properties>
  643 + <root id="archive" name="scheduler.war">
  644 + <element id="artifact" artifact-name="Gradle : BeuthBot.services : scheduler.war (exploded)" />
  645 + </root>
  646 + </artifact>
584 647 </component>
585 648 <component name="CompilerConfiguration">
586 649 <bytecodeTargetLevel>
... ...
services/Global/Global_test.iml
... ... @@ -66,8 +66,8 @@
66 66 <orderEntry type="library" name="Gradle: org.jboss.shrinkwrap:shrinkwrap-api:1.2.6" level="project" />
67 67 <orderEntry type="library" scope="RUNTIME" name="Gradle: org.wildfly.arquillian:wildfly-arquillian-common:2.0.2.Final" level="project" />
68 68 <orderEntry type="library" name="Gradle: org.jboss.arquillian.container:arquillian-container-spi:1.1.13.Final" level="project" />
69   - <orderEntry type="library" scope="RUNTIME" name="Gradle: org.wildfly.arquillian:wildfly-arquillian-protocol-jmx:2.0.2.Final" level="project" />
70 69 <orderEntry type="library" name="Gradle: org.jboss.arquillian.config:arquillian-config-api:1.1.13.Final" level="project" />
  70 + <orderEntry type="library" scope="RUNTIME" name="Gradle: org.wildfly.arquillian:wildfly-arquillian-protocol-jmx:2.0.2.Final" level="project" />
71 71 <orderEntry type="library" scope="RUNTIME" name="Gradle: org.jboss.marshalling:jboss-marshalling-river:1.4.10.Final" level="project" />
72 72 <orderEntry type="library" name="Gradle: org.jboss.arquillian.config:arquillian-config-impl-base:1.1.13.Final" level="project" />
73 73 <orderEntry type="library" name="Gradle: org.jboss.shrinkwrap.descriptors:shrinkwrap-descriptors-spi:2.0.0-alpha-10" level="project" />
... ...
services/Scheduler/Scheduler.iml
1 1 <?xml version="1.0" encoding="UTF-8"?>
2   -<module external.linked.project.id=":services:Scheduler" external.linked.project.path="$MODULE_DIR$" external.root.project.path="$MODULE_DIR$/../.." external.system.id="GRADLE" external.system.module.group="services" external.system.module.version="unspecified" type="JAVA_MODULE" version="4">
  2 +<module external.linked.project.id=":services:Scheduler" external.linked.project.path="$MODULE_DIR$" external.root.project.path="$MODULE_DIR$/../.." external.system.id="GRADLE" external.system.module.group="BeuthBot.services" external.system.module.version="unspecified" type="JAVA_MODULE" version="4">
3 3 <component name="NewModuleRootManager" inherit-compiler-output="true">
4 4 <exclude-output />
5 5 <content url="file://$MODULE_DIR$">
... ...
services/Scheduler/Scheduler_main.iml
1 1 <?xml version="1.0" encoding="UTF-8"?>
2   -<module external.linked.project.id=":services:Scheduler:main" external.linked.project.path="$MODULE_DIR$" external.root.project.path="$MODULE_DIR$/../.." external.system.id="GRADLE" external.system.module.group="services" external.system.module.type="sourceSet" external.system.module.version="unspecified" type="JAVA_MODULE" version="4">
  2 +<module external.linked.project.id=":services:Scheduler:main" external.linked.project.path="$MODULE_DIR$" external.root.project.path="$MODULE_DIR$/../.." external.system.id="GRADLE" external.system.module.group="BeuthBot.services" external.system.module.type="sourceSet" external.system.module.version="unspecified" type="JAVA_MODULE" version="4">
  3 + <component name="FacetManager">
  4 + <facet type="web" name="Web Gradle : scheduler.war">
  5 + <configuration>
  6 + <webroots>
  7 + <root url="file://$MODULE_DIR$/src/main/webapp" relative="/" />
  8 + </webroots>
  9 + </configuration>
  10 + </facet>
  11 + </component>
3 12 <component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_8">
4 13 <output url="file://$MODULE_DIR$/out/production/classes" />
5 14 <exclude-output />
... ... @@ -9,5 +18,48 @@
9 18 </content>
10 19 <orderEntry type="inheritedJdk" />
11 20 <orderEntry type="sourceFolder" forTests="false" />
  21 + <orderEntry type="module" module-name="Common_main" />
  22 + <orderEntry type="library" scope="PROVIDED" name="Gradle: org.slf4j:slf4j-api:1.7.25" level="project" />
  23 + <orderEntry type="library" scope="PROVIDED" name="Gradle: org.jboss.resteasy:resteasy-client:3.1.3.Final" level="project" />
  24 + <orderEntry type="library" name="Gradle: com.google.code.gson:gson:2.8.1" level="project" />
  25 + <orderEntry type="library" scope="PROVIDED" name="Gradle: javax.activation:activation:1.1.1" level="project" />
  26 + <orderEntry type="library" name="Gradle: javax.enterprise:cdi-api:1.2" level="project" />
  27 + <orderEntry type="library" name="Gradle: javax.inject:javax.inject:1" level="project" />
  28 + <orderEntry type="library" name="Gradle: javax.jws:jsr181-api:1.0-MR1" level="project" />
  29 + <orderEntry type="library" name="Gradle: com.sun.mail:javax.mail:1.5.6" level="project" />
  30 + <orderEntry type="library" name="Gradle: javax.validation:validation-api:1.1.0.Final" level="project" />
  31 + <orderEntry type="library" name="Gradle: org.hibernate.javax.persistence:hibernate-jpa-2.1-api:1.0.0.Final" level="project" />
  32 + <orderEntry type="library" scope="PROVIDED" name="Gradle: org.jboss.spec.javax.annotation:jboss-annotations-api_1.2_spec:1.0.0.Final" level="project" />
  33 + <orderEntry type="library" name="Gradle: org.jboss.spec.javax.batch:jboss-batch-api_1.0_spec:1.0.0.Final" level="project" />
  34 + <orderEntry type="library" name="Gradle: org.jboss.spec.javax.ejb:jboss-ejb-api_3.2_spec:1.0.0.Final" level="project" />
  35 + <orderEntry type="library" name="Gradle: org.jboss.spec.javax.el:jboss-el-api_3.0_spec:1.0.7.Final" level="project" />
  36 + <orderEntry type="library" name="Gradle: org.jboss.spec.javax.enterprise.concurrent:jboss-concurrency-api_1.0_spec:1.0.0.Final" level="project" />
  37 + <orderEntry type="library" name="Gradle: org.jboss.spec.javax.faces:jboss-jsf-api_2.2_spec:2.2.13" level="project" />
  38 + <orderEntry type="library" name="Gradle: org.jboss.spec.javax.interceptor:jboss-interceptors-api_1.2_spec:1.0.0.Final" level="project" />
  39 + <orderEntry type="library" name="Gradle: org.jboss.spec.javax.json:jboss-json-api_1.0_spec:1.0.0.Final" level="project" />
  40 + <orderEntry type="library" name="Gradle: org.jboss.spec.javax.management.j2ee:jboss-j2eemgmt-api_1.1_spec:1.0.1.Final" level="project" />
  41 + <orderEntry type="library" name="Gradle: org.jboss.spec.javax.resource:jboss-connector-api_1.7_spec:1.0.0.Final" level="project" />
  42 + <orderEntry type="library" name="Gradle: org.jboss.spec.javax.rmi:jboss-rmi-api_1.0_spec:1.0.5.Final" level="project" />
  43 + <orderEntry type="library" name="Gradle: org.jboss.spec.javax.security.jacc:jboss-jacc-api_1.5_spec:1.0.0.Final" level="project" />
  44 + <orderEntry type="library" name="Gradle: org.jboss.spec.javax.security.auth.message:jboss-jaspi-api_1.1_spec:1.0.0.Final" level="project" />
  45 + <orderEntry type="library" name="Gradle: org.jboss.spec.javax.jms:jboss-jms-api_2.0_spec:1.0.0.Final" level="project" />
  46 + <orderEntry type="library" name="Gradle: org.jboss.spec.javax.transaction:jboss-transaction-api_1.2_spec:1.0.1.Final" level="project" />
  47 + <orderEntry type="library" scope="PROVIDED" name="Gradle: org.jboss.spec.javax.ws.rs:jboss-jaxrs-api_2.0_spec:1.0.1.Beta1" level="project" />
  48 + <orderEntry type="library" name="Gradle: org.jboss.spec.javax.websocket:jboss-websocket-api_1.1_spec:1.1.1.Final" level="project" />
  49 + <orderEntry type="library" name="Gradle: org.jboss.spec.javax.xml.bind:jboss-jaxb-api_2.2_spec:1.0.4.Final" level="project" />
  50 + <orderEntry type="library" name="Gradle: org.jboss.spec.javax.xml.soap:jboss-saaj-api_1.3_spec:1.0.3.Final" level="project" />
  51 + <orderEntry type="library" name="Gradle: org.jboss.spec.javax.xml.ws:jboss-jaxws-api_2.2_spec:2.0.3.Final" level="project" />
  52 + <orderEntry type="library" scope="PROVIDED" name="Gradle: org.jboss.resteasy:resteasy-jaxrs:3.1.3.Final" level="project" />
  53 + <orderEntry type="library" scope="PROVIDED" name="Gradle: org.jboss.resteasy:resteasy-jaxrs-services:3.1.3.Final" level="project" />
  54 + <orderEntry type="library" scope="PROVIDED" name="Gradle: org.jboss.logging:jboss-logging:3.3.0.Final" level="project" />
  55 + <orderEntry type="library" scope="PROVIDED" name="Gradle: org.apache.httpcomponents:httpclient:4.5.2" level="project" />
  56 + <orderEntry type="library" name="Gradle: org.jboss.spec.javax.servlet:jboss-servlet-api_3.1_spec:1.0.0.Final" level="project" />
  57 + <orderEntry type="library" scope="PROVIDED" name="Gradle: commons-io:commons-io:2.5" level="project" />
  58 + <orderEntry type="library" scope="PROVIDED" name="Gradle: net.jcip:jcip-annotations:1.0" level="project" />
  59 + <orderEntry type="library" scope="PROVIDED" name="Gradle: org.apache.httpcomponents:httpcore:4.4.4" level="project" />
  60 + <orderEntry type="library" scope="PROVIDED" name="Gradle: commons-logging:commons-logging:1.2" level="project" />
  61 + <orderEntry type="library" scope="PROVIDED" name="Gradle: commons-codec:commons-codec:1.9" level="project" />
  62 + <orderEntry type="library" name="Gradle: javax.el:javax.el-api:3.0.0" level="project" />
  63 + <orderEntry type="library" name="Gradle: javax.interceptor:javax.interceptor-api:1.2" level="project" />
12 64 </component>
13 65 </module>
14 66 \ No newline at end of file
... ...
services/Scheduler/Scheduler_test.iml
1 1 <?xml version="1.0" encoding="UTF-8"?>
2   -<module external.linked.project.id=":services:Scheduler:test" external.linked.project.path="$MODULE_DIR$" external.root.project.path="$MODULE_DIR$/../.." external.system.id="GRADLE" external.system.module.group="services" external.system.module.type="sourceSet" external.system.module.version="unspecified" type="JAVA_MODULE" version="4">
  2 +<module external.linked.project.id=":services:Scheduler:test" external.linked.project.path="$MODULE_DIR$" external.root.project.path="$MODULE_DIR$/../.." external.system.id="GRADLE" external.system.module.group="BeuthBot.services" external.system.module.type="sourceSet" external.system.module.version="unspecified" type="JAVA_MODULE" version="4">
3 3 <component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_8">
4 4 <output-test url="file://$MODULE_DIR$/out/test/classes" />
5 5 <exclude-output />
... ... @@ -10,8 +10,49 @@
10 10 <orderEntry type="inheritedJdk" />
11 11 <orderEntry type="sourceFolder" forTests="false" />
12 12 <orderEntry type="module" module-name="Scheduler_main" />
13   - <orderEntry type="library" name="Gradle: junit:junit:4.12" level="project" />
14   - <orderEntry type="library" name="Gradle: org.hamcrest:hamcrest-core:1.3" level="project" />
  13 + <orderEntry type="module" module-name="Common_main" />
  14 + <orderEntry type="library" name="Gradle: org.slf4j:slf4j-api:1.7.25" level="project" />
  15 + <orderEntry type="library" name="Gradle: org.jboss.resteasy:resteasy-client:3.1.3.Final" level="project" />
  16 + <orderEntry type="library" name="Gradle: com.google.code.gson:gson:2.8.1" level="project" />
  17 + <orderEntry type="library" name="Gradle: javax.activation:activation:1.1.1" level="project" />
  18 + <orderEntry type="library" name="Gradle: javax.enterprise:cdi-api:1.2" level="project" />
  19 + <orderEntry type="library" name="Gradle: javax.inject:javax.inject:1" level="project" />
  20 + <orderEntry type="library" name="Gradle: javax.jws:jsr181-api:1.0-MR1" level="project" />
  21 + <orderEntry type="library" name="Gradle: com.sun.mail:javax.mail:1.5.6" level="project" />
  22 + <orderEntry type="library" name="Gradle: javax.validation:validation-api:1.1.0.Final" level="project" />
  23 + <orderEntry type="library" name="Gradle: org.hibernate.javax.persistence:hibernate-jpa-2.1-api:1.0.0.Final" level="project" />
  24 + <orderEntry type="library" name="Gradle: org.jboss.spec.javax.annotation:jboss-annotations-api_1.2_spec:1.0.0.Final" level="project" />
  25 + <orderEntry type="library" name="Gradle: org.jboss.spec.javax.batch:jboss-batch-api_1.0_spec:1.0.0.Final" level="project" />
  26 + <orderEntry type="library" name="Gradle: org.jboss.spec.javax.ejb:jboss-ejb-api_3.2_spec:1.0.0.Final" level="project" />
  27 + <orderEntry type="library" name="Gradle: org.jboss.spec.javax.el:jboss-el-api_3.0_spec:1.0.7.Final" level="project" />
  28 + <orderEntry type="library" name="Gradle: org.jboss.spec.javax.enterprise.concurrent:jboss-concurrency-api_1.0_spec:1.0.0.Final" level="project" />
  29 + <orderEntry type="library" name="Gradle: org.jboss.spec.javax.faces:jboss-jsf-api_2.2_spec:2.2.13" level="project" />
  30 + <orderEntry type="library" name="Gradle: org.jboss.spec.javax.interceptor:jboss-interceptors-api_1.2_spec:1.0.0.Final" level="project" />
  31 + <orderEntry type="library" name="Gradle: org.jboss.spec.javax.json:jboss-json-api_1.0_spec:1.0.0.Final" level="project" />
  32 + <orderEntry type="library" name="Gradle: org.jboss.spec.javax.management.j2ee:jboss-j2eemgmt-api_1.1_spec:1.0.1.Final" level="project" />
  33 + <orderEntry type="library" name="Gradle: org.jboss.spec.javax.resource:jboss-connector-api_1.7_spec:1.0.0.Final" level="project" />
  34 + <orderEntry type="library" name="Gradle: org.jboss.spec.javax.rmi:jboss-rmi-api_1.0_spec:1.0.5.Final" level="project" />
  35 + <orderEntry type="library" name="Gradle: org.jboss.spec.javax.security.jacc:jboss-jacc-api_1.5_spec:1.0.0.Final" level="project" />
  36 + <orderEntry type="library" name="Gradle: org.jboss.spec.javax.security.auth.message:jboss-jaspi-api_1.1_spec:1.0.0.Final" level="project" />
  37 + <orderEntry type="library" name="Gradle: org.jboss.spec.javax.jms:jboss-jms-api_2.0_spec:1.0.0.Final" level="project" />
  38 + <orderEntry type="library" name="Gradle: org.jboss.spec.javax.transaction:jboss-transaction-api_1.2_spec:1.0.1.Final" level="project" />
  39 + <orderEntry type="library" name="Gradle: org.jboss.spec.javax.ws.rs:jboss-jaxrs-api_2.0_spec:1.0.1.Beta1" level="project" />
  40 + <orderEntry type="library" name="Gradle: org.jboss.spec.javax.websocket:jboss-websocket-api_1.1_spec:1.1.1.Final" level="project" />
  41 + <orderEntry type="library" name="Gradle: org.jboss.spec.javax.xml.bind:jboss-jaxb-api_2.2_spec:1.0.4.Final" level="project" />
  42 + <orderEntry type="library" name="Gradle: org.jboss.spec.javax.xml.soap:jboss-saaj-api_1.3_spec:1.0.3.Final" level="project" />
  43 + <orderEntry type="library" name="Gradle: org.jboss.spec.javax.xml.ws:jboss-jaxws-api_2.2_spec:2.0.3.Final" level="project" />
  44 + <orderEntry type="library" name="Gradle: org.jboss.resteasy:resteasy-jaxrs:3.1.3.Final" level="project" />
  45 + <orderEntry type="library" name="Gradle: org.jboss.resteasy:resteasy-jaxrs-services:3.1.3.Final" level="project" />
  46 + <orderEntry type="library" name="Gradle: org.jboss.logging:jboss-logging:3.3.0.Final" level="project" />
  47 + <orderEntry type="library" name="Gradle: org.apache.httpcomponents:httpclient:4.5.2" level="project" />
  48 + <orderEntry type="library" name="Gradle: org.jboss.spec.javax.servlet:jboss-servlet-api_3.1_spec:1.0.0.Final" level="project" />
  49 + <orderEntry type="library" name="Gradle: commons-io:commons-io:2.5" level="project" />
  50 + <orderEntry type="library" name="Gradle: net.jcip:jcip-annotations:1.0" level="project" />
  51 + <orderEntry type="library" name="Gradle: org.apache.httpcomponents:httpcore:4.4.4" level="project" />
  52 + <orderEntry type="library" name="Gradle: commons-logging:commons-logging:1.2" level="project" />
  53 + <orderEntry type="library" name="Gradle: commons-codec:commons-codec:1.9" level="project" />
  54 + <orderEntry type="library" name="Gradle: javax.el:javax.el-api:3.0.0" level="project" />
  55 + <orderEntry type="library" name="Gradle: javax.interceptor:javax.interceptor-api:1.2" level="project" />
15 56 </component>
16 57 <component name="TestModuleProperties" production-module="Scheduler_main" />
17 58 </module>
18 59 \ No newline at end of file
... ...
services/Scheduler/src/main/java/de/bht/beuthbot/scheduler/ScheduleEvent.java deleted 100644 → 0
1   -package de.bht.beuthbot.scheduler;
2   -
3   -import de.bht.beuthbot.scheduler.model.Reminder;
4   -
5   -import java.util.ArrayList;
6   -import java.util.EventObject;
7   -
8   -public class ScheduleEvent extends EventObject {
9   - private ArrayList<Reminder> reminders;
10   -
11   - public ScheduleEvent(Object source, ArrayList<Reminder> reminders) {
12   - super(source);
13   - this.reminders = reminders;
14   -
15   - }
16   -
17   - public ArrayList<Reminder> getReminders() {
18   - return this.reminders;
19   - }
20   -
21   -}
services/Scheduler/src/main/java/de/bht/beuthbot/scheduler/ScheduleListener.java deleted 100644 → 0
1   -package de.bht.beuthbot.scheduler;
2   -
3   -public interface ScheduleListener {
4   - void receiveScheduleEvent(ScheduleEvent scheduleEvent);
5   -}
services/Scheduler/src/main/java/de/bht/beuthbot/scheduler/Scheduler.java deleted 100644 → 0
1   -package de.bht.beuthbot.scheduler;
2   -
3   -import de.bht.beuthbot.scheduler.model.Reminder;
4   -import de.bht.beuthbot.scheduler.model.ReminderCycle;
5   -
6   -import java.util.*;
7   -
8   -public class Scheduler {
9   - Timer scheduleTimer = new Timer();
10   - final long scheduleStart = System.currentTimeMillis();
11   - Date startTime = new Date();
12   -
13   - private ArrayList<ScheduleListener> _scheduleListeners = new ArrayList<>();
14   - private ArrayList<Reminder> _reminders = new ArrayList<>();
15   -
16   - public void addListener(ScheduleListener toAdd) {
17   - _scheduleListeners.add(toAdd);
18   - }
19   -
20   - //CONSTRUCTOR
21   - public Scheduler(int intervalInMinutes) {
22   - //Start one minute from now
23   - startTime.setMinutes(startTime.getMinutes()+1);
24   - //Start on a full minute
25   - startTime.setSeconds(0);
26   -
27   - scheduleTimer.scheduleAtFixedRate(new TimerTask() {
28   - @Override
29   - public void run() {
30   - fetchReminders();
31   - }
32   - },startTime,intervalInMinutes * 1000 * 60);
33   -
34   - }
35   -
36   - public void fetchReminders() {
37   - //TODO: Establish DB connection and retrieve list of reminders
38   -
39   - //Create schedule event containing available reminders
40   - ScheduleEvent scheduleEvent = new ScheduleEvent(this, _reminders);
41   - //Make scheduleListeners Array iteratable
42   - Iterator scheduleListeners = _scheduleListeners.iterator();
43   - //Iterate through Schedule Listeners
44   - for (ScheduleListener scheduleListener:_scheduleListeners)
45   - {
46   - scheduleListener.receiveScheduleEvent(scheduleEvent);
47   -
48   - }
49   -
50   - }
51   -
52   - public void createReminder(Long userID, ReminderCycle reminderCycle, Date cycleDate) {
53   - Reminder newReminder = new Reminder(userID, reminderCycle, cycleDate);
54   - //TODO: Insert the new Reminder into Database
55   -
56   - }
57   -
58   -}
services/Scheduler/src/main/java/de/bht/beuthbot/scheduler/SchedulerBean.java 0 → 100644
  1 +package de.bht.beuthbot.scheduler;
  2 +
  3 +import de.bht.beuthbot.attachments.AttachmentStore;
  4 +import de.bht.beuthbot.scheduler.model.Reminder;
  5 +import de.bht.beuthbot.scheduler.model.ReminderCycle;
  6 +import org.slf4j.Logger;
  7 +import org.slf4j.LoggerFactory;
  8 +
  9 +import de.bht.beuthbot.conf.Application;
  10 +import de.bht.beuthbot.conf.Configuration;
  11 +import de.bht.beuthbot.jms.ProcessQueue;
  12 +import de.bht.beuthbot.jms.TaskMessage;
  13 +
  14 +import java.util.*;
  15 +import javax.annotation.PostConstruct;
  16 +import javax.annotation.Resource;
  17 +import javax.ejb.Singleton;
  18 +import javax.ejb.Schedule;
  19 +import javax.ejb.Stateless;
  20 +import javax.ejb.Timeout;
  21 +import javax.ejb.Timer;
  22 +import javax.ejb.TimerService;
  23 +
  24 +@Singleton
  25 +public class SchedulerBean {
  26 + /**
  27 + * slf4j Logger
  28 + */
  29 + private final Logger logger = LoggerFactory.getLogger(SchedulerBean.class);
  30 + //Timer object for call cycling
  31 + @Resource
  32 + TimerService timerService;
  33 + /** Injected JMS MessageQueue */
  34 + @Resource(lookup = "java:global/global/ProcessQueueBean")
  35 + private ProcessQueue processQueue;
  36 +
  37 + /** Injected AttachmentStore */
  38 + @Resource(lookup = "java:global/global/AttachmentStoreBean")
  39 + private AttachmentStore attachmentStore;
  40 +
  41 + /** BeuthBot Application Bean */
  42 + @Resource(lookup = "java:global/global/ApplicationBean")
  43 + private Application application;
  44 +
  45 + //list of reminders to be populated with data from the DB
  46 + private ArrayList<Reminder> _reminders = new ArrayList<>();
  47 +
  48 + //CONSTRUCTOR
  49 + @PostConstruct
  50 + public void init(){
  51 +
  52 + }
  53 +
  54 +
  55 + @Schedule(minute="*")
  56 + public void fetchReminders() {
  57 + //TODO: Establish DB connection and retrieve list of reminders
  58 + logger.debug("SchedulerBean fired!");
  59 +
  60 +
  61 + }
  62 +
  63 + public void createReminder(Long userID, ReminderCycle reminderCycle, Date cycleDate) {
  64 + Reminder newReminder = new Reminder(userID, reminderCycle, cycleDate);
  65 + //TODO: Insert the new Reminder into Database
  66 +
  67 + }
  68 +
  69 +}
... ...