X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=vid-app-common%2Fsrc%2Fmain%2Fjava%2Forg%2Fonap%2Fvid%2Faai%2FAaiClient.java;h=d37adba7f6dc946d21171988434980b61a05038b;hb=f78df9f30d5b7bda1b291bff34dd85bdd9411c12;hp=00137b60c945e3349f90c85588fd1ece763a0e36;hpb=a1d209deac01bc0f8f7be96a585bdbef9cc0cdb9;p=vid.git diff --git a/vid-app-common/src/main/java/org/onap/vid/aai/AaiClient.java b/vid-app-common/src/main/java/org/onap/vid/aai/AaiClient.java index 00137b60c..d37adba7f 100644 --- a/vid-app-common/src/main/java/org/onap/vid/aai/AaiClient.java +++ b/vid-app-common/src/main/java/org/onap/vid/aai/AaiClient.java @@ -109,7 +109,7 @@ public class AaiClient implements AaiClientInterface { private static final String BUSINESS_CUSTOMER = "/business/customers/customer/"; private static final String SERVICE_INSTANCE = "/service-instances/service-instance/"; private static final String BUSINESS_CUSTOMERS_CUSTOMER = "business/customers/customer/"; - + private static final String QUERY_FORMAT_RESOURCE_DSL = "dsl?format=resource&nodesOnly=true&depth=0&as-tree=true"; protected String fromAppId = "VidAaiController"; private PortDetailsTranslator portDetailsTranslator; @@ -918,6 +918,39 @@ public class AaiClient implements AaiClientInterface { } } + @Override + public AaiResponse getServiceInstanceBySubscriberIdAndInstanceIdentifier(String globalCustomerId, String identifierType, String serviceIdentifier) { + ResponseWithRequestInfo response; + String payload = getDSLQueryPayloadByServiceIdentifier(globalCustomerId,identifierType,serviceIdentifier); +// Response resp = doAaiPut(QUERY_FORMAT_RESOURCE_DSL, payload, false); +// resp.bufferEntity(); +// String rawPayload = resp.readEntity(String.class); +// AaiResponse aaiResponse = processAaiResponse(resp, DSLQuerySimpleResponse.class, rawPayload); + + response = doAaiPut(QUERY_FORMAT_RESOURCE_DSL, payload, false, false); + AaiResponseWithRequestInfo aaiResponse = processAaiResponse(response, DSLQuerySimpleResponse.class, false); + verifyAaiResponseValidityOrThrowExc(aaiResponse, aaiResponse.getAaiResponse().getHttpCode()); + return aaiResponse.getAaiResponse(); + } + + private String getDSLQueryPayloadByServiceIdentifier(String globalCustomerId, String identifierType, String serviceIdentifier) { + String query = null; + String payLoad = null; + if(globalCustomerId != null && identifierType != null && serviceIdentifier != null) { + if(identifierType.equalsIgnoreCase("Service Instance Id")) { + query = "customer*('global-customer-id','"+globalCustomerId+"')>" + + "service-subscription>service-instance*('service-instance-id','"+serviceIdentifier+"')"; + payLoad = "{\"dsl\":\"" + query + "\"}"; + } else { + query = "customer*('global-customer-id','"+globalCustomerId+"')>" + + "service-subscription>service-instance*('service-instance-name','"+serviceIdentifier+"')"; + payLoad = "{\"dsl\":\"" + query + "\"}"; + } + + } + return payLoad; + } + @Override public void resetCache(String cacheName) { cacheProvider.resetCache(cacheName);