aboutsummaryrefslogtreecommitdiffstats
path: root/core
diff options
context:
space:
mode:
authorliamfallon <liam.fallon@est.tech>2022-02-11 00:43:14 +0000
committerliamfallon <liam.fallon@est.tech>2022-02-11 00:43:18 +0000
commitf0fd964e343fe5a9cc2044d417fadf6cdd1ef0d1 (patch)
treec316685cbee53330570bcbf0509bc327ad118196 /core
parent8534756d13531ffec9c2d7b2ffe0a53ee1d3aaef (diff)
Remove apex-pdp unused core modules
This is the final review in the refactoring of the model code in apex-pdp. The core-messaging and core-infrastructure modules are unused in apex-pdp except for websocket communication. Websocket communication is also not used in any deployment. This review: - removes the core-mesaging module, which had an apex-specific websocket implementation, except for the MessageException class, which is moved to the base core module - removes the core-infrastructure module, except for the ThreadUtils class, which is moved to the base core module - removes the websocket event protocol, which used core-messaging but is not used in any deployment - collapses all three "core" submodules into a single module - Updates dependencies where needed Issue-ID: POLICY-1820 Change-Id: Ieae30063e99570e61943372d3fa23b77a211462c Signed-off-by: liamfallon <liam.fallon@est.tech>
Diffstat (limited to 'core')
-rw-r--r--core/core-engine/pom.xml72
-rw-r--r--core/core-infrastructure/pom.xml51
-rw-r--r--core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/java/JavaHandlingException.java58
-rw-r--r--core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/java/classes/ClassUtils.java259
-rw-r--r--core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/java/classes/package-info.java27
-rw-r--r--core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/java/compile/singleclass/SingleClassBuilder.java134
-rw-r--r--core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/java/compile/singleclass/SingleClassByteCodeFileObject.java84
-rw-r--r--core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/java/compile/singleclass/SingleClassCompilationUnit.java76
-rw-r--r--core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/java/compile/singleclass/SingleClassLoader.java47
-rw-r--r--core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/java/compile/singleclass/SingleFileManager.java73
-rw-r--r--core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/java/compile/singleclass/package-info.java28
-rw-r--r--core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/java/package-info.java27
-rw-r--r--core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/MessageHolder.java84
-rw-r--r--core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/MessageListener.java47
-rw-r--r--core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/MessagingService.java76
-rw-r--r--core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/MessagingServiceFactory.java58
-rw-r--r--core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/impl/ws/RawMessageHandler.java233
-rw-r--r--core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/impl/ws/WebSocketMessageListener.java58
-rw-r--r--core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/impl/ws/client/InternalMessageBusClient.java130
-rw-r--r--core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/impl/ws/client/MessagingClient.java154
-rw-r--r--core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/impl/ws/client/WebSocketClientImpl.java76
-rw-r--r--core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/impl/ws/client/package-info.java27
-rw-r--r--core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/impl/ws/messageblock/MessageBlock.java44
-rw-r--r--core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/impl/ws/messageblock/MessageBlockHandler.java128
-rw-r--r--core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/impl/ws/messageblock/RawMessageBlock.java42
-rw-r--r--core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/impl/ws/messageblock/package-info.java27
-rw-r--r--core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/impl/ws/package-info.java27
-rw-r--r--core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/impl/ws/server/InternalMessageBusServer.java131
-rw-r--r--core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/impl/ws/server/MessageServerImpl.java152
-rw-r--r--core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/impl/ws/server/WebSocketServerImpl.java80
-rw-r--r--core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/impl/ws/server/package-info.java27
-rw-r--r--core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/package-info.java27
-rw-r--r--core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/stringmessaging/WsStringMessageClient.java145
-rw-r--r--core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/stringmessaging/WsStringMessageListener.java37
-rw-r--r--core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/stringmessaging/WsStringMessageServer.java155
-rw-r--r--core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/stringmessaging/WsStringMessager.java57
-rw-r--r--core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/stringmessaging/package-info.java27
-rw-r--r--core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/util/MessagingUtils.java226
-rw-r--r--core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/util/package-info.java27
-rw-r--r--core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/package-info.java27
-rw-r--r--core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/xml/XPathReader.java116
-rw-r--r--core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/xml/package-info.java27
-rw-r--r--core/core-infrastructure/src/test/java/org/onap/policy/apex/core/infrastructure/java/classes/ClassUtilsTest.java70
-rw-r--r--core/core-infrastructure/src/test/java/org/onap/policy/apex/core/infrastructure/messaging/DummyMessageListener.java62
-rw-r--r--core/core-infrastructure/src/test/java/org/onap/policy/apex/core/infrastructure/messaging/EndToEndStringMessagingTest.java97
-rw-r--r--core/core-infrastructure/src/test/java/org/onap/policy/apex/core/infrastructure/messaging/MessagingUtilsTest.java71
-rw-r--r--core/core-infrastructure/src/test/java/org/onap/policy/apex/core/infrastructure/messaging/StringTestServer.java111
-rw-r--r--core/core-infrastructure/src/test/java/org/onap/policy/apex/core/infrastructure/xml/XPathReaderTest.java74
-rw-r--r--core/core-infrastructure/src/test/resources/logback-test.xml70
-rw-r--r--core/core-infrastructure/src/test/resources/xmlTestFile.xml20
-rw-r--r--core/core-protocols/pom.xml39
-rw-r--r--core/core-protocols/src/main/java/org/onap/policy/apex/core/protocols/Action.java39
-rw-r--r--core/core-protocols/src/main/java/org/onap/policy/apex/core/protocols/Message.java118
-rw-r--r--core/core-protocols/src/main/java/org/onap/policy/apex/core/protocols/package-info.java27
-rw-r--r--core/core-protocols/src/test/java/org/onap/policy/apex/core/protocols/DummyAction.java41
-rw-r--r--core/core-protocols/src/test/java/org/onap/policy/apex/core/protocols/DummyMessage.java40
-rw-r--r--core/core-protocols/src/test/java/org/onap/policy/apex/core/protocols/SupportMessageTest.java102
-rw-r--r--core/core-protocols/src/test/resources/logback-test.xml70
-rw-r--r--core/pom.xml38
-rw-r--r--core/src/main/java/org/onap/policy/apex/core/engine/EngineParameterConstants.java (renamed from core/core-engine/src/main/java/org/onap/policy/apex/core/engine/EngineParameterConstants.java)0
-rw-r--r--core/src/main/java/org/onap/policy/apex/core/engine/EngineParameters.java (renamed from core/core-engine/src/main/java/org/onap/policy/apex/core/engine/EngineParameters.java)0
-rw-r--r--core/src/main/java/org/onap/policy/apex/core/engine/ExecutorParameters.java (renamed from core/core-engine/src/main/java/org/onap/policy/apex/core/engine/ExecutorParameters.java)0
-rw-r--r--core/src/main/java/org/onap/policy/apex/core/engine/TaskParameters.java (renamed from core/core-engine/src/main/java/org/onap/policy/apex/core/engine/TaskParameters.java)0
-rw-r--r--core/src/main/java/org/onap/policy/apex/core/engine/context/ApexInternalContext.java (renamed from core/core-engine/src/main/java/org/onap/policy/apex/core/engine/context/ApexInternalContext.java)0
-rw-r--r--core/src/main/java/org/onap/policy/apex/core/engine/context/package-info.java (renamed from core/core-engine/src/main/java/org/onap/policy/apex/core/engine/context/package-info.java)0
-rw-r--r--core/src/main/java/org/onap/policy/apex/core/engine/engine/ApexEngine.java (renamed from core/core-engine/src/main/java/org/onap/policy/apex/core/engine/engine/ApexEngine.java)0
-rw-r--r--core/src/main/java/org/onap/policy/apex/core/engine/engine/EnEventListener.java (renamed from core/core-engine/src/main/java/org/onap/policy/apex/core/engine/engine/EnEventListener.java)0
-rw-r--r--core/src/main/java/org/onap/policy/apex/core/engine/engine/impl/ApexEngineConstants.java (renamed from core/core-engine/src/main/java/org/onap/policy/apex/core/engine/engine/impl/ApexEngineConstants.java)0
-rw-r--r--core/src/main/java/org/onap/policy/apex/core/engine/engine/impl/ApexEngineFactory.java (renamed from core/core-engine/src/main/java/org/onap/policy/apex/core/engine/engine/impl/ApexEngineFactory.java)0
-rw-r--r--core/src/main/java/org/onap/policy/apex/core/engine/engine/impl/ApexEngineImpl.java (renamed from core/core-engine/src/main/java/org/onap/policy/apex/core/engine/engine/impl/ApexEngineImpl.java)0
-rw-r--r--core/src/main/java/org/onap/policy/apex/core/engine/engine/impl/StateMachineHandler.java (renamed from core/core-engine/src/main/java/org/onap/policy/apex/core/engine/engine/impl/StateMachineHandler.java)0
-rw-r--r--core/src/main/java/org/onap/policy/apex/core/engine/engine/impl/package-info.java (renamed from core/core-engine/src/main/java/org/onap/policy/apex/core/engine/engine/impl/package-info.java)0
-rw-r--r--core/src/main/java/org/onap/policy/apex/core/engine/engine/package-info.java (renamed from core/core-engine/src/main/java/org/onap/policy/apex/core/engine/engine/package-info.java)0
-rw-r--r--core/src/main/java/org/onap/policy/apex/core/engine/event/EnEvent.java (renamed from core/core-engine/src/main/java/org/onap/policy/apex/core/engine/event/EnEvent.java)0
-rw-r--r--core/src/main/java/org/onap/policy/apex/core/engine/event/EnException.java (renamed from core/core-engine/src/main/java/org/onap/policy/apex/core/engine/event/EnException.java)0
-rw-r--r--core/src/main/java/org/onap/policy/apex/core/engine/event/EnField.java (renamed from core/core-engine/src/main/java/org/onap/policy/apex/core/engine/event/EnField.java)0
-rw-r--r--core/src/main/java/org/onap/policy/apex/core/engine/event/package-info.java (renamed from core/core-engine/src/main/java/org/onap/policy/apex/core/engine/event/package-info.java)0
-rw-r--r--core/src/main/java/org/onap/policy/apex/core/engine/executor/Executor.java (renamed from core/core-engine/src/main/java/org/onap/policy/apex/core/engine/executor/Executor.java)0
-rw-r--r--core/src/main/java/org/onap/policy/apex/core/engine/executor/ExecutorFactory.java (renamed from core/core-engine/src/main/java/org/onap/policy/apex/core/engine/executor/ExecutorFactory.java)0
-rw-r--r--core/src/main/java/org/onap/policy/apex/core/engine/executor/StateExecutor.java (renamed from core/core-engine/src/main/java/org/onap/policy/apex/core/engine/executor/StateExecutor.java)0
-rw-r--r--core/src/main/java/org/onap/policy/apex/core/engine/executor/StateFinalizerExecutor.java (renamed from core/core-engine/src/main/java/org/onap/policy/apex/core/engine/executor/StateFinalizerExecutor.java)0
-rw-r--r--core/src/main/java/org/onap/policy/apex/core/engine/executor/StateMachineExecutor.java (renamed from core/core-engine/src/main/java/org/onap/policy/apex/core/engine/executor/StateMachineExecutor.java)0
-rw-r--r--core/src/main/java/org/onap/policy/apex/core/engine/executor/StateOutput.java (renamed from core/core-engine/src/main/java/org/onap/policy/apex/core/engine/executor/StateOutput.java)0
-rw-r--r--core/src/main/java/org/onap/policy/apex/core/engine/executor/TaskExecutor.java (renamed from core/core-engine/src/main/java/org/onap/policy/apex/core/engine/executor/TaskExecutor.java)0
-rw-r--r--core/src/main/java/org/onap/policy/apex/core/engine/executor/TaskSelectExecutor.java (renamed from core/core-engine/src/main/java/org/onap/policy/apex/core/engine/executor/TaskSelectExecutor.java)0
-rw-r--r--core/src/main/java/org/onap/policy/apex/core/engine/executor/context/AbstractExecutionContext.java (renamed from core/core-engine/src/main/java/org/onap/policy/apex/core/engine/executor/context/AbstractExecutionContext.java)0
-rw-r--r--core/src/main/java/org/onap/policy/apex/core/engine/executor/context/AxStateFacade.java (renamed from core/core-engine/src/main/java/org/onap/policy/apex/core/engine/executor/context/AxStateFacade.java)0
-rw-r--r--core/src/main/java/org/onap/policy/apex/core/engine/executor/context/AxTaskFacade.java (renamed from core/core-engine/src/main/java/org/onap/policy/apex/core/engine/executor/context/AxTaskFacade.java)0
-rw-r--r--core/src/main/java/org/onap/policy/apex/core/engine/executor/context/StateFinalizerExecutionContext.java (renamed from core/core-engine/src/main/java/org/onap/policy/apex/core/engine/executor/context/StateFinalizerExecutionContext.java)0
-rw-r--r--core/src/main/java/org/onap/policy/apex/core/engine/executor/context/TaskExecutionContext.java (renamed from core/core-engine/src/main/java/org/onap/policy/apex/core/engine/executor/context/TaskExecutionContext.java)0
-rw-r--r--core/src/main/java/org/onap/policy/apex/core/engine/executor/context/TaskSelectionExecutionContext.java (renamed from core/core-engine/src/main/java/org/onap/policy/apex/core/engine/executor/context/TaskSelectionExecutionContext.java)0
-rw-r--r--core/src/main/java/org/onap/policy/apex/core/engine/executor/context/package-info.java (renamed from core/core-engine/src/main/java/org/onap/policy/apex/core/engine/executor/context/package-info.java)0
-rw-r--r--core/src/main/java/org/onap/policy/apex/core/engine/executor/exception/StateMachineException.java (renamed from core/core-engine/src/main/java/org/onap/policy/apex/core/engine/executor/exception/StateMachineException.java)0
-rw-r--r--core/src/main/java/org/onap/policy/apex/core/engine/executor/exception/StateMachineRuntimeException.java (renamed from core/core-engine/src/main/java/org/onap/policy/apex/core/engine/executor/exception/StateMachineRuntimeException.java)0
-rw-r--r--core/src/main/java/org/onap/policy/apex/core/engine/executor/exception/package-info.java (renamed from core/core-engine/src/main/java/org/onap/policy/apex/core/engine/executor/exception/package-info.java)0
-rw-r--r--core/src/main/java/org/onap/policy/apex/core/engine/executor/impl/ExecutorFactoryImpl.java (renamed from core/core-engine/src/main/java/org/onap/policy/apex/core/engine/executor/impl/ExecutorFactoryImpl.java)0
-rw-r--r--core/src/main/java/org/onap/policy/apex/core/engine/executor/impl/package-info.java (renamed from core/core-engine/src/main/java/org/onap/policy/apex/core/engine/executor/impl/package-info.java)0
-rw-r--r--core/src/main/java/org/onap/policy/apex/core/engine/executor/package-info.java (renamed from core/core-engine/src/main/java/org/onap/policy/apex/core/engine/executor/package-info.java)0
-rw-r--r--core/src/main/java/org/onap/policy/apex/core/engine/monitoring/EventMonitor.java (renamed from core/core-engine/src/main/java/org/onap/policy/apex/core/engine/monitoring/EventMonitor.java)0
-rw-r--r--core/src/main/java/org/onap/policy/apex/core/engine/monitoring/package-info.java (renamed from core/core-engine/src/main/java/org/onap/policy/apex/core/engine/monitoring/package-info.java)0
-rw-r--r--core/src/main/java/org/onap/policy/apex/core/engine/package-info.java (renamed from core/core-engine/src/main/java/org/onap/policy/apex/core/engine/package-info.java)0
-rw-r--r--core/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/MessagingException.java (renamed from core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/MessagingException.java)0
-rw-r--r--core/src/main/java/org/onap/policy/apex/core/infrastructure/threading/ApplicationThreadFactory.java (renamed from core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/threading/ApplicationThreadFactory.java)0
-rw-r--r--core/src/main/java/org/onap/policy/apex/core/infrastructure/threading/ThreadUtilities.java (renamed from core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/threading/ThreadUtilities.java)0
-rw-r--r--core/src/main/java/org/onap/policy/apex/core/infrastructure/threading/package-info.java (renamed from core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/threading/package-info.java)0
-rw-r--r--core/src/test/java/org/onap/policy/apex/core/engine/EngineParametersTest.java (renamed from core/core-engine/src/test/java/org/onap/policy/apex/core/engine/EngineParametersTest.java)0
-rw-r--r--core/src/test/java/org/onap/policy/apex/core/engine/ExecutorParametersTest.java (renamed from core/core-engine/src/test/java/org/onap/policy/apex/core/engine/ExecutorParametersTest.java)0
-rw-r--r--core/src/test/java/org/onap/policy/apex/core/engine/context/ApexInternalContextTest.java (renamed from core/core-engine/src/test/java/org/onap/policy/apex/core/engine/context/ApexInternalContextTest.java)0
-rw-r--r--core/src/test/java/org/onap/policy/apex/core/engine/engine/impl/ApexEngineImplTest.java (renamed from core/core-engine/src/test/java/org/onap/policy/apex/core/engine/engine/impl/ApexEngineImplTest.java)0
-rw-r--r--core/src/test/java/org/onap/policy/apex/core/engine/engine/impl/DummyEnEventListener.java (renamed from core/core-engine/src/test/java/org/onap/policy/apex/core/engine/engine/impl/DummyEnEventListener.java)0
-rw-r--r--core/src/test/java/org/onap/policy/apex/core/engine/engine/impl/DummyListener.java (renamed from core/core-engine/src/test/java/org/onap/policy/apex/core/engine/engine/impl/DummyListener.java)0
-rw-r--r--core/src/test/java/org/onap/policy/apex/core/engine/engine/impl/DummySlowEnEventListener.java (renamed from core/core-engine/src/test/java/org/onap/policy/apex/core/engine/engine/impl/DummySlowEnEventListener.java)0
-rw-r--r--core/src/test/java/org/onap/policy/apex/core/engine/engine/impl/DummySmExecutor.java (renamed from core/core-engine/src/test/java/org/onap/policy/apex/core/engine/engine/impl/DummySmExecutor.java)0
-rw-r--r--core/src/test/java/org/onap/policy/apex/core/engine/event/DummyAxKey.java (renamed from core/core-engine/src/test/java/org/onap/policy/apex/core/engine/event/DummyAxKey.java)0
-rw-r--r--core/src/test/java/org/onap/policy/apex/core/engine/event/EnEventTest.java (renamed from core/core-engine/src/test/java/org/onap/policy/apex/core/engine/event/EnEventTest.java)0
-rw-r--r--core/src/test/java/org/onap/policy/apex/core/engine/event/EnExceptionTest.java (renamed from core/core-engine/src/test/java/org/onap/policy/apex/core/engine/event/EnExceptionTest.java)0
-rw-r--r--core/src/test/java/org/onap/policy/apex/core/engine/event/EnFieldTest.java (renamed from core/core-engine/src/test/java/org/onap/policy/apex/core/engine/event/EnFieldTest.java)0
-rw-r--r--core/src/test/java/org/onap/policy/apex/core/engine/executor/DummyFailingTaskExecutor.java (renamed from core/core-engine/src/test/java/org/onap/policy/apex/core/engine/executor/DummyFailingTaskExecutor.java)0
-rw-r--r--core/src/test/java/org/onap/policy/apex/core/engine/executor/DummyStateFinalizerExecutor.java (renamed from core/core-engine/src/test/java/org/onap/policy/apex/core/engine/executor/DummyStateFinalizerExecutor.java)0
-rw-r--r--core/src/test/java/org/onap/policy/apex/core/engine/executor/DummyTaskExecutor.java (renamed from core/core-engine/src/test/java/org/onap/policy/apex/core/engine/executor/DummyTaskExecutor.java)0
-rw-r--r--core/src/test/java/org/onap/policy/apex/core/engine/executor/DummyTaskSelectExecutor.java (renamed from core/core-engine/src/test/java/org/onap/policy/apex/core/engine/executor/DummyTaskSelectExecutor.java)0
-rw-r--r--core/src/test/java/org/onap/policy/apex/core/engine/executor/StateExecutorTest.java (renamed from core/core-engine/src/test/java/org/onap/policy/apex/core/engine/executor/StateExecutorTest.java)0
-rw-r--r--core/src/test/java/org/onap/policy/apex/core/engine/executor/StateFinalizerExecutorTest.java (renamed from core/core-engine/src/test/java/org/onap/policy/apex/core/engine/executor/StateFinalizerExecutorTest.java)0
-rw-r--r--core/src/test/java/org/onap/policy/apex/core/engine/executor/StateMachineExecutorTest.java (renamed from core/core-engine/src/test/java/org/onap/policy/apex/core/engine/executor/StateMachineExecutorTest.java)0
-rw-r--r--core/src/test/java/org/onap/policy/apex/core/engine/executor/TaskExecutorTest.java (renamed from core/core-engine/src/test/java/org/onap/policy/apex/core/engine/executor/TaskExecutorTest.java)0
-rw-r--r--core/src/test/java/org/onap/policy/apex/core/engine/executor/TaskSelectExecutorTest.java (renamed from core/core-engine/src/test/java/org/onap/policy/apex/core/engine/executor/TaskSelectExecutorTest.java)0
-rw-r--r--core/src/test/java/org/onap/policy/apex/core/engine/executor/context/AxStateFacadeTest.java (renamed from core/core-engine/src/test/java/org/onap/policy/apex/core/engine/executor/context/AxStateFacadeTest.java)0
-rw-r--r--core/src/test/java/org/onap/policy/apex/core/engine/executor/context/AxTaskFacadeTest.java (renamed from core/core-engine/src/test/java/org/onap/policy/apex/core/engine/executor/context/AxTaskFacadeTest.java)0
-rw-r--r--core/src/test/java/org/onap/policy/apex/core/engine/executor/context/DummyContextAlbum.java (renamed from core/core-engine/src/test/java/org/onap/policy/apex/core/engine/executor/context/DummyContextAlbum.java)0
-rw-r--r--core/src/test/java/org/onap/policy/apex/core/engine/executor/context/StateFinalizerExecutionContextTest.java (renamed from core/core-engine/src/test/java/org/onap/policy/apex/core/engine/executor/context/StateFinalizerExecutionContextTest.java)0
-rw-r--r--core/src/test/java/org/onap/policy/apex/core/engine/executor/context/TaskExecutionContextTest.java (renamed from core/core-engine/src/test/java/org/onap/policy/apex/core/engine/executor/context/TaskExecutionContextTest.java)0
-rw-r--r--core/src/test/java/org/onap/policy/apex/core/engine/executor/context/TaskSelectionExecutionContextTest.java (renamed from core/core-engine/src/test/java/org/onap/policy/apex/core/engine/executor/context/TaskSelectionExecutionContextTest.java)0
-rw-r--r--core/src/test/java/org/onap/policy/apex/core/engine/executor/exception/StateMachineRuntimeExceptionTest.java (renamed from core/core-engine/src/test/java/org/onap/policy/apex/core/engine/executor/exception/StateMachineRuntimeExceptionTest.java)0
-rw-r--r--core/src/test/java/org/onap/policy/apex/core/engine/executor/impl/ExceutorFactoryImplTest.java (renamed from core/core-engine/src/test/java/org/onap/policy/apex/core/engine/executor/impl/ExceutorFactoryImplTest.java)0
-rw-r--r--core/src/test/java/org/onap/policy/apex/core/infrastructure/threading/ThreadingTest.java (renamed from core/core-infrastructure/src/test/java/org/onap/policy/apex/core/infrastructure/threading/ThreadingTest.java)0
135 files changed, 31 insertions, 4466 deletions
diff --git a/core/core-engine/pom.xml b/core/core-engine/pom.xml
deleted file mode 100644
index 597da2991..000000000
--- a/core/core-engine/pom.xml
+++ /dev/null
@@ -1,72 +0,0 @@
-<!--
- ============LICENSE_START=======================================================
- Copyright (C) 2018 Ericsson. All rights reserved.
- ================================================================================
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-
- SPDX-License-Identifier: Apache-2.0
- ============LICENSE_END=========================================================
--->
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
- <modelVersion>4.0.0</modelVersion>
- <parent>
- <groupId>org.onap.policy.apex-pdp.core</groupId>
- <artifactId>core</artifactId>
- <version>2.7.1-SNAPSHOT</version>
- </parent>
-
- <artifactId>core-engine</artifactId>
- <name>${project.artifactId}</name>
- <description>The Apex policy execution engine</description>
-
- <dependencies>
- <dependency>
- <groupId>org.onap.policy.common</groupId>
- <artifactId>common-parameters</artifactId>
- </dependency>
- <dependency>
- <groupId>org.onap.policy.apex-pdp.model</groupId>
- <artifactId>model</artifactId>
- <version>${project.version}</version>
- </dependency>
- <dependency>
- <groupId>org.onap.policy.apex-pdp.model</groupId>
- <artifactId>engine-model</artifactId>
- <version>${project.version}</version>
- </dependency>
- <dependency>
- <groupId>org.onap.policy.apex-pdp.context</groupId>
- <artifactId>context-management</artifactId>
- <version>${project.version}</version>
- </dependency>
- <dependency>
- <groupId>org.onap.policy.apex-pdp.core</groupId>
- <artifactId>core-infrastructure</artifactId>
- <version>${project.version}</version>
- </dependency>
- <dependency>
- <groupId>com.google.guava</groupId>
- <artifactId>guava</artifactId>
- </dependency>
- <dependency>
- <groupId>org.mockito</groupId>
- <artifactId>mockito-all</artifactId>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.assertj</groupId>
- <artifactId>assertj-core</artifactId>
- <scope>test</scope>
- </dependency>
- </dependencies>
-</project>
diff --git a/core/core-infrastructure/pom.xml b/core/core-infrastructure/pom.xml
deleted file mode 100644
index 2802b89eb..000000000
--- a/core/core-infrastructure/pom.xml
+++ /dev/null
@@ -1,51 +0,0 @@
-<!--
- ============LICENSE_START=======================================================
- Copyright (C) 2018 Ericsson. All rights reserved.
- ================================================================================
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-
- SPDX-License-Identifier: Apache-2.0
- ============LICENSE_END=========================================================
--->
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
- <modelVersion>4.0.0</modelVersion>
- <parent>
- <groupId>org.onap.policy.apex-pdp.core</groupId>
- <artifactId>core</artifactId>
- <version>2.7.1-SNAPSHOT</version>
- </parent>
-
- <artifactId>core-infrastructure</artifactId>
- <name>${project.artifactId}</name>
- <description>Common non-functional components for Apex</description>
-
- <dependencies>
- <dependency>
- <groupId>org.java-websocket</groupId>
- <artifactId>Java-WebSocket</artifactId>
- </dependency>
- <dependency>
- <groupId>com.google.guava</groupId>
- <artifactId>guava</artifactId>
- </dependency>
- <dependency>
- <groupId>com.google.code.gson</groupId>
- <artifactId>gson</artifactId>
- </dependency>
- <dependency>
- <groupId>org.mockito</groupId>
- <artifactId>mockito-all</artifactId>
- <scope>test</scope>
- </dependency>
- </dependencies>
-</project>
diff --git a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/java/JavaHandlingException.java b/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/java/JavaHandlingException.java
deleted file mode 100644
index 63bd1c477..000000000
--- a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/java/JavaHandlingException.java
+++ /dev/null
@@ -1,58 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Copyright (C) 2016-2018 Ericsson. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-
-package org.onap.policy.apex.core.infrastructure.java;
-
-/**
- * This class will be called if an error occurs in Java handling.
- *
- * @author Liam Fallon
- */
-public class JavaHandlingException extends Exception {
- private static final long serialVersionUID = -6375859029774312663L;
-
- /**
- * Instantiates a new Java handling exception.
- *
- * @param message the message
- */
- public JavaHandlingException(final String message) {
- super(message);
- }
-
- /**
- * Instantiates a new Java handling exception.
- *
- * @param exception the exception to wrap
- */
- public JavaHandlingException(final Exception exception) {
- super(exception);
- }
-
- /**
- * Instantiates a new Java handling exception.
- *
- * @param message the message
- * @param exception the exception to wrap
- */
- public JavaHandlingException(final String message, final Exception exception) {
- super(message, exception);
- }
-}
diff --git a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/java/classes/ClassUtils.java b/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/java/classes/ClassUtils.java
deleted file mode 100644
index 49e7d1e2e..000000000
--- a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/java/classes/ClassUtils.java
+++ /dev/null
@@ -1,259 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Copyright (C) 2016-2018 Ericsson. All rights reserved.
- * Modifications Copyright (C) 2021 AT&T Intellectual Property. All rights reserved.
- * Modifications Copyright (C) 2021 Bell Canada. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-
-package org.onap.policy.apex.core.infrastructure.java.classes;
-
-import java.io.File;
-import java.io.FileInputStream;
-import java.io.IOException;
-import java.io.InputStream;
-import java.lang.reflect.InvocationTargetException;
-import java.net.URL;
-import java.net.URLClassLoader;
-import java.util.Arrays;
-import java.util.Set;
-import java.util.TreeSet;
-import java.util.zip.ZipEntry;
-import java.util.zip.ZipInputStream;
-import lombok.AccessLevel;
-import lombok.NoArgsConstructor;
-import org.slf4j.ext.XLogger;
-import org.slf4j.ext.XLoggerFactory;
-
-/**
- * This class is a utility class used to find Java classes on the class path, in directories, and in Jar files.
- *
- * @author Liam Fallon (liam.fallon@ericsson.com)
- */
-@NoArgsConstructor(access = AccessLevel.PRIVATE)
-public final class ClassUtils {
- // Get a reference to the logger
- private static final XLogger LOGGER = XLoggerFactory.getXLogger(ClassUtils.class);
-
- // Repeated string constants
- private static final String CLASS_PATTERN = "\\.class$";
-
- // The boot directory in Java for predefined JARs
- private static final String SUN_BOOT_LIBRARY_PATH = "sun.boot.library.path";
-
- // Token for Classes directory in paths
- private static final String CLASSES_TOKEN = "/classes/";
-
- // Token for library fragment in path
- private static final String LIBRARAY_PATH_TOKEN = "/lib";
-
- /**
- * Get the class names of all classes on the class path. WARNING: This is a heavy call, use sparingly
- *
- * @return a set of class names for all classes in the class path
- */
- public static Set<String> getClassNames() {
- // The return set of class names
- final Set<String> classNameSet = new TreeSet<>();
-
- try {
- // The library path for predefined classes in Java
- var sunBootLibraryPathString = System.getProperty(SUN_BOOT_LIBRARY_PATH);
-
- // Check it exists and has a "lib" in it
- if (sunBootLibraryPathString != null && sunBootLibraryPathString.contains(LIBRARAY_PATH_TOKEN)) {
- // Strip any superfluous trailer from path
- sunBootLibraryPathString = sunBootLibraryPathString.substring(0,
- sunBootLibraryPathString.lastIndexOf(LIBRARAY_PATH_TOKEN) + LIBRARAY_PATH_TOKEN.length());
-
- final var bootLibraryFile = new File(sunBootLibraryPathString);
- // The set used to hold class names is populated with predefined Java classes
- classNameSet.addAll(processDir(bootLibraryFile, ""));
- }
-
- // Get the entries on the class path
- URL[] urls = ((URLClassLoader) ClassLoader.getSystemClassLoader()).getURLs();
-
- // Try get the classes in the bootstrap loader
- urls = getClassesFromBootstrapLoader(urls);
-
- // Iterate over the class path entries
- for (final URL url : urls) {
- if (url == null || url.getFile() == null) {
- continue;
- }
- final var urlFile = new File(url.getFile());
- // Directories may contain ".class" files
- if (urlFile.isDirectory()) {
- classNameSet.addAll(processDir(urlFile, url.getFile()));
- } else if (url.getFile().endsWith(".jar")) {
- // JARs are processed as well
- classNameSet.addAll(processJar(urlFile));
- }
- // It's a resource or some other non-executable thing
- }
- } catch (final Exception e) {
- LOGGER.warn("could not get the names of Java classes", e);
- }
-
- return classNameSet;
- }
-
- private static URL[] getClassesFromBootstrapLoader(URL[] urls)
- throws NoSuchMethodException, IllegalAccessException, InvocationTargetException {
- try {
- final Class<?> nullclassloader = Class.forName("sun.misc.Launcher");
- if (nullclassloader == null) {
- return urls;
- }
-
- var mmethod = nullclassloader.getMethod("getBootstrapClassPath");
- if (mmethod == null) {
- return urls;
- }
-
- final Object cp = mmethod.invoke(null, (Object[]) null);
- if (cp == null) {
- return urls;
- }
-
- mmethod = cp.getClass().getMethod("getURLs");
- if (mmethod == null) {
- return urls;
- }
-
- final URL[] moreurls = (URL[]) (mmethod.invoke(cp, (Object[]) null));
- if (moreurls == null || moreurls.length == 0) {
- return urls;
- }
-
- if (urls.length == 0) {
- return moreurls;
- } else {
- final URL[] result = Arrays.copyOf(urls, urls.length + moreurls.length);
- System.arraycopy(moreurls, 0, result, urls.length, moreurls.length);
- return result;
- }
- } catch (final ClassNotFoundException e) {
- LOGGER.warn("Failed to find default path for JRE libraries", e);
- return urls;
- }
- }
-
- /**
- * Find all classes in directories and JARs in those directories.
- *
- * @param classDirectory The directory to search for classes
- * @param rootDir The root directory, to be removed from absolute paths
- * @return a set of classes which may be empty
- * @throws Exception on errors processing directories
- */
- public static Set<String> processDir(final File classDirectory, final String rootDir) throws Exception {
- // The return set
- final TreeSet<String> classNameSet = new TreeSet<>();
-
- // Iterate over the directory
- if (classDirectory == null || !classDirectory.isDirectory()) {
- return classNameSet;
- }
- for (final File child : classDirectory.listFiles()) {
- if (child.isDirectory()) {
- // Recurse down
- classNameSet.addAll(processDir(child, rootDir));
- } else if (child.getName().endsWith(".jar")) {
- // Process the JAR
- classNameSet.addAll(processJar(child));
- } else if (child.getName().endsWith(".class") && !child.getName().contains("$")) {
- // Process the ".class" file
- classNameSet.add(
- child.getAbsolutePath().replace(rootDir, "").replaceFirst(CLASS_PATTERN, "").replace('/', '.'));
- }
- }
- return classNameSet;
- }
-
- /**
- * Condition the file name as a class name.
- *
- * @param fileNameIn The file name to convert to a class name
- * @return the conditioned class name
- */
- public static String processFileName(final String fileNameIn) {
- String fileName = fileNameIn;
-
- if (fileName == null) {
- return null;
- }
- final int classesPos = fileName.indexOf(CLASSES_TOKEN);
-
- if (classesPos != -1) {
- fileName = fileName.substring(classesPos + CLASSES_TOKEN.length());
- }
-
- return fileName.replaceFirst(CLASS_PATTERN, "").replace('/', '.');
- }
-
- /**
- * Read all the class names from a Jar.
- *
- * @param jarFile the JAR file
- * @return a set of class names
- * @throws IOException on errors processing JARs
- */
- public static Set<String> processJar(final File jarFile) throws IOException {
- // Pass the file as an input stream
- return processJar(new FileInputStream(jarFile.getAbsolutePath()));
- }
-
- /**
- * Read all the class names from a Jar.
- *
- * @param jarInputStream the JAR input stream
- * @return a set of class names
- * @throws IOException on errors processing JARs
- */
- public static Set<String> processJar(final InputStream jarInputStream) throws IOException {
- // The return set
- final TreeSet<String> classPathSet = new TreeSet<>();
-
- if (jarInputStream == null) {
- return classPathSet;
- }
- // JARs are ZIP files
- final var zip = new ZipInputStream(jarInputStream);
-
- // Iterate over each entry in the JAR
- for (ZipEntry entry = zip.getNextEntry(); entry != null; entry = zip.getNextEntry()) {
- if (!entry.isDirectory() && entry.getName().endsWith(".class") && !entry.getName().contains("$")) {
- classPathSet.add(entry.getName().replaceFirst(CLASS_PATTERN, "").replace('/', '.'));
- }
- }
- zip.close();
- return classPathSet;
- }
-
- /**
- * The main method exercises this class for test purposes.
- *
- * @param args the args
- */
- public static void main(final String[] args) {
- for (final String clz : getClassNames()) {
- LOGGER.info("Found class: {}", clz);
- }
- }
-}
diff --git a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/java/classes/package-info.java b/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/java/classes/package-info.java
deleted file mode 100644
index c356580b3..000000000
--- a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/java/classes/package-info.java
+++ /dev/null
@@ -1,27 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Copyright (C) 2016-2018 Ericsson. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-
-/**
- * Contains support to find Java classes on the class path, in directories and in Jar files.
- *
- * @author Liam Fallon (liam.fallon@ericsson.com)
- */
-
-package org.onap.policy.apex.core.infrastructure.java.classes;
diff --git a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/java/compile/singleclass/SingleClassBuilder.java b/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/java/compile/singleclass/SingleClassBuilder.java
deleted file mode 100644
index 783ac4cac..000000000
--- a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/java/compile/singleclass/SingleClassBuilder.java
+++ /dev/null
@@ -1,134 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Copyright (C) 2016-2018 Ericsson. All rights reserved.
- * Modifications Copyright (C) 2020 Nordix Foundation.
- * Modifications Copyright (C) 2021 Bell Canada. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-
-package org.onap.policy.apex.core.infrastructure.java.compile.singleclass;
-
-import java.util.Arrays;
-import java.util.List;
-import javax.tools.Diagnostic;
-import javax.tools.DiagnosticCollector;
-import javax.tools.JavaCompiler;
-import javax.tools.JavaFileObject;
-import javax.tools.ToolProvider;
-import org.onap.policy.apex.core.infrastructure.java.JavaHandlingException;
-import org.slf4j.ext.XLogger;
-import org.slf4j.ext.XLoggerFactory;
-
-/**
- * The Class SingleClassBuilder is used to compile the Java code for a Java object and to create an instance of the
- * object.
- *
- * @author Liam Fallon (liam.fallon@ericsson.com)
- */
-public class SingleClassBuilder {
- // Logger for this class
- private static final XLogger LOGGER = XLoggerFactory.getXLogger(SingleClassBuilder.class);
-
- // The class name and source code for the class that we are compiling and instantiating
- private final String className;
- private final String sourceCode;
-
- // This specialized JavaFileManager handles class loading for the single Java class
- private SingleFileManager singleFileManager = null;
-
- /**
- * Instantiates a new single class builder.
- *
- * @param className the class name
- * @param sourceCode the source code
- */
- public SingleClassBuilder(final String className, final String sourceCode) {
- // Save the fields of the class
- this.className = className;
- this.sourceCode = sourceCode;
- }
-
- /**
- * Compile the single class into byte code.
- *
- * @throws JavaHandlingException Thrown on compilation errors or handling errors on the single Java class
- */
- public void compile() throws JavaHandlingException {
- // Get the list of compilation units, there is only one here
- final List<? extends JavaFileObject> compilationUnits =
- Arrays.asList(new SingleClassCompilationUnit(className, sourceCode));
-
- // Allows us to get diagnostics from the compilation
- final DiagnosticCollector<JavaFileObject> diagnosticListener = new DiagnosticCollector<>();
-
- // Get the Java compiler
- final var compiler = ToolProvider.getSystemJavaCompiler();
-
- // Set up the target file manager and call the compiler
- singleFileManager = new SingleFileManager(compiler, new SingleClassByteCodeFileObject(className));
- final JavaCompiler.CompilationTask task =
- compiler.getTask(null, singleFileManager, diagnosticListener, null, null, compilationUnits);
-
- // Check if the compilation worked
- if (Boolean.FALSE.equals(task.call())) {
- final var builder = new StringBuilder();
- for (final Diagnostic<? extends JavaFileObject> diagnostic : diagnosticListener.getDiagnostics()) {
- builder.append("code:");
- builder.append(diagnostic.getCode());
- builder.append(", kind:");
- builder.append(diagnostic.getKind());
- builder.append(", position:");
- builder.append(diagnostic.getPosition());
- builder.append(", start position:");
- builder.append(diagnostic.getStartPosition());
- builder.append(", end position:");
- builder.append(diagnostic.getEndPosition());
- builder.append(", source:");
- builder.append(diagnostic.getSource());
- builder.append(", message:");
- builder.append(diagnostic.getMessage(null));
- builder.append("\n");
- }
-
- String message = "error compiling Java code for class \"" + className + "\": " + builder.toString();
- LOGGER.warn(message);
- throw new JavaHandlingException(message);
- }
- }
-
- /**
- * Create a new instance of the Java class using its byte code definition.
- *
- * @return A new instance of the object
- * @throws JavaHandlingException on errors creating the object
- */
- public Object createObject()
- throws InstantiationException, IllegalAccessException, ClassNotFoundException, JavaHandlingException {
- if (singleFileManager == null) {
- String message = "error instantiating instance for class \"" + className + "\": code may not be compiled";
- LOGGER.warn(message);
- throw new JavaHandlingException(message);
- }
-
- try {
- return singleFileManager.getClassLoader(null).findClass(className).getDeclaredConstructor().newInstance();
- } catch (Exception e) {
- return new JavaHandlingException("could not create java class", e);
- }
-
- }
-}
diff --git a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/java/compile/singleclass/SingleClassByteCodeFileObject.java b/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/java/compile/singleclass/SingleClassByteCodeFileObject.java
deleted file mode 100644
index 4a0536ee1..000000000
--- a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/java/compile/singleclass/SingleClassByteCodeFileObject.java
+++ /dev/null
@@ -1,84 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Copyright (C) 2016-2018 Ericsson. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-
-package org.onap.policy.apex.core.infrastructure.java.compile.singleclass;
-
-import java.io.ByteArrayOutputStream;
-import java.io.InputStream;
-import java.io.OutputStream;
-import java.net.URI;
-import javax.tools.SimpleJavaFileObject;
-
-/**
- * The Class SingleClassByteCodeFileObject is a specialization of the {@link SimpleJavaFileObject} class, which is
- * itself an implementation of the {@code JavaFileObject} interface, which provides a file abstraction for tools
- * operating on Java programming language source and class files. The {@link SimpleJavaFileObject} class provides simple
- * implementations for most methods in {@code JavaFileObject}. This class is designed to be sub classed and used as a
- * basis for {@code JavaFileObject} implementations. Subclasses can override the implementation and specification of any
- * method of this class as long as the general contract of {@code JavaFileObject} is obeyed.
- *
- * <p>This class holds the byte code for a single class in memory.
- *
- * @author Liam Fallon (liam.fallon@ericsson.com)
- */
-public class SingleClassByteCodeFileObject extends SimpleJavaFileObject {
-
- // The ByteArrayOutputStream holds the byte code for the class
- private ByteArrayOutputStream byteArrayOutputStream;
-
- /**
- * Instantiates the byte code for the class in memory.
- *
- * @param className the class name is used to compose a URI for the class
- */
- public SingleClassByteCodeFileObject(final String className) {
- super(URI.create("byte:///" + className + ".class"), Kind.CLASS);
- }
-
- /**
- * {@inheritDoc}.
- */
- @Override
- public OutputStream openOutputStream() {
- // Create the byte array output stream that will hold the byte code for the class, when the class source code is
- // compiled, this output stream is passed
- // to the compiler and the byte code for the class is written into the output stream.
- byteArrayOutputStream = new ByteArrayOutputStream();
- return byteArrayOutputStream;
- }
-
- /**
- * {@inheritDoc}.
- */
- @Override
- public InputStream openInputStream() {
- // No input stream for streaming out the byte code
- return null;
- }
-
- /**
- * Gets the byte code of the class.
- *
- * @return the byte code of the class
- */
- public byte[] getByteCode() {
- return byteArrayOutputStream.toByteArray();
- }
-}
diff --git a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/java/compile/singleclass/SingleClassCompilationUnit.java b/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/java/compile/singleclass/SingleClassCompilationUnit.java
deleted file mode 100644
index 34398edd3..000000000
--- a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/java/compile/singleclass/SingleClassCompilationUnit.java
+++ /dev/null
@@ -1,76 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Copyright (C) 2016-2018 Ericsson. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-
-package org.onap.policy.apex.core.infrastructure.java.compile.singleclass;
-
-import java.io.ByteArrayInputStream;
-import java.io.InputStream;
-import java.io.OutputStream;
-import java.net.URI;
-import javax.tools.SimpleJavaFileObject;
-
-/**
- * The Class SingleClassCompilationUnit is a container for the source code of the single Java class in memory. The class
- * uses a {@link String} to hold the source code.
- *
- * @author Liam Fallon (liam.fallon@ericsson.com)
- */
-public class SingleClassCompilationUnit extends SimpleJavaFileObject {
-
- private final String source;
-
- /**
- * Instantiates a new compilation unit.
- *
- * @param className the class name for the source code
- * @param source the source code for the class
- */
- public SingleClassCompilationUnit(final String className, final String source) {
- // Create a URI for the source code of the class
- super(URI.create("file:///" + className + ".java"), Kind.SOURCE);
- this.source = source;
- }
-
- /**
- * {@inheritDoc}.
- */
- @Override
- public CharSequence getCharContent(final boolean ignoreEncodingErrors) {
- // Return the source code to toe caller, the compiler
- return source;
- }
-
- /**
- * {@inheritDoc}.
- */
- @Override
- public OutputStream openOutputStream() {
- throw new IllegalStateException();
- }
-
- /**
- * {@inheritDoc}.
- */
- @Override
- public InputStream openInputStream() {
- // Return the source code as a stream
- return new ByteArrayInputStream(source.getBytes());
- }
-}
diff --git a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/java/compile/singleclass/SingleClassLoader.java b/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/java/compile/singleclass/SingleClassLoader.java
deleted file mode 100644
index 55fa498fd..000000000
--- a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/java/compile/singleclass/SingleClassLoader.java
+++ /dev/null
@@ -1,47 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Copyright (C) 2016-2018 Ericsson. All rights reserved.
- * Modifications Copyright (C) 2021 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-
-package org.onap.policy.apex.core.infrastructure.java.compile.singleclass;
-
-import lombok.AllArgsConstructor;
-import lombok.Getter;
-
-/**
- * The Class SingleClassLoader is responsible for class loading the single Java class being held in memory.
- *
- * @author Liam Fallon (liam.fallon@ericsson.com)
- */
-@Getter
-@AllArgsConstructor
-public class SingleClassLoader extends ClassLoader {
- // The byte code of the class held in memory as byte code in a ByteCodeFileObject
- private final SingleClassByteCodeFileObject fileObject;
-
- /**
- * {@inheritDoc}.
- */
- @Override
- protected Class<?> findClass(final String className) throws ClassNotFoundException {
- // Creates a java Class that can be instantiated from the class defined in the byte code in the
- // ByteCodeFileObejct
- return defineClass(className, fileObject.getByteCode(), 0, fileObject.getByteCode().length);
- }
-}
diff --git a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/java/compile/singleclass/SingleFileManager.java b/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/java/compile/singleclass/SingleFileManager.java
deleted file mode 100644
index ffa166393..000000000
--- a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/java/compile/singleclass/SingleFileManager.java
+++ /dev/null
@@ -1,73 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Copyright (C) 2016-2018 Ericsson. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-
-package org.onap.policy.apex.core.infrastructure.java.compile.singleclass;
-
-import java.io.IOException;
-import javax.tools.FileObject;
-import javax.tools.ForwardingJavaFileManager;
-import javax.tools.JavaCompiler;
-import javax.tools.JavaFileObject;
-import javax.tools.StandardJavaFileManager;
-
-/**
- * The Class SingleFileManager is a {@link ForwardingJavaFileManager} which in turn implements {@code JavaFileManager}.
- * A {@code JavaFileManager} handles source files for Java language handling tools. A {@link ForwardingJavaFileManager}
- * is an implementation of {@code JavaFileManager} that forwards the {@code JavaFileManager} methods to a given file
- * manager.
- *
- * <p>This class instantiates and forwards those requests to a {@link StandardJavaFileManager} instance to act as a
- * {@code JavaFileManager} for a Java single file, managing class loading for the class.
- *
- * @author Liam Fallon (liam.fallon@ericsson.com)
- */
-public class SingleFileManager extends ForwardingJavaFileManager<StandardJavaFileManager> {
- // THe class loader for our single class
- private final SingleClassLoader singleClassLoader;
-
- /**
- * Instantiates a new single file manager.
- *
- * @param compiler the compiler we are using
- * @param byteCodeFileObject the byte code for the compiled class
- */
- public SingleFileManager(final JavaCompiler compiler, final SingleClassByteCodeFileObject byteCodeFileObject) {
- super(compiler.getStandardFileManager(null, null, null));
- singleClassLoader = new SingleClassLoader(byteCodeFileObject);
- }
-
- /**
- * {@inheritDoc}.
- */
- @Override
- public JavaFileObject getJavaFileForOutput(final Location notUsed, final String className,
- final JavaFileObject.Kind kind, final FileObject sibling) throws IOException {
- // Return the JavaFileObject to the compiler so that it can write byte code into it
- return singleClassLoader.getFileObject();
- }
-
- /**
- * {@inheritDoc}.
- */
- @Override
- public SingleClassLoader getClassLoader(final Location location) {
- return singleClassLoader;
- }
-}
diff --git a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/java/compile/singleclass/package-info.java b/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/java/compile/singleclass/package-info.java
deleted file mode 100644
index 5ae0d4f59..000000000
--- a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/java/compile/singleclass/package-info.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Copyright (C) 2016-2018 Ericsson. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-
-/**
- * Generates classes from source code by compiling source code and placing the resultant classes on the class path on
- * the fly.
- *
- * @author Liam Fallon (liam.fallon@ericsson.com)
- */
-
-package org.onap.policy.apex.core.infrastructure.java.compile.singleclass;
diff --git a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/java/package-info.java b/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/java/package-info.java
deleted file mode 100644
index 5a8b51132..000000000
--- a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/java/package-info.java
+++ /dev/null
@@ -1,27 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Copyright (C) 2016-2018 Ericsson. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-
-/**
- * Allows Java classes to be created by compiling Java source code and generating classes on the fly.
- *
- * @author Liam Fallon (liam.fallon@ericsson.com)
- */
-
-package org.onap.policy.apex.core.infrastructure.java;
diff --git a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/MessageHolder.java b/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/MessageHolder.java
deleted file mode 100644
index abc5c90de..000000000
--- a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/MessageHolder.java
+++ /dev/null
@@ -1,84 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Copyright (C) 2016-2018 Ericsson. All rights reserved.
- * Modifications Copyright (C) 2021 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-
-package org.onap.policy.apex.core.infrastructure.messaging;
-
-import java.io.Serializable;
-import java.net.InetAddress;
-import java.util.ArrayList;
-import java.util.List;
-import lombok.EqualsAndHashCode;
-import lombok.Getter;
-import lombok.ToString;
-import org.slf4j.ext.XLogger;
-import org.slf4j.ext.XLoggerFactory;
-
-/**
- * The Class MessageHolder holds a set of messages to be sent as a single block of messages in this messaging
- * implementation.
- *
- * @author Sajeevan Achuthan (sajeevan.achuthan@ericsson.com)
- * @param <M> the generic type of message being handled by a message holder instance
- */
-@Getter
-@ToString
-@EqualsAndHashCode
-public class MessageHolder<M> implements Serializable {
-
- // Serial ID
- private static final long serialVersionUID = 1235487535388793719L;
-
- // Get a reference to the logger
- private static final XLogger LOGGER = XLoggerFactory.getXLogger(MessageHolder.class);
-
- // Properties of the message holder
- private final long creationTime;
- private final InetAddress senderHostAddress;
-
- // Sequence of message in the message holder
- @ToString.Exclude
- private final List<M> messages;
-
- /**
- * Constructor, create the message holder.
- *
- * @param senderHostAddress the host address of the sender of the message holder container
- */
- public MessageHolder(final InetAddress senderHostAddress) {
- LOGGER.entry(senderHostAddress);
- messages = new ArrayList<>();
- this.senderHostAddress = senderHostAddress;
- creationTime = System.currentTimeMillis();
- }
-
- /**
- * Adds a message to this message holder.
- *
- * @param message the message to add
- */
- public void addMessage(final M message) {
- if (!messages.contains(message)) {
- messages.add(message);
- } else {
- LOGGER.warn("duplicate message {} added to message holder", message);
- }
- }
-}
diff --git a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/MessageListener.java b/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/MessageListener.java
deleted file mode 100644
index 0aab650d3..000000000
--- a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/MessageListener.java
+++ /dev/null
@@ -1,47 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Copyright (C) 2016-2018 Ericsson. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-
-package org.onap.policy.apex.core.infrastructure.messaging;
-
-import org.onap.policy.apex.core.infrastructure.messaging.impl.ws.messageblock.MessageBlock;
-
-/**
- * The listener interface for receiving message events. The class that is interested in processing a message event
- * implements this interface.
- *
- * @author Sajeevan Achuthan (sajeevan.achuthan@ericsson.com)
- * @param <M> of message of any given type that is being listened for and handled
- */
-public interface MessageListener<M> {
-
- /**
- * This method is called when a message block is received on a web socket and is to be forwarded to a listener.
- *
- * @param data the message data containing a message
- */
- void onMessage(MessageBlock<M> data);
-
- /**
- * This method is called when a string message is received on a web socket and is to be forwarded to a listener.
- *
- * @param messageString the message string
- */
- void onMessage(String messageString);
-}
diff --git a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/MessagingService.java b/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/MessagingService.java
deleted file mode 100644
index 352e70806..000000000
--- a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/MessagingService.java
+++ /dev/null
@@ -1,76 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Copyright (C) 2016-2018 Ericsson. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-
-package org.onap.policy.apex.core.infrastructure.messaging;
-
-/**
- * The Interface MessagingService specifies the methods that must be implemented by any implementation providing Apex
- * messaging.
- *
- * @author Sajeevan Achuthan (sajeevan.achuthan@ericsson.com)
- * @param <M> the type of message being passed by an implementation of Apex messaging
- */
-public interface MessagingService<M> {
-
- /**
- * Start the messaging connection.
- */
- void startConnection();
-
- /**
- * Stop the messaging connection.
- */
- void stopConnection();
-
- /**
- * Checks if the messaging connection is started.
- *
- * @return true, if is started
- */
- boolean isStarted();
-
- /**
- * Send a block of messages on the connection, the messages are contained in the the message holder container.
- *
- * @param messageHolder The message holder holding the messages to be sent
- */
- void send(MessageHolder<M> messageHolder);
-
- /**
- * Send a string message on the connection.
- *
- * @param messageString The message string to be sent
- */
- void send(String messageString);
-
- /**
- * Adds a message listener that will be called when a message is received by this messaging service implementation.
- *
- * @param messageListener the message listener
- */
- void addMessageListener(MessageListener<M> messageListener);
-
- /**
- * Removes the message listener.
- *
- * @param messageListener the message listener
- */
- void removeMessageListener(MessageListener<M> messageListener);
-}
diff --git a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/MessagingServiceFactory.java b/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/MessagingServiceFactory.java
deleted file mode 100644
index 9721258c6..000000000
--- a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/MessagingServiceFactory.java
+++ /dev/null
@@ -1,58 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Copyright (C) 2016-2018 Ericsson. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-
-package org.onap.policy.apex.core.infrastructure.messaging;
-
-import java.net.InetSocketAddress;
-import java.net.URI;
-import org.onap.policy.apex.core.infrastructure.messaging.impl.ws.client.MessagingClient;
-import org.onap.policy.apex.core.infrastructure.messaging.impl.ws.server.MessageServerImpl;
-
-/**
- * A factory class to create a "server" or "client" type Messaging Service.
- *
- * @author Sajeevan Achuthan (sajeevan.achuthan@ericsson.com)
- * @param <M> the generic type of message to be handled by this messaging service
- */
-public class MessagingServiceFactory<M> {
-
- /**
- * Create a web socket server instance and returns to the caller.
- *
- * @param address the address of the server machine
- * @return the messaging service
- */
- public MessagingService<M> createServer(final InetSocketAddress address) {
- return new MessageServerImpl<>(address);
- }
-
- /**
- * Create a web socket client instance and returns to the caller.
- *
- * @param uri the URI of the server to connect to
- * @return an instance of {@link MessagingService}
- */
- public MessagingService<M> createClient(final URI uri) {
- if (uri == null) {
- throw new IllegalArgumentException("URI cannot be null");
- }
- return new MessagingClient<>(uri);
- }
-}
diff --git a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/impl/ws/RawMessageHandler.java b/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/impl/ws/RawMessageHandler.java
deleted file mode 100644
index 0cdf76ffc..000000000
--- a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/impl/ws/RawMessageHandler.java
+++ /dev/null
@@ -1,233 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Copyright (C) 2016-2018 Ericsson. All rights reserved.
- * Modifications Copyright (C) 2019-2020 Nordix Foundation.
- * Modifications Copyright (C) 2021 AT&T Intellectual Property. All rights reserved.
- * Modifications Copyright (C) 2021 Bell Canada. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-
-package org.onap.policy.apex.core.infrastructure.messaging.impl.ws;
-
-import com.google.common.eventbus.Subscribe;
-import java.io.ByteArrayInputStream;
-import java.io.IOException;
-import java.io.ObjectInputStream;
-import java.nio.ByteBuffer;
-import java.util.List;
-import java.util.concurrent.BlockingQueue;
-import java.util.concurrent.LinkedBlockingDeque;
-import java.util.concurrent.TimeUnit;
-import org.onap.policy.apex.core.infrastructure.messaging.MessageHolder;
-import org.onap.policy.apex.core.infrastructure.messaging.MessageListener;
-import org.onap.policy.apex.core.infrastructure.messaging.impl.ws.messageblock.MessageBlock;
-import org.onap.policy.apex.core.infrastructure.messaging.impl.ws.messageblock.MessageBlockHandler;
-import org.onap.policy.apex.core.infrastructure.messaging.impl.ws.messageblock.RawMessageBlock;
-import org.onap.policy.apex.core.infrastructure.threading.ThreadUtilities;
-import org.slf4j.ext.XLogger;
-import org.slf4j.ext.XLoggerFactory;
-
-/**
- * The Class RawMessageHandler handles raw messages being received on a Java web socket and forwards the messages to the
- * DataHandler instance that has subscribed to the RawMessageHandler instance.
- *
- * @author Sajeevan Achuthan (sajeevan.achuthan@ericsson.com)
- * @param <M> the generic type of message being received
- */
-public class RawMessageHandler<M> implements WebSocketMessageListener<M>, Runnable {
- // The logger for this class
- private static final XLogger LOGGER = XLoggerFactory.getXLogger(RawMessageHandler.class);
-
- // Repeated string constants
- private static final String RAW_MESSAGE_LISTENING_INTERRUPTED = "raw message listening has been interrupted";
-
- // The amount of time to sleep during shutdown for the thread of this message handler to stop
- private static final int SHUTDOWN_WAIT_TIME = 10;
-
- // The timeout to wait between queue poll timeouts in milliseconds
- private static final long QUEUE_POLL_TIMEOUT = 50;
-
- // A queue that temporarily holds message blocks
- private final BlockingQueue<MessageBlock<M>> messageBlockQueue = new LinkedBlockingDeque<>();
-
- // A queue that temporarily holds message blocks
- private final BlockingQueue<String> stringMessageQueue = new LinkedBlockingDeque<>();
-
- // Client applications that have subscribed for messages
- private final MessageBlockHandler<M> dataHandler = new MessageBlockHandler<>("data-processor");
-
- // The thread that the raw message handler is receiving messages on
- private Thread thisThread = null;
-
- /**
- * This method is called by the class with which this message listener has been registered.
- *
- * @param incomingData the data forwarded by the message reception class
- */
- @Override
- @Subscribe
- public void onMessage(final RawMessageBlock incomingData) {
- // Sanity check and get incoming data
- ByteBuffer dataByteBuffer = null;
- if (incomingData != null && incomingData.getMessage() != null) {
- dataByteBuffer = incomingData.getMessage();
- } else {
- return;
- }
-
- // Read the messages from the web socket and place them on the message queue for handling by
- // the queue
- // processing thread
-
- try (final var stream = new ByteArrayInputStream(dataByteBuffer.array());
- final var ois = new ObjectInputStream(stream)) {
- @SuppressWarnings("unchecked")
- final MessageHolder<M> messageHolder = (MessageHolder<M>) ois.readObject();
-
- if (LOGGER.isDebugEnabled()) {
- LOGGER.debug("message {} recieved from the client {} ", messageHolder,
- messageHolder == null ? "Apex Engine " : messageHolder.getSenderHostAddress());
- }
-
- if (messageHolder != null) {
- final List<M> messages = messageHolder.getMessages();
- if (messages != null) {
- messageBlockQueue.add(new MessageBlock<>(messages, incomingData.getWebSocket()));
- }
- }
- } catch (final IOException | ClassNotFoundException e) {
- LOGGER.error("Failed to process message received");
- LOGGER.catching(e);
- }
- }
-
- /**
- * This method is called when a string message is received on a web socket and is to be forwarded to a listener.
- *
- * @param messageString the message string
- */
- @Override
- @Subscribe
- public void onMessage(final String messageString) {
- if (messageString == null) {
- return;
- }
- if (LOGGER.isDebugEnabled()) {
- LOGGER.debug("message {} recieved from the client {} ", messageString);
- }
- stringMessageQueue.add(messageString);
- }
-
- /**
- * This method is called when a message is received on a web socket and is to be forwarded to a listener.
- *
- * @param data the message data containing a message
- */
- @Override
- public void onMessage(final MessageBlock<M> data) {
- throw new UnsupportedOperationException("this operation is not supported");
- }
-
- /**
- * This thread monitors the message queue and processes messages as they appear on the queue.
- *
- * @see java.lang.Runnable#run()
- */
- @Override
- public void run() {
- LOGGER.debug("raw message listening started");
- thisThread = Thread.currentThread();
-
- // Run until termination
- while (thisThread.isAlive() && !thisThread.isInterrupted()) {
- try {
- // Read message block messages from the queue and pass it to the data handler
- MessageBlock<M> messageBlock = null;
- while ((messageBlock = messageBlockQueue.poll(1, TimeUnit.MILLISECONDS)) != null) {
- dataHandler.post(messageBlock);
- }
-
- // Read string messages from the queue and pass it to the data handler
- String stringMessage = null;
- while ((stringMessage = stringMessageQueue.poll(1, TimeUnit.MILLISECONDS)) != null) {
- dataHandler.post(stringMessage);
- }
-
- // Wait for new messages
- Thread.sleep(QUEUE_POLL_TIMEOUT);
-
- } catch (final InterruptedException e) {
- // restore the interrupt status
- Thread.currentThread().interrupt();
- LOGGER.debug(RAW_MESSAGE_LISTENING_INTERRUPTED);
- break;
- }
- }
-
- LOGGER.debug("raw message listening stopped");
- }
-
- /**
- * Shutdown the message handler.
- */
- public void shutdown() {
- LOGGER.entry("shutting down raw message listening . . .");
-
- // Interrupt the message handling thread
- thisThread.interrupt();
-
- // Wait for thread shutdown
- while (thisThread.isAlive()) {
- ThreadUtilities.sleep(SHUTDOWN_WAIT_TIME);
- }
-
- LOGGER.exit("shut down raw message listening");
- }
-
- /**
- * Register a data forwarder to which messages coming in on the web socket will be forwarded.
- *
- * @param listener The listener to register
- */
- @Override
- public void registerDataForwarder(final MessageListener<M> listener) {
- stateCheck(listener);
- dataHandler.registerMessageHandler(listener);
- }
-
- /**
- * Unregister a data forwarder that was previously registered on the web socket listener.
- *
- * @param listener The listener to unregister
- */
- @Override
- public void unRegisterDataForwarder(final MessageListener<M> listener) {
- stateCheck(listener);
- dataHandler.unRegisterMessageHandler(listener);
- }
-
- /**
- * Sanity check for the listener and data handler.
- *
- * @param listener the listener to check
- */
- private void stateCheck(final MessageListener<M> listener) {
- if (listener == null) {
- throw new IllegalArgumentException("The listener object cannot be null");
- }
- }
-}
diff --git a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/impl/ws/WebSocketMessageListener.java b/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/impl/ws/WebSocketMessageListener.java
deleted file mode 100644
index 529e887e4..000000000
--- a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/impl/ws/WebSocketMessageListener.java
+++ /dev/null
@@ -1,58 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Copyright (C) 2016-2018 Ericsson. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-
-package org.onap.policy.apex.core.infrastructure.messaging.impl.ws;
-
-import org.onap.policy.apex.core.infrastructure.messaging.MessageListener;
-import org.onap.policy.apex.core.infrastructure.messaging.impl.ws.messageblock.RawMessageBlock;
-
-/**
- * The listener interface for receiving webSocketMessage events. The class that is interested in processing a
- * webSocketMessage event implements this interface, and the object created with that class is registered with a
- * component using the component's addWebSocketMessageListener method. When the webSocketMessage event occurs, that
- * object's appropriate method is invoked.
- *
- * @author Sajeevan Achuthan (sajeevan.achuthan@ericsson.com)
- * @param <M> the generic type
- * @see RawMessageBlock
- */
-public interface WebSocketMessageListener<M> extends MessageListener<M>, Runnable {
-
- /**
- * This method is called by the class with which this message listener has been registered.
- *
- * @param incomingData the data forwarded by the message reception class
- */
- void onMessage(RawMessageBlock incomingData);
-
- /**
- * Register a data forwarder to which messages coming in on the web socket will be forwarded.
- *
- * @param listener The listener to register
- */
- void registerDataForwarder(MessageListener<M> listener);
-
- /**
- * Unregister a data forwarder that was previously registered on the web socket listener.
- *
- * @param listener The listener to unregister
- */
- void unRegisterDataForwarder(MessageListener<M> listener);
-}
diff --git a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/impl/ws/client/InternalMessageBusClient.java b/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/impl/ws/client/InternalMessageBusClient.java
deleted file mode 100644
index ad0dbb5a4..000000000
--- a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/impl/ws/client/InternalMessageBusClient.java
+++ /dev/null
@@ -1,130 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Copyright (C) 2016-2018 Ericsson. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-
-package org.onap.policy.apex.core.infrastructure.messaging.impl.ws.client;
-
-import java.net.URI;
-import java.nio.ByteBuffer;
-import org.onap.policy.apex.core.infrastructure.messaging.MessageListener;
-import org.onap.policy.apex.core.infrastructure.messaging.impl.ws.RawMessageHandler;
-import org.onap.policy.apex.core.infrastructure.messaging.impl.ws.messageblock.MessageBlockHandler;
-import org.onap.policy.apex.core.infrastructure.messaging.impl.ws.messageblock.RawMessageBlock;
-import org.onap.policy.apex.core.infrastructure.threading.ApplicationThreadFactory;
-import org.slf4j.ext.XLogger;
-import org.slf4j.ext.XLoggerFactory;
-
-/**
- * The Class InternalMessageBusClient handles the client side of a web socket and handles the callback mechanism used to
- * receive messages on the web socket.
- *
- * @author Sajeevan Achuthan (sajeevan.achuthan@ericsson.com)
- * @param <M> the generic type of message being handled
- */
-abstract class InternalMessageBusClient<M> extends WebSocketClientImpl {
- private static final int THREAD_FACTORY_STACK_SIZE = 256;
-
- // The logger for this class
- private static final XLogger LOGGER = XLoggerFactory.getXLogger(InternalMessageBusClient.class);
-
- // Name of the event bus.
- private static final String RAW_EVENT_BUS = "Raw-Event-Bus";
-
- // This instance handles the raw data received from the web socket
- private final RawMessageHandler<M> rawMessageHandler = new RawMessageHandler<>();
-
- // The message block handler to which to pass messages coming in on this client
- private MessageBlockHandler<M> messageBlockHandler = null;
-
- // The raw message handler uses a thread to process incoming events off a queue, this class owns and controls that
- // thread. These fields hold the thread and
- // the thread factory for creating threads.
- private ApplicationThreadFactory threadFactory =
- new ApplicationThreadFactory("ws-client-thread", THREAD_FACTORY_STACK_SIZE);
- private Thread forwarderThread = null;
-
- /**
- * Construct the class and start the forwarding thread for received messages.
- *
- * @param serverUri the server URI to connect to
- */
- InternalMessageBusClient(final URI serverUri) {
- // Call the super class to create the web socket
- super(serverUri);
- LOGGER.entry(serverUri.toString());
-
- // Create the data handler for forwarding messages
- messageBlockHandler = new MessageBlockHandler<>(RAW_EVENT_BUS);
- messageBlockHandler.registerMessageHandler(rawMessageHandler);
-
- // Create the thread that manages the queue in the data handler
- forwarderThread = threadFactory.newThread(rawMessageHandler);
- forwarderThread.start();
-
- LOGGER.exit();
- }
-
- /**
- * Callback for binary messages received from the remote host.
- *
- * @param rawMessage the received raw message
- * @see org.java_websocket.client.WebSocketClient#onMessage(java.nio.ByteBuffer)
- */
- @Override
- public void onMessage(final ByteBuffer rawMessage) {
- // Post the message to the data handler for forwarding to its listeners
- messageBlockHandler.post(new RawMessageBlock(rawMessage, null));
- }
-
- /**
- * Callback for binary messages received from the remote host.
- *
- * @param stringMessage the string message
- * @see org.java_websocket.client.WebSocketClient#onMessage(java.lang.String)
- */
- @Override
- public final void onMessage(final String stringMessage) {
- messageBlockHandler.post(stringMessage);
- }
-
- /**
- * Register a subscriber class to the raw message handler.
- *
- * @param listener a simple class, that listens for the events from Event
- */
- public void addMessageListener(final MessageListener<M> listener) {
- rawMessageHandler.registerDataForwarder(listener);
- }
-
- /**
- * Removes the message listener.
- *
- * @param listener the listener
- */
- public void removeMessageListener(final MessageListener<M> listener) {
- rawMessageHandler.unRegisterDataForwarder(listener);
- }
-
- /**
- * Stop the thread handling message forwarding.
- */
- protected void stopListener() {
- rawMessageHandler.shutdown();
- }
-}
diff --git a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/impl/ws/client/MessagingClient.java b/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/impl/ws/client/MessagingClient.java
deleted file mode 100644
index 0615837af..000000000
--- a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/impl/ws/client/MessagingClient.java
+++ /dev/null
@@ -1,154 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Copyright (C) 2016-2018 Ericsson. All rights reserved.
- * Modifications Copyright (C) 2020 Nordix Foundation.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-
-package org.onap.policy.apex.core.infrastructure.messaging.impl.ws.client;
-
-import java.net.URI;
-import org.java_websocket.WebSocket;
-import org.onap.policy.apex.core.infrastructure.messaging.MessageHolder;
-import org.onap.policy.apex.core.infrastructure.messaging.MessagingService;
-import org.onap.policy.apex.core.infrastructure.messaging.util.MessagingUtils;
-import org.onap.policy.apex.core.infrastructure.threading.ThreadUtilities;
-
-/**
- * The Class MessagingClient is the class that wraps web socket handling, message sending, and
- * message reception on the client side of a web socket in Apex.
- *
- * @author Sajeevan Achuthan (sajeevan.achuthan@ericsson.com)
- * @param <M> the generic type
- */
-public class MessagingClient<M> extends InternalMessageBusClient<M> implements MessagingService<M> {
- // The length of time to wait for a connection to a web socket server before aborting
- private static final int CONNECTION_TIMEOUT_TIME_MS = 3000;
-
- // The length of time to wait before checking if a connection to a web socket server has worked
- // or not
- private static final int CONNECTION_TRY_INTERVAL_MS = 100;
-
- /**
- * Constructor of this class, uses its {@link InternalMessageBusClient} superclass to set up the
- * web socket and handle incoming message forwarding.
- *
- * @param serverUri The URI of the service
- */
- public MessagingClient(final URI serverUri) {
- // Call the super class to create the web socket and set up received message forwarding
- super(serverUri);
- }
-
- /**
- * {@inheritDoc}.
- */
- @Override
- public void stopConnection() {
- // Stop message reception in the super class
- super.stopListener();
-
- // Close the web socket
- final WebSocket connection = super.getConnection();
- if (connection != null && connection.isOpen()) {
- connection.closeConnection(0, "");
- }
- this.close();
- }
-
- /**
- * {@inheritDoc}.
- */
- @Override
- public void startConnection() {
- // Open the web socket
- final WebSocket connection = super.getConnection();
-
- if (connection == null) {
- throw new IllegalStateException("Could not connect to the server");
- }
- if (!connection.isOpen()) {
- connect();
- }
-
- if (!waitforConnection(connection)) {
- throw new IllegalStateException("Could not connect to the server");
- }
- }
-
- /**
- * This method waits for the timeout value for the client to connect to the web socket server.
- *
- * @param connection the connection to wait on
- * @return true, if successful
- */
- private boolean waitforConnection(final WebSocket connection) {
- // The total time we have before timeout
- int timeoutMsCounter = CONNECTION_TIMEOUT_TIME_MS;
-
- // Check the connection state
- do {
- switch (connection.getReadyState()) {
- case NOT_YET_CONNECTED:
- case CLOSING:
- // Not connected yet so wait for the try interval
- ThreadUtilities.sleep(CONNECTION_TRY_INTERVAL_MS);
- timeoutMsCounter -= CONNECTION_TRY_INTERVAL_MS;
- break;
- case OPEN:
- // Connection is open, happy days
- return true;
- case CLOSED:
- // Connection is closed, bah
- return false;
- default:
- break;
- }
- } while (timeoutMsCounter > 0);
- // While the timeout value has not expired
-
- // We have timed out
- return false;
- }
-
- /**
- * {@inheritDoc}.
- */
- @Override
- public void send(final MessageHolder<M> commands) {
- // Get the connection and send the message
- final WebSocket connection = super.getConnection();
- connection.send(MessagingUtils.serializeObject(commands));
- }
-
- /**
- * {@inheritDoc}.
- */
- @Override
- public void send(final String messageString) {
- final WebSocket connection = super.getConnection();
- connection.send(messageString);
- }
-
- /**
- * {@inheritDoc}.
- */
- @Override
- public boolean isStarted() {
- return getConnection().isOpen();
- }
-}
diff --git a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/impl/ws/client/WebSocketClientImpl.java b/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/impl/ws/client/WebSocketClientImpl.java
deleted file mode 100644
index 69609aefc..000000000
--- a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/impl/ws/client/WebSocketClientImpl.java
+++ /dev/null
@@ -1,76 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Copyright (C) 2016-2018 Ericsson. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-
-package org.onap.policy.apex.core.infrastructure.messaging.impl.ws.client;
-
-import java.net.URI;
-import org.java_websocket.client.WebSocketClient;
-import org.java_websocket.handshake.ServerHandshake;
-import org.slf4j.ext.XLogger;
-import org.slf4j.ext.XLoggerFactory;
-
-/**
- * This class implements {@link WebSocketClient} specific methods in order to act as a Java Web Socket client.
- *
- * @author Sajeevan Achuthan (sajeevan.achuthan@ericsson.com)
- */
-abstract class WebSocketClientImpl extends WebSocketClient {
- // The logger for this class
- private static final XLogger LOGGER = XLoggerFactory.getXLogger(WebSocketClientImpl.class);
-
- /**
- * Constructs a WebSocketClient instance and sets it to the connect to the specified URI. The channel does not
- * attempt to connect automatically. You must call {@link connect} first to initiate the socket connection.
- *
- * @param serverUri the URI of the web socket server to connect to
- */
- WebSocketClientImpl(final URI serverUri) {
- super(serverUri);
- }
-
- /**
- * {@inheritDoc}.
- */
- @Override
- public void onOpen(final ServerHandshake handshakedata) {
- if (LOGGER.isDebugEnabled()) {
- LOGGER.debug("Connection opened to server {} --> {}", this.getURI(), handshakedata.getHttpStatusMessage());
- }
- }
-
- /**
- * {@inheritDoc}.
- */
- @Override
- public void onClose(final int code, final String reason, final boolean remote) {
- if (LOGGER.isDebugEnabled()) {
- LOGGER.debug("Connection closed to server {} --> code \"{}\", reason \"{}\"", this.getURI(), code, reason);
- }
- }
-
- /**
- * {@inheritDoc}.
- */
- @Override
- public void onError(final Exception ex) {
- LOGGER.info("Failed to make a connection to the server {} ", getURI());
- LOGGER.catching(ex);
- }
-}
diff --git a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/impl/ws/client/package-info.java b/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/impl/ws/client/package-info.java
deleted file mode 100644
index d5344fe14..000000000
--- a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/impl/ws/client/package-info.java
+++ /dev/null
@@ -1,27 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Copyright (C) 2016-2018 Ericsson. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-
-/**
- * Provides the client side of messaging over web sockets.
- *
- * @author Sajeevan Achuthan (sajeevan.achuthan@ericsson.com)
- */
-
-package org.onap.policy.apex.core.infrastructure.messaging.impl.ws.client;
diff --git a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/impl/ws/messageblock/MessageBlock.java b/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/impl/ws/messageblock/MessageBlock.java
deleted file mode 100644
index 75e82a0d2..000000000
--- a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/impl/ws/messageblock/MessageBlock.java
+++ /dev/null
@@ -1,44 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Copyright (C) 2016-2018 Ericsson. All rights reserved.
- * Modifications Copyright (C) 2021 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-
-package org.onap.policy.apex.core.infrastructure.messaging.impl.ws.messageblock;
-
-import java.util.List;
-import lombok.AllArgsConstructor;
-import lombok.Getter;
-import org.java_websocket.WebSocket;
-
-/**
- * This class encapsulate messages and the web socket on which they are handled.
- *
- * @author Sajeevan Achuthan (sajeevan.achuthan@ericsson.com)
- * @param <M> the generic type of message being handled
- */
-@Getter
-@AllArgsConstructor
-public final class MessageBlock<M> {
-
- // List of Messages received on a web socket
- private final List<M> messages;
-
- // The web socket on which the messages are handled
- private final WebSocket webSocket;
-}
diff --git a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/impl/ws/messageblock/MessageBlockHandler.java b/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/impl/ws/messageblock/MessageBlockHandler.java
deleted file mode 100644
index 0349cb548..000000000
--- a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/impl/ws/messageblock/MessageBlockHandler.java
+++ /dev/null
@@ -1,128 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Copyright (C) 2016-2018 Ericsson. All rights reserved.
- * Modifications Copyright (C) 2021 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-
-package org.onap.policy.apex.core.infrastructure.messaging.impl.ws.messageblock;
-
-import com.google.common.eventbus.EventBus;
-import org.onap.policy.apex.core.infrastructure.messaging.MessageListener;
-import org.slf4j.ext.XLogger;
-import org.slf4j.ext.XLoggerFactory;
-
-/**
- * This class is used to pass messages received on a Java web socket to listening application class instances using an
- * event bus.
- *
- * @author Sajeevan Achuthan (sajeevan.achuthan@ericsson.com)
- * @param <M> the generic type
- */
-public class MessageBlockHandler<M> {
- // Logger for this class
- private static final XLogger LOGGER = XLoggerFactory.getXLogger(MessageBlockHandler.class);
-
- /**
- * This event bus will forward the events to all of its subscribers.
- */
- private EventBus eventBus = null;
-
- /**
- * Instantiates a new data handler.
- *
- * @param eventBusName the name of the event bus for this message block handler
- */
- public MessageBlockHandler(final String eventBusName) {
- eventBus = new EventBus(eventBusName);
- LOGGER.trace("message bus {} created ", eventBusName);
- }
-
- /**
- * Post a raw message block on the data handler event bus of this class.
- *
- * @param rawMessageBlock the block containing raw messages
- */
- public void post(final RawMessageBlock rawMessageBlock) {
- if (rawMessageBlock.getMessage() != null) {
- if (LOGGER.isDebugEnabled()) {
- LOGGER.debug("new raw message recieved from {}", rawMessageBlock.getWebSocket() == null ? "server"
- : rawMessageBlock.getWebSocket().getRemoteSocketAddress().getHostName());
- }
- eventBus.post(rawMessageBlock);
- }
- }
-
- /**
- * Post a block of typed messages on the data handler event bus of this class.
- *
- * @param messageBlock the block containing typed messages
- */
- public void post(final MessageBlock<M> messageBlock) {
- if (messageBlock.getMessages() != null) {
- if (LOGGER.isDebugEnabled()) {
- LOGGER.debug("new data message recieved from {}", messageBlock.getWebSocket() == null ? "server"
- : messageBlock.getWebSocket().getRemoteSocketAddress().getHostName());
- }
- eventBus.post(messageBlock);
- }
- }
-
- /**
- * Post a string message on the data handler event bus of this class.
- *
- * @param messageString the string message
- */
- public void post(final String messageString) {
- if (messageString != null) {
- if (LOGGER.isDebugEnabled()) {
- LOGGER.debug("new string message recieved from server: {}", messageString);
- }
- eventBus.post(messageString);
- }
- }
-
- /**
- * Register a listener to event bus.
- *
- * @param listener is an instance of WebSocketMessageListener
- */
- public void registerMessageHandler(final MessageListener<M> listener) {
- LOGGER.entry(listener);
- if (listener == null) {
- throw new IllegalArgumentException("listener object cannot be null");
- }
- eventBus.register(listener);
- LOGGER.debug("message listener {} is registered with forwarder", listener);
- LOGGER.exit();
- }
-
- /**
- * Remove the listener subscribed to the event bus.
- *
- * @param listener the listener
- */
- public void unRegisterMessageHandler(final MessageListener<M> listener) {
- if (listener == null) {
- throw new IllegalArgumentException("listener object cannot be null");
- }
- LOGGER.entry(listener);
- eventBus.unregister(listener);
- LOGGER.trace(" message listener {} unregistered from forwarder", listener);
- LOGGER.exit();
- }
-}
diff --git a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/impl/ws/messageblock/RawMessageBlock.java b/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/impl/ws/messageblock/RawMessageBlock.java
deleted file mode 100644
index e9448abff..000000000
--- a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/impl/ws/messageblock/RawMessageBlock.java
+++ /dev/null
@@ -1,42 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Copyright (C) 2016-2018 Ericsson. All rights reserved.
- * Modifications Copyright (C) 2021 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-
-package org.onap.policy.apex.core.infrastructure.messaging.impl.ws.messageblock;
-
-import java.nio.ByteBuffer;
-import lombok.AllArgsConstructor;
-import lombok.Getter;
-import org.java_websocket.WebSocket;
-
-/**
- * A container for a raw message block and the connection on which it is handled.
- *
- * @author Sajeevan Achuthan (sajeevan.achuthan@ericsson.com)
- */
-@Getter
-@AllArgsConstructor
-public final class RawMessageBlock {
- // The raw message
- private final ByteBuffer message;
-
- // The web socket on which the message is handled
- private final WebSocket webSocket;
-}
diff --git a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/impl/ws/messageblock/package-info.java b/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/impl/ws/messageblock/package-info.java
deleted file mode 100644
index c01c88aed..000000000
--- a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/impl/ws/messageblock/package-info.java
+++ /dev/null
@@ -1,27 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Copyright (C) 2016-2018 Ericsson. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-
-/**
- * Pass blocks of messages on Web Sockets to clients using an event bus.
- *
- * @author Sajeevan Achuthan (sajeevan.achuthan@ericsson.com)
- */
-
-package org.onap.policy.apex.core.infrastructure.messaging.impl.ws.messageblock;
diff --git a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/impl/ws/package-info.java b/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/impl/ws/package-info.java
deleted file mode 100644
index c8811817b..000000000
--- a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/impl/ws/package-info.java
+++ /dev/null
@@ -1,27 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Copyright (C) 2016-2018 Ericsson. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-
-/**
- * Provides a Web Service implementation of the Messaging interfaces.
- *
- * @author Sajeevan Achuthan (sajeevan.achuthan@ericsson.com)
- */
-
-package org.onap.policy.apex.core.infrastructure.messaging.impl.ws;
diff --git a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/impl/ws/server/InternalMessageBusServer.java b/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/impl/ws/server/InternalMessageBusServer.java
deleted file mode 100644
index 18cdccce3..000000000
--- a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/impl/ws/server/InternalMessageBusServer.java
+++ /dev/null
@@ -1,131 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Copyright (C) 2016-2018 Ericsson. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-
-package org.onap.policy.apex.core.infrastructure.messaging.impl.ws.server;
-
-import java.net.InetSocketAddress;
-import java.nio.ByteBuffer;
-import org.java_websocket.WebSocket;
-import org.onap.policy.apex.core.infrastructure.messaging.MessageListener;
-import org.onap.policy.apex.core.infrastructure.messaging.MessagingService;
-import org.onap.policy.apex.core.infrastructure.messaging.impl.ws.RawMessageHandler;
-import org.onap.policy.apex.core.infrastructure.messaging.impl.ws.messageblock.MessageBlockHandler;
-import org.onap.policy.apex.core.infrastructure.messaging.impl.ws.messageblock.RawMessageBlock;
-import org.onap.policy.apex.core.infrastructure.threading.ApplicationThreadFactory;
-import org.slf4j.ext.XLogger;
-import org.slf4j.ext.XLoggerFactory;
-
-/**
- * The Class InternalMessageBusServer handles the server side of a web socket and handles the callback mechanism used to
- * receive messages on the web socket.
- *
- * @author Sajeevan Achuthan (sajeevan.achuthan@ericsson.com)
- * @param <M> the generic type
- */
-abstract class InternalMessageBusServer<M> extends WebSocketServerImpl implements MessagingService<M> {
- // Logger for this class
- private static final XLogger LOGGER = XLoggerFactory.getXLogger(InternalMessageBusServer.class);
-
- private static final int THREAD_FACTORY_STACK_SIZE = 256;
-
- // Name of the event bus.
- private static final String RAW_EVENT_BUS = "Raw-Event-Bus";
-
- // This instance handles the raw data received from the web socket
- private final RawMessageHandler<M> rawMessageHandler = new RawMessageHandler<>();
-
- // The message block handler to which to pass messages coming in on this client
- private MessageBlockHandler<M> messageBlockHandler = null;
-
- // The raw message handler uses a thread to process incoming events off a queue, this class owns and controls that
- // thread. These fields hold the thread and
- // the thread factory for creating threads.
- private ApplicationThreadFactory threadFactory =
- new ApplicationThreadFactory("ws-server-thread", THREAD_FACTORY_STACK_SIZE);
- private Thread forwarderThread = null;
-
- /**
- * Construct the class and start the forwarding thread for received messages.
- *
- * @param address the address of the server machine
- */
- protected InternalMessageBusServer(final InetSocketAddress address) {
- // Call the super class to create the web socket
- super(address);
- LOGGER.entry(address.getAddress().getHostAddress() + ":" + address.getPort());
-
- // Create the data handler for forwarding messages
- messageBlockHandler = new MessageBlockHandler<>(RAW_EVENT_BUS);
- messageBlockHandler.registerMessageHandler(rawMessageHandler);
-
- // Create the thread that manages the queue in the data handler
- forwarderThread = threadFactory.newThread(rawMessageHandler);
- forwarderThread.start();
-
- LOGGER.exit();
- }
-
- /**
- * Callback for binary messages received from the remote host.
- *
- * @param webSocket the web socket on which the raw message was received
- * @param rawMessage the received raw message
- * @see #onMessage(WebSocket, String)
- */
- @Override
- public void onMessage(final WebSocket webSocket, final ByteBuffer rawMessage) {
- messageBlockHandler.post(new RawMessageBlock(rawMessage, webSocket));
- }
-
- /**
- * {@inheritDoc}.
- */
- @Override
- public void onMessage(final WebSocket webSocket, final String stringMessage) {
- messageBlockHandler.post(stringMessage);
- }
-
- /**
- * Register a subscriber class to the raw message handler.
- *
- * @param subscriber the subscriber
- */
- @Override
- public void addMessageListener(final MessageListener<M> subscriber) {
- rawMessageHandler.registerDataForwarder(subscriber);
- }
-
- /**
- * Removes the message listener.
- *
- * @param subscriber the subscriber
- */
- @Override
- public void removeMessageListener(final MessageListener<M> subscriber) {
- rawMessageHandler.unRegisterDataForwarder(subscriber);
- }
-
- /**
- * Stop the thread handling message forwarding.
- */
- protected void stopListener() {
- rawMessageHandler.shutdown();
- }
-}
diff --git a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/impl/ws/server/MessageServerImpl.java b/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/impl/ws/server/MessageServerImpl.java
deleted file mode 100644
index 27ba46c43..000000000
--- a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/impl/ws/server/MessageServerImpl.java
+++ /dev/null
@@ -1,152 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Copyright (C) 2016-2018 Ericsson. All rights reserved.
- * Modifications Copyright (C) 2020 Nordix Foundation.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-
-package org.onap.policy.apex.core.infrastructure.messaging.impl.ws.server;
-
-import java.io.IOException;
-import java.net.InetSocketAddress;
-import java.util.Collection;
-import java.util.concurrent.atomic.AtomicBoolean;
-import org.java_websocket.WebSocket;
-import org.onap.policy.apex.core.infrastructure.messaging.MessageHolder;
-import org.onap.policy.apex.core.infrastructure.messaging.util.MessagingUtils;
-import org.slf4j.ext.XLogger;
-import org.slf4j.ext.XLoggerFactory;
-
-/**
- * A messaging server implementation using web socket.
- *
- * @author Sajeevan Achuthan (sajeevan.achuthan@ericsson.com)
- * @param <M> the generic type of message being passed
- */
-public class MessageServerImpl<M> extends InternalMessageBusServer<M> {
- // The logger for this class
- private static final XLogger LOGGER = XLoggerFactory.getXLogger(MessageServerImpl.class);
-
- // The Web Socket protocol for URIs and URLs
- private static final String PROTOCOL = "ws://";
-
- // URI of this server
- private final String connectionUri;
-
- // Indicates if the web socket server is started or not
- private final AtomicBoolean isStarted = new AtomicBoolean(false);
-
- /**
- * Instantiates a new web socket messaging server for Apex.
- *
- * @param address the address of the server machine on which to start the server
- */
- public MessageServerImpl(final InetSocketAddress address) {
- // Call the super class to create the web socket and set up received message forwarding
- super(address);
- LOGGER.entry(address);
-
- // Compose the Web Socket URI
- connectionUri = PROTOCOL + address.getHostString() + ":" + address.getPort();
- LOGGER.debug("Server connection URI: {}", connectionUri);
-
- LOGGER.exit();
- }
-
- /**
- * {@inheritDoc}.
- */
- @Override
- public void startConnection() {
- // Start reception of connections on the web socket
- start();
- }
-
- /**
- * {@inheritDoc}.
- */
- @Override
- public void stopConnection() {
- // Stop message listening using our super class
- stopListener();
-
- // Stop the web socket server
- try {
- // Close all connections on this web socket server
- for (final WebSocket connection : getConnections()) {
- connection.closeConnection(0, "");
- }
- stop();
- } catch (final IOException ioe) {
- LOGGER.catching(ioe);
- } catch (final InterruptedException e) {
- // restore the interrupt status
- Thread.currentThread().interrupt();
- // This can happen in normal operation so ignore
- }
- isStarted.set(false);
- }
-
- /**
- * Return the current connection URI.
- *
- * @return connection URI
- */
- public String getConnectionUrl() {
- if (connectionUri == null) {
- throw new IllegalStateException("URI not set - The server is not started");
- }
- return connectionUri;
- }
-
- /**
- * {@inheritDoc}.
- */
- @Override
- public void send(final MessageHolder<M> message) {
- // Send the incoming message to all clients connected to this web socket
- final Collection<WebSocket> connections = getConnections();
- for (final WebSocket webSocket : connections) {
- webSocket.send(MessagingUtils.serializeObject(message));
- }
- }
-
- /**
- * {@inheritDoc}.
- */
- @Override
- public void send(final String messageString) {
- final Collection<WebSocket> connections = getConnections();
- for (final WebSocket webSocket : connections) {
- webSocket.send(messageString);
- }
- }
-
- /**
- * {@inheritDoc}.
- */
- @Override
- public boolean isStarted() {
- return isStarted.get();
- }
-
- @Override
- public void onStart() {
- isStarted.set(true);
- LOGGER.debug("started deployment server on URI: {}", connectionUri);
- }
-}
diff --git a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/impl/ws/server/WebSocketServerImpl.java b/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/impl/ws/server/WebSocketServerImpl.java
deleted file mode 100644
index 6eda6e2bc..000000000
--- a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/impl/ws/server/WebSocketServerImpl.java
+++ /dev/null
@@ -1,80 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Copyright (C) 2016-2018 Ericsson. All rights reserved.
- * Modifications Copyright (C) 2020 Nordix Foundation.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-
-package org.onap.policy.apex.core.infrastructure.messaging.impl.ws.server;
-
-import java.net.InetSocketAddress;
-import org.java_websocket.WebSocket;
-import org.java_websocket.handshake.ClientHandshake;
-import org.java_websocket.server.WebSocketServer;
-import org.slf4j.ext.XLogger;
-import org.slf4j.ext.XLoggerFactory;
-
-/**
- * This class is the web socket server specific implementation for Apex.
- *
- * @author Sajeevan Achuthan (sajeevan.achuthan@ericsson.com)
- */
-abstract class WebSocketServerImpl extends WebSocketServer {
- // The logger for this class
- private static final XLogger LOGGER = XLoggerFactory.getXLogger(MessageServerImpl.class);
-
- /**
- * Constructor of this class.
- *
- * @param address host address of the local machine.
- */
- protected WebSocketServerImpl(final InetSocketAddress address) {
- super(address);
- LOGGER.entry(address.getAddress().getHostAddress() + ":" + address.getPort());
- LOGGER.exit();
- }
-
- /**
- * {@inheritDoc}.
- */
- @Override
- public void onOpen(final WebSocket conn, final ClientHandshake handshake) {
- LOGGER.entry(conn, handshake);
- LOGGER.debug("A client connection opened from machine {}.",
- conn.getRemoteSocketAddress().getAddress().getHostAddress());
- LOGGER.exit();
- }
-
- /**
- * {@inheritDoc}.
- */
- @Override
- public void onClose(final WebSocket conn, final int code, final String reason, final boolean remote) {
- LOGGER.entry(conn, code, remote);
- LOGGER.debug("A client connection from machine {} closing with code {}.", super.getAddress(), code);
- LOGGER.exit();
- }
-
- /**
- * {@inheritDoc}.
- */
- @Override
- public void onError(final WebSocket conn, final Exception ex) {
- // some errors like port binding failed may not be assignable to a specific web socket
- LOGGER.error("server error occurred", ex);
- }
-}
diff --git a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/impl/ws/server/package-info.java b/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/impl/ws/server/package-info.java
deleted file mode 100644
index 0a7235b05..000000000
--- a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/impl/ws/server/package-info.java
+++ /dev/null
@@ -1,27 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Copyright (C) 2016-2018 Ericsson. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-
-/**
- * Provides the server side of messaging over web sockets.
- *
- * @author Sajeevan Achuthan (sajeevan.achuthan@ericsson.com)
- */
-
-package org.onap.policy.apex.core.infrastructure.messaging.impl.ws.server;
diff --git a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/package-info.java b/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/package-info.java
deleted file mode 100644
index adb17da04..000000000
--- a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/package-info.java
+++ /dev/null
@@ -1,27 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Copyright (C) 2016-2018 Ericsson. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-
-/**
- * Provides support for passing messages as POJOs and as strings over Web Sockets.
- *
- * @author Liam Fallon (liam.fallon@ericsson.com)
- */
-
-package org.onap.policy.apex.core.infrastructure.messaging;
diff --git a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/stringmessaging/WsStringMessageClient.java b/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/stringmessaging/WsStringMessageClient.java
deleted file mode 100644
index edf9ec03a..000000000
--- a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/stringmessaging/WsStringMessageClient.java
+++ /dev/null
@@ -1,145 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Copyright (C) 2016-2018 Ericsson. All rights reserved.
- * Modifications Copyright (C) 2020 Nordix Foundation.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-
-package org.onap.policy.apex.core.infrastructure.messaging.stringmessaging;
-
-import com.google.common.eventbus.Subscribe;
-import java.net.URI;
-import org.onap.policy.apex.core.infrastructure.messaging.MessageListener;
-import org.onap.policy.apex.core.infrastructure.messaging.MessagingException;
-import org.onap.policy.apex.core.infrastructure.messaging.MessagingService;
-import org.onap.policy.apex.core.infrastructure.messaging.MessagingServiceFactory;
-import org.onap.policy.apex.core.infrastructure.messaging.impl.ws.messageblock.MessageBlock;
-import org.slf4j.ext.XLogger;
-import org.slf4j.ext.XLoggerFactory;
-
-/**
- * This class uses a web socket client to send and receive strings over a web socket.
- *
- * @author Liam Fallon (liam.fallon@ericsson.com)
- */
-public class WsStringMessageClient implements WsStringMessager {
- private static final XLogger LOGGER = XLoggerFactory.getXLogger(WsStringMessageClient.class);
-
- // Repeated string constants
- private static final String MESSAGE_PREAMBLE = "web socket event consumer client to \"";
-
- // Message service factory and the message service itself
- private final MessagingServiceFactory<String> factory = new MessagingServiceFactory<>();
- private MessagingService<String> service = null;
-
- // The listener to use for reception of strings
- private WsStringMessageListener wsStringMessageListener;
-
- // Address of the server
- private final String host;
- private final int port;
- private String uriString;
-
- /**
- * Constructor, define the host and port of the server to connect to.
- *
- * @param host the host of the server
- * @param port the port of the server
- */
- public WsStringMessageClient(final String host, final int port) {
- this.host = host;
- this.port = port;
- }
-
- /**
- * {@inheritDoc}.
- */
- @Override
- public void start(final WsStringMessageListener newWsStringMessageListener) throws MessagingException {
- this.wsStringMessageListener = newWsStringMessageListener;
-
- uriString = "ws://" + host + ":" + port;
- String messagePreamble = MESSAGE_PREAMBLE + uriString + "\" ";
- LOGGER.entry(messagePreamble + "starting . . .");
-
- try {
- service = factory.createClient(new URI(uriString));
- service.addMessageListener(new WsStringMessageClientListener());
- service.startConnection();
- } catch (final Exception e) {
- String message = messagePreamble + "start failed";
- LOGGER.warn(message, e);
- throw new MessagingException(message, e);
- }
-
- LOGGER.exit(messagePreamble + "started");
- }
-
- /**
- * {@inheritDoc}.
- */
- @Override
- public void stop() {
- LOGGER.entry(MESSAGE_PREAMBLE + uriString + "\" stopping . . .");
- service.stopConnection();
- LOGGER.exit(MESSAGE_PREAMBLE + uriString + "\" stopped");
- }
-
- /**
- * {@inheritDoc}.
- */
- @Override
- public void sendString(final String stringMessage) {
- service.send(stringMessage);
-
- if (LOGGER.isDebugEnabled()) {
- String message = "message sent to server: " + stringMessage;
- LOGGER.debug(message);
- }
- }
-
- /**
- * The Class WSStringMessageClientListener.
- */
- private class WsStringMessageClientListener implements MessageListener<String> {
- /**
- * {@inheritDoc}.
- */
- @Subscribe
- @Override
- public void onMessage(final MessageBlock<String> messageBlock) {
- throw new UnsupportedOperationException("raw messages are not supported on string message clients");
- }
-
- /**
- * {@inheritDoc}.
- */
- @Subscribe
- @Override
- public void onMessage(final String messageString) {
- wsStringMessageListener.receiveString(messageString);
- }
- }
-
- /**
- * {@inheritDoc}.
- */
- @Override
- public boolean isStarted() {
- return service.isStarted();
- }
-}
diff --git a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/stringmessaging/WsStringMessageListener.java b/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/stringmessaging/WsStringMessageListener.java
deleted file mode 100644
index fd8a3a365..000000000
--- a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/stringmessaging/WsStringMessageListener.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Copyright (C) 2016-2018 Ericsson. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-
-package org.onap.policy.apex.core.infrastructure.messaging.stringmessaging;
-
-/**
- * This interface is used to call back the owner of a String Web socket message server or client.
- *
- * @author Liam Fallon (liam.fallon@ericsson.com)
- */
-@FunctionalInterface
-public interface WsStringMessageListener {
-
- /**
- * Receive a string coming off a web socket.
- *
- * @param stringMessage the string message
- */
- void receiveString(String stringMessage);
-}
diff --git a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/stringmessaging/WsStringMessageServer.java b/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/stringmessaging/WsStringMessageServer.java
deleted file mode 100644
index 8b6d0c6a8..000000000
--- a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/stringmessaging/WsStringMessageServer.java
+++ /dev/null
@@ -1,155 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Copyright (C) 2016-2018 Ericsson. All rights reserved.
- * Modifications Copyright (C) 2019-2020 Nordix Foundation.
- * Modifications Copyright (C) 2021 Bell Canada. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-
-package org.onap.policy.apex.core.infrastructure.messaging.stringmessaging;
-
-import com.google.common.eventbus.Subscribe;
-import java.net.InetAddress;
-import java.net.InetSocketAddress;
-import java.net.UnknownHostException;
-import org.onap.policy.apex.core.infrastructure.messaging.MessageListener;
-import org.onap.policy.apex.core.infrastructure.messaging.MessagingException;
-import org.onap.policy.apex.core.infrastructure.messaging.MessagingService;
-import org.onap.policy.apex.core.infrastructure.messaging.MessagingServiceFactory;
-import org.onap.policy.apex.core.infrastructure.messaging.impl.ws.messageblock.MessageBlock;
-import org.onap.policy.apex.core.infrastructure.messaging.util.MessagingUtils;
-import org.slf4j.ext.XLogger;
-import org.slf4j.ext.XLoggerFactory;
-
-/**
- * This class runs a web socket server for sending and receiving of strings over a web socket.
- *
- * @author Liam Fallon (liam.fallon@ericsson.com)
- */
-public class WsStringMessageServer implements WsStringMessager {
- private static final XLogger LOGGER = XLoggerFactory.getXLogger(WsStringMessageServer.class);
-
- // Message service factory and the message service itself
- private final MessagingServiceFactory<String> factory = new MessagingServiceFactory<>();
- private MessagingService<String> service = null;
-
- // The listener to use for reception of strings
- private WsStringMessageListener wsStringMessageListener;
-
- // Address of the server
- private final int port;
-
- /**
- * Constructor, define the port of the server.
- *
- * @param port the port of the server
- */
- public WsStringMessageServer(final int port) {
- this.port = port;
- }
-
- /**
- * {@inheritDoc}.
- */
- @Override
- public void start(final WsStringMessageListener newWsStringMessageListener) throws MessagingException {
-
- LOGGER.entry("web socket event consumer server starting . . .");
- if (LOGGER.isDebugEnabled()) {
- var lanaddress = "unknown";
- try {
- lanaddress = MessagingUtils.getLocalHostLanAddress().getHostAddress();
- } catch (final UnknownHostException ignore) {
- LOGGER.debug("Failed to find name of local address name", ignore);
- }
- LOGGER.debug("web socket string message server LAN address=" + lanaddress);
- var hostaddress = "unknown";
- try {
- hostaddress = InetAddress.getLocalHost().getHostAddress();
- } catch (final UnknownHostException ignore) {
- LOGGER.debug("Failed to find name of local address", ignore);
- }
- LOGGER.debug("web socket string message server host address=" + hostaddress);
- }
-
- this.wsStringMessageListener = newWsStringMessageListener;
-
- try {
- service = factory.createServer(new InetSocketAddress(port));
- service.addMessageListener(new WsStringMessageServerListener());
- service.startConnection();
- } catch (final Exception e) {
- LOGGER.warn("web socket string message server start failed", e);
- throw new MessagingException("web socket string message start failed", e);
- }
-
- LOGGER.exit("web socket string message server started");
- }
-
- /**
- * {@inheritDoc}.
- */
- @Override
- public void stop() {
- LOGGER.entry("web socket string message server stopping . . .");
- service.stopConnection();
- LOGGER.exit("web socket string message server stopped");
- }
-
- /**
- * {@inheritDoc}.
- */
- @Override
- public void sendString(final String stringMessage) {
- service.send(stringMessage);
- if (LOGGER.isDebugEnabled()) {
- LOGGER.debug("server sent message: {}", stringMessage);
- }
- }
-
- /**
- * The listener for strings coming into the server.
- */
- private class WsStringMessageServerListener implements MessageListener<String> {
-
- /**
- * {@inheritDoc}.
- */
- @Subscribe
- @Override
- public void onMessage(final MessageBlock<String> messageBlock) {
- throw new UnsupportedOperationException("raw messages are not supported on string message clients");
- }
-
- /**
- * {@inheritDoc}.
- */
- @Subscribe
- @Override
- public void onMessage(final String messageString) {
- wsStringMessageListener.receiveString(messageString);
- }
- }
-
- /**
- * {@inheritDoc}.
- */
- @Override
- public boolean isStarted() {
- return service.isStarted();
- }
-}
diff --git a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/stringmessaging/WsStringMessager.java b/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/stringmessaging/WsStringMessager.java
deleted file mode 100644
index c6db1ffc7..000000000
--- a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/stringmessaging/WsStringMessager.java
+++ /dev/null
@@ -1,57 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Copyright (C) 2016-2018 Ericsson. All rights reserved.
- * Modifications Copyright (C) 2020 Nordix Foundation.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-
-package org.onap.policy.apex.core.infrastructure.messaging.stringmessaging;
-
-import org.onap.policy.apex.core.infrastructure.messaging.MessagingException;
-
-/**
- * This interface is used to call a String Web socket message server or client to send a string.
- *
- * @author Liam Fallon (liam.fallon@ericsson.com)
- */
-public interface WsStringMessager {
-
- /**
- * Start the string message sender.
- *
- * @param wsStringMessageListener the listener to use for listening for string messages
- * @throws MessagingException the messaging exception
- */
- void start(WsStringMessageListener wsStringMessageListener) throws MessagingException;
-
- /**
- * Stop the string messaging sender.
- */
- void stop();
-
- /**
- * Send a string on a web socket.
- *
- * @param stringMessage the string message to send
- */
- void sendString(String stringMessage);
-
- /**
- * Check if the string messager is started.
- */
- boolean isStarted();
-}
diff --git a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/stringmessaging/package-info.java b/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/stringmessaging/package-info.java
deleted file mode 100644
index a8e679c70..000000000
--- a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/stringmessaging/package-info.java
+++ /dev/null
@@ -1,27 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Copyright (C) 2016-2018 Ericsson. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-
-/**
- * Provides string messaging over Web Sockets.
- *
- * @author Liam Fallon (liam.fallon@ericsson.com)
- */
-
-package org.onap.policy.apex.core.infrastructure.messaging.stringmessaging;
diff --git a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/util/MessagingUtils.java b/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/util/MessagingUtils.java
deleted file mode 100644
index 071a6cfde..000000000
--- a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/util/MessagingUtils.java
+++ /dev/null
@@ -1,226 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Copyright (C) 2016-2018 Ericsson. All rights reserved.
- * Modifications Copyright (C) 2019 Nordix Foundation.
- * Modifications Copyright (C) 2021 AT&T Intellectual Property. All rights reserved.
- * Modifications Copyright (C) 2021 Bell Canada. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-
-package org.onap.policy.apex.core.infrastructure.messaging.util;
-
-import java.io.ByteArrayOutputStream;
-import java.io.IOException;
-import java.io.ObjectOutputStream;
-import java.net.InetAddress;
-import java.net.NetworkInterface;
-import java.net.Socket;
-import java.net.UnknownHostException;
-import java.util.Enumeration;
-import lombok.AccessLevel;
-import lombok.NoArgsConstructor;
-import org.slf4j.ext.XLogger;
-import org.slf4j.ext.XLoggerFactory;
-
-/**
- * The Class MessagingUtils is a class with static methods used in IPC messaging for finding free ports, translating
- * host names to addresses, serializing objects and flushing object streams.
- *
- * @author Sajeevan Achuthan (sajeevan.achuthan@ericsson.com)
- */
-@NoArgsConstructor(access = AccessLevel.PRIVATE)
-public final class MessagingUtils {
- // The port number of the lowest user port, ports 0-1023 are system ports
- private static final int LOWEST_USER_PORT = 1024;
-
- /**
- * Port number is an unsigned 16-bit integer, so maximum port is 65535.
- */
- private static final int MAX_PORT_RANGE = 65535;
-
- // Logger for this class
- private static final XLogger LOGGER = XLoggerFactory.getXLogger(MessagingUtils.class);
-
- /**
- * This method searches the availability of the port, if the requested port not available, this method will throw an
- * exception.
- *
- * @param port the port to check
- * @return the port verified as being free
- * @throws RuntimeException on port allocation errors
- */
- public static int checkPort(final int port) {
- LOGGER.entry("Checking availability of port {}", port);
-
- if (isPortAvailable(port)) {
- LOGGER.debug("Port {} is available ", port);
- return port;
- }
- LOGGER.debug("Port {} is not available", port);
- throw new IllegalArgumentException("could not allocate requested port: " + port);
- }
-
- /**
- * This method searches the availability of the port, if the requested port not available,this method will increment
- * the port number and check the availability of that port, this process will continue until it reaches max port
- * range which is MAX_PORT_RANGE.
- *
- * @param port the first port to check
- * @return the port that was found
- * @throws RuntimeException on port allocation errors
- */
- public static int findPort(final int port) {
- LOGGER.entry("Checking availability of port {}", port);
-
- int availablePort = port;
-
- while (availablePort <= MAX_PORT_RANGE) {
- if (isPortAvailable(availablePort)) {
- LOGGER.debug("Port {} is available ", availablePort);
- return availablePort;
- }
- LOGGER.debug("Port {} is not available", availablePort);
- availablePort++;
- }
- throw new IllegalArgumentException("could not find free available");
- }
-
- /**
- * Check if port is available or not.
- *
- * @param port the port to test
- * @return true if port is available
- */
- public static boolean isPortAvailable(final int port) {
- try (final var socket = new Socket("localhost", port)) {
- return false;
- } catch (final IOException ignoredException) {
- LOGGER.trace("Port {} is available", port, ignoredException);
- return true;
- }
- }
-
- /**
- * Returns the local host address.
- *
- * @return the local host address
- * @throws IllegalStateException if the local host's address cannot be found
- */
- public static InetAddress getHost() {
- try {
- return InetAddress.getLocalHost();
- } catch (final UnknownHostException e) {
- throw new IllegalStateException(e.getMessage(), e);
- }
- }
-
- /**
- * This method searches the availability of the port, if the requested port not available,this method will increment
- * the port number and check the availability, this process will continue until it find port available.
- *
- * @param port the first port to check
- * @return the port that was found
- * @throws RuntimeException on port allocation errors
- */
- public static int allocateAddress(final int port) {
- if (port < LOWEST_USER_PORT) {
- throw new IllegalArgumentException("The port " + port + " is already in use");
- }
- return MessagingUtils.findPort(port);
- }
-
- /**
- * Get an Internet Address for the local host.
- *
- * @return an Internet address
- * @throws UnknownHostException if the address of the local host cannot be found
- */
- public static InetAddress getLocalHostLanAddress() throws UnknownHostException {
- try {
- InetAddress candidateAddress = null;
- // Iterate all NICs (network interface cards)...
- for (final Enumeration<NetworkInterface> ifaces = NetworkInterface.getNetworkInterfaces(); ifaces
- .hasMoreElements();) {
- final NetworkInterface iface = ifaces.nextElement();
- // Iterate all IP addresses assigned to each card...
- for (final Enumeration<InetAddress> inetAddrs = iface.getInetAddresses(); inetAddrs
- .hasMoreElements();) {
- final InetAddress inetAddr = inetAddrs.nextElement();
- if (!inetAddr.isLoopbackAddress()) {
-
- if (inetAddr.isSiteLocalAddress()) {
- // Found non-loopback site-local address. Return it
- // immediately...
- return inetAddr;
- } else if (candidateAddress == null) {
- // Found non-loopback address, but not
- // necessarily site-local.
- // Store it as a candidate to be returned if
- // site-local address is not subsequently
- // found...
- candidateAddress = inetAddr;
- // Note that we don't repeatedly assign
- // non-loopback non-site-local addresses as
- // candidates,
- // only the first. For subsequent iterations,
- // candidate will be non-null.
- }
- }
- }
- }
- if (candidateAddress != null) {
- // We did not find a site-local address, but we found some other
- // non-loopback address.
- // Server might have a non-site-local address assigned to its
- // NIC (or it might be running
- // IPv6 which deprecates the "site-local" concept).
- // Return this non-loopback candidate address...
- return candidateAddress;
- }
- // At this point, we did not find a non-loopback address.
- // Fall back to returning whatever InetAddress.getLocalHost()
- // returns...
- final var jdkSuppliedAddress = InetAddress.getLocalHost();
- if (jdkSuppliedAddress == null) {
- throw new UnknownHostException("The JDK InetAddress.getLocalHost() method unexpectedly returned null.");
- }
- return jdkSuppliedAddress;
- } catch (final Exception e) {
- final var unknownHostException =
- new UnknownHostException("Failed to determine LAN address: " + e);
- unknownHostException.initCause(e);
- throw unknownHostException;
- }
- }
-
- /**
- * This method serializes the message holder objects.
- *
- * @param object the object
- * @return byte[]
- */
- public static byte[] serializeObject(final Object object) {
- LOGGER.entry(object.getClass().getName());
- final var bytesOut = new ByteArrayOutputStream();
- try (var oos = new ObjectOutputStream(bytesOut)) {
- oos.writeObject(object);
- } catch (final IOException e) {
- LOGGER.warn("error on object serialization", e);
- }
- return bytesOut.toByteArray();
- }
-}
diff --git a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/util/package-info.java b/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/util/package-info.java
deleted file mode 100644
index ccb12f2dd..000000000
--- a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/util/package-info.java
+++ /dev/null
@@ -1,27 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Copyright (C) 2016-2018 Ericsson. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-
-/**
- * Contains utility classes for messaging using sockets and web sockets.
- *
- * @author Liam Fallon (liam.fallon@ericsson.com)
- */
-
-package org.onap.policy.apex.core.infrastructure.messaging.util;
diff --git a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/package-info.java b/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/package-info.java
deleted file mode 100644
index 8bd0a093f..000000000
--- a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/package-info.java
+++ /dev/null
@@ -1,27 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Copyright (C) 2016-2018 Ericsson. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-
-/**
- * Provides infrastructure and utility functions for use by other classes and modules in APEX.
- *
- * @author Liam Fallon (liam.fallon@ericsson.com)
- */
-
-package org.onap.policy.apex.core.infrastructure;
diff --git a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/xml/XPathReader.java b/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/xml/XPathReader.java
deleted file mode 100644
index 2f863d0e3..000000000
--- a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/xml/XPathReader.java
+++ /dev/null
@@ -1,116 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Copyright (C) 2016-2018 Ericsson. All rights reserved.
- * Modifications Copyright (C) 2020 Nordix Foundation.
- * Modifications Copyright (C) 2021 Bell Canada. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-
-package org.onap.policy.apex.core.infrastructure.xml;
-
-import java.io.InputStream;
-import javax.xml.XMLConstants;
-import javax.xml.namespace.QName;
-import javax.xml.parsers.DocumentBuilderFactory;
-import javax.xml.xpath.XPath;
-import javax.xml.xpath.XPathExpressionException;
-import javax.xml.xpath.XPathFactory;
-import org.slf4j.ext.XLogger;
-import org.slf4j.ext.XLoggerFactory;
-import org.w3c.dom.Document;
-
-/**
- * A generic class for applying the XPATH queries on XML files.
- *
- * @author Sajeevan Achuthan (sajeevan.achuthan@ericsson.com)
- */
-public class XPathReader {
-
- // Logger for this class
- private static final XLogger LOGGER = XLoggerFactory.getXLogger(XPathReader.class);
-
- private String xmlFileName = null;
- private InputStream xmlStream = null;
- private Document xmlDocument;
- private XPath xpath;
-
- /**
- * Construct Reader for the file passed in.
- *
- * @param xmlFileName the xml file name
- */
- public XPathReader(final String xmlFileName) {
- this.xmlFileName = xmlFileName;
- init();
- }
-
- /**
- * Construct Reader for the stream passed in.
- *
- * @param xmlStream a stream of XML
- */
- public XPathReader(final InputStream xmlStream) {
- this.xmlStream = xmlStream;
- init();
- }
-
- /**
- * Initialise the x-path reader.
- */
- private void init() {
- try {
- LOGGER.info("Initializing XPath reader");
- var df = DocumentBuilderFactory.newInstance();
- df.setFeature(XMLConstants.FEATURE_SECURE_PROCESSING, true);
- df.setAttribute(XMLConstants.ACCESS_EXTERNAL_DTD, "");
- df.setAttribute(XMLConstants.ACCESS_EXTERNAL_SCHEMA, "");
- // Check if this is operating on a file
- if (xmlFileName != null) {
- xmlDocument = df.newDocumentBuilder().parse(xmlFileName);
- } else if (xmlStream != null) {
- // Check if this is operating on a stream
- xmlDocument = df.newDocumentBuilder().parse(xmlStream);
- } else {
- // We have an error
- LOGGER.error("XPath reader not initialized with either a file or a stream");
- return;
- }
-
- xpath = XPathFactory.newInstance().newXPath();
- LOGGER.info("Initialized XPath reader");
- } catch (final Exception ex) {
- LOGGER.error("Error parsing XML file/stream from XPath reading, reason :\n" + ex.getMessage(), ex);
- }
- }
-
- /**
- * Read items from the file using xpath.
- *
- * @param expression x-path expression
- * @param returnType XML node Set
- * @return last node collected
- */
- public Object read(final String expression, final QName returnType) {
- try {
- final var xPathExpression = xpath.compile(expression);
- return xPathExpression.evaluate(xmlDocument, returnType);
- } catch (final XPathExpressionException ex) {
- LOGGER.error("Failed to read XML file for XPath processing, reason:\n" + ex.getMessage(), ex);
- return null;
- }
- }
-}
diff --git a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/xml/package-info.java b/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/xml/package-info.java
deleted file mode 100644
index 5631bd15c..000000000
--- a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/xml/package-info.java
+++ /dev/null
@@ -1,27 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Copyright (C) 2016-2018 Ericsson. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-
-/**
- * Provides utility XML classes for use by other classes and modules in APEX.
- *
- * @author Liam Fallon (liam.fallon@ericsson.com)
- */
-
-package org.onap.policy.apex.core.infrastructure.xml;
diff --git a/core/core-infrastructure/src/test/java/org/onap/policy/apex/core/infrastructure/java/classes/ClassUtilsTest.java b/core/core-infrastructure/src/test/java/org/onap/policy/apex/core/infrastructure/java/classes/ClassUtilsTest.java
deleted file mode 100644
index 060dccef3..000000000
--- a/core/core-infrastructure/src/test/java/org/onap/policy/apex/core/infrastructure/java/classes/ClassUtilsTest.java
+++ /dev/null
@@ -1,70 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Copyright (c) 2020 Nordix Foundation.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-
-package org.onap.policy.apex.core.infrastructure.java.classes;
-
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNull;
-
-import java.io.File;
-import java.io.IOException;
-import java.io.InputStream;
-import java.util.Set;
-import java.util.TreeSet;
-import org.junit.Test;
-import org.mockito.Mockito;
-
-public class ClassUtilsTest {
-
- @Test
- public void testGetClassNames() throws IOException {
- InputStream input = null;
- ClassUtils.getClassNames();
- assertEquals(new TreeSet<>(), ClassUtils.processJar(input));
- }
-
- @Test
- public void testProcessFileName() {
- assertEquals("testing.txt", ClassUtils.processFileName("testing.txt"));
- assertNull(ClassUtils.processFileName(null));
- assertEquals("", ClassUtils.processFileName("/classes/"));
- }
-
- @Test
- public void testProcessDir() throws Exception {
- File mockFile = Mockito.mock(File.class);
- Mockito.when(mockFile.isDirectory()).thenReturn(false);
- assertEquals(new TreeSet<>(), ClassUtils.processDir(mockFile, "Here"));
- assertEquals(new TreeSet<>(), ClassUtils.processDir(null, "Test"));
- Mockito.when(mockFile.isDirectory()).thenReturn(true);
-
- File mockChildFile = Mockito.mock(File.class);
- File[] files = {mockChildFile};
- Mockito.when(mockFile.listFiles()).thenReturn(files);
- Mockito.when(mockChildFile.getName()).thenReturn("test.class");
- Mockito.when(mockChildFile.getAbsolutePath()).thenReturn("/test/");
- assertEquals(Set.of(".test."), ClassUtils.processDir(mockFile, "Here"));
- Mockito.when(mockChildFile.getName()).thenReturn("test.class");
- assertEquals(Set.of(".test."), ClassUtils.processDir(mockFile, "Here"));
- Mockito.when(mockChildFile.getName()).thenReturn("$test.class");
- assertEquals(new TreeSet<>(), ClassUtils.processDir(mockFile, "Here"));
- }
-
-}
diff --git a/core/core-infrastructure/src/test/java/org/onap/policy/apex/core/infrastructure/messaging/DummyMessageListener.java b/core/core-infrastructure/src/test/java/org/onap/policy/apex/core/infrastructure/messaging/DummyMessageListener.java
deleted file mode 100644
index f81394c1c..000000000
--- a/core/core-infrastructure/src/test/java/org/onap/policy/apex/core/infrastructure/messaging/DummyMessageListener.java
+++ /dev/null
@@ -1,62 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Copyright (C) 2016-2018 Ericsson. All rights reserved.
- * Modifications Copyright (C) 2021 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-
-package org.onap.policy.apex.core.infrastructure.messaging;
-
-import com.google.common.eventbus.Subscribe;
-import org.onap.policy.apex.core.infrastructure.messaging.impl.ws.messageblock.MessageBlock;
-import org.slf4j.ext.XLogger;
-import org.slf4j.ext.XLoggerFactory;
-
-/**
- * The listener interface for receiving testMessage events. The class that is interested in processing a testMessage
- * event implements this interface, and the object created with that class is registered with a component using the
- * component's <code>addTestMessageListener</code> method. When the testMessage event occurs, that object's appropriate
- * method is invoked.
- *
- */
-public abstract class DummyMessageListener implements MessageListener<String> {
-
- /** The Constant logger. */
- private static final XLogger logger = XLoggerFactory.getXLogger(DummyMessageListener.class);
-
- /**
- * On command.
- *
- * @param data the data
- */
- public abstract void onCommand(MessageBlock<String> data);
-
- /**
- * {@inheritDoc}.
- */
- @Subscribe
- @Override
- public final void onMessage(final MessageBlock<String> data) {
- if (data != null) {
- if (logger.isDebugEnabled()) {
- logger.debug("{} command recieved from machine {} ", data.getMessages().size(),
- data.getWebSocket().getRemoteSocketAddress().getHostString());
- }
- onCommand(data);
- }
- }
-}
diff --git a/core/core-infrastructure/src/test/java/org/onap/policy/apex/core/infrastructure/messaging/EndToEndStringMessagingTest.java b/core/core-infrastructure/src/test/java/org/onap/policy/apex/core/infrastructure/messaging/EndToEndStringMessagingTest.java
deleted file mode 100644
index e5375b770..000000000
--- a/core/core-infrastructure/src/test/java/org/onap/policy/apex/core/infrastructure/messaging/EndToEndStringMessagingTest.java
+++ /dev/null
@@ -1,97 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Copyright (C) 2016-2018 Ericsson. All rights reserved.
- * Modifications Copyright (C) 2020 Nordix Foundation.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-
-package org.onap.policy.apex.core.infrastructure.messaging;
-
-import static org.awaitility.Awaitility.await;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNotNull;
-
-import java.util.concurrent.TimeUnit;
-import org.junit.Test;
-import org.onap.policy.apex.core.infrastructure.messaging.stringmessaging.WsStringMessageClient;
-import org.onap.policy.apex.core.infrastructure.messaging.stringmessaging.WsStringMessageListener;
-import org.onap.policy.apex.core.infrastructure.messaging.stringmessaging.WsStringMessageServer;
-import org.slf4j.ext.XLogger;
-import org.slf4j.ext.XLoggerFactory;
-
-/**
- * The Class EndToEndMessagingTest.
- *
- * @author Liam Fallon (liam.fallon@ericsson.com)
- */
-public class EndToEndStringMessagingTest {
- // Logger for this class
- private static final XLogger logger = XLoggerFactory.getXLogger(EndToEndStringMessagingTest.class);
-
- private WsStringMessageServer server;
- private WsStringMessageClient client;
-
- private boolean finished = false;
-
- @Test
- public void testEndToEndMessaging() throws MessagingException {
- logger.debug("end to end messaging test starting . . .");
- server = new WsStringMessageServer(44441);
- assertNotNull(server);
- server.start(new WsStringServerMessageListener());
-
- await().atMost(2, TimeUnit.SECONDS).until(() -> server.isStarted());
-
- try {
- client = new WsStringMessageClient("localhost", 44441);
- assertNotNull(client);
- client.start(new WsStringClientMessageListener());
-
- client.sendString("Hello, client here");
-
- await().atLeast(50, TimeUnit.MILLISECONDS).until(() -> finished);
-
- } finally {
- if (client != null) {
- client.stop();
- }
- if (server != null) {
- server.stop();
- }
-
- }
- logger.debug("end to end messaging test finished");
- }
-
- private class WsStringServerMessageListener implements WsStringMessageListener {
- @Override
- public void receiveString(final String stringMessage) {
- logger.debug(stringMessage);
- assertEquals("Hello, client here", stringMessage);
- server.sendString("Hello back from server");
- }
- }
-
- private class WsStringClientMessageListener implements WsStringMessageListener {
- @Override
- public void receiveString(final String stringMessage) {
- logger.debug(stringMessage);
- assertEquals("Hello back from server", stringMessage);
- finished = true;
- }
- }
-}
diff --git a/core/core-infrastructure/src/test/java/org/onap/policy/apex/core/infrastructure/messaging/MessagingUtilsTest.java b/core/core-infrastructure/src/test/java/org/onap/policy/apex/core/infrastructure/messaging/MessagingUtilsTest.java
deleted file mode 100644
index 6d5915ce8..000000000
--- a/core/core-infrastructure/src/test/java/org/onap/policy/apex/core/infrastructure/messaging/MessagingUtilsTest.java
+++ /dev/null
@@ -1,71 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Copyright (c) 2020 Nordix Foundation.
- * Modifications Copyright (C) 2021 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-
-package org.onap.policy.apex.core.infrastructure.messaging;
-
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.assertTrue;
-
-import java.io.IOException;
-import java.net.InetAddress;
-import java.net.UnknownHostException;
-import org.junit.Test;
-import org.onap.policy.apex.core.infrastructure.messaging.util.MessagingUtils;
-
-public class MessagingUtilsTest {
-
- @Test
- public void testCheckPort() throws UnknownHostException, IOException {
- assertEquals(1, MessagingUtils.checkPort(1));
- assertEquals(1, MessagingUtils.findPort(1));
- }
-
- @Test(expected = IllegalArgumentException.class)
- public void testIllegalArgumentException() {
- MessagingUtils.findPort(65536);
- }
-
- @Test
- public void testGetHost() throws UnknownHostException {
- InetAddress host = InetAddress.getLocalHost();
- assertEquals(host, MessagingUtils.getHost());
- }
-
- @Test
- public void testValidAllocateAddress() throws UnknownHostException {
- assertNotNull(MessagingUtils.getLocalHostLanAddress());
- int allocatedPort = MessagingUtils.allocateAddress(3306);
- assertTrue(allocatedPort >= 3306 && allocatedPort < 65536);
- }
-
- @Test(expected = IllegalArgumentException.class)
- public void testInvalidAllocateAddress() {
- MessagingUtils.allocateAddress(1);
- }
-
- @Test
- public void testSerializeObject() {
- String testString = "Test";
- MessagingUtils.serializeObject(new Object());
- assertNotNull(MessagingUtils.serializeObject(testString));
- }
-}
diff --git a/core/core-infrastructure/src/test/java/org/onap/policy/apex/core/infrastructure/messaging/StringTestServer.java b/core/core-infrastructure/src/test/java/org/onap/policy/apex/core/infrastructure/messaging/StringTestServer.java
deleted file mode 100644
index 9cf99feb3..000000000
--- a/core/core-infrastructure/src/test/java/org/onap/policy/apex/core/infrastructure/messaging/StringTestServer.java
+++ /dev/null
@@ -1,111 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Copyright (C) 2016-2018 Ericsson. All rights reserved.
- * Modifications Copyright (C) 2020 Nordix Foundation.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-
-package org.onap.policy.apex.core.infrastructure.messaging;
-
-import static org.junit.Assert.assertNotNull;
-
-import org.onap.policy.apex.core.infrastructure.messaging.stringmessaging.WsStringMessageListener;
-import org.onap.policy.apex.core.infrastructure.messaging.stringmessaging.WsStringMessageServer;
-import org.onap.policy.apex.core.infrastructure.threading.ThreadUtilities;
-
-/**
- * The Class StringTestServer.
- */
-public class StringTestServer {
- private WsStringMessageServer server;
-
- /**
- * Create a string test server.
- *
- * @param port port to use
- * @param timeToLive time to live
- * @throws MessagingException exceptions on messages
- */
- public StringTestServer(final int port, long timeToLive) throws MessagingException {
- System.out.println("StringTestServer starting on port " + port + " for " + timeToLive + " seconds . . .");
- server = new WsStringMessageServer(port);
- assertNotNull(server);
- server.start(new WsStringServerMessageListener());
-
- System.out.println("StringTestServer started on port " + port + " for " + timeToLive + " seconds");
-
- // convert to milliSeconds
- ThreadUtilities.sleep(1000 * timeToLive);
-
- server.stop();
- System.out.println("StringTestServer completed");
- }
-
- /**
- * The listener interface for receiving WSStringServerMessage events. The class that is interested in processing a
- * WSStringServerMessage event implements this interface, and the object created with that class is registered with
- * a component using the component's <code>addWSStringServerMessageListener</code> method. When the
- * WSStringServerMessage event occurs, that object's appropriate method is invoked.
- *
- * @see WSStringServerMessageEvent
- */
- private class WsStringServerMessageListener implements WsStringMessageListener {
-
- /**
- * {@inheritDoc}.
- */
- @Override
- public void receiveString(final String stringMessage) {
- System.out.println("Server received string \"" + stringMessage + "\"");
- server.sendString("Server echoing back the message: \"" + stringMessage + "\"");
- }
- }
-
- /**
- * The main method.
- *
- * @param args the arguments
- * @throws MessagingException the messaging exception
- */
- public static void main(final String[] args) throws MessagingException {
- if (args.length != 2) {
- System.err.println("Usage: StringTestServer port timeToLive");
- return;
- }
-
- int port = 0;
- try {
- port = Integer.parseInt(args[0]);
- } catch (final Exception e) {
- System.err.println("Usage: StringTestServer port timeToLive");
- e.printStackTrace();
- return;
- }
-
- long timeToLive = 0;
- try {
- timeToLive = Long.parseLong(args[1]);
- } catch (final Exception e) {
- System.err.println("Usage: StringTestServer port timeToLive");
- e.printStackTrace();
- return;
- }
-
- new StringTestServer(port, timeToLive);
-
- }
-}
diff --git a/core/core-infrastructure/src/test/java/org/onap/policy/apex/core/infrastructure/xml/XPathReaderTest.java b/core/core-infrastructure/src/test/java/org/onap/policy/apex/core/infrastructure/xml/XPathReaderTest.java
deleted file mode 100644
index a3395ae1f..000000000
--- a/core/core-infrastructure/src/test/java/org/onap/policy/apex/core/infrastructure/xml/XPathReaderTest.java
+++ /dev/null
@@ -1,74 +0,0 @@
-/*
- * ============LICENSE_START=======================================================
- * Copyright (C) 2020 Nordix Foundation
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-
-package org.onap.policy.apex.core.infrastructure.xml;
-
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.assertNull;
-
-import java.io.IOException;
-import java.net.URL;
-import javax.xml.xpath.XPathConstants;
-import org.junit.Test;
-
-public class XPathReaderTest {
-
- final URL testResource = getClass().getClassLoader().getResource("xmlTestFile.xml");
-
- @Test
- public void canConstructWithFromFile() {
- final XPathReader objectUnderTest = new XPathReader(testResource.getFile());
- assertNotNull(objectUnderTest);
- }
-
- @Test
- public void canConstructWithStream() throws IOException {
- final XPathReader objectUnderTest = new XPathReader(testResource.openStream());
- assertNotNull(objectUnderTest);
- }
-
- @Test
- public void canConstructWithNull() {
- final XPathReader objectUnderTest = new XPathReader((String) null);
- assertNotNull(objectUnderTest);
- }
-
- @Test
- public void canConstructWithInvalidFileName() {
- final XPathReader objectUnderTest = new XPathReader("");
- assertNotNull(objectUnderTest);
- }
-
- @Test
- public void readReturnsCorrectValueWhenUsingCorrectXpath() throws IOException {
- final XPathReader objectUnderTest = new XPathReader(testResource.openStream());
- final String validXPathExpression = "/example/name";
- final Object result = objectUnderTest.read(validXPathExpression, XPathConstants.STRING);
- assertEquals("This is my name", result);
- }
-
- @Test
- public void readReturnsNullWhenUsingInvalidXpath() throws IOException {
- final XPathReader objectUnderTest = new XPathReader(testResource.openStream());
- final String invalidXPathExpression = "";
- assertNull(objectUnderTest.read(invalidXPathExpression, XPathConstants.STRING));
- }
-
-}
diff --git a/core/core-infrastructure/src/test/resources/logback-test.xml b/core/core-infrastructure/src/test/resources/logback-test.xml
deleted file mode 100644
index c52f2ded6..000000000
--- a/core/core-infrastructure/src/test/resources/logback-test.xml
+++ /dev/null
@@ -1,70 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- ============LICENSE_START=======================================================
- Copyright (C) 2016-2018 Ericsson. All rights reserved.
- ================================================================================
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-
- SPDX-License-Identifier: Apache-2.0
- ============LICENSE_END=========================================================
--->
-
-<configuration>
-
- <contextName>Apex</contextName>
- <statusListener class="ch.qos.logback.core.status.OnConsoleStatusListener" />
- <property name="LOG_DIR" value="${java.io.tmpdir}/apex_logging/" />
-
- <!-- USE FOR STD OUT ONLY -->
- <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
- <encoder>
- <Pattern>%d %contextName [%t] %level %logger{36} - %msg%n</Pattern>
- </encoder>
- </appender>
-
- <root level="INFO">
- <appender-ref ref="STDOUT" />
- </root>
-
- <logger name="org.infinispan" level="INFO" additivity="false">
- <appender-ref ref="STDOUT" />
- </logger>
-
- <logger name="org.apache.zookeeper.ClientCnxn" level="OFF" additivity="false">
- <appender-ref ref="STDOUT" />
- </logger>
-
- <appender name="FILE" class="ch.qos.logback.core.FileAppender">
- <file>${LOG_DIR}/apex.log</file>
- <encoder>
- <pattern>%d %-5relative [procId=${processId}] [%thread] %-5level
- %logger{26} - %msg %n %ex{full}</pattern>
- </encoder>
- </appender>
-
- <appender name="CTXT_FILE" class="ch.qos.logback.core.FileAppender">
- <file>${LOG_DIR}/apex_ctxt.log</file>
- <encoder>
- <pattern>%d %-5relative [procId=${processId}] [%thread] %-5level
- %logger{26} - %msg %n %ex{full}</pattern>
- </encoder>
- </appender>
-
- <logger name="org.onap.policy.apex.core.context.impl.monitoring" level="INFO" additivity="false">
- <appender-ref ref="CTXT_FILE" />
- </logger>
-
- <logger name="org.onap.policy.apex.core.context" level="INFO" additivity="false">
- <appender-ref ref="STDOUT" />
- </logger>
-</configuration>
diff --git a/core/core-infrastructure/src/test/resources/xmlTestFile.xml b/core/core-infrastructure/src/test/resources/xmlTestFile.xml
deleted file mode 100644
index 73359a1d6..000000000
--- a/core/core-infrastructure/src/test/resources/xmlTestFile.xml
+++ /dev/null
@@ -1,20 +0,0 @@
-<?xml version='1.0'?>
-<!--
- ============LICENSE_START=======================================================
- Copyright (C) 2020 Nordix Foundation.
- ================================================================================
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
- http://www.apache.org/licenses/LICENSE-2.0
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
- SPDX-License-Identifier: Apache-2.0
- ============LICENSE_END=========================================================
--->
-<example>
- <name>This is my name</name>
-</example>
diff --git a/core/core-protocols/pom.xml b/core/core-protocols/pom.xml
deleted file mode 100644
index 2110acede..000000000
--- a/core/core-protocols/pom.xml
+++ /dev/null
@@ -1,39 +0,0 @@
-<!--
- ============LICENSE_START=======================================================
- Copyright (C) 2018 Ericsson. All rights reserved.
- ================================================================================
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-
- SPDX-License-Identifier: Apache-2.0
- ============LICENSE_END=========================================================
--->
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
- <modelVersion>4.0.0</modelVersion>
- <parent>
- <groupId>org.onap.policy.apex-pdp.core</groupId>
- <artifactId>core</artifactId>
- <version>2.7.1-SNAPSHOT</version>
- </parent>
-
- <artifactId>core-protocols</artifactId>
- <name>${project.artifactId}</name>
- <description>Protocols used to transfer information between components in Apex</description>
-
- <dependencies>
- <dependency>
- <groupId>org.onap.policy.apex-pdp.model</groupId>
- <artifactId>model</artifactId>
- <version>${project.version}</version>
- </dependency>
- </dependencies>
-</project>
diff --git a/core/core-protocols/src/main/java/org/onap/policy/apex/core/protocols/Action.java b/core/core-protocols/src/main/java/org/onap/policy/apex/core/protocols/Action.java
deleted file mode 100644
index 33679c0e1..000000000
--- a/core/core-protocols/src/main/java/org/onap/policy/apex/core/protocols/Action.java
+++ /dev/null
@@ -1,39 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Copyright (C) 2016-2018 Ericsson. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-
-package org.onap.policy.apex.core.protocols;
-
-import java.io.Serializable;
-
-/**
- * This interface is used to enforce a common type on actions in the Apex messasging protocol. Action types the Apex
- * messaging protocol supports implement this interface.
- *
- * @author Sajeevan Achuthan (sajeevan.achuthan@ericsson.com)
- */
-@FunctionalInterface
-public interface Action extends Serializable {
- /**
- * Return a string representation of each action.
- *
- * @return the action string
- */
- String getActionString();
-}
diff --git a/core/core-protocols/src/main/java/org/onap/policy/apex/core/protocols/Message.java b/core/core-protocols/src/main/java/org/onap/policy/apex/core/protocols/Message.java
deleted file mode 100644
index 005c181a0..000000000
--- a/core/core-protocols/src/main/java/org/onap/policy/apex/core/protocols/Message.java
+++ /dev/null
@@ -1,118 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Copyright (C) 2016-2018 Ericsson. All rights reserved.
- * Modifications Copyright (C) 2021 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-
-package org.onap.policy.apex.core.protocols;
-
-import java.io.Serializable;
-import lombok.AccessLevel;
-import lombok.EqualsAndHashCode;
-import lombok.Getter;
-import lombok.Setter;
-import lombok.ToString;
-import org.onap.policy.apex.model.basicmodel.concepts.AxArtifactKey;
-
-/**
- * The Class Message is used to pass protocol messages between Apex components.
- *
- * @author Sajeevan Achuthan (sajeevan.achuthan@ericsson.com)
- */
-@Getter
-@ToString
-@EqualsAndHashCode
-public abstract class Message implements Serializable {
-
- // Serialization ID
- private static final long serialVersionUID = 2271443377544488309L;
-
- // Default timeout on server side should be used
- private static final int DEFAULT_REPLY_TIMEOUT = -1;
-
- // The Action or message type of the message
- private Action action = null;
-
- // The artifact key of the artifact to which this message is related
- @Getter(AccessLevel.NONE)
- private AxArtifactKey targetKey = null;
-
- // The data of the message
- @Setter
- private String messageData = null;
-
- // The timeout time for replies in milliseconds
- @Setter
- @ToString.Exclude
- @EqualsAndHashCode.Exclude
- private int replyTimeout = DEFAULT_REPLY_TIMEOUT;
-
- /**
- * Instantiates a new message.
- *
- * @param action the action or message type of the message
- * @param targetKey the artifact key of the artifact to which this message relates
- */
- protected Message(final Action action, final AxArtifactKey targetKey) {
- this(action, targetKey, null);
- }
-
- /**
- * Instantiates a new message.
- *
- * @param action the action or message type of the message
- * @param targetKey the artifact key of the artifact to which this message relates
- * @param messageData the message data to deliver
- */
- protected Message(final Action action, final AxArtifactKey targetKey, final String messageData) {
- this.action = action;
- this.targetKey = targetKey;
- this.messageData = messageData;
- }
-
- /**
- * Append to the message data.
- *
- * @param newMessageData the message data
- */
- public void appendMessageData(final String newMessageData) {
- if (this.messageData == null) {
- this.messageData = newMessageData;
- } else {
- this.messageData += newMessageData;
- }
- }
-
- /**
- * Gets the artifact key of the target of the message.
- *
- * @return the target
- */
- public final AxArtifactKey getTarget() {
- return targetKey;
- }
-
- /**
- * Gets the artifact key name of the target of the message.
- *
- * @return the target name
- */
- public final String getTargetName() {
- return targetKey.getName();
- }
-}
diff --git a/core/core-protocols/src/main/java/org/onap/policy/apex/core/protocols/package-info.java b/core/core-protocols/src/main/java/org/onap/policy/apex/core/protocols/package-info.java
deleted file mode 100644
index fceef33e2..000000000
--- a/core/core-protocols/src/main/java/org/onap/policy/apex/core/protocols/package-info.java
+++ /dev/null
@@ -1,27 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Copyright (C) 2016-2018 Ericsson. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-
-/**
- * Contains protocols that are used for communication in APEX.
- *
- * @author Liam Fallon (liam.fallon@ericsson.com)
- */
-
-package org.onap.policy.apex.core.protocols;
diff --git a/core/core-protocols/src/test/java/org/onap/policy/apex/core/protocols/DummyAction.java b/core/core-protocols/src/test/java/org/onap/policy/apex/core/protocols/DummyAction.java
deleted file mode 100644
index 876052296..000000000
--- a/core/core-protocols/src/test/java/org/onap/policy/apex/core/protocols/DummyAction.java
+++ /dev/null
@@ -1,41 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Copyright (C) 2018 Ericsson. All rights reserved.
- * Modifications Copyright (C) 2020 Nordix Foundation.
- * Modifications Copyright (C) 2021 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-
-package org.onap.policy.apex.core.protocols;
-
-import lombok.AllArgsConstructor;
-import lombok.EqualsAndHashCode;
-import lombok.Getter;
-import lombok.Setter;
-
-/**
- * Dummy action for testing.
- */
-@Getter
-@Setter
-@EqualsAndHashCode
-@AllArgsConstructor
-public class DummyAction implements Action {
- private static final long serialVersionUID = 9178856761163651594L;
-
- private String actionString = "An Action String";
-}
diff --git a/core/core-protocols/src/test/java/org/onap/policy/apex/core/protocols/DummyMessage.java b/core/core-protocols/src/test/java/org/onap/policy/apex/core/protocols/DummyMessage.java
deleted file mode 100644
index 5e32c00e4..000000000
--- a/core/core-protocols/src/test/java/org/onap/policy/apex/core/protocols/DummyMessage.java
+++ /dev/null
@@ -1,40 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Copyright (C) 2018 Ericsson. All rights reserved.
- * Modifications Copyright (C) 2020 Nordix Foundation.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-
-package org.onap.policy.apex.core.protocols;
-
-import org.onap.policy.apex.model.basicmodel.concepts.AxArtifactKey;
-
-/**
- * A dummy message class for testing.
- *
- */
-public class DummyMessage extends Message {
- private static final long serialVersionUID = 8671295165136561708L;
-
- public DummyMessage(final Action action, final AxArtifactKey targetKey) {
- super(action, targetKey);
- }
-
- public DummyMessage(final Action action, final AxArtifactKey targetKey, final String messageData) {
- super(action, targetKey, messageData);
- }
-}
diff --git a/core/core-protocols/src/test/java/org/onap/policy/apex/core/protocols/SupportMessageTest.java b/core/core-protocols/src/test/java/org/onap/policy/apex/core/protocols/SupportMessageTest.java
deleted file mode 100644
index 8b19059b5..000000000
--- a/core/core-protocols/src/test/java/org/onap/policy/apex/core/protocols/SupportMessageTest.java
+++ /dev/null
@@ -1,102 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Copyright (C) 2018 Ericsson. All rights reserved.
- * Modifications Copyright (C) 2020 Nordix Foundation.
- * Modifications Copyright (C) 2021 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-
-package org.onap.policy.apex.core.protocols;
-
-import static org.assertj.core.api.Assertions.assertThat;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNotEquals;
-import static org.junit.Assert.assertNotNull;
-
-import org.junit.Test;
-import org.onap.policy.apex.model.basicmodel.concepts.AxArtifactKey;
-
-/**
- * Test of the abstract Message class.
- */
-public class SupportMessageTest {
-
- @Test
- public void testMessage() {
- assertNotNull(new DummyMessage(new DummyAction(null), new AxArtifactKey()));
- assertNotNull(new DummyMessage(new DummyAction(null), new AxArtifactKey(), "Message Data"));
-
- DummyMessage dummyMessage = new DummyMessage(new DummyAction(null), new AxArtifactKey("Target:0.0.1"));
- assertEquals(new DummyAction(null), dummyMessage.getAction());
- assertThat(dummyMessage.toString())
- .startsWith("Message(action=org.onap.policy.apex.core.protocols.DummyAction@")
- .endsWith("targetKey=AxArtifactKey:(name=Target,version=0.0.1), messageData=null)");
-
- dummyMessage.setMessageData("Message Data");
- assertEquals("Message Data", dummyMessage.getMessageData());
- dummyMessage.appendMessageData("\nMore Message Data");
- assertEquals("Message Data\nMore Message Data", dummyMessage.getMessageData());
- dummyMessage.setMessageData(null);
- dummyMessage.appendMessageData("\nMore Message Data");
- assertEquals("\nMore Message Data", dummyMessage.getMessageData());
-
- dummyMessage.setReplyTimeout(123);
- assertEquals(123, dummyMessage.getReplyTimeout());
- assertEquals(new AxArtifactKey("Target:0.0.1"), dummyMessage.getTarget());
- assertEquals("Target", dummyMessage.getTargetName());
-
- assertNotEquals(0, dummyMessage.hashCode());
- dummyMessage.setMessageData(null);
- assertNotEquals(0, dummyMessage.hashCode());
- dummyMessage = new DummyMessage(null, null, null);
- assertNotEquals(0, dummyMessage.hashCode());
-
- // disabling sonar because this code tests the equals() method
- assertEquals(dummyMessage, dummyMessage); // NOSONAR
- assertNotNull(dummyMessage);
-
- dummyMessage = new DummyMessage(new DummyAction(null), null, null);
- DummyMessage otherDummyMessage = new DummyMessage(null, null, null);
- assertNotEquals(dummyMessage, otherDummyMessage);
- otherDummyMessage = new DummyMessage(new DummyAction(null), null, null);
- assertEquals(dummyMessage, otherDummyMessage);
- dummyMessage = new DummyMessage(null, null, null);
- assertNotEquals(dummyMessage, otherDummyMessage);
- otherDummyMessage = new DummyMessage(null, null, null);
- assertEquals(dummyMessage, otherDummyMessage);
-
- dummyMessage = new DummyMessage(null, new AxArtifactKey(), null);
- otherDummyMessage = new DummyMessage(null, null, null);
- assertNotEquals(dummyMessage, otherDummyMessage);
- otherDummyMessage = new DummyMessage(null, new AxArtifactKey(), null);
- assertEquals(dummyMessage, otherDummyMessage);
- dummyMessage = new DummyMessage(null, null, null);
- assertNotEquals(dummyMessage, otherDummyMessage);
- otherDummyMessage = new DummyMessage(null, null, null);
- assertEquals(dummyMessage, otherDummyMessage);
-
- dummyMessage = new DummyMessage(null, null, "Message");
- otherDummyMessage = new DummyMessage(null, null, null);
- assertNotEquals(dummyMessage, otherDummyMessage);
- otherDummyMessage = new DummyMessage(null, null, "Message");
- assertEquals(dummyMessage, otherDummyMessage);
- dummyMessage = new DummyMessage(null, null, null);
- assertNotEquals(dummyMessage, otherDummyMessage);
- otherDummyMessage = new DummyMessage(null, null, null);
- assertEquals(dummyMessage, otherDummyMessage);
- }
-}
diff --git a/core/core-protocols/src/test/resources/logback-test.xml b/core/core-protocols/src/test/resources/logback-test.xml
deleted file mode 100644
index c52f2ded6..000000000
--- a/core/core-protocols/src/test/resources/logback-test.xml
+++ /dev/null
@@ -1,70 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- ============LICENSE_START=======================================================
- Copyright (C) 2016-2018 Ericsson. All rights reserved.
- ================================================================================
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-
- SPDX-License-Identifier: Apache-2.0
- ============LICENSE_END=========================================================
--->
-
-<configuration>
-
- <contextName>Apex</contextName>
- <statusListener class="ch.qos.logback.core.status.OnConsoleStatusListener" />
- <property name="LOG_DIR" value="${java.io.tmpdir}/apex_logging/" />
-
- <!-- USE FOR STD OUT ONLY -->
- <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
- <encoder>
- <Pattern>%d %contextName [%t] %level %logger{36} - %msg%n</Pattern>
- </encoder>
- </appender>
-
- <root level="INFO">
- <appender-ref ref="STDOUT" />
- </root>
-
- <logger name="org.infinispan" level="INFO" additivity="false">
- <appender-ref ref="STDOUT" />
- </logger>
-
- <logger name="org.apache.zookeeper.ClientCnxn" level="OFF" additivity="false">
- <appender-ref ref="STDOUT" />
- </logger>
-
- <appender name="FILE" class="ch.qos.logback.core.FileAppender">
- <file>${LOG_DIR}/apex.log</file>
- <encoder>
- <pattern>%d %-5relative [procId=${processId}] [%thread] %-5level
- %logger{26} - %msg %n %ex{full}</pattern>
- </encoder>
- </appender>
-
- <appender name="CTXT_FILE" class="ch.qos.logback.core.FileAppender">
- <file>${LOG_DIR}/apex_ctxt.log</file>
- <encoder>
- <pattern>%d %-5relative [procId=${processId}] [%thread] %-5level
- %logger{26} - %msg %n %ex{full}</pattern>
- </encoder>
- </appender>
-
- <logger name="org.onap.policy.apex.core.context.impl.monitoring" level="INFO" additivity="false">
- <appender-ref ref="CTXT_FILE" />
- </logger>
-
- <logger name="org.onap.policy.apex.core.context" level="INFO" additivity="false">
- <appender-ref ref="STDOUT" />
- </logger>
-</configuration>
diff --git a/core/pom.xml b/core/pom.xml
index 133527620..f87de9410 100644
--- a/core/pom.xml
+++ b/core/pom.xml
@@ -1,7 +1,7 @@
<!--
============LICENSE_START=======================================================
Copyright (C) 2018 Ericsson. All rights reserved.
- Modifications Copyright (C) 2020 Nordix Foundation.
+ Modifications Copyright (C) 2020,2022 Nordix Foundation.
================================================================================
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
@@ -28,14 +28,38 @@
<groupId>org.onap.policy.apex-pdp.core</groupId>
<artifactId>core</artifactId>
- <packaging>pom</packaging>
<name>${project.artifactId}</name>
<description>The main core of Apex, deployment independent.</description>
- <modules>
- <module>core-infrastructure</module>
- <module>core-protocols</module>
- <module>core-engine</module>
- </modules>
+ <dependencies>
+ <dependency>
+ <groupId>org.onap.policy.common</groupId>
+ <artifactId>common-parameters</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.onap.policy.apex-pdp.model</groupId>
+ <artifactId>model</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.onap.policy.apex-pdp.context</groupId>
+ <artifactId>context-management</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>com.google.guava</groupId>
+ <artifactId>guava</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.mockito</groupId>
+ <artifactId>mockito-all</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.assertj</groupId>
+ <artifactId>assertj-core</artifactId>
+ <scope>test</scope>
+ </dependency>
+ </dependencies>
</project>
diff --git a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/EngineParameterConstants.java b/core/src/main/java/org/onap/policy/apex/core/engine/EngineParameterConstants.java
index 3cd283b74..3cd283b74 100644
--- a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/EngineParameterConstants.java
+++ b/core/src/main/java/org/onap/policy/apex/core/engine/EngineParameterConstants.java
diff --git a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/EngineParameters.java b/core/src/main/java/org/onap/policy/apex/core/engine/EngineParameters.java
index 3f8243828..3f8243828 100644
--- a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/EngineParameters.java
+++ b/core/src/main/java/org/onap/policy/apex/core/engine/EngineParameters.java
diff --git a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/ExecutorParameters.java b/core/src/main/java/org/onap/policy/apex/core/engine/ExecutorParameters.java
index f7dc5dd0b..f7dc5dd0b 100644
--- a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/ExecutorParameters.java
+++ b/core/src/main/java/org/onap/policy/apex/core/engine/ExecutorParameters.java
diff --git a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/TaskParameters.java b/core/src/main/java/org/onap/policy/apex/core/engine/TaskParameters.java
index 248110419..248110419 100644
--- a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/TaskParameters.java
+++ b/core/src/main/java/org/onap/policy/apex/core/engine/TaskParameters.java
diff --git a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/context/ApexInternalContext.java b/core/src/main/java/org/onap/policy/apex/core/engine/context/ApexInternalContext.java
index 1fee1971e..1fee1971e 100644
--- a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/context/ApexInternalContext.java
+++ b/core/src/main/java/org/onap/policy/apex/core/engine/context/ApexInternalContext.java
diff --git a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/context/package-info.java b/core/src/main/java/org/onap/policy/apex/core/engine/context/package-info.java
index 887914ee0..887914ee0 100644
--- a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/context/package-info.java
+++ b/core/src/main/java/org/onap/policy/apex/core/engine/context/package-info.java
diff --git a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/engine/ApexEngine.java b/core/src/main/java/org/onap/policy/apex/core/engine/engine/ApexEngine.java
index 4c4166380..4c4166380 100644
--- a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/engine/ApexEngine.java
+++ b/core/src/main/java/org/onap/policy/apex/core/engine/engine/ApexEngine.java
diff --git a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/engine/EnEventListener.java b/core/src/main/java/org/onap/policy/apex/core/engine/engine/EnEventListener.java
index 12ba12665..12ba12665 100644
--- a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/engine/EnEventListener.java
+++ b/core/src/main/java/org/onap/policy/apex/core/engine/engine/EnEventListener.java
diff --git a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/engine/impl/ApexEngineConstants.java b/core/src/main/java/org/onap/policy/apex/core/engine/engine/impl/ApexEngineConstants.java
index cba2dc9f6..cba2dc9f6 100644
--- a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/engine/impl/ApexEngineConstants.java
+++ b/core/src/main/java/org/onap/policy/apex/core/engine/engine/impl/ApexEngineConstants.java
diff --git a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/engine/impl/ApexEngineFactory.java b/core/src/main/java/org/onap/policy/apex/core/engine/engine/impl/ApexEngineFactory.java
index 754181485..754181485 100644
--- a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/engine/impl/ApexEngineFactory.java
+++ b/core/src/main/java/org/onap/policy/apex/core/engine/engine/impl/ApexEngineFactory.java
diff --git a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/engine/impl/ApexEngineImpl.java b/core/src/main/java/org/onap/policy/apex/core/engine/engine/impl/ApexEngineImpl.java
index 35139bfe4..35139bfe4 100644
--- a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/engine/impl/ApexEngineImpl.java
+++ b/core/src/main/java/org/onap/policy/apex/core/engine/engine/impl/ApexEngineImpl.java
diff --git a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/engine/impl/StateMachineHandler.java b/core/src/main/java/org/onap/policy/apex/core/engine/engine/impl/StateMachineHandler.java
index c173d1f09..c173d1f09 100644
--- a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/engine/impl/StateMachineHandler.java
+++ b/core/src/main/java/org/onap/policy/apex/core/engine/engine/impl/StateMachineHandler.java
diff --git a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/engine/impl/package-info.java b/core/src/main/java/org/onap/policy/apex/core/engine/engine/impl/package-info.java
index d8e1329e7..d8e1329e7 100644
--- a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/engine/impl/package-info.java
+++ b/core/src/main/java/org/onap/policy/apex/core/engine/engine/impl/package-info.java
diff --git a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/engine/package-info.java b/core/src/main/java/org/onap/policy/apex/core/engine/engine/package-info.java
index ac5224d31..ac5224d31 100644
--- a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/engine/package-info.java
+++ b/core/src/main/java/org/onap/policy/apex/core/engine/engine/package-info.java
diff --git a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/event/EnEvent.java b/core/src/main/java/org/onap/policy/apex/core/engine/event/EnEvent.java
index 29802e06d..29802e06d 100644
--- a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/event/EnEvent.java
+++ b/core/src/main/java/org/onap/policy/apex/core/engine/event/EnEvent.java
diff --git a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/event/EnException.java b/core/src/main/java/org/onap/policy/apex/core/engine/event/EnException.java
index d9520336b..d9520336b 100644
--- a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/event/EnException.java
+++ b/core/src/main/java/org/onap/policy/apex/core/engine/event/EnException.java
diff --git a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/event/EnField.java b/core/src/main/java/org/onap/policy/apex/core/engine/event/EnField.java
index 99a95cae1..99a95cae1 100644
--- a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/event/EnField.java
+++ b/core/src/main/java/org/onap/policy/apex/core/engine/event/EnField.java
diff --git a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/event/package-info.java b/core/src/main/java/org/onap/policy/apex/core/engine/event/package-info.java
index 23d51a41a..23d51a41a 100644
--- a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/event/package-info.java
+++ b/core/src/main/java/org/onap/policy/apex/core/engine/event/package-info.java
diff --git a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/executor/Executor.java b/core/src/main/java/org/onap/policy/apex/core/engine/executor/Executor.java
index 7ebed1d49..7ebed1d49 100644
--- a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/executor/Executor.java
+++ b/core/src/main/java/org/onap/policy/apex/core/engine/executor/Executor.java
diff --git a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/executor/ExecutorFactory.java b/core/src/main/java/org/onap/policy/apex/core/engine/executor/ExecutorFactory.java
index fb6c7b45e..fb6c7b45e 100644
--- a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/executor/ExecutorFactory.java
+++ b/core/src/main/java/org/onap/policy/apex/core/engine/executor/ExecutorFactory.java
diff --git a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/executor/StateExecutor.java b/core/src/main/java/org/onap/policy/apex/core/engine/executor/StateExecutor.java
index 5fb51ca70..5fb51ca70 100644
--- a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/executor/StateExecutor.java
+++ b/core/src/main/java/org/onap/policy/apex/core/engine/executor/StateExecutor.java
diff --git a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/executor/StateFinalizerExecutor.java b/core/src/main/java/org/onap/policy/apex/core/engine/executor/StateFinalizerExecutor.java
index f490a9849..f490a9849 100644
--- a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/executor/StateFinalizerExecutor.java
+++ b/core/src/main/java/org/onap/policy/apex/core/engine/executor/StateFinalizerExecutor.java
diff --git a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/executor/StateMachineExecutor.java b/core/src/main/java/org/onap/policy/apex/core/engine/executor/StateMachineExecutor.java
index 6cbc04678..6cbc04678 100644
--- a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/executor/StateMachineExecutor.java
+++ b/core/src/main/java/org/onap/policy/apex/core/engine/executor/StateMachineExecutor.java
diff --git a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/executor/StateOutput.java b/core/src/main/java/org/onap/policy/apex/core/engine/executor/StateOutput.java
index 535565415..535565415 100644
--- a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/executor/StateOutput.java
+++ b/core/src/main/java/org/onap/policy/apex/core/engine/executor/StateOutput.java
diff --git a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/executor/TaskExecutor.java b/core/src/main/java/org/onap/policy/apex/core/engine/executor/TaskExecutor.java
index ed5c0f271..ed5c0f271 100644
--- a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/executor/TaskExecutor.java
+++ b/core/src/main/java/org/onap/policy/apex/core/engine/executor/TaskExecutor.java
diff --git a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/executor/TaskSelectExecutor.java b/core/src/main/java/org/onap/policy/apex/core/engine/executor/TaskSelectExecutor.java
index fa75db60e..fa75db60e 100644
--- a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/executor/TaskSelectExecutor.java
+++ b/core/src/main/java/org/onap/policy/apex/core/engine/executor/TaskSelectExecutor.java
diff --git a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/executor/context/AbstractExecutionContext.java b/core/src/main/java/org/onap/policy/apex/core/engine/executor/context/AbstractExecutionContext.java
index 3e6d13023..3e6d13023 100644
--- a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/executor/context/AbstractExecutionContext.java
+++ b/core/src/main/java/org/onap/policy/apex/core/engine/executor/context/AbstractExecutionContext.java
diff --git a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/executor/context/AxStateFacade.java b/core/src/main/java/org/onap/policy/apex/core/engine/executor/context/AxStateFacade.java
index 75d2aa82f..75d2aa82f 100644
--- a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/executor/context/AxStateFacade.java
+++ b/core/src/main/java/org/onap/policy/apex/core/engine/executor/context/AxStateFacade.java
diff --git a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/executor/context/AxTaskFacade.java b/core/src/main/java/org/onap/policy/apex/core/engine/executor/context/AxTaskFacade.java
index 8a310c616..8a310c616 100644
--- a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/executor/context/AxTaskFacade.java
+++ b/core/src/main/java/org/onap/policy/apex/core/engine/executor/context/AxTaskFacade.java
diff --git a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/executor/context/StateFinalizerExecutionContext.java b/core/src/main/java/org/onap/policy/apex/core/engine/executor/context/StateFinalizerExecutionContext.java
index 12e350390..12e350390 100644
--- a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/executor/context/StateFinalizerExecutionContext.java
+++ b/core/src/main/java/org/onap/policy/apex/core/engine/executor/context/StateFinalizerExecutionContext.java
diff --git a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/executor/context/TaskExecutionContext.java b/core/src/main/java/org/onap/policy/apex/core/engine/executor/context/TaskExecutionContext.java
index a54252e05..a54252e05 100644
--- a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/executor/context/TaskExecutionContext.java
+++ b/core/src/main/java/org/onap/policy/apex/core/engine/executor/context/TaskExecutionContext.java
diff --git a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/executor/context/TaskSelectionExecutionContext.java b/core/src/main/java/org/onap/policy/apex/core/engine/executor/context/TaskSelectionExecutionContext.java
index c79e907d9..c79e907d9 100644
--- a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/executor/context/TaskSelectionExecutionContext.java
+++ b/core/src/main/java/org/onap/policy/apex/core/engine/executor/context/TaskSelectionExecutionContext.java
diff --git a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/executor/context/package-info.java b/core/src/main/java/org/onap/policy/apex/core/engine/executor/context/package-info.java
index 71b5e455e..71b5e455e 100644
--- a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/executor/context/package-info.java
+++ b/core/src/main/java/org/onap/policy/apex/core/engine/executor/context/package-info.java
diff --git a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/executor/exception/StateMachineException.java b/core/src/main/java/org/onap/policy/apex/core/engine/executor/exception/StateMachineException.java
index 0b64eb481..0b64eb481 100644
--- a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/executor/exception/StateMachineException.java
+++ b/core/src/main/java/org/onap/policy/apex/core/engine/executor/exception/StateMachineException.java
diff --git a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/executor/exception/StateMachineRuntimeException.java b/core/src/main/java/org/onap/policy/apex/core/engine/executor/exception/StateMachineRuntimeException.java
index 447c88bf9..447c88bf9 100644
--- a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/executor/exception/StateMachineRuntimeException.java
+++ b/core/src/main/java/org/onap/policy/apex/core/engine/executor/exception/StateMachineRuntimeException.java
diff --git a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/executor/exception/package-info.java b/core/src/main/java/org/onap/policy/apex/core/engine/executor/exception/package-info.java
index 1cb433946..1cb433946 100644
--- a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/executor/exception/package-info.java
+++ b/core/src/main/java/org/onap/policy/apex/core/engine/executor/exception/package-info.java
diff --git a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/executor/impl/ExecutorFactoryImpl.java b/core/src/main/java/org/onap/policy/apex/core/engine/executor/impl/ExecutorFactoryImpl.java
index 9dc841f48..9dc841f48 100644
--- a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/executor/impl/ExecutorFactoryImpl.java
+++ b/core/src/main/java/org/onap/policy/apex/core/engine/executor/impl/ExecutorFactoryImpl.java
diff --git a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/executor/impl/package-info.java b/core/src/main/java/org/onap/policy/apex/core/engine/executor/impl/package-info.java
index 66e23e667..66e23e667 100644
--- a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/executor/impl/package-info.java
+++ b/core/src/main/java/org/onap/policy/apex/core/engine/executor/impl/package-info.java
diff --git a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/executor/package-info.java b/core/src/main/java/org/onap/policy/apex/core/engine/executor/package-info.java
index 062e1ae49..062e1ae49 100644
--- a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/executor/package-info.java
+++ b/core/src/main/java/org/onap/policy/apex/core/engine/executor/package-info.java
diff --git a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/monitoring/EventMonitor.java b/core/src/main/java/org/onap/policy/apex/core/engine/monitoring/EventMonitor.java
index ca564ca81..ca564ca81 100644
--- a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/monitoring/EventMonitor.java
+++ b/core/src/main/java/org/onap/policy/apex/core/engine/monitoring/EventMonitor.java
diff --git a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/monitoring/package-info.java b/core/src/main/java/org/onap/policy/apex/core/engine/monitoring/package-info.java
index 38834687d..38834687d 100644
--- a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/monitoring/package-info.java
+++ b/core/src/main/java/org/onap/policy/apex/core/engine/monitoring/package-info.java
diff --git a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/package-info.java b/core/src/main/java/org/onap/policy/apex/core/engine/package-info.java
index a836cd949..a836cd949 100644
--- a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/package-info.java
+++ b/core/src/main/java/org/onap/policy/apex/core/engine/package-info.java
diff --git a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/MessagingException.java b/core/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/MessagingException.java
index dfaf4629f..dfaf4629f 100644
--- a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/MessagingException.java
+++ b/core/src/main/java/org/onap/policy/apex/core/infrastructure/messaging/MessagingException.java
diff --git a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/threading/ApplicationThreadFactory.java b/core/src/main/java/org/onap/policy/apex/core/infrastructure/threading/ApplicationThreadFactory.java
index 9345abaaa..9345abaaa 100644
--- a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/threading/ApplicationThreadFactory.java
+++ b/core/src/main/java/org/onap/policy/apex/core/infrastructure/threading/ApplicationThreadFactory.java
diff --git a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/threading/ThreadUtilities.java b/core/src/main/java/org/onap/policy/apex/core/infrastructure/threading/ThreadUtilities.java
index 58939d622..58939d622 100644
--- a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/threading/ThreadUtilities.java
+++ b/core/src/main/java/org/onap/policy/apex/core/infrastructure/threading/ThreadUtilities.java
diff --git a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/threading/package-info.java b/core/src/main/java/org/onap/policy/apex/core/infrastructure/threading/package-info.java
index dc0b9ee40..dc0b9ee40 100644
--- a/core/core-infrastructure/src/main/java/org/onap/policy/apex/core/infrastructure/threading/package-info.java
+++ b/core/src/main/java/org/onap/policy/apex/core/infrastructure/threading/package-info.java
diff --git a/core/core-engine/src/test/java/org/onap/policy/apex/core/engine/EngineParametersTest.java b/core/src/test/java/org/onap/policy/apex/core/engine/EngineParametersTest.java
index 5427c3515..5427c3515 100644
--- a/core/core-engine/src/test/java/org/onap/policy/apex/core/engine/EngineParametersTest.java
+++ b/core/src/test/java/org/onap/policy/apex/core/engine/EngineParametersTest.java
diff --git a/core/core-engine/src/test/java/org/onap/policy/apex/core/engine/ExecutorParametersTest.java b/core/src/test/java/org/onap/policy/apex/core/engine/ExecutorParametersTest.java
index 784580422..784580422 100644
--- a/core/core-engine/src/test/java/org/onap/policy/apex/core/engine/ExecutorParametersTest.java
+++ b/core/src/test/java/org/onap/policy/apex/core/engine/ExecutorParametersTest.java
diff --git a/core/core-engine/src/test/java/org/onap/policy/apex/core/engine/context/ApexInternalContextTest.java b/core/src/test/java/org/onap/policy/apex/core/engine/context/ApexInternalContextTest.java
index 19828f6e2..19828f6e2 100644
--- a/core/core-engine/src/test/java/org/onap/policy/apex/core/engine/context/ApexInternalContextTest.java
+++ b/core/src/test/java/org/onap/policy/apex/core/engine/context/ApexInternalContextTest.java
diff --git a/core/core-engine/src/test/java/org/onap/policy/apex/core/engine/engine/impl/ApexEngineImplTest.java b/core/src/test/java/org/onap/policy/apex/core/engine/engine/impl/ApexEngineImplTest.java
index 3b682acd6..3b682acd6 100644
--- a/core/core-engine/src/test/java/org/onap/policy/apex/core/engine/engine/impl/ApexEngineImplTest.java
+++ b/core/src/test/java/org/onap/policy/apex/core/engine/engine/impl/ApexEngineImplTest.java
diff --git a/core/core-engine/src/test/java/org/onap/policy/apex/core/engine/engine/impl/DummyEnEventListener.java b/core/src/test/java/org/onap/policy/apex/core/engine/engine/impl/DummyEnEventListener.java
index b429295ad..b429295ad 100644
--- a/core/core-engine/src/test/java/org/onap/policy/apex/core/engine/engine/impl/DummyEnEventListener.java
+++ b/core/src/test/java/org/onap/policy/apex/core/engine/engine/impl/DummyEnEventListener.java
diff --git a/core/core-engine/src/test/java/org/onap/policy/apex/core/engine/engine/impl/DummyListener.java b/core/src/test/java/org/onap/policy/apex/core/engine/engine/impl/DummyListener.java
index 6256ff498..6256ff498 100644
--- a/core/core-engine/src/test/java/org/onap/policy/apex/core/engine/engine/impl/DummyListener.java
+++ b/core/src/test/java/org/onap/policy/apex/core/engine/engine/impl/DummyListener.java
diff --git a/core/core-engine/src/test/java/org/onap/policy/apex/core/engine/engine/impl/DummySlowEnEventListener.java b/core/src/test/java/org/onap/policy/apex/core/engine/engine/impl/DummySlowEnEventListener.java
index e794a7d04..e794a7d04 100644
--- a/core/core-engine/src/test/java/org/onap/policy/apex/core/engine/engine/impl/DummySlowEnEventListener.java
+++ b/core/src/test/java/org/onap/policy/apex/core/engine/engine/impl/DummySlowEnEventListener.java
diff --git a/core/core-engine/src/test/java/org/onap/policy/apex/core/engine/engine/impl/DummySmExecutor.java b/core/src/test/java/org/onap/policy/apex/core/engine/engine/impl/DummySmExecutor.java
index df4d9279e..df4d9279e 100644
--- a/core/core-engine/src/test/java/org/onap/policy/apex/core/engine/engine/impl/DummySmExecutor.java
+++ b/core/src/test/java/org/onap/policy/apex/core/engine/engine/impl/DummySmExecutor.java
diff --git a/core/core-engine/src/test/java/org/onap/policy/apex/core/engine/event/DummyAxKey.java b/core/src/test/java/org/onap/policy/apex/core/engine/event/DummyAxKey.java
index eafa7f419..eafa7f419 100644
--- a/core/core-engine/src/test/java/org/onap/policy/apex/core/engine/event/DummyAxKey.java
+++ b/core/src/test/java/org/onap/policy/apex/core/engine/event/DummyAxKey.java
diff --git a/core/core-engine/src/test/java/org/onap/policy/apex/core/engine/event/EnEventTest.java b/core/src/test/java/org/onap/policy/apex/core/engine/event/EnEventTest.java
index 49b4f80d2..49b4f80d2 100644
--- a/core/core-engine/src/test/java/org/onap/policy/apex/core/engine/event/EnEventTest.java
+++ b/core/src/test/java/org/onap/policy/apex/core/engine/event/EnEventTest.java
diff --git a/core/core-engine/src/test/java/org/onap/policy/apex/core/engine/event/EnExceptionTest.java b/core/src/test/java/org/onap/policy/apex/core/engine/event/EnExceptionTest.java
index 5ca49e479..5ca49e479 100644
--- a/core/core-engine/src/test/java/org/onap/policy/apex/core/engine/event/EnExceptionTest.java
+++ b/core/src/test/java/org/onap/policy/apex/core/engine/event/EnExceptionTest.java
diff --git a/core/core-engine/src/test/java/org/onap/policy/apex/core/engine/event/EnFieldTest.java b/core/src/test/java/org/onap/policy/apex/core/engine/event/EnFieldTest.java
index dbe2fa3c8..dbe2fa3c8 100644
--- a/core/core-engine/src/test/java/org/onap/policy/apex/core/engine/event/EnFieldTest.java
+++ b/core/src/test/java/org/onap/policy/apex/core/engine/event/EnFieldTest.java
diff --git a/core/core-engine/src/test/java/org/onap/policy/apex/core/engine/executor/DummyFailingTaskExecutor.java b/core/src/test/java/org/onap/policy/apex/core/engine/executor/DummyFailingTaskExecutor.java
index 4d4fb639f..4d4fb639f 100644
--- a/core/core-engine/src/test/java/org/onap/policy/apex/core/engine/executor/DummyFailingTaskExecutor.java
+++ b/core/src/test/java/org/onap/policy/apex/core/engine/executor/DummyFailingTaskExecutor.java
diff --git a/core/core-engine/src/test/java/org/onap/policy/apex/core/engine/executor/DummyStateFinalizerExecutor.java b/core/src/test/java/org/onap/policy/apex/core/engine/executor/DummyStateFinalizerExecutor.java
index e4e3ddf0d..e4e3ddf0d 100644
--- a/core/core-engine/src/test/java/org/onap/policy/apex/core/engine/executor/DummyStateFinalizerExecutor.java
+++ b/core/src/test/java/org/onap/policy/apex/core/engine/executor/DummyStateFinalizerExecutor.java
diff --git a/core/core-engine/src/test/java/org/onap/policy/apex/core/engine/executor/DummyTaskExecutor.java b/core/src/test/java/org/onap/policy/apex/core/engine/executor/DummyTaskExecutor.java
index 8172eefcc..8172eefcc 100644
--- a/core/core-engine/src/test/java/org/onap/policy/apex/core/engine/executor/DummyTaskExecutor.java
+++ b/core/src/test/java/org/onap/policy/apex/core/engine/executor/DummyTaskExecutor.java
diff --git a/core/core-engine/src/test/java/org/onap/policy/apex/core/engine/executor/DummyTaskSelectExecutor.java b/core/src/test/java/org/onap/policy/apex/core/engine/executor/DummyTaskSelectExecutor.java
index a5525ac83..a5525ac83 100644
--- a/core/core-engine/src/test/java/org/onap/policy/apex/core/engine/executor/DummyTaskSelectExecutor.java
+++ b/core/src/test/java/org/onap/policy/apex/core/engine/executor/DummyTaskSelectExecutor.java
diff --git a/core/core-engine/src/test/java/org/onap/policy/apex/core/engine/executor/StateExecutorTest.java b/core/src/test/java/org/onap/policy/apex/core/engine/executor/StateExecutorTest.java
index f3e12cc1f..f3e12cc1f 100644
--- a/core/core-engine/src/test/java/org/onap/policy/apex/core/engine/executor/StateExecutorTest.java
+++ b/core/src/test/java/org/onap/policy/apex/core/engine/executor/StateExecutorTest.java
diff --git a/core/core-engine/src/test/java/org/onap/policy/apex/core/engine/executor/StateFinalizerExecutorTest.java b/core/src/test/java/org/onap/policy/apex/core/engine/executor/StateFinalizerExecutorTest.java
index 8f6544497..8f6544497 100644
--- a/core/core-engine/src/test/java/org/onap/policy/apex/core/engine/executor/StateFinalizerExecutorTest.java
+++ b/core/src/test/java/org/onap/policy/apex/core/engine/executor/StateFinalizerExecutorTest.java
diff --git a/core/core-engine/src/test/java/org/onap/policy/apex/core/engine/executor/StateMachineExecutorTest.java b/core/src/test/java/org/onap/policy/apex/core/engine/executor/StateMachineExecutorTest.java
index 5d91bd2b3..5d91bd2b3 100644
--- a/core/core-engine/src/test/java/org/onap/policy/apex/core/engine/executor/StateMachineExecutorTest.java
+++ b/core/src/test/java/org/onap/policy/apex/core/engine/executor/StateMachineExecutorTest.java
diff --git a/core/core-engine/src/test/java/org/onap/policy/apex/core/engine/executor/TaskExecutorTest.java b/core/src/test/java/org/onap/policy/apex/core/engine/executor/TaskExecutorTest.java
index 4160a9f19..4160a9f19 100644
--- a/core/core-engine/src/test/java/org/onap/policy/apex/core/engine/executor/TaskExecutorTest.java
+++ b/core/src/test/java/org/onap/policy/apex/core/engine/executor/TaskExecutorTest.java
diff --git a/core/core-engine/src/test/java/org/onap/policy/apex/core/engine/executor/TaskSelectExecutorTest.java b/core/src/test/java/org/onap/policy/apex/core/engine/executor/TaskSelectExecutorTest.java
index 613d1ae01..613d1ae01 100644
--- a/core/core-engine/src/test/java/org/onap/policy/apex/core/engine/executor/TaskSelectExecutorTest.java
+++ b/core/src/test/java/org/onap/policy/apex/core/engine/executor/TaskSelectExecutorTest.java
diff --git a/core/core-engine/src/test/java/org/onap/policy/apex/core/engine/executor/context/AxStateFacadeTest.java b/core/src/test/java/org/onap/policy/apex/core/engine/executor/context/AxStateFacadeTest.java
index 68d478877..68d478877 100644
--- a/core/core-engine/src/test/java/org/onap/policy/apex/core/engine/executor/context/AxStateFacadeTest.java
+++ b/core/src/test/java/org/onap/policy/apex/core/engine/executor/context/AxStateFacadeTest.java
diff --git a/core/core-engine/src/test/java/org/onap/policy/apex/core/engine/executor/context/AxTaskFacadeTest.java b/core/src/test/java/org/onap/policy/apex/core/engine/executor/context/AxTaskFacadeTest.java
index 9da8ecfad..9da8ecfad 100644
--- a/core/core-engine/src/test/java/org/onap/policy/apex/core/engine/executor/context/AxTaskFacadeTest.java
+++ b/core/src/test/java/org/onap/policy/apex/core/engine/executor/context/AxTaskFacadeTest.java
diff --git a/core/core-engine/src/test/java/org/onap/policy/apex/core/engine/executor/context/DummyContextAlbum.java b/core/src/test/java/org/onap/policy/apex/core/engine/executor/context/DummyContextAlbum.java
index efb53a682..efb53a682 100644
--- a/core/core-engine/src/test/java/org/onap/policy/apex/core/engine/executor/context/DummyContextAlbum.java
+++ b/core/src/test/java/org/onap/policy/apex/core/engine/executor/context/DummyContextAlbum.java
diff --git a/core/core-engine/src/test/java/org/onap/policy/apex/core/engine/executor/context/StateFinalizerExecutionContextTest.java b/core/src/test/java/org/onap/policy/apex/core/engine/executor/context/StateFinalizerExecutionContextTest.java
index c540f51ad..c540f51ad 100644
--- a/core/core-engine/src/test/java/org/onap/policy/apex/core/engine/executor/context/StateFinalizerExecutionContextTest.java
+++ b/core/src/test/java/org/onap/policy/apex/core/engine/executor/context/StateFinalizerExecutionContextTest.java
diff --git a/core/core-engine/src/test/java/org/onap/policy/apex/core/engine/executor/context/TaskExecutionContextTest.java b/core/src/test/java/org/onap/policy/apex/core/engine/executor/context/TaskExecutionContextTest.java
index 24c504822..24c504822 100644
--- a/core/core-engine/src/test/java/org/onap/policy/apex/core/engine/executor/context/TaskExecutionContextTest.java
+++ b/core/src/test/java/org/onap/policy/apex/core/engine/executor/context/TaskExecutionContextTest.java
diff --git a/core/core-engine/src/test/java/org/onap/policy/apex/core/engine/executor/context/TaskSelectionExecutionContextTest.java b/core/src/test/java/org/onap/policy/apex/core/engine/executor/context/TaskSelectionExecutionContextTest.java
index 5857e0513..5857e0513 100644
--- a/core/core-engine/src/test/java/org/onap/policy/apex/core/engine/executor/context/TaskSelectionExecutionContextTest.java
+++ b/core/src/test/java/org/onap/policy/apex/core/engine/executor/context/TaskSelectionExecutionContextTest.java
diff --git a/core/core-engine/src/test/java/org/onap/policy/apex/core/engine/executor/exception/StateMachineRuntimeExceptionTest.java b/core/src/test/java/org/onap/policy/apex/core/engine/executor/exception/StateMachineRuntimeExceptionTest.java
index 84f330308..84f330308 100644
--- a/core/core-engine/src/test/java/org/onap/policy/apex/core/engine/executor/exception/StateMachineRuntimeExceptionTest.java
+++ b/core/src/test/java/org/onap/policy/apex/core/engine/executor/exception/StateMachineRuntimeExceptionTest.java
diff --git a/core/core-engine/src/test/java/org/onap/policy/apex/core/engine/executor/impl/ExceutorFactoryImplTest.java b/core/src/test/java/org/onap/policy/apex/core/engine/executor/impl/ExceutorFactoryImplTest.java
index 5957ff347..5957ff347 100644
--- a/core/core-engine/src/test/java/org/onap/policy/apex/core/engine/executor/impl/ExceutorFactoryImplTest.java
+++ b/core/src/test/java/org/onap/policy/apex/core/engine/executor/impl/ExceutorFactoryImplTest.java
diff --git a/core/core-infrastructure/src/test/java/org/onap/policy/apex/core/infrastructure/threading/ThreadingTest.java b/core/src/test/java/org/onap/policy/apex/core/infrastructure/threading/ThreadingTest.java
index 35ad9386a..35ad9386a 100644
--- a/core/core-infrastructure/src/test/java/org/onap/policy/apex/core/infrastructure/threading/ThreadingTest.java
+++ b/core/src/test/java/org/onap/policy/apex/core/infrastructure/threading/ThreadingTest.java