Commit 26e394cc authored by Christos Tranoris's avatar Christos Tranoris
Browse files

Merge branch...

Merge branch '40-when-creating-a-resourcefacingservicespecification-the-kubernetes-related-fields-of-the-resource' into 'develop'

Resolve "When creating a ResourceFacingServiceSpecification the kubernetes related fields of the resource specification are not propagated to the parent ResourceFacingServiceSpecification"

See merge request !29
parents 3cc38136 113bab7c
Loading
Loading
Loading
Loading
Loading
+7 −5
Original line number Diff line number Diff line
@@ -75,11 +75,6 @@
				<type>pom</type>
				<scope>import</scope>
			</dependency>
			<dependency>
				<groupId>org.json</groupId>
				<artifactId>json</artifactId>
				<version>20210307</version>
			</dependency>
		</dependencies>

	</dependencyManagement>
@@ -266,6 +261,13 @@
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-test</artifactId>
			<scope>test</scope>
		    <exclusions>
		        <exclusion>
		            <groupId>com.vaadin.external.google</groupId>
		            <artifactId>android-json</artifactId>
		        </exclusion>
		    </exclusions>
			
		</dependency>
		<dependency>
			<groupId>org.springframework.security</groupId>
+42 −42
Original line number Diff line number Diff line
@@ -622,7 +622,7 @@ public class ServiceSpecificationRepoService {
					 * Also,
					 * we will add by default all the characteristics of this rSpec to the related bundle parent service 
					 */
					//serviceSpec = copyCharacteristicsOfResourceSpecId(  ar.getId(), serviceSpec);
					serviceSpec = copyCharacteristicsOfResourceSpecId(  ar.getId(), serviceSpec);
				}
			}

@@ -699,24 +699,24 @@ public class ServiceSpecificationRepoService {
		return targetServiceSpec;
	}
	
//	private ServiceSpecification copyCharacteristicsOfResourceSpecId(String sourceResourceSpecid, ServiceSpecification targetServiceSpec) {
//
//		ResourceSpecification rSpec = resourceSpecRepoService.findByUuid( sourceResourceSpecid );
//		
//		if ( rSpec != null ) {
//			for (ResourceSpecificationCharacteristic sourceChar : rSpec.getResourceSpecCharacteristic()) {
//				ServiceSpecCharacteristic serviceSpecCharacteristicItem = copyResourceCharacteristic( sourceChar );
//				//serviceSpecCharacteristicItem.setName( rSpec.getName() + "::" +sourceChar.getName() );
//				serviceSpecCharacteristicItem.setName( sourceChar.getName() );
//
//				if ( targetServiceSpec.findSpecCharacteristicByName( serviceSpecCharacteristicItem.getName() ) == null ) {
//					targetServiceSpec.getServiceSpecCharacteristic().add( serviceSpecCharacteristicItem );					
//				}
//			}			
//		}
//		
//		return targetServiceSpec;
//	}	
	private ServiceSpecification copyCharacteristicsOfResourceSpecId(String sourceResourceSpecid, ServiceSpecification targetServiceSpec) {

		ResourceSpecification rSpec = resourceSpecRepoService.findByUuid( sourceResourceSpecid );
		
		if ( rSpec != null ) {
			for (ResourceSpecificationCharacteristic sourceChar : rSpec.getResourceSpecCharacteristic()) {
				ServiceSpecCharacteristic serviceSpecCharacteristicItem = copyResourceCharacteristic( sourceChar );
				//serviceSpecCharacteristicItem.setName( rSpec.getName() + "::" +sourceChar.getName() );
				serviceSpecCharacteristicItem.setName( sourceChar.getName() );

				if ( targetServiceSpec.findSpecCharacteristicByName( serviceSpecCharacteristicItem.getName() ) == null ) {
					targetServiceSpec.getServiceSpecCharacteristic().add( serviceSpecCharacteristicItem );					
				}
			}			
		}
		
		return targetServiceSpec;
	}	

	public ServiceSpecification cloneServiceSpecification(String uuid) {
		ServiceSpecification source = this.findByUuid(uuid);
@@ -1422,11 +1422,11 @@ public class ServiceSpecificationRepoService {

		
		
//		for (ResourceSpecificationCharacteristic sourceChar : rSpec.getResourceSpecCharacteristic()) {
//			ServiceSpecCharacteristic serviceSpecCharacteristicItem = copyResourceCharacteristic( sourceChar );
		for (ResourceSpecificationCharacteristic sourceChar : rSpec.getResourceSpecCharacteristic()) {
			ServiceSpecCharacteristic serviceSpecCharacteristicItem = copyResourceCharacteristic( sourceChar );
//			serviceSpecCharacteristicItem.setName( rSpec.getName() + "::" +sourceChar.getName() );			
//			serviceSpec.addServiceSpecCharacteristicItem(serviceSpecCharacteristicItem );		
//		}
			serviceSpec.addServiceSpecCharacteristicItem(serviceSpecCharacteristicItem );		
		}

		
		ResourceSpecificationRef resourceSpecRef = new ResourceSpecificationRef();
@@ -1439,25 +1439,25 @@ public class ServiceSpecificationRepoService {
		return serviceSpec;
	}
	
//	private ServiceSpecCharacteristic copyResourceCharacteristic( ResourceSpecificationCharacteristic sourceChar ) {
//		
//		ServiceSpecCharacteristic serviceSpecCharacteristicItem = new ServiceSpecCharacteristic();
//		serviceSpecCharacteristicItem.setDescription( sourceChar.getDescription());
//		serviceSpecCharacteristicItem.valueType( sourceChar.getValueType() );
//		serviceSpecCharacteristicItem.configurable(sourceChar.isConfigurable());
//		serviceSpecCharacteristicItem.setMinCardinality( sourceChar.getMinCardinality() );
//		serviceSpecCharacteristicItem.setMaxCardinality( sourceChar.getMaxCardinality()  );
//		serviceSpecCharacteristicItem.setValidFor( sourceChar.getValidFor() );
//		for (ResourceSpecificationCharacteristicValue cv : sourceChar.getResourceSpecCharacteristicValue()) {
//			ServiceSpecCharacteristicValue serviceSpecCharacteristicValueItem = new ServiceSpecCharacteristicValue();
//			serviceSpecCharacteristicValueItem.setValue( new Any( cv.getValue().getValue(), cv.getValue().getAlias()));
//			serviceSpecCharacteristicValueItem.isDefault( cv.isIsDefault() );
//			serviceSpecCharacteristicValueItem.setUnitOfMeasure( cv.getUnitOfMeasure() );		
//			serviceSpecCharacteristicItem.addServiceSpecCharacteristicValueItem(serviceSpecCharacteristicValueItem );
//		}
//		return serviceSpecCharacteristicItem;
//	}
//	
	private ServiceSpecCharacteristic copyResourceCharacteristic( ResourceSpecificationCharacteristic sourceChar ) {
		
		ServiceSpecCharacteristic serviceSpecCharacteristicItem = new ServiceSpecCharacteristic();
		serviceSpecCharacteristicItem.setDescription( sourceChar.getDescription());
		serviceSpecCharacteristicItem.valueType( sourceChar.getValueType() );
		serviceSpecCharacteristicItem.configurable(sourceChar.isConfigurable());
		serviceSpecCharacteristicItem.setMinCardinality( sourceChar.getMinCardinality() );
		serviceSpecCharacteristicItem.setMaxCardinality( sourceChar.getMaxCardinality()  );
		serviceSpecCharacteristicItem.setValidFor( sourceChar.getValidFor() );
		for (ResourceSpecificationCharacteristicValue cv : sourceChar.getResourceSpecCharacteristicValue()) {
			ServiceSpecCharacteristicValue serviceSpecCharacteristicValueItem = new ServiceSpecCharacteristicValue();
			serviceSpecCharacteristicValueItem.setValue( new Any( cv.getValue().getValue(), cv.getValue().getAlias()));
			serviceSpecCharacteristicValueItem.isDefault( cv.isIsDefault() );
			serviceSpecCharacteristicValueItem.setUnitOfMeasure( cv.getUnitOfMeasure() );		
			serviceSpecCharacteristicItem.addServiceSpecCharacteristicValueItem(serviceSpecCharacteristicValueItem );
		}
		return serviceSpecCharacteristicItem;
	}
	

	

+2 −1
Original line number Diff line number Diff line
@@ -76,6 +76,7 @@ import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.autoconfigure.jdbc.AutoConfigureTestDatabase;
import org.springframework.boot.test.autoconfigure.web.servlet.AutoConfigureMockMvc;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.http.MediaType;
@@ -95,7 +96,7 @@ import net.minidev.json.JSONObject;
@RunWith(SpringRunner.class)
@Transactional
@SpringBootTest( webEnvironment = SpringBootTest.WebEnvironment.MOCK , classes = OpenAPISpringBoot.class)
//@AutoConfigureTestDatabase //this automatically uses h2
@AutoConfigureTestDatabase //this automatically uses h2
@AutoConfigureMockMvc 
@ActiveProfiles("testing")
//@TestPropertySource(
+1 −1
Original line number Diff line number Diff line
@@ -855,7 +855,7 @@ public class ServiceCatalogIntegrationTest {
		 * 
		 */

		assertThat( clonedSpec.getServiceSpecCharacteristic().size() ).isEqualTo( 70 );
		assertThat( clonedSpec.getServiceSpecCharacteristic().size() ).isEqualTo( 71 );

		
		String responseSpecClonedVINNI2 = mvc.perform(MockMvcRequestBuilders.get("/serviceCatalogManagement/v4/serviceSpecification/cloneVINNI?serviceName=aVINNIService")
+2 −1
Original line number Diff line number Diff line
@@ -66,6 +66,7 @@ import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.autoconfigure.jdbc.AutoConfigureTestDatabase;
import org.springframework.boot.test.autoconfigure.web.servlet.AutoConfigureMockMvc;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.http.MediaType;
@@ -83,7 +84,7 @@ import org.springframework.web.context.WebApplicationContext;
@RunWith(SpringRunner.class)
@Transactional
@SpringBootTest( webEnvironment = SpringBootTest.WebEnvironment.MOCK , classes = OpenAPISpringBoot.class)
//@AutoConfigureTestDatabase //this automatically uses h2
@AutoConfigureTestDatabase //this automatically uses h2
@AutoConfigureMockMvc 
@ActiveProfiles("testing")
//@TestPropertySource(
Loading