2 * ============LICENSE_START=======================================================
4 * ================================================================================
5 * Copyright (C) 2017-2018 AT&T Intellectual Property. All rights reserved.
6 * =============================================================================
7 * Licensed under the Apache License, Version 2.0 (the "License");
8 * you may not use this file except in compliance with the License.
9 * You may obtain a copy of the License at
11 * http://www.apache.org/licenses/LICENSE-2.0
13 * Unless required by applicable law or agreed to in writing, software
14 * distributed under the License is distributed on an "AS IS" BASIS,
15 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16 * See the License for the specific language governing permissions and
17 * limitations under the License.
19 * ============LICENSE_END=========================================================
22 package org.onap.appc.flow.controller;
24 import com.att.eelf.configuration.EELFLogger;
25 import com.att.eelf.configuration.EELFManager;
26 import java.util.LinkedList;
27 import java.util.List;
28 import org.onap.appc.flow.controller.node.FlowControlNode;
29 import org.onap.appc.flow.controller.node.JsonParsingNode;
30 import org.onap.appc.flow.controller.node.RestServiceNode;
31 import org.osgi.framework.BundleActivator;
32 import org.osgi.framework.BundleContext;
33 import org.osgi.framework.ServiceRegistration;
35 public class FlowControllerActivator implements BundleActivator {
37 private List<ServiceRegistration> registrations = new LinkedList<>();
39 private static final EELFLogger log = EELFManager.getInstance().getLogger(FlowControllerActivator.class);
41 private static final String REGISTERING = "Registering service ";
42 private static final String REGISTERING_OK = REGISTERING + "successful for ";
46 public void start(BundleContext ctx) {
48 FlowControlNode flowExecutorNode = new FlowControlNode();
49 log.debug(REGISTERING + flowExecutorNode.getClass().getName());
50 registrations.add(ctx.registerService(flowExecutorNode.getClass().getName(), flowExecutorNode, null));
51 log.debug(REGISTERING_OK + flowExecutorNode.getClass().getName());
53 RestServiceNode restServiceNode = new RestServiceNode();
54 log.debug(REGISTERING + restServiceNode.getClass().getName());
55 registrations.add(ctx.registerService(restServiceNode.getClass().getName(), restServiceNode, null));
56 log.debug(REGISTERING_OK + restServiceNode.getClass().getName());
58 JsonParsingNode jsonParsingNode = new JsonParsingNode();
59 log.debug(REGISTERING + jsonParsingNode.getClass().getName());
60 registrations.add(ctx.registerService(jsonParsingNode.getClass().getName(), jsonParsingNode, null));
61 log.debug(REGISTERING_OK + jsonParsingNode.getClass().getName());
63 } catch (Exception e) {
64 log.debug("Exeception occured in FlowControllerActivator", e);
69 public void stop(BundleContext arg0) {
70 for (ServiceRegistration registration: registrations) {
71 registration.unregister();