Add Neutron Port and Nova Server to Proxy 22/100722/1
authorSmokowski, Steven <steve.smokowski@att.com>
Thu, 23 Jan 2020 21:12:29 +0000 (16:12 -0500)
committerBenjamin, Max (mb388a) <mb388a@att.com>
Thu, 23 Jan 2020 21:12:30 +0000 (16:12 -0500)
Add Neutron Port and Nova Server to Proxy

Issue-ID: SO-2614
Signed-off-by: Benjamin, Max (mb388a) <mb388a@att.com>
Change-Id: I09e0302bbdb66dadae3dbac7bbf07a64dfc39d10

adapters/mso-adapter-utils/src/main/java/org/onap/so/openstack/utils/NeutronClientImpl.java
adapters/mso-adapter-utils/src/main/java/org/onap/so/openstack/utils/NovaClientImpl.java

index 938a888..8f9dbd1 100644 (file)
@@ -29,6 +29,7 @@ import org.springframework.stereotype.Component;
 import com.woorea.openstack.base.client.OpenStackRequest;
 import com.woorea.openstack.quantum.Quantum;
 import com.woorea.openstack.quantum.model.Networks;
+import com.woorea.openstack.quantum.model.Port;
 import com.woorea.openstack.quantum.model.Subnets;
 
 
@@ -110,4 +111,30 @@ public class NeutronClientImpl extends MsoCommonUtils {
         }
     }
 
+    /**
+     * Query Networks
+     *
+     * 
+     * @param cloudSiteId the cloud site id
+     * @param tenantId the tenant id
+     * @param limit limits the number of records returned
+     * @param marker the last viewed record
+     * @param name of the subnet
+     * @param id of the subnet
+     * @return the list of subnets in openstack
+     * @throws MsoCloudSiteNotFound the mso cloud site not found
+     * @throws NeutronClientException if the client cannot be built this is thrown
+     */
+    public Port queryPortById(String cloudSiteId, String tenantId, String id)
+            throws MsoCloudSiteNotFound, NeutronClientException {
+        try {
+            Quantum neutronClient = getNeutronClient(cloudSiteId, tenantId);
+            OpenStackRequest<Port> request = neutronClient.ports().show(id);
+            return executeAndRecordOpenstackRequest(request, false);
+        } catch (MsoException e) {
+            logger.error("Error building Neutron Client", e);
+            throw new NeutronClientException("Error building Neutron Client", e);
+        }
+    }
+
 }
index 99e8b58..7f0f6e4 100644 (file)
@@ -33,6 +33,7 @@ import com.woorea.openstack.nova.model.Flavors;
 import com.woorea.openstack.nova.model.HostAggregate;
 import com.woorea.openstack.nova.model.HostAggregates;
 import com.woorea.openstack.nova.model.QuotaSet;
+import com.woorea.openstack.nova.model.Server;
 
 
 @Component
@@ -204,4 +205,15 @@ public class NovaClientImpl extends MsoCommonUtils {
             throw new NovaClientException("Error building Nova Client", e);
         }
     }
+
+    public Server queryServerById(String cloudSiteId, String tenantId, String id) throws NovaClientException {
+        try {
+            Nova novaClient = getNovaClient(cloudSiteId, tenantId);
+            OpenStackRequest<Server> request = novaClient.servers().show(id);
+            return executeAndRecordOpenstackRequest(request, false);
+        } catch (MsoException e) {
+            logger.error("Error building Nova Client", e);
+            throw new NovaClientException("Error building Nova Client", e);
+        }
+    }
 }