Merge "Do not use RpcService in TPCE networkmodel module"
[transportpce.git] / olm / src / main / java / org / opendaylight / transportpce / olm / OlmPowerServiceRpcImpl.java
index d793f6d70951ae7f17f9ba8246035c19db8800ab..78c165b2be31c5738699d21220f6cfd6201ca17b 100644 (file)
@@ -5,33 +5,43 @@
  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
  * and is available at http://www.eclipse.org/legal/epl-v10.html
  */
+
 package org.opendaylight.transportpce.olm;
 
 import com.google.common.util.concurrent.ListenableFuture;
 import org.opendaylight.transportpce.olm.service.OlmPowerService;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.olm.rev170418.CalculateSpanlossBaseInput;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.olm.rev170418.CalculateSpanlossBaseOutput;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.olm.rev170418.CalculateSpanlossCurrentInput;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.olm.rev170418.CalculateSpanlossCurrentOutput;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.olm.rev170418.GetPmInput;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.olm.rev170418.GetPmOutput;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.olm.rev170418.OlmService;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.olm.rev170418.ServicePowerResetInput;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.olm.rev170418.ServicePowerResetOutput;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.olm.rev170418.ServicePowerSetupInput;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.olm.rev170418.ServicePowerSetupOutput;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.olm.rev170418.ServicePowerTurndownInput;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.olm.rev170418.ServicePowerTurndownOutput;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.olm.rev210618.CalculateSpanlossBaseInput;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.olm.rev210618.CalculateSpanlossBaseOutput;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.olm.rev210618.CalculateSpanlossCurrentInput;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.olm.rev210618.CalculateSpanlossCurrentOutput;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.olm.rev210618.GetPmInput;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.olm.rev210618.GetPmOutput;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.olm.rev210618.ServicePowerResetInput;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.olm.rev210618.ServicePowerResetOutput;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.olm.rev210618.ServicePowerSetupInput;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.olm.rev210618.ServicePowerSetupOutput;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.olm.rev210618.ServicePowerTurndownInput;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.olm.rev210618.ServicePowerTurndownOutput;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.olm.rev210618.TransportpceOlmService;
+import org.opendaylight.yangtools.yang.common.ErrorType;
 import org.opendaylight.yangtools.yang.common.RpcResult;
 import org.opendaylight.yangtools.yang.common.RpcResultBuilder;
+import org.osgi.service.component.annotations.Activate;
+import org.osgi.service.component.annotations.Component;
+import org.osgi.service.component.annotations.Reference;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 /**
  * The Class OlmPowerServiceRpcImpl.
  */
-public class OlmPowerServiceRpcImpl implements OlmService {
+@Component
+public class OlmPowerServiceRpcImpl implements TransportpceOlmService {
+    private static final Logger LOG = LoggerFactory.getLogger(OlmPowerServiceRpcImpl.class);
     private final OlmPowerService olmPowerService;
 
-    public OlmPowerServiceRpcImpl(OlmPowerService olmPowerService) {
+    @Activate
+    public OlmPowerServiceRpcImpl(@Reference OlmPowerService olmPowerService) {
         this.olmPowerService = olmPowerService;
     }
 
@@ -54,6 +64,12 @@ public class OlmPowerServiceRpcImpl implements OlmService {
      */
     @Override
     public ListenableFuture<RpcResult<GetPmOutput>> getPm(GetPmInput input) {
+        if (this.olmPowerService.getPm(input).getNodeId() == null) {
+            LOG.error("getPm: Error with input parameters");
+            return RpcResultBuilder.<GetPmOutput>failed()
+                    .withError(ErrorType.RPC, "Error with input parameters")
+                    .buildFuture();
+        }
         return RpcResultBuilder.success(this.olmPowerService.getPm(input)).buildFuture();
     }
 
@@ -79,7 +95,7 @@ public class OlmPowerServiceRpcImpl implements OlmService {
      */
     @Override
     public ListenableFuture<RpcResult<ServicePowerSetupOutput>> servicePowerSetup(
-        ServicePowerSetupInput input) {
+            ServicePowerSetupInput input) {
         return RpcResultBuilder.success(this.olmPowerService.servicePowerSetup(input)).buildFuture();
     }
 
@@ -105,7 +121,7 @@ public class OlmPowerServiceRpcImpl implements OlmService {
      */
     @Override
     public ListenableFuture<RpcResult<ServicePowerTurndownOutput>>
-            servicePowerTurndown(ServicePowerTurndownInput input) {
+        servicePowerTurndown(ServicePowerTurndownInput input) {
         return RpcResultBuilder.success(this.olmPowerService.servicePowerTurndown(input)).buildFuture();
     }
 
@@ -133,7 +149,7 @@ public class OlmPowerServiceRpcImpl implements OlmService {
      */
     @Override
     public ListenableFuture<RpcResult<CalculateSpanlossBaseOutput>>
-            calculateSpanlossBase(CalculateSpanlossBaseInput input) {
+        calculateSpanlossBase(CalculateSpanlossBaseInput input) {
         return RpcResultBuilder.success(this.olmPowerService.calculateSpanlossBase(input)).buildFuture();
     }