From 1921647081695f5589d578209316f23ea11df0e4 Mon Sep 17 00:00:00 2001 From: Igal Avraham Date: Tue, 5 Mar 2019 18:27:14 +0200 Subject: [PATCH 1/5] Adding custom log support using ILogger interface --- hsm/src/main/java/de/artcom/hsm/ILogger.java | 5 +++++ hsm/src/main/java/de/artcom/hsm/StateMachine.java | 8 ++++++-- 2 files changed, 11 insertions(+), 2 deletions(-) create mode 100644 hsm/src/main/java/de/artcom/hsm/ILogger.java diff --git a/hsm/src/main/java/de/artcom/hsm/ILogger.java b/hsm/src/main/java/de/artcom/hsm/ILogger.java new file mode 100644 index 0000000..b794f8e --- /dev/null +++ b/hsm/src/main/java/de/artcom/hsm/ILogger.java @@ -0,0 +1,5 @@ +package de.artcom.hsm; + +public interface ILogger { + void debug(String tag,String message); +} diff --git a/hsm/src/main/java/de/artcom/hsm/StateMachine.java b/hsm/src/main/java/de/artcom/hsm/StateMachine.java index 4f13b3a..f9b2af6 100644 --- a/hsm/src/main/java/de/artcom/hsm/StateMachine.java +++ b/hsm/src/main/java/de/artcom/hsm/StateMachine.java @@ -15,7 +15,7 @@ public class StateMachine implements EventHandler { - final static Logger LOGGER = LoggerFactory.getLogger(StateMachine.class); + static Logger LOGGER = LoggerFactory.getLogger(StateMachine.class); private final List mStateList = new ArrayList(); private final List mDescendantStateList = new ArrayList(); @@ -26,7 +26,7 @@ public class StateMachine implements EventHandler { private boolean mEventQueueInProgress = false; private final List mPath = new ArrayList(); private State mContainer; - + private ILogger logger; public StateMachine(String name, State initialState, State... states) { this(initialState, states); mName = name; @@ -42,6 +42,10 @@ public StateMachine(State initialState, State... states) { mName = ""; } + void setLogger(ILogger log) + { + LOGGER = (Logger)log; + } void setContainer(State container) { mContainer = container; } From c653f2f357cb5cdcf63bfac3fd5c513001bef0f8 Mon Sep 17 00:00:00 2001 From: Igal Avraham Date: Tue, 5 Mar 2019 18:53:16 +0200 Subject: [PATCH 2/5] Adding custom log support using ILogger interface Adding unit test Removing dependency with slf4j --- hsm/build.gradle | 2 +- hsm/src/main/java/de/artcom/hsm/ILogger.java | 2 +- .../main/java/de/artcom/hsm/StateMachine.java | 17 +++++--- tests/build.gradle | 1 + .../hsm/test/CustomLogStateMachineTest.java | 42 +++++++++++++++++++ .../de/artcom/hsm/test/helper/Logger.java | 14 +++++++ 6 files changed, 71 insertions(+), 7 deletions(-) create mode 100644 tests/src/test/java/de/artcom/hsm/test/CustomLogStateMachineTest.java create mode 100644 tests/src/test/java/de/artcom/hsm/test/helper/Logger.java diff --git a/hsm/build.gradle b/hsm/build.gradle index 82918bd..647a6b7 100644 --- a/hsm/build.gradle +++ b/hsm/build.gradle @@ -30,7 +30,7 @@ publishing { } dependencies { - compile 'org.slf4j:slf4j-api:1.7.3' +// compile 'org.slf4j:slf4j-api:1.7.3' /* compile 'com.google.guava:guava:17.0' */ compile 'com.google.guava:guava-jdk5:13.0' } diff --git a/hsm/src/main/java/de/artcom/hsm/ILogger.java b/hsm/src/main/java/de/artcom/hsm/ILogger.java index b794f8e..90935ba 100644 --- a/hsm/src/main/java/de/artcom/hsm/ILogger.java +++ b/hsm/src/main/java/de/artcom/hsm/ILogger.java @@ -1,5 +1,5 @@ package de.artcom.hsm; public interface ILogger { - void debug(String tag,String message); + void debug(String message); } diff --git a/hsm/src/main/java/de/artcom/hsm/StateMachine.java b/hsm/src/main/java/de/artcom/hsm/StateMachine.java index f9b2af6..6a1644d 100644 --- a/hsm/src/main/java/de/artcom/hsm/StateMachine.java +++ b/hsm/src/main/java/de/artcom/hsm/StateMachine.java @@ -1,8 +1,8 @@ package de.artcom.hsm; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; + +import java.io.Console; import java.util.ArrayList; import java.util.Arrays; import java.util.HashMap; @@ -12,10 +12,17 @@ import java.util.Queue; import java.util.Set; import java.util.concurrent.ConcurrentLinkedQueue; +import java.util.logging.Level; +import java.util.logging.Logger; public class StateMachine implements EventHandler { - static Logger LOGGER = LoggerFactory.getLogger(StateMachine.class); + static ILogger LOGGER = new ILogger() { + @Override + public void debug(String message) { + Logger.getAnonymousLogger().log(Level.INFO,message); + } + }; private final List mStateList = new ArrayList(); private final List mDescendantStateList = new ArrayList(); @@ -42,9 +49,9 @@ public StateMachine(State initialState, State... states) { mName = ""; } - void setLogger(ILogger log) + public void setLogger(ILogger log) { - LOGGER = (Logger)log; + LOGGER = log; } void setContainer(State container) { mContainer = container; diff --git a/tests/build.gradle b/tests/build.gradle index a0f22e7..4e8ff6d 100644 --- a/tests/build.gradle +++ b/tests/build.gradle @@ -29,4 +29,5 @@ dependencies { testCompile 'junit:junit:4.12' testCompile 'org.mockito:mockito-core:1.10.8' + testCompile 'com.orhanobut:logger:2.2.0' } diff --git a/tests/src/test/java/de/artcom/hsm/test/CustomLogStateMachineTest.java b/tests/src/test/java/de/artcom/hsm/test/CustomLogStateMachineTest.java new file mode 100644 index 0000000..aa91647 --- /dev/null +++ b/tests/src/test/java/de/artcom/hsm/test/CustomLogStateMachineTest.java @@ -0,0 +1,42 @@ +package de.artcom.hsm.test; + +import de.artcom.hsm.*; +import de.artcom.hsm.test.helper.Logger; +import groovy.util.logging.Log; +import org.junit.Assert; +import org.junit.Test; +import org.mockito.InOrder; + +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +import static org.hamcrest.MatcherAssert.assertThat; +import static org.hamcrest.Matchers.*; +import static org.mockito.Mockito.*; + +public class CustomLogStateMachineTest { + + + + @Test + public void getAllActiveStates() { + // given: + State a11 = new State("a11"); + State a22 = new State("a22"); + State a33 = new State("a33"); + Parallel a1 = new Parallel("a1", new StateMachine(a11), new StateMachine(a22, a33)); + Sub a = new Sub("a", a1); + StateMachine sm = new StateMachine(a); + sm.setLogger(new Logger()); + sm.init(); + + // when: + List allActiveStates = sm.getAllActiveStates(); + + // then: + assertThat(allActiveStates, hasItems(a, a1, a11, a22)); + assertThat(allActiveStates, not(hasItems(a33))); + } + +} diff --git a/tests/src/test/java/de/artcom/hsm/test/helper/Logger.java b/tests/src/test/java/de/artcom/hsm/test/helper/Logger.java new file mode 100644 index 0000000..e3ff64e --- /dev/null +++ b/tests/src/test/java/de/artcom/hsm/test/helper/Logger.java @@ -0,0 +1,14 @@ +package de.artcom.hsm.test.helper; + +import de.artcom.hsm.ILogger; + +import java.util.logging.Level; + +public class Logger implements ILogger { + + + @Override + public void debug(String message) { + java.util.logging.Logger.getAnonymousLogger().log(Level.ALL,message); + } +} From 9365732eb9bc5a26e8ca6a3711d1f8b28a466e30 Mon Sep 17 00:00:00 2001 From: Igal Avraham Date: Wed, 6 Mar 2019 14:08:43 +0200 Subject: [PATCH 3/5] Adding custom log support for state class as well Adding unit test Removing dependency with slf4j --- hsm/src/main/java/de/artcom/hsm/State.java | 16 ++++++++++++---- .../hsm/test/CustomLogStateMachineTest.java | 4 +++- 2 files changed, 15 insertions(+), 5 deletions(-) diff --git a/hsm/src/main/java/de/artcom/hsm/State.java b/hsm/src/main/java/de/artcom/hsm/State.java index 25cb78e..084fb27 100644 --- a/hsm/src/main/java/de/artcom/hsm/State.java +++ b/hsm/src/main/java/de/artcom/hsm/State.java @@ -2,18 +2,23 @@ import com.google.common.collect.LinkedListMultimap; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; import java.util.ArrayList; import java.util.Collection; import java.util.HashMap; import java.util.List; import java.util.Map; +import java.util.logging.Level; +import java.util.logging.Logger; public class State> { - final static Logger LOGGER = LoggerFactory.getLogger(State.class); + static ILogger LOGGER = new ILogger() { + @Override + public void debug(String message) { + Logger.getAnonymousLogger().log(Level.INFO,message); + } + }; private final String mId; private Action mOnEnterAction; @@ -29,7 +34,10 @@ public State(String id) { mHandlers = LinkedListMultimap.create(); mId = id; } - + public void setLogger(ILogger log) + { + LOGGER = log; + } public T onEnter(Action onEnterAction) { mOnEnterAction = onEnterAction; return getThis(); diff --git a/tests/src/test/java/de/artcom/hsm/test/CustomLogStateMachineTest.java b/tests/src/test/java/de/artcom/hsm/test/CustomLogStateMachineTest.java index aa91647..389df14 100644 --- a/tests/src/test/java/de/artcom/hsm/test/CustomLogStateMachineTest.java +++ b/tests/src/test/java/de/artcom/hsm/test/CustomLogStateMachineTest.java @@ -22,13 +22,15 @@ public class CustomLogStateMachineTest { @Test public void getAllActiveStates() { // given: + ILogger log = new Logger(); State a11 = new State("a11"); State a22 = new State("a22"); State a33 = new State("a33"); Parallel a1 = new Parallel("a1", new StateMachine(a11), new StateMachine(a22, a33)); Sub a = new Sub("a", a1); + a11.setLogger(log); StateMachine sm = new StateMachine(a); - sm.setLogger(new Logger()); + sm.setLogger(log); sm.init(); // when: From 5f9bf2c1d0855a09705165d259c396fa6dfb04f5 Mon Sep 17 00:00:00 2001 From: Igal Avraham Date: Tue, 12 Mar 2019 12:51:42 +0200 Subject: [PATCH 4/5] Removing android dependancy --- tests/build.gradle | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/build.gradle b/tests/build.gradle index 4e8ff6d..84e5cc7 100644 --- a/tests/build.gradle +++ b/tests/build.gradle @@ -29,5 +29,5 @@ dependencies { testCompile 'junit:junit:4.12' testCompile 'org.mockito:mockito-core:1.10.8' - testCompile 'com.orhanobut:logger:2.2.0' + } From 2cb1aeb31630f240b8e2c01eaf516e79f90cbf0d Mon Sep 17 00:00:00 2001 From: Igal Avraham Date: Sun, 8 Dec 2019 10:34:54 +0200 Subject: [PATCH 5/5] Fix static logger --- .idea/.gitignore | 2 + .idea/caches/build_file_checksums.ser | Bin 0 -> 496 bytes .idea/compiler.xml | 11 ++ .idea/encodings.xml | 4 + .idea/gradle.xml | 23 +++ .idea/jarRepositories.xml | 35 +++++ ...__ch_qos_logback_logback_classic_1_1_2.xml | 12 ++ ...dle__ch_qos_logback_logback_core_1_1_2.xml | 12 ++ ...adle__com_google_guava_guava_jdk5_13_0.xml | 12 ++ .idea/libraries/Gradle__junit_junit_4_12.xml | 12 ++ .../Gradle__junit_junit_dep_4_10.xml | 11 ++ ...__org_codehaus_groovy_groovy_all_2_4_0.xml | 12 ++ ...Gradle__org_hamcrest_hamcrest_core_1_3.xml | 12 ++ ..._org_hamcrest_hamcrest_integration_1_3.xml | 12 ++ ...dle__org_hamcrest_hamcrest_library_1_3.xml | 12 ++ ...radle__org_mockito_mockito_core_1_10_8.xml | 12 ++ .../Gradle__org_objenesis_objenesis_2_1.xml | 11 ++ .../Gradle__org_slf4j_slf4j_api_1_7_6.xml | 11 ++ ...ockframework_spock_core_0_7_groovy_2_0.xml | 12 ++ .idea/misc.xml | 6 + .idea/modules.xml | 14 ++ .idea/modules/hsm/hsm-java.hsm.iml | 13 ++ .idea/modules/hsm/hsm-java.hsm.main.iml | 13 ++ .idea/modules/hsm/hsm-java.hsm.test.iml | 13 ++ .../modules/hsm/module_hsm-java.hsm.main.xml | 85 +++++++++++ .../modules/hsm/module_hsm-java.hsm.test.xml | 65 +++++++++ .idea/modules/hsm/module_hsm-java.hsm.xml | 56 ++++++++ .idea/modules/tests/hsm-java.tests.iml | 13 ++ .idea/modules/tests/hsm-java.tests.main.iml | 12 ++ .idea/modules/tests/hsm-java.tests.test.iml | 28 ++++ .../tests/module_hsm-java.tests.main.xml | 67 +++++++++ .../tests/module_hsm-java.tests.test.xml | 135 ++++++++++++++++++ .idea/modules/tests/module_hsm-java.tests.xml | 56 ++++++++ .idea/vcs.xml | 6 + build.gradle | 4 +- gradle/wrapper/gradle-wrapper.jar | Bin 50514 -> 54417 bytes gradle/wrapper/gradle-wrapper.properties | 3 +- gradlew | 78 +++++----- gradlew.bat | 14 +- hsm-java.iml | 12 ++ hsm/src/main/java/de/artcom/hsm/State.java | 4 +- .../main/java/de/artcom/hsm/StateMachine.java | 2 +- 42 files changed, 876 insertions(+), 51 deletions(-) create mode 100644 .idea/.gitignore create mode 100644 .idea/caches/build_file_checksums.ser create mode 100644 .idea/compiler.xml create mode 100644 .idea/encodings.xml create mode 100644 .idea/gradle.xml create mode 100644 .idea/jarRepositories.xml create mode 100644 .idea/libraries/Gradle__ch_qos_logback_logback_classic_1_1_2.xml create mode 100644 .idea/libraries/Gradle__ch_qos_logback_logback_core_1_1_2.xml create mode 100644 .idea/libraries/Gradle__com_google_guava_guava_jdk5_13_0.xml create mode 100644 .idea/libraries/Gradle__junit_junit_4_12.xml create mode 100644 .idea/libraries/Gradle__junit_junit_dep_4_10.xml create mode 100644 .idea/libraries/Gradle__org_codehaus_groovy_groovy_all_2_4_0.xml create mode 100644 .idea/libraries/Gradle__org_hamcrest_hamcrest_core_1_3.xml create mode 100644 .idea/libraries/Gradle__org_hamcrest_hamcrest_integration_1_3.xml create mode 100644 .idea/libraries/Gradle__org_hamcrest_hamcrest_library_1_3.xml create mode 100644 .idea/libraries/Gradle__org_mockito_mockito_core_1_10_8.xml create mode 100644 .idea/libraries/Gradle__org_objenesis_objenesis_2_1.xml create mode 100644 .idea/libraries/Gradle__org_slf4j_slf4j_api_1_7_6.xml create mode 100644 .idea/libraries/Gradle__org_spockframework_spock_core_0_7_groovy_2_0.xml create mode 100644 .idea/misc.xml create mode 100644 .idea/modules.xml create mode 100644 .idea/modules/hsm/hsm-java.hsm.iml create mode 100644 .idea/modules/hsm/hsm-java.hsm.main.iml create mode 100644 .idea/modules/hsm/hsm-java.hsm.test.iml create mode 100644 .idea/modules/hsm/module_hsm-java.hsm.main.xml create mode 100644 .idea/modules/hsm/module_hsm-java.hsm.test.xml create mode 100644 .idea/modules/hsm/module_hsm-java.hsm.xml create mode 100644 .idea/modules/tests/hsm-java.tests.iml create mode 100644 .idea/modules/tests/hsm-java.tests.main.iml create mode 100644 .idea/modules/tests/hsm-java.tests.test.iml create mode 100644 .idea/modules/tests/module_hsm-java.tests.main.xml create mode 100644 .idea/modules/tests/module_hsm-java.tests.test.xml create mode 100644 .idea/modules/tests/module_hsm-java.tests.xml create mode 100644 .idea/vcs.xml create mode 100644 hsm-java.iml 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/caches/build_file_checksums.ser b/.idea/caches/build_file_checksums.ser new file mode 100644 index 0000000000000000000000000000000000000000..386e077ae2d0da40068034224d3c68b71786fc2b GIT binary patch literal 496 zcmZ4UmVvdnh`~NNKUXg?FQq6yGexf?KR>5fFEb@IQ7^qHF(oHeub?PDD>b=9F91S2 zm1gFoxMk*~I%lLNXBU^|7Q2L-Ts|(GuF1r}uGBYr_F>vMNC#JY1CYR(Fc`|U8WE7Gd(dUv8*UDBQaMWYKA@{fC^HJN-|T6OA8t57}!7tU6Jj%+0U?vPi@Rl0X3mvmUN+{rPFr1?I>xKe+zq(A8N&7fKiea`KZCb3nn4Vd?{$qFR<0 mYj>u*oHTs0&d;xeK@g7{yw^vY)te_5=U-fT>EiWBr3wHJ_O7e| literal 0 HcmV?d00001 diff --git a/.idea/compiler.xml b/.idea/compiler.xml new file mode 100644 index 0000000..fd8bfea --- /dev/null +++ b/.idea/compiler.xml @@ -0,0 +1,11 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/encodings.xml b/.idea/encodings.xml new file mode 100644 index 0000000..15a15b2 --- /dev/null +++ b/.idea/encodings.xml @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/.idea/gradle.xml b/.idea/gradle.xml new file mode 100644 index 0000000..5918b36 --- /dev/null +++ b/.idea/gradle.xml @@ -0,0 +1,23 @@ + + + + + + + \ No newline at end of file diff --git a/.idea/jarRepositories.xml b/.idea/jarRepositories.xml new file mode 100644 index 0000000..b8d198b --- /dev/null +++ b/.idea/jarRepositories.xml @@ -0,0 +1,35 @@ + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/libraries/Gradle__ch_qos_logback_logback_classic_1_1_2.xml b/.idea/libraries/Gradle__ch_qos_logback_logback_classic_1_1_2.xml new file mode 100644 index 0000000..47a8dd3 --- /dev/null +++ b/.idea/libraries/Gradle__ch_qos_logback_logback_classic_1_1_2.xml @@ -0,0 +1,12 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/libraries/Gradle__ch_qos_logback_logback_core_1_1_2.xml b/.idea/libraries/Gradle__ch_qos_logback_logback_core_1_1_2.xml new file mode 100644 index 0000000..4637511 --- /dev/null +++ b/.idea/libraries/Gradle__ch_qos_logback_logback_core_1_1_2.xml @@ -0,0 +1,12 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/libraries/Gradle__com_google_guava_guava_jdk5_13_0.xml b/.idea/libraries/Gradle__com_google_guava_guava_jdk5_13_0.xml new file mode 100644 index 0000000..54ed937 --- /dev/null +++ b/.idea/libraries/Gradle__com_google_guava_guava_jdk5_13_0.xml @@ -0,0 +1,12 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/libraries/Gradle__junit_junit_4_12.xml b/.idea/libraries/Gradle__junit_junit_4_12.xml new file mode 100644 index 0000000..7104f8c --- /dev/null +++ b/.idea/libraries/Gradle__junit_junit_4_12.xml @@ -0,0 +1,12 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/libraries/Gradle__junit_junit_dep_4_10.xml b/.idea/libraries/Gradle__junit_junit_dep_4_10.xml new file mode 100644 index 0000000..c2d6895 --- /dev/null +++ b/.idea/libraries/Gradle__junit_junit_dep_4_10.xml @@ -0,0 +1,11 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/libraries/Gradle__org_codehaus_groovy_groovy_all_2_4_0.xml b/.idea/libraries/Gradle__org_codehaus_groovy_groovy_all_2_4_0.xml new file mode 100644 index 0000000..fd17d6a --- /dev/null +++ b/.idea/libraries/Gradle__org_codehaus_groovy_groovy_all_2_4_0.xml @@ -0,0 +1,12 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/libraries/Gradle__org_hamcrest_hamcrest_core_1_3.xml b/.idea/libraries/Gradle__org_hamcrest_hamcrest_core_1_3.xml new file mode 100644 index 0000000..3d1348e --- /dev/null +++ b/.idea/libraries/Gradle__org_hamcrest_hamcrest_core_1_3.xml @@ -0,0 +1,12 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/libraries/Gradle__org_hamcrest_hamcrest_integration_1_3.xml b/.idea/libraries/Gradle__org_hamcrest_hamcrest_integration_1_3.xml new file mode 100644 index 0000000..b3ed2ba --- /dev/null +++ b/.idea/libraries/Gradle__org_hamcrest_hamcrest_integration_1_3.xml @@ -0,0 +1,12 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/libraries/Gradle__org_hamcrest_hamcrest_library_1_3.xml b/.idea/libraries/Gradle__org_hamcrest_hamcrest_library_1_3.xml new file mode 100644 index 0000000..bee5237 --- /dev/null +++ b/.idea/libraries/Gradle__org_hamcrest_hamcrest_library_1_3.xml @@ -0,0 +1,12 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/libraries/Gradle__org_mockito_mockito_core_1_10_8.xml b/.idea/libraries/Gradle__org_mockito_mockito_core_1_10_8.xml new file mode 100644 index 0000000..3911a20 --- /dev/null +++ b/.idea/libraries/Gradle__org_mockito_mockito_core_1_10_8.xml @@ -0,0 +1,12 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/libraries/Gradle__org_objenesis_objenesis_2_1.xml b/.idea/libraries/Gradle__org_objenesis_objenesis_2_1.xml new file mode 100644 index 0000000..e6b52ad --- /dev/null +++ b/.idea/libraries/Gradle__org_objenesis_objenesis_2_1.xml @@ -0,0 +1,11 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/libraries/Gradle__org_slf4j_slf4j_api_1_7_6.xml b/.idea/libraries/Gradle__org_slf4j_slf4j_api_1_7_6.xml new file mode 100644 index 0000000..b4476b3 --- /dev/null +++ b/.idea/libraries/Gradle__org_slf4j_slf4j_api_1_7_6.xml @@ -0,0 +1,11 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/libraries/Gradle__org_spockframework_spock_core_0_7_groovy_2_0.xml b/.idea/libraries/Gradle__org_spockframework_spock_core_0_7_groovy_2_0.xml new file mode 100644 index 0000000..50e61a0 --- /dev/null +++ b/.idea/libraries/Gradle__org_spockframework_spock_core_0_7_groovy_2_0.xml @@ -0,0 +1,12 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml new file mode 100644 index 0000000..84da703 --- /dev/null +++ b/.idea/misc.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/.idea/modules.xml b/.idea/modules.xml new file mode 100644 index 0000000..2ab88d3 --- /dev/null +++ b/.idea/modules.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/modules/hsm/hsm-java.hsm.iml b/.idea/modules/hsm/hsm-java.hsm.iml new file mode 100644 index 0000000..c4ebe8f --- /dev/null +++ b/.idea/modules/hsm/hsm-java.hsm.iml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/modules/hsm/hsm-java.hsm.main.iml b/.idea/modules/hsm/hsm-java.hsm.main.iml new file mode 100644 index 0000000..4f4ccf3 --- /dev/null +++ b/.idea/modules/hsm/hsm-java.hsm.main.iml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/modules/hsm/hsm-java.hsm.test.iml b/.idea/modules/hsm/hsm-java.hsm.test.iml new file mode 100644 index 0000000..c328677 --- /dev/null +++ b/.idea/modules/hsm/hsm-java.hsm.test.iml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/modules/hsm/module_hsm-java.hsm.main.xml b/.idea/modules/hsm/module_hsm-java.hsm.main.xml new file mode 100644 index 0000000..8555b58 --- /dev/null +++ b/.idea/modules/hsm/module_hsm-java.hsm.main.xml @@ -0,0 +1,85 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/modules/hsm/module_hsm-java.hsm.test.xml b/.idea/modules/hsm/module_hsm-java.hsm.test.xml new file mode 100644 index 0000000..f0b08d8 --- /dev/null +++ b/.idea/modules/hsm/module_hsm-java.hsm.test.xml @@ -0,0 +1,65 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/modules/hsm/module_hsm-java.hsm.xml b/.idea/modules/hsm/module_hsm-java.hsm.xml new file mode 100644 index 0000000..a912190 --- /dev/null +++ b/.idea/modules/hsm/module_hsm-java.hsm.xml @@ -0,0 +1,56 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/modules/tests/hsm-java.tests.iml b/.idea/modules/tests/hsm-java.tests.iml new file mode 100644 index 0000000..d84bb46 --- /dev/null +++ b/.idea/modules/tests/hsm-java.tests.iml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/modules/tests/hsm-java.tests.main.iml b/.idea/modules/tests/hsm-java.tests.main.iml new file mode 100644 index 0000000..7a8685d --- /dev/null +++ b/.idea/modules/tests/hsm-java.tests.main.iml @@ -0,0 +1,12 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/modules/tests/hsm-java.tests.test.iml b/.idea/modules/tests/hsm-java.tests.test.iml new file mode 100644 index 0000000..caaed06 --- /dev/null +++ b/.idea/modules/tests/hsm-java.tests.test.iml @@ -0,0 +1,28 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/modules/tests/module_hsm-java.tests.main.xml b/.idea/modules/tests/module_hsm-java.tests.main.xml new file mode 100644 index 0000000..16fd6c2 --- /dev/null +++ b/.idea/modules/tests/module_hsm-java.tests.main.xml @@ -0,0 +1,67 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/modules/tests/module_hsm-java.tests.test.xml b/.idea/modules/tests/module_hsm-java.tests.test.xml new file mode 100644 index 0000000..1448da1 --- /dev/null +++ b/.idea/modules/tests/module_hsm-java.tests.test.xml @@ -0,0 +1,135 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/modules/tests/module_hsm-java.tests.xml b/.idea/modules/tests/module_hsm-java.tests.xml new file mode 100644 index 0000000..e399753 --- /dev/null +++ b/.idea/modules/tests/module_hsm-java.tests.xml @@ -0,0 +1,56 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ 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 @@ + + + + + + \ No newline at end of file diff --git a/build.gradle b/build.gradle index ce22f1e..f173ca8 100644 --- a/build.gradle +++ b/build.gradle @@ -4,7 +4,9 @@ task wrapper(type: Wrapper) { allprojects { repositories { - mavenCentral() + jcenter() + google() + mavenLocal() } } diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar index 667288ad6c2b3b87c990ece1267e56f0bcbf3622..758de960ec7947253b058ff79c88ce51f3abe08a 100644 GIT binary patch delta 47262 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

)ZnVL*cR_@j2ObG#ET+&?esLkPl^2?!1OS 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

Jplt&y?dei4;HDE~fHo0i8oWYud2ZwkN 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 TQ2_vU=#MoP05DyB_uu~j+P-w0 diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index bb8c6ae..2d80b69 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,5 @@ -#Mon Feb 23 09:41:19 CET 2015 distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-4.8.1-bin.zip zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=http\://services.gradle.org/distributions/gradle-2.2.1-all.zip diff --git a/gradlew b/gradlew index 91a7e26..cccdd3d 100755 --- a/gradlew +++ b/gradlew @@ -1,4 +1,4 @@ -#!/usr/bin/env bash +#!/usr/bin/env sh ############################################################################## ## @@ -6,20 +6,38 @@ ## ############################################################################## -# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. -DEFAULT_JVM_OPTS="" +# Attempt to set APP_HOME +# Resolve links: $0 may be a link +PRG="$0" +# Need this for relative symlinks. +while [ -h "$PRG" ] ; do + ls=`ls -ld "$PRG"` + link=`expr "$ls" : '.*-> \(.*\)$'` + if expr "$link" : '/.*' > /dev/null; then + PRG="$link" + else + PRG=`dirname "$PRG"`"/$link" + fi +done +SAVED="`pwd`" +cd "`dirname \"$PRG\"`/" >/dev/null +APP_HOME="`pwd -P`" +cd "$SAVED" >/dev/null APP_NAME="Gradle" APP_BASE_NAME=`basename "$0"` +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS="" + # Use the maximum available, or set MAX_FD != -1 to use that value. MAX_FD="maximum" -warn ( ) { +warn () { echo "$*" } -die ( ) { +die () { echo echo "$*" echo @@ -30,6 +48,7 @@ die ( ) { cygwin=false msys=false darwin=false +nonstop=false case "`uname`" in CYGWIN* ) cygwin=true @@ -40,31 +59,11 @@ case "`uname`" in MINGW* ) msys=true ;; + NONSTOP* ) + nonstop=true + ;; esac -# For Cygwin, ensure paths are in UNIX format before anything is touched. -if $cygwin ; then - [ -n "$JAVA_HOME" ] && JAVA_HOME=`cygpath --unix "$JAVA_HOME"` -fi - -# Attempt to set APP_HOME -# Resolve links: $0 may be a link -PRG="$0" -# Need this for relative symlinks. -while [ -h "$PRG" ] ; do - ls=`ls -ld "$PRG"` - link=`expr "$ls" : '.*-> \(.*\)$'` - if expr "$link" : '/.*' > /dev/null; then - PRG="$link" - else - PRG=`dirname "$PRG"`"/$link" - fi -done -SAVED="`pwd`" -cd "`dirname \"$PRG\"`/" >&- -APP_HOME="`pwd -P`" -cd "$SAVED" >&- - CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar # Determine the Java command to use to start the JVM. @@ -90,7 +89,7 @@ location of your Java installation." fi # Increase the maximum file descriptors if we can. -if [ "$cygwin" = "false" -a "$darwin" = "false" ] ; then +if [ "$cygwin" = "false" -a "$darwin" = "false" -a "$nonstop" = "false" ] ; then MAX_FD_LIMIT=`ulimit -H -n` if [ $? -eq 0 ] ; then if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then @@ -114,6 +113,7 @@ fi if $cygwin ; then APP_HOME=`cygpath --path --mixed "$APP_HOME"` CLASSPATH=`cygpath --path --mixed "$CLASSPATH"` + JAVACMD=`cygpath --unix "$JAVACMD"` # We build the pattern for arguments to be converted via cygpath ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null` @@ -154,11 +154,19 @@ if $cygwin ; then esac fi -# Split up the JVM_OPTS And GRADLE_OPTS values into an array, following the shell quoting and substitution rules -function splitJvmOpts() { - JVM_OPTS=("$@") +# Escape application args +save () { + for i do printf %s\\n "$i" | sed "s/'/'\\\\''/g;1s/^/'/;\$s/\$/' \\\\/" ; done + echo " " } -eval splitJvmOpts $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS -JVM_OPTS[${#JVM_OPTS[*]}]="-Dorg.gradle.appname=$APP_BASE_NAME" +APP_ARGS=$(save "$@") + +# Collect all arguments for the java command, following the shell quoting and substitution rules +eval set -- $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS "\"-Dorg.gradle.appname=$APP_BASE_NAME\"" -classpath "\"$CLASSPATH\"" org.gradle.wrapper.GradleWrapperMain "$APP_ARGS" + +# by default we should be in the correct project dir, but when run from Finder on Mac, the cwd is wrong +if [ "$(uname)" = "Darwin" ] && [ "$HOME" = "$PWD" ]; then + cd "$(dirname "$0")" +fi -exec "$JAVACMD" "${JVM_OPTS[@]}" -classpath "$CLASSPATH" org.gradle.wrapper.GradleWrapperMain "$@" +exec "$JAVACMD" "$@" diff --git a/gradlew.bat b/gradlew.bat index aec9973..e95643d 100644 --- a/gradlew.bat +++ b/gradlew.bat @@ -8,14 +8,14 @@ @rem Set local scope for the variables with windows NT shell if "%OS%"=="Windows_NT" setlocal -@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. -set DEFAULT_JVM_OPTS= - set DIRNAME=%~dp0 if "%DIRNAME%" == "" set DIRNAME=. set APP_BASE_NAME=%~n0 set APP_HOME=%DIRNAME% +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS= + @rem Find java.exe if defined JAVA_HOME goto findJavaFromJavaHome @@ -46,10 +46,9 @@ echo location of your Java installation. goto fail :init -@rem Get command-line arguments, handling Windowz variants +@rem Get command-line arguments, handling Windows variants if not "%OS%" == "Windows_NT" goto win9xME_args -if "%@eval[2+2]" == "4" goto 4NT_args :win9xME_args @rem Slurp the command line arguments. @@ -60,11 +59,6 @@ set _SKIP=2 if "x%~1" == "x" goto execute set CMD_LINE_ARGS=%* -goto execute - -:4NT_args -@rem Get arguments from the 4NT Shell from JP Software -set CMD_LINE_ARGS=%$ :execute @rem Setup the command line diff --git a/hsm-java.iml b/hsm-java.iml new file mode 100644 index 0000000..4da3820 --- /dev/null +++ b/hsm-java.iml @@ -0,0 +1,12 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/hsm/src/main/java/de/artcom/hsm/State.java b/hsm/src/main/java/de/artcom/hsm/State.java index 084fb27..6e1dbf8 100644 --- a/hsm/src/main/java/de/artcom/hsm/State.java +++ b/hsm/src/main/java/de/artcom/hsm/State.java @@ -1,7 +1,7 @@ package de.artcom.hsm; -import com.google.common.collect.LinkedListMultimap; +import com.google.common.collect.LinkedListMultimap; import java.util.ArrayList; import java.util.Collection; @@ -13,7 +13,7 @@ public class State> { - static ILogger LOGGER = new ILogger() { + ILogger LOGGER = new ILogger() { @Override public void debug(String message) { Logger.getAnonymousLogger().log(Level.INFO,message); diff --git a/hsm/src/main/java/de/artcom/hsm/StateMachine.java b/hsm/src/main/java/de/artcom/hsm/StateMachine.java index 6a1644d..770d2d5 100644 --- a/hsm/src/main/java/de/artcom/hsm/StateMachine.java +++ b/hsm/src/main/java/de/artcom/hsm/StateMachine.java @@ -17,7 +17,7 @@ public class StateMachine implements EventHandler { - static ILogger LOGGER = new ILogger() { + ILogger LOGGER = new ILogger() { @Override public void debug(String message) { Logger.getAnonymousLogger().log(Level.INFO,message);