Search in sources :

Example 1 with SubnetFilterStrategyType

use of com.sequenceiq.cloudbreak.cloud.aws.common.subnetselector.SubnetFilterStrategyType in project cloudbreak by hortonworks.

the class AwsNetworkConnectorTest method prepareMock.

public void prepareMock(List<CloudSubnet> cloudSubnets) {
    Map<SubnetFilterStrategyType, SubnetFilterStrategy> subnetFilterStrategyMap = new HashMap<>();
    subnetFilterStrategyMap.put(SubnetFilterStrategyType.MULTIPLE_PREFER_PRIVATE, subnetFilterStrategy);
    subnetFilterStrategyMap.put(SubnetFilterStrategyType.MULTIPLE_PREFER_PUBLIC, subnetFilterStrategy);
    when(subnetFilterStrategy.filter(any(), anyInt())).thenReturn(new SubnetSelectionResult(cloudSubnets));
    ReflectionTestUtils.setField(underTest, "subnetFilterStrategyMap", subnetFilterStrategyMap);
}
Also used : SubnetFilterStrategyType(com.sequenceiq.cloudbreak.cloud.aws.common.subnetselector.SubnetFilterStrategyType) SubnetFilterStrategy(com.sequenceiq.cloudbreak.cloud.aws.common.subnetselector.SubnetFilterStrategy) HashMap(java.util.HashMap) SubnetSelectionResult(com.sequenceiq.cloudbreak.cloud.model.SubnetSelectionResult)

Example 2 with SubnetFilterStrategyType

use of com.sequenceiq.cloudbreak.cloud.aws.common.subnetselector.SubnetFilterStrategyType in project cloudbreak by hortonworks.

the class AwsNetworkConnector method filterSubnets.

@Override
public SubnetSelectionResult filterSubnets(Collection<CloudSubnet> subnetMetas, SubnetSelectionParameters subnetSelectionParameters) {
    boolean preferPrivate = subnetSelectionParameters.isPreferPrivateIfExist() || subnetSelectionParameters.getTunnel().useCcm();
    SubnetFilterStrategyType subnetSelectorStrategyType = preferPrivate ? SubnetFilterStrategyType.MULTIPLE_PREFER_PRIVATE : SubnetFilterStrategyType.MULTIPLE_PREFER_PUBLIC;
    int maxAzCount = subnetSelectionParameters.isHa() ? getAzCount(subnetMetas) : 1;
    return subnetFilterStrategyMap.get(subnetSelectorStrategyType).filter(subnetMetas, maxAzCount);
}
Also used : SubnetFilterStrategyType(com.sequenceiq.cloudbreak.cloud.aws.common.subnetselector.SubnetFilterStrategyType)

Aggregations

SubnetFilterStrategyType (com.sequenceiq.cloudbreak.cloud.aws.common.subnetselector.SubnetFilterStrategyType)2 SubnetFilterStrategy (com.sequenceiq.cloudbreak.cloud.aws.common.subnetselector.SubnetFilterStrategy)1 SubnetSelectionResult (com.sequenceiq.cloudbreak.cloud.model.SubnetSelectionResult)1 HashMap (java.util.HashMap)1