diff options
Diffstat (limited to 'prh-app-server/src/main/java/org/onap/dcaegen2/services/prh/tasks')
9 files changed, 66 insertions, 98 deletions
diff --git a/prh-app-server/src/main/java/org/onap/dcaegen2/services/prh/tasks/AAIConsumerTaskImpl.java b/prh-app-server/src/main/java/org/onap/dcaegen2/services/prh/tasks/AAIConsumerTaskImpl.java index 3504bf98..1c80d3f9 100644 --- a/prh-app-server/src/main/java/org/onap/dcaegen2/services/prh/tasks/AAIConsumerTaskImpl.java +++ b/prh-app-server/src/main/java/org/onap/dcaegen2/services/prh/tasks/AAIConsumerTaskImpl.java @@ -40,46 +40,32 @@ import java.util.Optional; public class AAIConsumerTaskImpl extends AAIConsumerTask<AAIClientConfiguration> { private static final Logger logger = LoggerFactory.getLogger(ScheduledTasks.class); - private static final DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("HH:mm:ss"); private final Config prhAppConfig; - private final HttpRequestDetails requestDetails; - private AAIProducerClient producerClient; - Optional<String> response; + private Optional<String> response; @Autowired - public AAIConsumerTaskImpl(AppConfig prhAppConfig, HttpRequestDetails requestDetails) { + public AAIConsumerTaskImpl(AppConfig prhAppConfig) { this.prhAppConfig = prhAppConfig; - this.requestDetails = requestDetails; } @Override protected void consume() throws AAINotFoundException { - logger.debug("Start task AAIConsumerTask::publish() :: Execution Time - {}", dateTimeFormatter.format( - LocalDateTime.now())); - - - producerClient = new AAIProducerClient(prhAppConfig.getAAIClientConfiguration()); - - response = producerClient.getHttpResponse(requestDetails); - - logger.debug("End task AAIConsumerTask::publish() :: Execution Time - {}", dateTimeFormatter.format( - LocalDateTime.now())); + //TODO: @Piotr Wielebski + AAIProducerClient producerClient = new AAIProducerClient(prhAppConfig.getAAIClientConfiguration()); } @Override - public ResponseEntity execute(Object object) throws AAINotFoundException { - logger.debug("Start task AAIProducerTaskImpl::execute() :: Execution Time - {}", dateTimeFormatter.format( - LocalDateTime.now())); + public Object execute(Object object) throws AAINotFoundException { consume(); - logger.debug("End task AAIPublisherTaskImpl::execute() :: Execution Time - {}", dateTimeFormatter.format( - LocalDateTime.now())); + //TODO: @Piotr Wielebski return null; } @Override void initConfigs() { + logger.trace("initConfigs for AAIConsumerTaskImpl not needed/supported"); } @Override diff --git a/prh-app-server/src/main/java/org/onap/dcaegen2/services/prh/tasks/AAIProducerTask.java b/prh-app-server/src/main/java/org/onap/dcaegen2/services/prh/tasks/AAIProducerTask.java index 787e614d..8545949f 100644 --- a/prh-app-server/src/main/java/org/onap/dcaegen2/services/prh/tasks/AAIProducerTask.java +++ b/prh-app-server/src/main/java/org/onap/dcaegen2/services/prh/tasks/AAIProducerTask.java @@ -24,9 +24,9 @@ import org.onap.dcaegen2.services.prh.exceptions.AAINotFoundException; /** * @author <a href="mailto:przemyslaw.wasala@nokia.com">Przemysław Wąsala</a> on 4/13/18 */ -public abstract class AAIProducerTask<T> extends Task { +public abstract class AAIProducerTask<T, U, V> extends Task { - protected abstract void publish() throws AAINotFoundException; + protected abstract V publish(U message) throws AAINotFoundException; protected abstract T resolveConfiguration(); } diff --git a/prh-app-server/src/main/java/org/onap/dcaegen2/services/prh/tasks/AAIProducerTaskImpl.java b/prh-app-server/src/main/java/org/onap/dcaegen2/services/prh/tasks/AAIProducerTaskImpl.java index 5e8dcea1..a254890f 100644 --- a/prh-app-server/src/main/java/org/onap/dcaegen2/services/prh/tasks/AAIProducerTaskImpl.java +++ b/prh-app-server/src/main/java/org/onap/dcaegen2/services/prh/tasks/AAIProducerTaskImpl.java @@ -19,10 +19,13 @@ */ package org.onap.dcaegen2.services.prh.tasks; +import com.google.gson.Gson; import org.onap.dcaegen2.services.config.AAIClientConfiguration; import org.onap.dcaegen2.services.prh.configuration.AppConfig; import org.onap.dcaegen2.services.prh.configuration.Config; import org.onap.dcaegen2.services.prh.exceptions.AAINotFoundException; +import org.onap.dcaegen2.services.prh.model.ConsumerDmaapModel; +import org.onap.dcaegen2.services.prh.model.ImmutableConsumerDmaapModel; import org.onap.dcaegen2.services.service.AAIProducerClient; import org.onap.dcaegen2.services.utils.HttpRequestDetails; import org.slf4j.Logger; @@ -39,48 +42,38 @@ import java.util.Optional; * @author <a href="mailto:przemyslaw.wasala@nokia.com">Przemysław Wąsala</a> on 4/13/18 */ @Component -public class AAIProducerTaskImpl extends AAIProducerTask<AAIClientConfiguration> { +public class AAIProducerTaskImpl extends AAIProducerTask<AAIClientConfiguration, ConsumerDmaapModel, Object> { private static final Logger logger = LoggerFactory.getLogger(ScheduledTasks.class); - private static final DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("HH:mm:ss"); private final Config prhAppConfig; private AAIProducerClient producerClient; - private HttpRequestDetails requestDetails; - Optional<String> response; + private Optional<String> response; @Autowired - public AAIProducerTaskImpl(AppConfig prhAppConfig, HttpRequestDetails requestDetails) { + public AAIProducerTaskImpl(AppConfig prhAppConfig) { this.prhAppConfig = prhAppConfig; - this.requestDetails = requestDetails; } @Override - protected void publish() throws AAINotFoundException { - logger.debug("Start task AAIConsumerTask::publish() :: Execution Time - {}", dateTimeFormatter.format( - LocalDateTime.now())); - + protected Object publish(ConsumerDmaapModel consumerDmaapModel) throws AAINotFoundException { + logger.trace("Method %M called with arg {}", consumerDmaapModel); producerClient = new AAIProducerClient(prhAppConfig.getAAIClientConfiguration()); - - response = producerClient.getHttpResponse(requestDetails); - - logger.debug("End task AAIConsumerTask::publish() :: Execution Time - {}", dateTimeFormatter.format( - LocalDateTime.now())); - + //TODO: @Piotr Wielebski + response = producerClient.getHttpResponse(null); + return response.get(); } @Override - public ResponseEntity execute(Object object) throws AAINotFoundException { - logger.debug("Start task AAIProducerTaskImpl::execute() :: Execution Time - {}", dateTimeFormatter.format( - LocalDateTime.now())); - publish(); - logger.debug("End task AAIPublisherTaskImpl::execute() :: Execution Time - {}", dateTimeFormatter.format( - LocalDateTime.now())); - return null; + public Object execute(Object object) throws AAINotFoundException { + logger.trace("Method %M called with arg {}", object); + //TODO: @Piotr Wielebski + return publish((ConsumerDmaapModel) object); } @Override void initConfigs() { + logger.trace("initConfigs for AAIProducerTaskImpl not needed/supported"); } @Override diff --git a/prh-app-server/src/main/java/org/onap/dcaegen2/services/prh/tasks/DmaapConsumerTask.java b/prh-app-server/src/main/java/org/onap/dcaegen2/services/prh/tasks/DmaapConsumerTask.java index 68a79e01..3e827075 100644 --- a/prh-app-server/src/main/java/org/onap/dcaegen2/services/prh/tasks/DmaapConsumerTask.java +++ b/prh-app-server/src/main/java/org/onap/dcaegen2/services/prh/tasks/DmaapConsumerTask.java @@ -24,9 +24,9 @@ import org.onap.dcaegen2.services.prh.exceptions.DmaapNotFoundException; /** * @author <a href="mailto:przemyslaw.wasala@nokia.com">Przemysław Wąsala</a> on 4/13/18 */ -public abstract class DmaapConsumerTask<T> extends Task { +public abstract class DmaapConsumerTask<T, U, V> extends Task { - protected abstract void consume() throws DmaapNotFoundException; + protected abstract V consume(U message) throws DmaapNotFoundException; protected abstract T resolveConfiguration(); } diff --git a/prh-app-server/src/main/java/org/onap/dcaegen2/services/prh/tasks/DmaapConsumerTaskImpl.java b/prh-app-server/src/main/java/org/onap/dcaegen2/services/prh/tasks/DmaapConsumerTaskImpl.java index eb66361d..a2129fcd 100644 --- a/prh-app-server/src/main/java/org/onap/dcaegen2/services/prh/tasks/DmaapConsumerTaskImpl.java +++ b/prh-app-server/src/main/java/org/onap/dcaegen2/services/prh/tasks/DmaapConsumerTaskImpl.java @@ -1,4 +1,4 @@ -/*- +/* * ============LICENSE_START======================================================= * PNF-REGISTRATION-HANDLER * ================================================================================ @@ -22,10 +22,14 @@ package org.onap.dcaegen2.services.prh.tasks; import org.onap.dcaegen2.services.config.DmaapConsumerConfiguration; import org.onap.dcaegen2.services.prh.configuration.AppConfig; import org.onap.dcaegen2.services.prh.configuration.Config; +import org.onap.dcaegen2.services.prh.exceptions.DmaapNotFoundException; +import org.onap.dcaegen2.services.prh.exceptions.PrhTaskException; +import org.onap.dcaegen2.services.prh.model.ConsumerDmaapModel; +import org.onap.dcaegen2.services.prh.service.DmaapConsumerJsonParser; +import org.onap.dcaegen2.services.service.consumer.ExtendedDmaapConsumerHttpClientImpl; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.http.ResponseEntity; import org.springframework.stereotype.Component; import java.time.LocalDateTime; @@ -35,11 +39,10 @@ import java.time.format.DateTimeFormatter; * @author <a href="mailto:przemyslaw.wasala@nokia.com">Przemysław Wąsala</a> on 3/23/18 */ @Component -public class DmaapConsumerTaskImpl extends DmaapConsumerTask<DmaapConsumerConfiguration> { +public class DmaapConsumerTaskImpl extends DmaapConsumerTask<DmaapConsumerConfiguration, String, ConsumerDmaapModel> { private static final Logger logger = LoggerFactory.getLogger(DmaapConsumerTaskImpl.class); - private static final DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("HH:mm:ss"); private final Config prhAppConfig; @@ -49,23 +52,18 @@ public class DmaapConsumerTaskImpl extends DmaapConsumerTask<DmaapConsumerConfig } @Override - protected void consume() { - logger.debug("Start task DmaapConsumerTask::consume() :: Execution Time - {}", dateTimeFormatter.format( - LocalDateTime.now())); - - logger.debug("End task DmaapConsumerTask::consume() :: Execution Time - {}", - dateTimeFormatter.format(LocalDateTime.now())); - + protected ConsumerDmaapModel consume(String message) throws DmaapNotFoundException { + logger.trace("Method %M called with arg {}", message); + return DmaapConsumerJsonParser.getJsonObject(message); } @Override - public ResponseEntity execute(Object object) { - logger.debug("Start task DmaapConsumerTask::execute() :: Execution Time - {}", dateTimeFormatter.format( - LocalDateTime.now())); - consume(); - logger.debug("End task DmaapConsumerTask::execute() :: Execution Time - {}", - dateTimeFormatter.format(LocalDateTime.now())); - return null; + public Object execute(Object object) throws PrhTaskException { + logger.trace("Method %M called with arg {}", object); + ExtendedDmaapConsumerHttpClientImpl dmaapConsumerHttpClient = new ExtendedDmaapConsumerHttpClientImpl( + resolveConfiguration()); + return consume((dmaapConsumerHttpClient.getHttpConsumerResponse().orElseThrow(() -> + new PrhTaskException("DmaapConsumerTask has returned null")))); } @Override diff --git a/prh-app-server/src/main/java/org/onap/dcaegen2/services/prh/tasks/DmaapPublisherTask.java b/prh-app-server/src/main/java/org/onap/dcaegen2/services/prh/tasks/DmaapPublisherTask.java index 239d36a9..7b9fd5db 100644 --- a/prh-app-server/src/main/java/org/onap/dcaegen2/services/prh/tasks/DmaapPublisherTask.java +++ b/prh-app-server/src/main/java/org/onap/dcaegen2/services/prh/tasks/DmaapPublisherTask.java @@ -24,10 +24,9 @@ import org.onap.dcaegen2.services.prh.exceptions.DmaapNotFoundException; /** * @author <a href="mailto:przemyslaw.wasala@nokia.com">Przemysław Wąsala</a> on 3/23/18 */ -public abstract class DmaapPublisherTask<T> extends Task { +public abstract class DmaapPublisherTask<T, U> extends Task { - protected abstract void publish() throws DmaapNotFoundException; + protected abstract U publish(U message) throws DmaapNotFoundException; protected abstract T resolveConfiguration(); - } diff --git a/prh-app-server/src/main/java/org/onap/dcaegen2/services/prh/tasks/DmaapPublisherTaskImpl.java b/prh-app-server/src/main/java/org/onap/dcaegen2/services/prh/tasks/DmaapPublisherTaskImpl.java index ff5f5893..906bd428 100644 --- a/prh-app-server/src/main/java/org/onap/dcaegen2/services/prh/tasks/DmaapPublisherTaskImpl.java +++ b/prh-app-server/src/main/java/org/onap/dcaegen2/services/prh/tasks/DmaapPublisherTaskImpl.java @@ -22,6 +22,10 @@ package org.onap.dcaegen2.services.prh.tasks; import org.onap.dcaegen2.services.config.DmaapPublisherConfiguration; import org.onap.dcaegen2.services.prh.configuration.AppConfig; import org.onap.dcaegen2.services.prh.configuration.Config; +import org.onap.dcaegen2.services.prh.exceptions.DmaapNotFoundException; +import org.onap.dcaegen2.services.prh.exceptions.PrhTaskException; +import org.onap.dcaegen2.services.service.producer.ExtendedDmaapProducerHttpClientImpl; +import org.onap.dcaegen2.services.service.producer.ImmutableDmaapPublisherRequestDetails; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; @@ -35,11 +39,9 @@ import java.time.format.DateTimeFormatter; * @author <a href="mailto:przemyslaw.wasala@nokia.com">Przemysław Wąsala</a> on 4/13/18 */ @Component -public class DmaapPublisherTaskImpl extends DmaapPublisherTask<DmaapPublisherConfiguration> { +public class DmaapPublisherTaskImpl extends DmaapPublisherTask<DmaapPublisherConfiguration, String> { private static final Logger logger = LoggerFactory.getLogger(ScheduledTasks.class); - private static final DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("HH:mm:ss"); - private final Config prhAppConfig; @Autowired @@ -48,27 +50,22 @@ public class DmaapPublisherTaskImpl extends DmaapPublisherTask<DmaapPublisherCon } @Override - protected void publish() { - logger.debug("Start task DmaapPublisherTask::publish() :: Execution Time - {}", dateTimeFormatter.format( - LocalDateTime.now())); - - logger.debug("End task DmaapPublisherTask::publish() :: Execution Time - {}", - dateTimeFormatter.format(LocalDateTime.now())); + protected String publish(String message) { + logger.trace("Method %M called with arg {}", message); + ExtendedDmaapProducerHttpClientImpl dmaapProducerHttpClient = new ExtendedDmaapProducerHttpClientImpl( + resolveConfiguration()); + return null; } @Override - public ResponseEntity execute(Object object) { - logger.debug("Start task DmaapPublisherTask::consume() :: Execution Time - {}", dateTimeFormatter.format( - LocalDateTime.now())); - publish(); - logger.debug("End task DmaapPublisherTask::consume() :: Execution Time - {}", - dateTimeFormatter.format(LocalDateTime.now())); - return null; + public Object execute(Object object) throws PrhTaskException { + logger.trace("Method %M called with arg {}", object); + return publish((String) object); } @Override void initConfigs() { - + logger.trace("initConfigs for DmaapPublisherTaskImpl not needed/supported"); } @Override diff --git a/prh-app-server/src/main/java/org/onap/dcaegen2/services/prh/tasks/ScheduledTasks.java b/prh-app-server/src/main/java/org/onap/dcaegen2/services/prh/tasks/ScheduledTasks.java index c80b8a7d..84c75e08 100644 --- a/prh-app-server/src/main/java/org/onap/dcaegen2/services/prh/tasks/ScheduledTasks.java +++ b/prh-app-server/src/main/java/org/onap/dcaegen2/services/prh/tasks/ScheduledTasks.java @@ -35,7 +35,6 @@ import java.time.format.DateTimeFormatter; public class ScheduledTasks { private static final Logger logger = LoggerFactory.getLogger(ScheduledTasks.class); - private static final DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("HH:mm:ss"); private final Task dmaapConsumerTask; private final Task dmaapProducerTask; @@ -52,25 +51,21 @@ public class ScheduledTasks { } public void scheduleMainPrhEventTask() { - logger.debug("Task scheduledTaskAskingDMaaPOfConsumeEvent() :: Execution Time - {}", dateTimeFormatter.format( - LocalDateTime.now())); + logger.trace("Execution of task was registered"); setTaskExecutionFlow(); try { dmaapConsumerTask.initConfigs(); dmaapConsumerTask.receiveRequest(null); } catch (PrhTaskException e) { logger - .error("Task scheduledTaskAskingDMaaPOfConsumeEvent()::PrhTaskException :: Execution Time - {}:{}", - dateTimeFormatter.format( - LocalDateTime.now()), e); + .warn("Chain of tasks have been aborted, because some errors occur in prh workflow ", e); } } private void setTaskExecutionFlow() { dmaapConsumerTask.setNext(aaiProducerTask); - aaiProducerTask.setNext(dmaapProducerTask); - aaiConsumerTask.setNext(aaiConsumerTask); - dmaapProducerTask.setNext(dmaapConsumerTask); + aaiProducerTask.setNext(aaiConsumerTask); + aaiConsumerTask.setNext(dmaapProducerTask); } } diff --git a/prh-app-server/src/main/java/org/onap/dcaegen2/services/prh/tasks/Task.java b/prh-app-server/src/main/java/org/onap/dcaegen2/services/prh/tasks/Task.java index 3f521f2c..a9b10d40 100644 --- a/prh-app-server/src/main/java/org/onap/dcaegen2/services/prh/tasks/Task.java +++ b/prh-app-server/src/main/java/org/onap/dcaegen2/services/prh/tasks/Task.java @@ -37,13 +37,13 @@ public abstract class Task { public void receiveRequest(Object body) throws PrhTaskException { - ResponseEntity responseEntity = execute(body); + Object response = execute(body); if (taskProcess != null) { - taskProcess.receiveRequest(responseEntity); + taskProcess.receiveRequest(response); } } - abstract ResponseEntity execute(Object object) throws PrhTaskException; + abstract Object execute(Object object) throws PrhTaskException; abstract void initConfigs(); } |