-/*
- * ============LICENSE_START==========================================
- * Copyright (c) 2019 PANTHEON.tech s.r.o.
- * ===================================================================
- * 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.onap.ccsdk.sli.plugins.lighty;
-
-import io.lighty.core.controller.api.AbstractLightyModule;
-import org.onap.ccsdk.sli.core.lighty.common.CcsdkLightyUtils;
-import org.onap.ccsdk.sli.plugins.prop.lighty.PropertiesNodeModule;
-import org.onap.ccsdk.sli.plugins.prop.lighty.RestApiCallNodeModule;
-import org.onap.ccsdk.sli.plugins.restconf.lighty.RestconfClientModule;
-import org.onap.ccsdk.sli.plugins.sshapicall.lighty.SshApiCallModule;
-import org.onap.ccsdk.sli.plugins.template.lighty.TemplateNodeModule;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-/**
- * The implementation of the {@link io.lighty.core.controller.api.LightyModule} that groups all other LightyModules
- * from the ccsdk-sli-plugins repository so they can be all treated as one component (for example started/stopped at once).
- * For more information about the lighty.io visit the website https://lighty.io.
- */
-public class CcsdkPluginsLightyModule extends AbstractLightyModule {
-
- private static final Logger LOG = LoggerFactory.getLogger(CcsdkPluginsLightyModule.class);
-
- private PropertiesNodeModule propertiesNodeModule;
- private RestApiCallNodeModule restApiCallNodeModule;
- private RestconfClientModule restconfClientModule;
- private SshApiCallModule sshApiCallModule;
- private TemplateNodeModule templateNodeModule;
-
- protected boolean initProcedure() {
- LOG.debug("Initializing CCSDK Plugins Lighty module...");
-
- this.propertiesNodeModule = new PropertiesNodeModule();
- if (!CcsdkLightyUtils.startLightyModule(propertiesNodeModule)) {
- LOG.error("Unable to start PropertiesNodeModule in CCSDK Plugins Lighty module!");
- return false;
- }
-
- this.restApiCallNodeModule = new RestApiCallNodeModule();
- if (!CcsdkLightyUtils.startLightyModule(restApiCallNodeModule)) {
- LOG.error("Unable to start RestApiCallNodeModule in CCSDK Plugins Lighty module!");
- return false;
- }
-
- this.restconfClientModule = new RestconfClientModule(restApiCallNodeModule.getPropertiesNode());
- if (!CcsdkLightyUtils.startLightyModule(restconfClientModule)) {
- LOG.error("Unable to start RestconfClientModule in CCSDK Plugins Lighty module!");
- return false;
- }
-
- this.sshApiCallModule = new SshApiCallModule();
- if (!CcsdkLightyUtils.startLightyModule(sshApiCallModule)) {
- LOG.error("Unable to start SshApiCallModule in CCSDK Plugins Lighty module!");
- return false;
- }
-
- this.templateNodeModule = new TemplateNodeModule();
- if (!CcsdkLightyUtils.startLightyModule(templateNodeModule)) {
- LOG.error("Unable to start TemplateNodeModule in CCSDK Plugins Lighty module!");
- return false;
- }
-
- LOG.debug("CCSDK Plugins Lighty module was initialized successfully");
- return true;
- }
-
- protected boolean stopProcedure() {
- LOG.debug("Stopping CCSDK Plugins Lighty module...");
-
- boolean stopSuccessful = true;
-
- if (!CcsdkLightyUtils.stopLightyModule(templateNodeModule)) {
- stopSuccessful = false;
- }
-
- if (!CcsdkLightyUtils.stopLightyModule(sshApiCallModule)) {
- stopSuccessful = false;
- }
-
- if (!CcsdkLightyUtils.stopLightyModule(restconfClientModule)) {
- stopSuccessful = false;
- }
-
- if (!CcsdkLightyUtils.stopLightyModule(restApiCallNodeModule)) {
- stopSuccessful = false;
- }
-
- if (!CcsdkLightyUtils.stopLightyModule(propertiesNodeModule)) {
- stopSuccessful = false;
- }
-
- if (stopSuccessful) {
- LOG.debug("CCSDK Plugins Lighty module was stopped successfully");
- } else {
- LOG.error("CCSDK Plugins Lighty module was not stopped successfully!");
- }
- return stopSuccessful;
- }
-
- public PropertiesNodeModule getPropertiesNodeModule() {
- return propertiesNodeModule;
- }
-
- public RestApiCallNodeModule getRestApiCallNodeModule() {
- return restApiCallNodeModule;
- }
-
- public RestconfClientModule getRestconfClientModule() {
- return restconfClientModule;
- }
-
- public SshApiCallModule getSshApiCallModule() {
- return sshApiCallModule;
- }
-
- public TemplateNodeModule getTemplateNodeModule() {
- return templateNodeModule;
- }
-}