TCA: Support for VES/A&AI enrichment
[dcaegen2/analytics/tca.git] / dcae-analytics-common / src / main / java / org / openecomp / dcae / apod / analytics / common / service / processor / GenericMessageChainProcessor.java
index 982641d..b21dee7 100644 (file)
@@ -1,70 +1,70 @@
-/*
- * ===============================LICENSE_START======================================
- *  dcae-analytics
- * ================================================================================
- *    Copyright © 2017 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.
- *  ============================LICENSE_END===========================================
- */
-
-package org.openecomp.dcae.apod.analytics.common.service.processor;
-
-import org.openecomp.dcae.apod.analytics.common.utils.MessageProcessorUtils.MessageProcessorFunction;
-
-import java.util.List;
-
-import static org.openecomp.dcae.apod.analytics.common.utils.MessageProcessorUtils.computeMessageProcessorChain;
-
-/**
- * <p>
- *     A Generic Message Processor which passes the {@link ProcessorContext} from first to second
- *     {@link MessageProcessor}
- * </p>
- *
- * @param <P> Processor Context sub classes
- *
- * @author Rajiv Singla . Creation Date: 11/8/2016.
- */
-public class GenericMessageChainProcessor<P extends ProcessorContext> {
-
-    private final List<? extends MessageProcessor<P>> messageProcessors;
-    private final P initialProcessorContext;
-
-    public GenericMessageChainProcessor(List<? extends MessageProcessor<P>> messageProcessors,
-                                        P initialProcessorContext) {
-        this.messageProcessors = messageProcessors;
-        this.initialProcessorContext = initialProcessorContext;
-    }
-
-    /**
-     * Process a processor chain
-     *
-     * @return Processor Context after processing the processor chain
-     */
-    public P processChain() {
-
-        final MessageProcessorFunction<P> messageProcessorFunction =
-                new MessageProcessorFunction<P>() {
-                    @Override
-                    public <M extends MessageProcessor<P>> P apply(P context, M processor) {
-                        return processor.apply(context);
-                    }
-                };
-
-        return computeMessageProcessorChain(messageProcessors, initialProcessorContext,
-                messageProcessorFunction);
-
-    }
-
-}
+/*\r
+ * ===============================LICENSE_START======================================\r
+ *  dcae-analytics\r
+ * ================================================================================\r
+ *    Copyright © 2017 AT&T Intellectual Property. All rights reserved.\r
+ * ================================================================================\r
+ *  Licensed under the Apache License, Version 2.0 (the "License");\r
+ *  you may not use this file except in compliance with the License.\r
+ *   You may obtain a copy of the License at\r
+ *\r
+ *          http://www.apache.org/licenses/LICENSE-2.0\r
+ *\r
+ *  Unless required by applicable law or agreed to in writing, software\r
+ *  distributed under the License is distributed on an "AS IS" BASIS,\r
+ *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+ *  See the License for the specific language governing permissions and\r
+ *  limitations under the License.\r
+ *  ============================LICENSE_END===========================================\r
+ */\r
+\r
+package org.openecomp.dcae.apod.analytics.common.service.processor;\r
+\r
+import org.openecomp.dcae.apod.analytics.common.utils.MessageProcessorUtils.MessageProcessorFunction;\r
+\r
+import java.util.List;\r
+\r
+import static org.openecomp.dcae.apod.analytics.common.utils.MessageProcessorUtils.computeMessageProcessorChain;\r
+\r
+/**\r
+ * <p>\r
+ *     A Generic Message Processor which passes the {@link ProcessorContext} from first to second\r
+ *     {@link MessageProcessor}\r
+ * </p>\r
+ *\r
+ * @param <P> Processor Context sub classes\r
+ *\r
+ * @author Rajiv Singla . Creation Date: 11/8/2016.\r
+ */\r
+public class GenericMessageChainProcessor<P extends ProcessorContext> {\r
+\r
+    private final List<? extends MessageProcessor<P>> messageProcessors;\r
+    private final P initialProcessorContext;\r
+\r
+    public GenericMessageChainProcessor(List<? extends MessageProcessor<P>> messageProcessors,\r
+                                        P initialProcessorContext) {\r
+        this.messageProcessors = messageProcessors;\r
+        this.initialProcessorContext = initialProcessorContext;\r
+    }\r
+\r
+    /**\r
+     * Process a processor chain\r
+     *\r
+     * @return Processor Context after processing the processor chain\r
+     */\r
+    public P processChain() {\r
+\r
+        final MessageProcessorFunction<P> messageProcessorFunction =\r
+                new MessageProcessorFunction<P>() {\r
+                    @Override\r
+                    public <M extends MessageProcessor<P>> P apply(P context, M processor) {\r
+                        return processor.apply(context);\r
+                    }\r
+                };\r
+\r
+        return computeMessageProcessorChain(messageProcessors, initialProcessorContext,\r
+                messageProcessorFunction);\r
+\r
+    }\r
+\r
+}\r