Search in sources :

Example 1 with SupportedService

use of com.sequenceiq.cloudbreak.cmtemplate.generator.support.domain.SupportedService in project cloudbreak by hortonworks.

the class SupportedVersionService method collectSupportedVersions.

public SupportedVersions collectSupportedVersions() {
    SupportedVersions supportedVersions = new SupportedVersions();
    Set<SupportedVersion> supportedVersionsSet = new HashSet<>();
    resolver.cdhConfigurations().forEach((key, value) -> {
        SupportedVersion supportedVersion = new SupportedVersion();
        supportedVersion.setType(key.getStackType());
        supportedVersion.setVersion(key.getVersion());
        SupportedServices supportedServices = new SupportedServices();
        for (CdhService serviceName : value) {
            for (ServiceConfig serviceInformation : resolver.serviceConfigs()) {
                if (serviceInformation.getName().equals(serviceName.getName())) {
                    SupportedService supportedService = new SupportedService();
                    supportedService.setName(serviceInformation.getName());
                    supportedService.setDisplayName(serviceInformation.getDisplayName());
                    supportedService.setVersion(serviceName.getVersion());
                    supportedServices.getServices().add(supportedService);
                    break;
                }
            }
        }
        supportedVersion.setSupportedServices(supportedServices);
        supportedVersionsSet.add(supportedVersion);
    });
    supportedVersions.setSupportedVersions(supportedVersionsSet);
    return supportedVersions;
}
Also used : SupportedService(com.sequenceiq.cloudbreak.cmtemplate.generator.support.domain.SupportedService) CdhService(com.sequenceiq.cloudbreak.cmtemplate.generator.configuration.domain.versionmatrix.CdhService) ServiceConfig(com.sequenceiq.cloudbreak.cmtemplate.generator.configuration.domain.dependencies.ServiceConfig) SupportedVersions(com.sequenceiq.cloudbreak.cmtemplate.generator.support.domain.SupportedVersions) SupportedServices(com.sequenceiq.cloudbreak.cmtemplate.generator.support.domain.SupportedServices) SupportedVersion(com.sequenceiq.cloudbreak.cmtemplate.generator.support.domain.SupportedVersion) HashSet(java.util.HashSet)

Example 2 with SupportedService

use of com.sequenceiq.cloudbreak.cmtemplate.generator.support.domain.SupportedService in project cloudbreak by hortonworks.

the class SupportedServicesToBlueprintServicesV4ResponseConverter method convert.

public BlueprintServicesV4Response convert(SupportedServices source) {
    BlueprintServicesV4Response blueprintServicesV4Response = new BlueprintServicesV4Response();
    Set<SupportedServiceV4Response> services = new TreeSet<>();
    for (SupportedService service : source.getServices()) {
        SupportedServiceV4Response supportedServiceV4Response = new SupportedServiceV4Response();
        supportedServiceV4Response.setDisplayName(service.getDisplayName());
        supportedServiceV4Response.setVersion(service.getVersion());
        supportedServiceV4Response.setName(service.getName());
        services.add(supportedServiceV4Response);
    }
    blueprintServicesV4Response.setServices(services);
    return blueprintServicesV4Response;
}
Also used : BlueprintServicesV4Response(com.sequenceiq.cloudbreak.api.endpoint.v4.blueprint.responses.BlueprintServicesV4Response) SupportedService(com.sequenceiq.cloudbreak.cmtemplate.generator.support.domain.SupportedService) TreeSet(java.util.TreeSet) SupportedServiceV4Response(com.sequenceiq.cloudbreak.api.endpoint.v4.blueprint.responses.SupportedServiceV4Response)

Example 3 with SupportedService

use of com.sequenceiq.cloudbreak.cmtemplate.generator.support.domain.SupportedService in project cloudbreak by hortonworks.

the class SupportedVersionsToSupportedVersionsV4ResponseConverter method convert.

public SupportedVersionsV4Response convert(SupportedVersions source) {
    SupportedVersionsV4Response supportedVersionsV4Response = new SupportedVersionsV4Response();
    for (SupportedVersion supportedVersion : source.getSupportedVersions()) {
        SupportedVersionV4Response supportedVersionV4Response = new SupportedVersionV4Response();
        supportedVersionV4Response.setType(supportedVersion.getType());
        supportedVersionV4Response.setVersion(supportedVersion.getVersion());
        Set<SupportedServiceV4Response> services = new HashSet<>();
        for (SupportedService service : supportedVersion.getSupportedServices().getServices()) {
            SupportedServiceV4Response supportedServiceV4Response = new SupportedServiceV4Response();
            supportedServiceV4Response.setName(service.getName());
            supportedServiceV4Response.setDisplayName(service.getDisplayName());
            supportedServiceV4Response.setVersion(service.getVersion());
            services.add(supportedServiceV4Response);
        }
        supportedVersionV4Response.setServices(services);
        supportedVersionsV4Response.getSupportedVersions().add(supportedVersionV4Response);
    }
    return supportedVersionsV4Response;
}
Also used : SupportedVersionsV4Response(com.sequenceiq.cloudbreak.api.endpoint.v4.blueprint.responses.SupportedVersionsV4Response) SupportedService(com.sequenceiq.cloudbreak.cmtemplate.generator.support.domain.SupportedService) SupportedVersionV4Response(com.sequenceiq.cloudbreak.api.endpoint.v4.blueprint.responses.SupportedVersionV4Response) SupportedServiceV4Response(com.sequenceiq.cloudbreak.api.endpoint.v4.blueprint.responses.SupportedServiceV4Response) SupportedVersion(com.sequenceiq.cloudbreak.cmtemplate.generator.support.domain.SupportedVersion) HashSet(java.util.HashSet)

Example 4 with SupportedService

use of com.sequenceiq.cloudbreak.cmtemplate.generator.support.domain.SupportedService in project cloudbreak by hortonworks.

the class ParcelFilterServiceTest method testShouldReturnAllParcelsWhenTheServiceNamesInTheBlueprintContainsANullValue.

@Test
void testShouldReturnAllParcelsWhenTheServiceNamesInTheBlueprintContainsANullValue() {
    String parcelUrl = "http://parcel1.com/";
    String parcelName = "CUSTOM";
    ClouderaManagerProduct parcel = new ClouderaManagerProduct().withParcel(parcelUrl).withName(parcelName);
    SupportedService supportedService = new SupportedService();
    supportedService.setComponentNameInParcel(null);
    SupportedServices supportedServices = new SupportedServices();
    supportedServices.setServices(Set.of(supportedService));
    when(clusterTemplateGeneratorService.getServicesByBlueprint(BLUEPRINT_TEXT)).thenReturn(supportedServices);
    assertEquals(1, underTest.filterParcelsByBlueprint(STACK_ID, Set.of(parcel), getBlueprint()).size());
}
Also used : SupportedService(com.sequenceiq.cloudbreak.cmtemplate.generator.support.domain.SupportedService) SupportedServices(com.sequenceiq.cloudbreak.cmtemplate.generator.support.domain.SupportedServices) ClouderaManagerProduct(com.sequenceiq.cloudbreak.cloud.model.ClouderaManagerProduct) Test(org.junit.jupiter.api.Test) ParameterizedTest(org.junit.jupiter.params.ParameterizedTest)

Example 5 with SupportedService

use of com.sequenceiq.cloudbreak.cmtemplate.generator.support.domain.SupportedService in project cloudbreak by hortonworks.

the class ParcelFilterServiceTest method getSupportedServices.

private SupportedServices getSupportedServices(Set<String> componentNames) {
    SupportedServices supportedServices = new SupportedServices();
    Set<SupportedService> services = componentNames.stream().map(s -> {
        SupportedService supportedService = new SupportedService();
        supportedService.setComponentNameInParcel(s);
        return supportedService;
    }).collect(Collectors.toSet());
    supportedServices.setServices(services);
    return supportedServices;
}
Also used : InjectMocks(org.mockito.InjectMocks) Arrays(java.util.Arrays) MockitoExtension(org.mockito.junit.jupiter.MockitoExtension) SupportedService(com.sequenceiq.cloudbreak.cmtemplate.generator.support.domain.SupportedService) Mock(org.mockito.Mock) Collection(java.util.Collection) SupportedServices(com.sequenceiq.cloudbreak.cmtemplate.generator.support.domain.SupportedServices) Set(java.util.Set) CmTemplateGeneratorService(com.sequenceiq.cloudbreak.cmtemplate.CmTemplateGeneratorService) ImageReaderService(com.sequenceiq.cloudbreak.service.upgrade.sync.component.ImageReaderService) Mockito.when(org.mockito.Mockito.when) Collectors(java.util.stream.Collectors) ImmutablePair(org.apache.commons.lang3.tuple.ImmutablePair) Test(org.junit.jupiter.api.Test) List(java.util.List) ParameterizedTest(org.junit.jupiter.params.ParameterizedTest) ClouderaManagerProduct(com.sequenceiq.cloudbreak.cloud.model.ClouderaManagerProduct) ExtendWith(org.junit.jupiter.api.extension.ExtendWith) Assertions.assertTrue(org.junit.jupiter.api.Assertions.assertTrue) Blueprint(com.sequenceiq.cloudbreak.domain.Blueprint) Assertions.assertEquals(org.junit.jupiter.api.Assertions.assertEquals) LinkedHashSet(java.util.LinkedHashSet) MethodSource(org.junit.jupiter.params.provider.MethodSource) SupportedService(com.sequenceiq.cloudbreak.cmtemplate.generator.support.domain.SupportedService) SupportedServices(com.sequenceiq.cloudbreak.cmtemplate.generator.support.domain.SupportedServices)

Aggregations

SupportedService (com.sequenceiq.cloudbreak.cmtemplate.generator.support.domain.SupportedService)6 SupportedServices (com.sequenceiq.cloudbreak.cmtemplate.generator.support.domain.SupportedServices)4 HashSet (java.util.HashSet)3 SupportedServiceV4Response (com.sequenceiq.cloudbreak.api.endpoint.v4.blueprint.responses.SupportedServiceV4Response)2 ClouderaManagerProduct (com.sequenceiq.cloudbreak.cloud.model.ClouderaManagerProduct)2 ServiceConfig (com.sequenceiq.cloudbreak.cmtemplate.generator.configuration.domain.dependencies.ServiceConfig)2 CdhService (com.sequenceiq.cloudbreak.cmtemplate.generator.configuration.domain.versionmatrix.CdhService)2 SupportedVersion (com.sequenceiq.cloudbreak.cmtemplate.generator.support.domain.SupportedVersion)2 Test (org.junit.jupiter.api.Test)2 ParameterizedTest (org.junit.jupiter.params.ParameterizedTest)2 ApiClusterTemplateService (com.cloudera.api.swagger.model.ApiClusterTemplateService)1 BlueprintServicesV4Response (com.sequenceiq.cloudbreak.api.endpoint.v4.blueprint.responses.BlueprintServicesV4Response)1 SupportedVersionV4Response (com.sequenceiq.cloudbreak.api.endpoint.v4.blueprint.responses.SupportedVersionV4Response)1 SupportedVersionsV4Response (com.sequenceiq.cloudbreak.api.endpoint.v4.blueprint.responses.SupportedVersionsV4Response)1 CmTemplateGeneratorService (com.sequenceiq.cloudbreak.cmtemplate.CmTemplateGeneratorService)1 CmTemplateProcessor (com.sequenceiq.cloudbreak.cmtemplate.CmTemplateProcessor)1 StackVersion (com.sequenceiq.cloudbreak.cmtemplate.generator.configuration.domain.StackVersion)1 SupportedVersions (com.sequenceiq.cloudbreak.cmtemplate.generator.support.domain.SupportedVersions)1 Blueprint (com.sequenceiq.cloudbreak.domain.Blueprint)1 ImageReaderService (com.sequenceiq.cloudbreak.service.upgrade.sync.component.ImageReaderService)1