diff options
18 files changed, 663 insertions, 0 deletions
diff --git a/ccsdk-plugins-lighty/pom.xml b/ccsdk-plugins-lighty/pom.xml new file mode 100755 index 000000000..6b9d8ebab --- /dev/null +++ b/ccsdk-plugins-lighty/pom.xml @@ -0,0 +1,49 @@ +<?xml version="1.0" encoding="UTF-8"?> +<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.ccsdk.parent</groupId> + <artifactId>odlparent-lite</artifactId> + <version>1.4.0-SNAPSHOT</version> + <relativePath/> + </parent> + + <groupId>org.onap.ccsdk.sli.plugins</groupId> + <artifactId>ccsdk-plugins-lighty</artifactId> + <version>0.6.0-SNAPSHOT</version> + <packaging>jar</packaging> + + <dependencies> + <dependency> + <groupId>org.onap.ccsdk.sli.core</groupId> + <artifactId>ccsdk-core-lighty</artifactId> + <version>${project.version}</version> + </dependency> + <dependency> + <groupId>org.onap.ccsdk.sli.northbound</groupId> + <artifactId>properties-node-lighty</artifactId> + <version>${project.version}</version> + </dependency> + <dependency> + <groupId>org.onap.ccsdk.sli.northbound</groupId> + <artifactId>restapi-call-node-lighty</artifactId> + <version>${project.version}</version> + </dependency> + <dependency> + <groupId>org.onap.ccsdk.sli.northbound</groupId> + <artifactId>restconf-client-lighty</artifactId> + <version>${project.version}</version> + </dependency> + <dependency> + <groupId>org.onap.ccsdk.sli.northbound</groupId> + <artifactId>sshapi-call-node-lighty</artifactId> + <version>${project.version}</version> + </dependency> + <dependency> + <groupId>org.onap.ccsdk.sli.northbound</groupId> + <artifactId>template-node-lighty</artifactId> + <version>${project.version}</version> + </dependency> + </dependencies> +</project> diff --git a/ccsdk-plugins-lighty/src/main/java/org/onap/ccsdk/sli/plugins/lighty/CcsdkPluginsLightyModule.java b/ccsdk-plugins-lighty/src/main/java/org/onap/ccsdk/sli/plugins/lighty/CcsdkPluginsLightyModule.java new file mode 100644 index 000000000..a6d662b85 --- /dev/null +++ b/ccsdk-plugins-lighty/src/main/java/org/onap/ccsdk/sli/plugins/lighty/CcsdkPluginsLightyModule.java @@ -0,0 +1,133 @@ +/* + * ============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; + } +} @@ -29,6 +29,7 @@ <module>grToolkit</module> <module>features</module> <module>artifacts</module> + <module>ccsdk-plugins-lighty</module> </modules> <scm> diff --git a/properties-node/lighty/pom.xml b/properties-node/lighty/pom.xml new file mode 100755 index 000000000..6778f3c22 --- /dev/null +++ b/properties-node/lighty/pom.xml @@ -0,0 +1,47 @@ +<?xml version="1.0" encoding="UTF-8"?> +<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.ccsdk.parent</groupId> + <artifactId>binding-parent</artifactId> + <version>1.4.0-SNAPSHOT</version> + <relativePath/> + </parent> + + <groupId>org.onap.ccsdk.sli.northbound</groupId> + <artifactId>properties-node-lighty</artifactId> + <version>0.6.0-SNAPSHOT</version> + <packaging>jar</packaging> + + <name>ccsdk-sli-plugins :: properties-node :: ${project.artifactId}</name> + <url>http://maven.apache.org</url> + + <properties> + <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> + </properties> + + <dependencyManagement> + <dependencies> + <dependency> + <groupId>org.onap.ccsdk.sli.core</groupId> + <artifactId>ccsdk-lighty-dependency-versions</artifactId> + <version>${project.version}</version> + <type>pom</type> + <scope>import</scope> + </dependency> + </dependencies> + </dependencyManagement> + + <dependencies> + <dependency> + <groupId>io.lighty.core</groupId> + <artifactId>lighty-controller</artifactId> + </dependency> + <dependency> + <groupId>org.onap.ccsdk.sli.plugins</groupId> + <artifactId>properties-node-provider</artifactId> + <version>${project.version}</version> + </dependency> + </dependencies> +</project> diff --git a/properties-node/lighty/src/main/java/org/onap/ccsdk/sli/plugins/prop/lighty/PropertiesNodeModule.java b/properties-node/lighty/src/main/java/org/onap/ccsdk/sli/plugins/prop/lighty/PropertiesNodeModule.java new file mode 100644 index 000000000..345381120 --- /dev/null +++ b/properties-node/lighty/src/main/java/org/onap/ccsdk/sli/plugins/prop/lighty/PropertiesNodeModule.java @@ -0,0 +1,45 @@ +/* + * ============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.prop.lighty; + +import io.lighty.core.controller.api.AbstractLightyModule; +import io.lighty.core.controller.api.LightyModule; +import org.onap.ccsdk.sli.plugins.prop.PropertiesNode; + +/** + * The implementation of the {@link io.lighty.core.controller.api.LightyModule} that manages and provides services from + * the properties-node-provider artifact. + */ +public class PropertiesNodeModule extends AbstractLightyModule implements LightyModule { + + private PropertiesNode propertiesNode; + + @Override + protected boolean initProcedure() { + this.propertiesNode = new PropertiesNode(); + return true; + } + + @Override + protected boolean stopProcedure() { + return true; + } + + public PropertiesNode getPropertiesNode() { + return this.propertiesNode; + } +} diff --git a/properties-node/pom.xml b/properties-node/pom.xml index 09991f46f..64036f7b1 100755 --- a/properties-node/pom.xml +++ b/properties-node/pom.xml @@ -21,5 +21,6 @@ <module>provider</module> <module>features</module> <module>installer</module> + <module>lighty</module> </modules> </project> diff --git a/restapi-call-node/lighty/pom.xml b/restapi-call-node/lighty/pom.xml new file mode 100755 index 000000000..fa4ad5c22 --- /dev/null +++ b/restapi-call-node/lighty/pom.xml @@ -0,0 +1,47 @@ +<?xml version="1.0" encoding="UTF-8"?> +<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.ccsdk.parent</groupId> + <artifactId>binding-parent</artifactId> + <version>1.4.0-SNAPSHOT</version> + <relativePath/> + </parent> + + <groupId>org.onap.ccsdk.sli.northbound</groupId> + <artifactId>restapi-call-node-lighty</artifactId> + <version>0.6.0-SNAPSHOT</version> + <packaging>jar</packaging> + + <name>ccsdk-sli-plugins :: restapi-call-node :: ${project.artifactId}</name> + <url>http://maven.apache.org</url> + + <properties> + <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> + </properties> + + <dependencyManagement> + <dependencies> + <dependency> + <groupId>org.onap.ccsdk.sli.core</groupId> + <artifactId>ccsdk-lighty-dependency-versions</artifactId> + <version>${project.version}</version> + <type>pom</type> + <scope>import</scope> + </dependency> + </dependencies> + </dependencyManagement> + + <dependencies> + <dependency> + <groupId>io.lighty.core</groupId> + <artifactId>lighty-controller</artifactId> + </dependency> + <dependency> + <groupId>org.onap.ccsdk.sli.plugins</groupId> + <artifactId>restapi-call-node-provider</artifactId> + <version>${project.version}</version> + </dependency> + </dependencies> +</project> diff --git a/restapi-call-node/lighty/src/main/java/org/onap/ccsdk/sli/plugins/prop/lighty/RestApiCallNodeModule.java b/restapi-call-node/lighty/src/main/java/org/onap/ccsdk/sli/plugins/prop/lighty/RestApiCallNodeModule.java new file mode 100644 index 000000000..01fa03e53 --- /dev/null +++ b/restapi-call-node/lighty/src/main/java/org/onap/ccsdk/sli/plugins/prop/lighty/RestApiCallNodeModule.java @@ -0,0 +1,46 @@ +/* + * ============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.prop.lighty; + +import io.lighty.core.controller.api.AbstractLightyModule; +import io.lighty.core.controller.api.LightyModule; +import org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode; + +/** + * The implementation of the {@link io.lighty.core.controller.api.LightyModule} that manages and provides services from + * the restapi-call-node-provider artifact. + */ +public class RestApiCallNodeModule extends AbstractLightyModule implements LightyModule { + + private RestapiCallNode restapiCallNode; + + @Override + protected boolean initProcedure() { + this.restapiCallNode = new RestapiCallNode(); + return true; + } + + @Override + protected boolean stopProcedure() { + return true; + } + + public RestapiCallNode getPropertiesNode() { + return this.restapiCallNode; + } + +} diff --git a/restapi-call-node/pom.xml b/restapi-call-node/pom.xml index d6fb0b49c..7fbce0243 100755 --- a/restapi-call-node/pom.xml +++ b/restapi-call-node/pom.xml @@ -20,5 +20,6 @@ <module>provider</module> <module>features</module> <module>installer</module> + <module>lighty</module> </modules> </project> diff --git a/restconf-client/lighty/pom.xml b/restconf-client/lighty/pom.xml new file mode 100755 index 000000000..86e8af30d --- /dev/null +++ b/restconf-client/lighty/pom.xml @@ -0,0 +1,47 @@ +<?xml version="1.0" encoding="UTF-8"?> +<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.ccsdk.parent</groupId> + <artifactId>binding-parent</artifactId> + <version>1.4.0-SNAPSHOT</version> + <relativePath/> + </parent> + + <groupId>org.onap.ccsdk.sli.northbound</groupId> + <artifactId>restconf-client-lighty</artifactId> + <version>0.6.0-SNAPSHOT</version> + <packaging>jar</packaging> + + <name>ccsdk-sli-plugins :: restconf-client :: ${project.artifactId}</name> + <url>http://maven.apache.org</url> + + <properties> + <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> + </properties> + + <dependencyManagement> + <dependencies> + <dependency> + <groupId>org.onap.ccsdk.sli.core</groupId> + <artifactId>ccsdk-lighty-dependency-versions</artifactId> + <version>${project.version}</version> + <type>pom</type> + <scope>import</scope> + </dependency> + </dependencies> + </dependencyManagement> + + <dependencies> + <dependency> + <groupId>io.lighty.core</groupId> + <artifactId>lighty-controller</artifactId> + </dependency> + <dependency> + <groupId>org.onap.ccsdk.sli.plugins</groupId> + <artifactId>restconf-client-provider</artifactId> + <version>${project.version}</version> + </dependency> + </dependencies> +</project> diff --git a/restconf-client/lighty/src/main/java/org/onap/ccsdk/sli/plugins/restconf/lighty/RestconfClientModule.java b/restconf-client/lighty/src/main/java/org/onap/ccsdk/sli/plugins/restconf/lighty/RestconfClientModule.java new file mode 100644 index 000000000..bb0fc90da --- /dev/null +++ b/restconf-client/lighty/src/main/java/org/onap/ccsdk/sli/plugins/restconf/lighty/RestconfClientModule.java @@ -0,0 +1,59 @@ +/* + * ============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.restconf.lighty; + +import io.lighty.core.controller.api.AbstractLightyModule; +import io.lighty.core.controller.api.LightyModule; +import org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode; +import org.onap.ccsdk.sli.plugins.restconfapicall.RestconfApiCallNode; +import org.onap.ccsdk.sli.plugins.restconfdiscovery.RestconfDiscoveryNode; + +/** + * The implementation of the {@link io.lighty.core.controller.api.LightyModule} that manages and provides services from + * the restconf-client-provider artifact. + */ +public class RestconfClientModule extends AbstractLightyModule implements LightyModule { + + private final RestapiCallNode restapiCallNode; + + private RestconfApiCallNode restconfApiCallNode; + private RestconfDiscoveryNode restconfDiscoveryNode; + + public RestconfClientModule(final RestapiCallNode restapiCallNode) { + this.restapiCallNode = restapiCallNode; + } + + @Override + protected boolean initProcedure() { + this.restconfApiCallNode = new RestconfApiCallNode(restapiCallNode); + this.restconfDiscoveryNode = new RestconfDiscoveryNode(restconfApiCallNode); + return true; + } + + @Override + protected boolean stopProcedure() { + return true; + } + + public RestconfApiCallNode getRestconfApiCallNode() { + return this.restconfApiCallNode; + } + + public RestconfDiscoveryNode getRestconfDiscoveryNode() { + return this.restconfDiscoveryNode; + } +} diff --git a/restconf-client/pom.xml b/restconf-client/pom.xml index e8b0123c3..221987d8c 100755 --- a/restconf-client/pom.xml +++ b/restconf-client/pom.xml @@ -20,5 +20,6 @@ <module>provider</module> <module>features</module> <module>installer</module> + <module>lighty</module> </modules> </project> diff --git a/sshapi-call-node/lighty/pom.xml b/sshapi-call-node/lighty/pom.xml new file mode 100755 index 000000000..a28c1332c --- /dev/null +++ b/sshapi-call-node/lighty/pom.xml @@ -0,0 +1,47 @@ +<?xml version="1.0" encoding="UTF-8"?> +<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.ccsdk.parent</groupId> + <artifactId>binding-parent</artifactId> + <version>1.4.0-SNAPSHOT</version> + <relativePath/> + </parent> + + <groupId>org.onap.ccsdk.sli.northbound</groupId> + <artifactId>sshapi-call-node-lighty</artifactId> + <version>0.6.0-SNAPSHOT</version> + <packaging>jar</packaging> + + <name>ccsdk-sli-plugins :: sshapi-call-node :: ${project.artifactId}</name> + <url>http://maven.apache.org</url> + + <properties> + <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> + </properties> + + <dependencyManagement> + <dependencies> + <dependency> + <groupId>org.onap.ccsdk.sli.core</groupId> + <artifactId>ccsdk-lighty-dependency-versions</artifactId> + <version>${project.version}</version> + <type>pom</type> + <scope>import</scope> + </dependency> + </dependencies> + </dependencyManagement> + + <dependencies> + <dependency> + <groupId>io.lighty.core</groupId> + <artifactId>lighty-controller</artifactId> + </dependency> + <dependency> + <groupId>org.onap.ccsdk.sli.plugins</groupId> + <artifactId>sshapi-call-node-provider</artifactId> + <version>${project.version}</version> + </dependency> + </dependencies> +</project> diff --git a/sshapi-call-node/lighty/src/main/java/org/onap/ccsdk/sli/plugins/sshapicall/lighty/SshApiCallModule.java b/sshapi-call-node/lighty/src/main/java/org/onap/ccsdk/sli/plugins/sshapicall/lighty/SshApiCallModule.java new file mode 100644 index 000000000..d8f1932d5 --- /dev/null +++ b/sshapi-call-node/lighty/src/main/java/org/onap/ccsdk/sli/plugins/sshapicall/lighty/SshApiCallModule.java @@ -0,0 +1,45 @@ +/* + * ============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.sshapicall.lighty; + +import io.lighty.core.controller.api.AbstractLightyModule; +import io.lighty.core.controller.api.LightyModule; +import org.onap.ccsdk.sli.plugins.sshapicall.SshApiCallNode; + +/** + * The implementation of the {@link io.lighty.core.controller.api.LightyModule} that manages and provides services from + * the sshapi-call-node-provider artifact. + */ +public class SshApiCallModule extends AbstractLightyModule implements LightyModule { + + private SshApiCallNode sshApiCallNode; + + @Override + protected boolean initProcedure() { + this.sshApiCallNode = new SshApiCallNode(); + return true; + } + + @Override + protected boolean stopProcedure() { + return true; + } + + public SshApiCallNode getSshApiCallNode() { + return this.sshApiCallNode; + } +} diff --git a/sshapi-call-node/pom.xml b/sshapi-call-node/pom.xml index 66e2af306..4238e7737 100755 --- a/sshapi-call-node/pom.xml +++ b/sshapi-call-node/pom.xml @@ -20,5 +20,6 @@ <module>provider</module> <module>features</module> <module>installer</module> + <module>lighty</module> </modules> </project> diff --git a/template-node/lighty/pom.xml b/template-node/lighty/pom.xml new file mode 100755 index 000000000..cb55c57fb --- /dev/null +++ b/template-node/lighty/pom.xml @@ -0,0 +1,47 @@ +<?xml version="1.0" encoding="UTF-8"?> +<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.ccsdk.parent</groupId> + <artifactId>binding-parent</artifactId> + <version>1.4.0-SNAPSHOT</version> + <relativePath/> + </parent> + + <groupId>org.onap.ccsdk.sli.northbound</groupId> + <artifactId>template-node-lighty</artifactId> + <version>0.6.0-SNAPSHOT</version> + <packaging>jar</packaging> + + <name>ccsdk-sli-plugins :: template-node :: ${project.artifactId}</name> + <url>http://maven.apache.org</url> + + <properties> + <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> + </properties> + + <dependencyManagement> + <dependencies> + <dependency> + <groupId>org.onap.ccsdk.sli.core</groupId> + <artifactId>ccsdk-lighty-dependency-versions</artifactId> + <version>${project.version}</version> + <type>pom</type> + <scope>import</scope> + </dependency> + </dependencies> + </dependencyManagement> + + <dependencies> + <dependency> + <groupId>io.lighty.core</groupId> + <artifactId>lighty-controller</artifactId> + </dependency> + <dependency> + <groupId>org.onap.ccsdk.sli.plugins</groupId> + <artifactId>template-node-provider</artifactId> + <version>${project.version}</version> + </dependency> + </dependencies> +</project> diff --git a/template-node/lighty/src/main/java/org/onap/ccsdk/sli/plugins/template/lighty/TemplateNodeModule.java b/template-node/lighty/src/main/java/org/onap/ccsdk/sli/plugins/template/lighty/TemplateNodeModule.java new file mode 100644 index 000000000..1cd836bbb --- /dev/null +++ b/template-node/lighty/src/main/java/org/onap/ccsdk/sli/plugins/template/lighty/TemplateNodeModule.java @@ -0,0 +1,45 @@ +/* + * ============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.template.lighty; + +import io.lighty.core.controller.api.AbstractLightyModule; +import io.lighty.core.controller.api.LightyModule; +import org.onap.ccsdk.sli.plugins.template.TemplateNode; + +/** + * The implementation of the {@link io.lighty.core.controller.api.LightyModule} that manages and provides services from + * the template-node-provider artifact. + */ +public class TemplateNodeModule extends AbstractLightyModule implements LightyModule { + + private TemplateNode templateNode; + + @Override + protected boolean initProcedure() { + this.templateNode = new TemplateNode(); + return true; + } + + @Override + protected boolean stopProcedure() { + return true; + } + + public TemplateNode getTemplateNode() { + return this.templateNode; + } +} diff --git a/template-node/pom.xml b/template-node/pom.xml index 0c811f714..4149f8746 100644 --- a/template-node/pom.xml +++ b/template-node/pom.xml @@ -17,5 +17,6 @@ <module>provider</module> <module>features</module> <module>installer</module> + <module>lighty</module> </modules> </project> |