From 63bee11f255fcd2cc39a3d87c208aa6e517a8f85 Mon Sep 17 00:00:00 2001 From: "Benjamin, Max (mb388a)" Date: Sun, 20 Jan 2019 16:10:18 -0500 Subject: Bug fixes from AT&T January 20th sorted vfmodules by base last for negative action reqs store Response in execution as String on network delete added functionality to skip rollback based on flag # Conflicts: # bpmn/so-bpmn-tasks/src/main/java/org/onap/so/bpmn/infrastructure/workflo w/tasks/WorkflowAction.java require XML in the header for delete network request Update APP-C LCM Client library version to 1.7.0. replaced wiremock style test with mockito test Handle AAIClient Exps in CreateCustomerV1 getServiceInstance() changed default status code to be configurable Replace vnfType by nfRole in the healthcheck request to SDNO. updated error messages in sdnc handler and flow status updated flow status message on completion of flow Send GenericVnf object for AAI VNF update for vnf-api updates Add a JUnit test file for SDNOValidatorImpl.java Set nodeType on the inner SDNO request as per update from SDNO. updated rollbackToAssigned logic to remove unassign flows updated sdnc handler error message for client error added exception handling for httpclienterror in sdnc out map workflow exception so error is reported throws sdnc error message on bad response from sdnc add catalog entries for TRANSPORT service delete flows change script number that was duplicate add find method to NorthBoundRequestRepository include serviceType in hash code use asterisk for all non-TRANSPORT flow db entries alacart true, rm not needed transport srvc model steps correct insert query syntax for orchestration_flow support serviceType (TRANSPORT) process flow fix SDNCAdapterException causing no callback to bpmn use JsonAlias for alternate case when deserializing GRM client will accept both "serviceEndPointList" and "ServiceEndPointList" root node in the JSON response. AAIRestClient now uses getSystemName in headers finishtime should not be returned in requeststatus Change-Id: I81a185252b057020f7f36f125c85c3357756da88 Issue-ID: SO-1403 Signed-off-by: Benjamin, Max (mb388a) --- .../so/db/catalog/beans/macro/NorthBoundRequest.java | 18 +++++++++++++++--- .../org/onap/so/db/catalog/client/CatalogDbClient.java | 18 ++++++++++++++++-- .../data/repository/NorthBoundRequestRepository.java | 1 + 3 files changed, 32 insertions(+), 5 deletions(-) (limited to 'mso-catalog-db/src/main/java') diff --git a/mso-catalog-db/src/main/java/org/onap/so/db/catalog/beans/macro/NorthBoundRequest.java b/mso-catalog-db/src/main/java/org/onap/so/db/catalog/beans/macro/NorthBoundRequest.java index a7ce2da70d..4025e348f8 100644 --- a/mso-catalog-db/src/main/java/org/onap/so/db/catalog/beans/macro/NorthBoundRequest.java +++ b/mso-catalog-db/src/main/java/org/onap/so/db/catalog/beans/macro/NorthBoundRequest.java @@ -87,6 +87,10 @@ public class NorthBoundRequest implements Serializable { @Column(name = "CLOUD_OWNER") private String cloudOwner; + @BusinessKey + @Column(name = "SERVICE_TYPE") + private String serviceType; + @OneToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY, mappedBy = "northBoundRequest") private List orchestrationFlowList; @@ -95,7 +99,7 @@ public class NorthBoundRequest implements Serializable { return new ToStringBuilder(this).append("id", id).append("action", action).append("requestScope", requestScope) .append("isAlacarte", isAlacarte).append("isToplevelflow", isToplevelflow) .append("minApiVersion", minApiVersion).append("maxApiVersion", maxApiVersion) - .append("cloudOwner",cloudOwner).toString(); + .append("cloudOwner",cloudOwner).append("serviceType",serviceType).toString(); } @Override @@ -107,14 +111,14 @@ public class NorthBoundRequest implements Serializable { return new EqualsBuilder().append(action, castOther.action).append(requestScope, castOther.requestScope) .append(isAlacarte, castOther.isAlacarte).append(isToplevelflow, castOther.isToplevelflow) .append(minApiVersion, castOther.minApiVersion).append(maxApiVersion, castOther.maxApiVersion) - .append(cloudOwner, castOther.cloudOwner) + .append(cloudOwner, castOther.cloudOwner).append(serviceType, castOther.serviceType) .isEquals(); } @Override public int hashCode() { return new HashCodeBuilder().append(action).append(requestScope).append(isAlacarte).append(isToplevelflow) - .append(minApiVersion).append(maxApiVersion).append(cloudOwner).toHashCode(); + .append(minApiVersion).append(maxApiVersion).append(cloudOwner).append(serviceType).toHashCode(); } public Integer getId() { @@ -188,6 +192,14 @@ public class NorthBoundRequest implements Serializable { public void setCloudOwner(String cloudOwner) { this.cloudOwner = cloudOwner; } + + public String getServiceType() { + return serviceType; + } + + public void setServiceType(String serviceType) { + this.serviceType = serviceType; + } @LinkedResource public List getOrchestrationFlowList() { diff --git a/mso-catalog-db/src/main/java/org/onap/so/db/catalog/client/CatalogDbClient.java b/mso-catalog-db/src/main/java/org/onap/so/db/catalog/client/CatalogDbClient.java index 51c55bdfce..3612d83359 100644 --- a/mso-catalog-db/src/main/java/org/onap/so/db/catalog/client/CatalogDbClient.java +++ b/mso-catalog-db/src/main/java/org/onap/so/db/catalog/client/CatalogDbClient.java @@ -128,6 +128,7 @@ public class CatalogDbClient { private static final String CLOUD_VERSION = "cloudVersion"; private static final String TARGET_ENTITY = "SO:CatalogDB"; + private static final String ASTERISK = "*"; private String findExternalToInternalServiceByServiceName = "/findByServiceName"; private String findServiceByModelName = "/findOneByModelName"; @@ -153,6 +154,7 @@ public class CatalogDbClient { private String findCollectionResourceInstanceGroupCustomizationByModelCustomizationUUID = "/findByModelCustomizationUUID"; private String findOneByActionAndRequestScopeAndIsAlacarte = "/findOneByActionAndRequestScopeAndIsAlacarte"; private String findOneByActionAndRequestScopeAndIsAlacarteAndCloudOwner = "/findOneByActionAndRequestScopeAndIsAlacarteAndCloudOwner"; + private String findOneByActionAndRequestScopeAndIsAlacarteAndCloudOwnerAndServiceType = "/findOneByActionAndRequestScopeAndIsAlacarteAndCloudOwnerAndServiceType"; private String findOneByFlowNameAndServiceTypeAndVnfTypeAndErrorCodeAndWorkStep = "/findOneByFlowNameAndServiceTypeAndVnfTypeAndErrorCodeAndWorkStep"; private String findByClliAndCloudVersion = "/findByClliAndCloudVersion"; @@ -251,6 +253,7 @@ public class CatalogDbClient { findCollectionResourceInstanceGroupCustomizationByModelCustomizationUUID = endpoint + COLLECTION_RESOURCE_INSTANCE_GROUP_CUSTOMIZATION + SEARCH + findCollectionResourceInstanceGroupCustomizationByModelCustomizationUUID; findOneByActionAndRequestScopeAndIsAlacarte = endpoint + NORTHBOUND_REQUEST_REF_LOOKUP + SEARCH + findOneByActionAndRequestScopeAndIsAlacarte; findOneByActionAndRequestScopeAndIsAlacarteAndCloudOwner = endpoint + NORTHBOUND_REQUEST_REF_LOOKUP + SEARCH + findOneByActionAndRequestScopeAndIsAlacarteAndCloudOwner; + findOneByActionAndRequestScopeAndIsAlacarteAndCloudOwnerAndServiceType = endpoint + NORTHBOUND_REQUEST_REF_LOOKUP + SEARCH + findOneByActionAndRequestScopeAndIsAlacarteAndCloudOwnerAndServiceType; findOneByFlowNameAndServiceTypeAndVnfTypeAndErrorCodeAndWorkStep = endpoint + RAINY_DAY_HANDLER_MACRO + SEARCH + findOneByFlowNameAndServiceTypeAndVnfTypeAndErrorCodeAndWorkStep; findByClliAndCloudVersion = endpoint + CLOUD_SITE + SEARCH + findByClliAndCloudVersion; @@ -484,10 +487,21 @@ public class CatalogDbClient { public NorthBoundRequest getNorthBoundRequestByActionAndIsALaCarteAndRequestScopeAndCloudOwner(String requestAction, String resourceName, boolean aLaCarte, String cloudOwner) { return this.getSingleResource(northBoundRequestClient, getUri(UriBuilder - .fromUri(findOneByActionAndRequestScopeAndIsAlacarteAndCloudOwner) + .fromUri(findOneByActionAndRequestScopeAndIsAlacarteAndCloudOwnerAndServiceType) .queryParam(ACTION, requestAction).queryParam(REQUEST_SCOPE, resourceName) .queryParam(IS_ALACARTE, aLaCarte) - .queryParam(CLOUD_OWNER, cloudOwner).build().toString())); + .queryParam(CLOUD_OWNER, cloudOwner) + .queryParam(SERVICE_TYPE, ASTERISK).build().toString())); + } + + public NorthBoundRequest getNorthBoundRequestByActionAndIsALaCarteAndRequestScopeAndCloudOwnerAndServiceType(String requestAction, + String resourceName, boolean aLaCarte, String cloudOwner, String serviceType) { + return this.getSingleResource(northBoundRequestClient, getUri(UriBuilder + .fromUri(findOneByActionAndRequestScopeAndIsAlacarteAndCloudOwnerAndServiceType) + .queryParam(ACTION, requestAction).queryParam(REQUEST_SCOPE, resourceName) + .queryParam(IS_ALACARTE, aLaCarte) + .queryParam(CLOUD_OWNER, cloudOwner) + .queryParam(SERVICE_TYPE, serviceType).build().toString())); } public RainyDayHandlerStatus getRainyDayHandlerStatusByFlowNameAndServiceTypeAndVnfTypeAndErrorCodeAndWorkStep( diff --git a/mso-catalog-db/src/main/java/org/onap/so/db/catalog/data/repository/NorthBoundRequestRepository.java b/mso-catalog-db/src/main/java/org/onap/so/db/catalog/data/repository/NorthBoundRequestRepository.java index 11a2a34aaf..09732c2d8b 100644 --- a/mso-catalog-db/src/main/java/org/onap/so/db/catalog/data/repository/NorthBoundRequestRepository.java +++ b/mso-catalog-db/src/main/java/org/onap/so/db/catalog/data/repository/NorthBoundRequestRepository.java @@ -28,4 +28,5 @@ import org.springframework.data.rest.core.annotation.RepositoryRestResource; public interface NorthBoundRequestRepository extends JpaRepository { NorthBoundRequest findOneByActionAndRequestScopeAndIsAlacarte(String action, String requestScope, Boolean isALaCarte); NorthBoundRequest findOneByActionAndRequestScopeAndIsAlacarteAndCloudOwner(String action, String requestScope, Boolean isALaCarte, String cloudOwner); + NorthBoundRequest findOneByActionAndRequestScopeAndIsAlacarteAndCloudOwnerAndServiceType(String action, String requestScope, Boolean isALaCarte, String cloudOwner, String serviceType); } -- cgit 1.2.3-korg