private List<Recommendation> createMetroPointRecommendations(VirtualArray srcVarray,List<VirtualArray> tgtVarrays,VirtualPool srcVpool,VirtualArray haVarray,VirtualPool haVpool,Project project,VirtualPoolCapabilityValuesWrapper capabilities,List<StoragePool> candidatePrimaryPools,List<StoragePool> candidateSecondaryPools,Volume vpoolChangeVolume){
  List<Recommendation> recommendations=new ArrayList<Recommendation>();
  RPProtectionRecommendation rpProtectionRecommendaton=null;
  Map<VirtualArray,List<StoragePool>> tgtVarrayStoragePoolsMap=getVplexTargetMatchingPools(tgtVarrays,srcVpool,project,capabilities,vpoolChangeVolume);
  rpProtectionRecommendaton=createRPProtectionRecommendationForMetroPoint(srcVarray,tgtVarrays,srcVpool,haVarray,haVpool,capabilities,candidatePrimaryPools,candidateSecondaryPools,tgtVarrayStoragePoolsMap,vpoolChangeVolume,project);
  _log.info(String.format("Produced %s recommendations for MetroPoint placement.",rpProtectionRecommendaton.getResourceCount()));
  recommendations.add(rpProtectionRecommendaton);
  return recommendations;
}

private List < Recommendation > createMetroPointRecommendations ( VirtualArray srcVarray , List < VirtualArray > tgtVarrays , VirtualPool srcVpool , VirtualArray haVarray , VirtualPool haVpool , Project project , VirtualPoolCapabilityValuesWrapper capabilities , List < StoragePool > candidatePrimaryPools , List < StoragePool > candidateSecondaryPools , Volume vpoolChangeVolume ) { List < Recommendation > recommendations = new ArrayList < Recommendation > ( ) ; RPProtectionRecommendation rpProtectionRecommendaton = null ; Map < VirtualArray , List < StoragePool > > tgtVarrayStoragePoolsMap = getVplexTargetMatchingPools ( tgtVarrays , srcVpool , project , capabilities , vpoolChangeVolume ) ; rpProtectionRecommendaton = createRPProtectionRecommendationForMetroPoint ( srcVarray , tgtVarrays , srcVpool , haVarray , haVpool , capabilities , candidatePrimaryPools , candidateSecondaryPools , tgtVarrayStoragePoolsMap , vpoolChangeVolume , project ) ; _log . info ( String . format ( "Produced %s recommendations for MetroPoint placement." , rpProtectionRecommendaton . getResourceCount ( ) ) ) ; recommendations . add ( rpProtectionRecommendaton ) ; return recommendations ; }
creates recommendations for metropoint . this consists of single recommendations that include the both the primary and secondary ha clusters and their associated rp protection details .
