@SuppressWarnings({ "static-access"}) @Test public void fetchPHDInfoTest_Exception() throws Exception { PowerMockito.whenNew(AWSStaticCredentialsProvider.class).withAnyArguments().thenThrow(new Exception()); assertThat(inventoryUtil.fetchPHDInfo(new BasicSessionCredentials("awsAccessKey", "awsSecretKey", "sessionToken"), "account","accountName").size(), is(0)); }
public static Map<String,List<PhdVH>> fetchPHDInfo(BasicSessionCredentials temporaryCredentials,String accountId,String accountName) { Map<String,List<PhdVH>> phd = new LinkedHashMap<>(); AWSHealth awsHealth; String expPrefix = InventoryConstants.ERROR_PREFIX_CODE+accountId + "\",\"Message\": \"Exception in fetching info for resource\" ,\"type\": \"PHD\"" ; try{ awsHealth = AWSHealthClientBuilder.standard().withCredentials(new AWSStaticCredentialsProvider(temporaryCredentials)).withRegion("us-east-1").build(); List<PhdVH> phdList = new ArrayList<>(); List<Event> resultEvents = new ArrayList<>(); String nextToken = ""; do { DescribeEventsRequest describeEventsRequest = new DescribeEventsRequest().withMaxResults(100); if (!StringUtils.isEmpty(nextToken)) { describeEventsRequest.withNextToken(nextToken); } DescribeEventsResult eventsResult = awsHealth.describeEvents(describeEventsRequest); nextToken = eventsResult.getNextToken(); resultEvents.addAll(eventsResult.getEvents()); } while (!StringUtils.isEmpty(nextToken)); List<String> eventArns = resultEvents.stream().map(Event::getArn).collect(Collectors.toList()); int eventSize = eventArns.size(); List<String> eventArnsTemp = new ArrayList<>(); for(int i =0 ; i<eventSize;i++){ eventArnsTemp.add(eventArns.get(i)); if((i+1)%10==0 || i == eventSize-1){ List<EventDetails> successfulEventDetails = awsHealth.describeEventDetails(new DescribeEventDetailsRequest().withEventArns(eventArnsTemp)). getSuccessfulSet(); List<AffectedEntity> affectedEntities = new ArrayList<>(); do { DescribeAffectedEntitiesRequest affectedEntitiesRequest = new DescribeAffectedEntitiesRequest().withMaxResults(100); if (!StringUtils.isEmpty(nextToken)) { affectedEntitiesRequest.withNextToken(nextToken); } DescribeAffectedEntitiesResult affectedEntitiesResult = awsHealth.describeAffectedEntities(affectedEntitiesRequest.withFilter(new EntityFilter().withEventArns(eventArnsTemp))); nextToken = affectedEntitiesResult.getNextToken(); affectedEntities.addAll(affectedEntitiesResult.getEntities()); } while (!StringUtils.isEmpty(nextToken)); for(EventDetails eventDetail : successfulEventDetails) { PhdVH phdObj = new PhdVH(); phdObj.setEventDetails(eventDetail); phdObj.setAffectedEntities(affectedEntities.parallelStream().filter(affEntity -> affEntity.getEventArn().equals(eventDetail.getEvent().getArn())).collect(Collectors.toList())); phdList.add(phdObj); } eventArnsTemp = new ArrayList<>(); } } if( !phdList.isEmpty() ) { log.debug(InventoryConstants.ACCOUNT + accountId +" Type : PHD "+ " >> "+phdList.size()); phd.put(accountId+delimiter+accountName,phdList); } }catch(Exception e){ log.error(expPrefix +", \"cause\":\"" +e.getMessage()+"\"}"); ErrorManageUtil.uploadError(accountId,"","phd",e.getMessage()); } return phd; }
InventoryUtil { public static Map<String,List<PhdVH>> fetchPHDInfo(BasicSessionCredentials temporaryCredentials,String accountId,String accountName) { Map<String,List<PhdVH>> phd = new LinkedHashMap<>(); AWSHealth awsHealth; String expPrefix = InventoryConstants.ERROR_PREFIX_CODE+accountId + "\",\"Message\": \"Exception in fetching info for resource\" ,\"type\": \"PHD\"" ; try{ awsHealth = AWSHealthClientBuilder.standard().withCredentials(new AWSStaticCredentialsProvider(temporaryCredentials)).withRegion("us-east-1").build(); List<PhdVH> phdList = new ArrayList<>(); List<Event> resultEvents = new ArrayList<>(); String nextToken = ""; do { DescribeEventsRequest describeEventsRequest = new DescribeEventsRequest().withMaxResults(100); if (!StringUtils.isEmpty(nextToken)) { describeEventsRequest.withNextToken(nextToken); } DescribeEventsResult eventsResult = awsHealth.describeEvents(describeEventsRequest); nextToken = eventsResult.getNextToken(); resultEvents.addAll(eventsResult.getEvents()); } while (!StringUtils.isEmpty(nextToken)); List<String> eventArns = resultEvents.stream().map(Event::getArn).collect(Collectors.toList()); int eventSize = eventArns.size(); List<String> eventArnsTemp = new ArrayList<>(); for(int i =0 ; i<eventSize;i++){ eventArnsTemp.add(eventArns.get(i)); if((i+1)%10==0 || i == eventSize-1){ List<EventDetails> successfulEventDetails = awsHealth.describeEventDetails(new DescribeEventDetailsRequest().withEventArns(eventArnsTemp)). getSuccessfulSet(); List<AffectedEntity> affectedEntities = new ArrayList<>(); do { DescribeAffectedEntitiesRequest affectedEntitiesRequest = new DescribeAffectedEntitiesRequest().withMaxResults(100); if (!StringUtils.isEmpty(nextToken)) { affectedEntitiesRequest.withNextToken(nextToken); } DescribeAffectedEntitiesResult affectedEntitiesResult = awsHealth.describeAffectedEntities(affectedEntitiesRequest.withFilter(new EntityFilter().withEventArns(eventArnsTemp))); nextToken = affectedEntitiesResult.getNextToken(); affectedEntities.addAll(affectedEntitiesResult.getEntities()); } while (!StringUtils.isEmpty(nextToken)); for(EventDetails eventDetail : successfulEventDetails) { PhdVH phdObj = new PhdVH(); phdObj.setEventDetails(eventDetail); phdObj.setAffectedEntities(affectedEntities.parallelStream().filter(affEntity -> affEntity.getEventArn().equals(eventDetail.getEvent().getArn())).collect(Collectors.toList())); phdList.add(phdObj); } eventArnsTemp = new ArrayList<>(); } } if( !phdList.isEmpty() ) { log.debug(InventoryConstants.ACCOUNT + accountId +" Type : PHD "+ " >> "+phdList.size()); phd.put(accountId+delimiter+accountName,phdList); } }catch(Exception e){ log.error(expPrefix +", \"cause\":\"" +e.getMessage()+"\"}"); ErrorManageUtil.uploadError(accountId,"","phd",e.getMessage()); } return phd; } }
InventoryUtil { public static Map<String,List<PhdVH>> fetchPHDInfo(BasicSessionCredentials temporaryCredentials,String accountId,String accountName) { Map<String,List<PhdVH>> phd = new LinkedHashMap<>(); AWSHealth awsHealth; String expPrefix = InventoryConstants.ERROR_PREFIX_CODE+accountId + "\",\"Message\": \"Exception in fetching info for resource\" ,\"type\": \"PHD\"" ; try{ awsHealth = AWSHealthClientBuilder.standard().withCredentials(new AWSStaticCredentialsProvider(temporaryCredentials)).withRegion("us-east-1").build(); List<PhdVH> phdList = new ArrayList<>(); List<Event> resultEvents = new ArrayList<>(); String nextToken = ""; do { DescribeEventsRequest describeEventsRequest = new DescribeEventsRequest().withMaxResults(100); if (!StringUtils.isEmpty(nextToken)) { describeEventsRequest.withNextToken(nextToken); } DescribeEventsResult eventsResult = awsHealth.describeEvents(describeEventsRequest); nextToken = eventsResult.getNextToken(); resultEvents.addAll(eventsResult.getEvents()); } while (!StringUtils.isEmpty(nextToken)); List<String> eventArns = resultEvents.stream().map(Event::getArn).collect(Collectors.toList()); int eventSize = eventArns.size(); List<String> eventArnsTemp = new ArrayList<>(); for(int i =0 ; i<eventSize;i++){ eventArnsTemp.add(eventArns.get(i)); if((i+1)%10==0 || i == eventSize-1){ List<EventDetails> successfulEventDetails = awsHealth.describeEventDetails(new DescribeEventDetailsRequest().withEventArns(eventArnsTemp)). getSuccessfulSet(); List<AffectedEntity> affectedEntities = new ArrayList<>(); do { DescribeAffectedEntitiesRequest affectedEntitiesRequest = new DescribeAffectedEntitiesRequest().withMaxResults(100); if (!StringUtils.isEmpty(nextToken)) { affectedEntitiesRequest.withNextToken(nextToken); } DescribeAffectedEntitiesResult affectedEntitiesResult = awsHealth.describeAffectedEntities(affectedEntitiesRequest.withFilter(new EntityFilter().withEventArns(eventArnsTemp))); nextToken = affectedEntitiesResult.getNextToken(); affectedEntities.addAll(affectedEntitiesResult.getEntities()); } while (!StringUtils.isEmpty(nextToken)); for(EventDetails eventDetail : successfulEventDetails) { PhdVH phdObj = new PhdVH(); phdObj.setEventDetails(eventDetail); phdObj.setAffectedEntities(affectedEntities.parallelStream().filter(affEntity -> affEntity.getEventArn().equals(eventDetail.getEvent().getArn())).collect(Collectors.toList())); phdList.add(phdObj); } eventArnsTemp = new ArrayList<>(); } } if( !phdList.isEmpty() ) { log.debug(InventoryConstants.ACCOUNT + accountId +" Type : PHD "+ " >> "+phdList.size()); phd.put(accountId+delimiter+accountName,phdList); } }catch(Exception e){ log.error(expPrefix +", \"cause\":\"" +e.getMessage()+"\"}"); ErrorManageUtil.uploadError(accountId,"","phd",e.getMessage()); } return phd; } private  InventoryUtil(); }
InventoryUtil { public static Map<String,List<PhdVH>> fetchPHDInfo(BasicSessionCredentials temporaryCredentials,String accountId,String accountName) { Map<String,List<PhdVH>> phd = new LinkedHashMap<>(); AWSHealth awsHealth; String expPrefix = InventoryConstants.ERROR_PREFIX_CODE+accountId + "\",\"Message\": \"Exception in fetching info for resource\" ,\"type\": \"PHD\"" ; try{ awsHealth = AWSHealthClientBuilder.standard().withCredentials(new AWSStaticCredentialsProvider(temporaryCredentials)).withRegion("us-east-1").build(); List<PhdVH> phdList = new ArrayList<>(); List<Event> resultEvents = new ArrayList<>(); String nextToken = ""; do { DescribeEventsRequest describeEventsRequest = new DescribeEventsRequest().withMaxResults(100); if (!StringUtils.isEmpty(nextToken)) { describeEventsRequest.withNextToken(nextToken); } DescribeEventsResult eventsResult = awsHealth.describeEvents(describeEventsRequest); nextToken = eventsResult.getNextToken(); resultEvents.addAll(eventsResult.getEvents()); } while (!StringUtils.isEmpty(nextToken)); List<String> eventArns = resultEvents.stream().map(Event::getArn).collect(Collectors.toList()); int eventSize = eventArns.size(); List<String> eventArnsTemp = new ArrayList<>(); for(int i =0 ; i<eventSize;i++){ eventArnsTemp.add(eventArns.get(i)); if((i+1)%10==0 || i == eventSize-1){ List<EventDetails> successfulEventDetails = awsHealth.describeEventDetails(new DescribeEventDetailsRequest().withEventArns(eventArnsTemp)). getSuccessfulSet(); List<AffectedEntity> affectedEntities = new ArrayList<>(); do { DescribeAffectedEntitiesRequest affectedEntitiesRequest = new DescribeAffectedEntitiesRequest().withMaxResults(100); if (!StringUtils.isEmpty(nextToken)) { affectedEntitiesRequest.withNextToken(nextToken); } DescribeAffectedEntitiesResult affectedEntitiesResult = awsHealth.describeAffectedEntities(affectedEntitiesRequest.withFilter(new EntityFilter().withEventArns(eventArnsTemp))); nextToken = affectedEntitiesResult.getNextToken(); affectedEntities.addAll(affectedEntitiesResult.getEntities()); } while (!StringUtils.isEmpty(nextToken)); for(EventDetails eventDetail : successfulEventDetails) { PhdVH phdObj = new PhdVH(); phdObj.setEventDetails(eventDetail); phdObj.setAffectedEntities(affectedEntities.parallelStream().filter(affEntity -> affEntity.getEventArn().equals(eventDetail.getEvent().getArn())).collect(Collectors.toList())); phdList.add(phdObj); } eventArnsTemp = new ArrayList<>(); } } if( !phdList.isEmpty() ) { log.debug(InventoryConstants.ACCOUNT + accountId +" Type : PHD "+ " >> "+phdList.size()); phd.put(accountId+delimiter+accountName,phdList); } }catch(Exception e){ log.error(expPrefix +", \"cause\":\"" +e.getMessage()+"\"}"); ErrorManageUtil.uploadError(accountId,"","phd",e.getMessage()); } return phd; } private  InventoryUtil(); static Map<String,List<Instance>> fetchInstances(BasicSessionCredentials temporaryCredentials, String skipRegions,String accountId,String accountName,String ec2Filters); static Map<String,List<NetworkInterface>> fetchNetworkIntefaces(BasicSessionCredentials temporaryCredentials, String skipRegions,String accountId,String accountName); static Map<String,List<SecurityGroup>> fetchSecurityGroups(BasicSessionCredentials temporaryCredentials, String skipRegions,String accountId,String accountName); static Map<String,List<AutoScalingGroup>> fetchAsg(BasicSessionCredentials temporaryCredentials, String skipRegions,String accountId,String accountName); static Map<String,List<Stack>> fetchCloudFormationStack(BasicSessionCredentials temporaryCredentials, String skipRegions,String accountId,String accountName); static Map<String,List<DynamoVH>> fetchDynamoDBTables(BasicSessionCredentials temporaryCredentials, String skipRegions,String accountId,String accountName); static Map<String,List<EfsVH>> fetchEFSInfo(BasicSessionCredentials temporaryCredentials, String skipRegions,String accountId,String accountName); static Map<String,List<Cluster>> fetchEMRInfo(BasicSessionCredentials temporaryCredentials, String skipRegions,String accountId,String accountName); static Map<String,List<LambdaVH>> fetchLambdaInfo(BasicSessionCredentials temporaryCredentials, String skipRegions,String accountId,String accountName); static Map<String,List<ClassicELBVH>> fetchClassicElbInfo(BasicSessionCredentials temporaryCredentials, String skipRegions,String accountId,String accountName); static Map<String,List<LoadBalancerVH>> fetchElbInfo(BasicSessionCredentials temporaryCredentials, String skipRegions,String accountId,String accountName); static Map<String,List<TargetGroupVH>> fetchTargetGroups(BasicSessionCredentials temporaryCredentials, String skipRegions,String accountId,String accountName); static Map<String,List<NatGateway>> fetchNATGatewayInfo(BasicSessionCredentials temporaryCredentials, String skipRegions,String accountId,String accountName); static Map<String,List<DBClusterVH>> fetchRDSClusterInfo(BasicSessionCredentials temporaryCredentials, String skipRegions,String accountId,String accountName); static Map<String,List<DBInstanceVH>> fetchRDSInstanceInfo(BasicSessionCredentials temporaryCredentials, String skipRegions,String accountId,String accountName); static Map<String,List<BucketVH>> fetchS3Info(BasicSessionCredentials temporaryCredentials, String skipRegions,String accountId,String accountName); static Map<String,List<Subnet>> fetchSubnets(BasicSessionCredentials temporaryCredentials, String skipRegions,String accountId,String accountName); static Map<String,List<CheckVH>> fetchTrusterdAdvisorsChecks(BasicSessionCredentials temporaryCredentials,String accountId,String accountName ); static Map<String,List<RedshiftVH>> fetchRedshiftInfo(BasicSessionCredentials temporaryCredentials,String skipRegions,String accountId,String accountName); static Map<String,List<Volume>> fetchVolumetInfo(BasicSessionCredentials temporaryCredentials, String skipRegions,String accountId,String accountName); static Map<String,List<Snapshot>> fetchSnapshots(BasicSessionCredentials temporaryCredentials, String skipRegions,String accountId,String accountName); @SuppressWarnings("rawtypes") static Map<String,List<VpcVH>> fetchVpcInfo(BasicSessionCredentials temporaryCredentials, String skipRegions,String accountId,String accountName); static Map<String,List<RestApi>> fetchApiGateways(BasicSessionCredentials temporaryCredentials, String skipRegions,String accountId,String accountName); static Map<String,List<UserVH>> fetchIAMUsers(BasicSessionCredentials temporaryCredentials,String accountId,String accountName); static Map<String,List<Role>> fetchIAMRoles(BasicSessionCredentials temporaryCredentials,String accountId,String accountName); static Map<String,List<DBSnapshot>> fetchRDSDBSnapshots(BasicSessionCredentials temporaryCredentials, String skipRegions,String accountId,String accountName); static Map<String,List<KMSKeyVH>> fetchKMSKeys(BasicSessionCredentials temporaryCredentials, String skipRegions,String accountId,String accountName); static Map<String,List<CloudFrontVH>> fetchCloudFrontInfo(BasicSessionCredentials temporaryCredentials,String accountId,String accountName); static Map<String,List<EbsVH>> fetchEBSInfo(BasicSessionCredentials temporaryCredentials, String skipRegions,String accountId,String accountName); static Map<String,List<PhdVH>> fetchPHDInfo(BasicSessionCredentials temporaryCredentials,String accountId,String accountName); static Map<String,List<SQSVH>> fetchSQSInfo(BasicSessionCredentials temporaryCredentials, String skipRegions,String accountId,String accountName); static Map<String,List<SSLCertificateVH>> fetchACMCertficateInfo(BasicSessionCredentials temporaryCredentials, String skipRegions, String account, String accountName); static Map<String,List<IAMCertificateVH>> fetchIAMCertificateInfo(BasicSessionCredentials temporaryCredentials, String skipRegions, String account, String accountName); static Map<String,List<AccountVH>> fetchAccountsInfo(BasicSessionCredentials temporaryCredentials, String skipRegions,
			String account, String accountName); static Map<String,List<GroupVH>> fetchIAMGroups(BasicSessionCredentials temporaryCredentials,String account, String accountName); static Map<String,List<Trail>> fetchCloudTrails(BasicSessionCredentials temporaryCredentials, String skipRegions,String account, String accountName); }
InventoryUtil { public static Map<String,List<PhdVH>> fetchPHDInfo(BasicSessionCredentials temporaryCredentials,String accountId,String accountName) { Map<String,List<PhdVH>> phd = new LinkedHashMap<>(); AWSHealth awsHealth; String expPrefix = InventoryConstants.ERROR_PREFIX_CODE+accountId + "\",\"Message\": \"Exception in fetching info for resource\" ,\"type\": \"PHD\"" ; try{ awsHealth = AWSHealthClientBuilder.standard().withCredentials(new AWSStaticCredentialsProvider(temporaryCredentials)).withRegion("us-east-1").build(); List<PhdVH> phdList = new ArrayList<>(); List<Event> resultEvents = new ArrayList<>(); String nextToken = ""; do { DescribeEventsRequest describeEventsRequest = new DescribeEventsRequest().withMaxResults(100); if (!StringUtils.isEmpty(nextToken)) { describeEventsRequest.withNextToken(nextToken); } DescribeEventsResult eventsResult = awsHealth.describeEvents(describeEventsRequest); nextToken = eventsResult.getNextToken(); resultEvents.addAll(eventsResult.getEvents()); } while (!StringUtils.isEmpty(nextToken)); List<String> eventArns = resultEvents.stream().map(Event::getArn).collect(Collectors.toList()); int eventSize = eventArns.size(); List<String> eventArnsTemp = new ArrayList<>(); for(int i =0 ; i<eventSize;i++){ eventArnsTemp.add(eventArns.get(i)); if((i+1)%10==0 || i == eventSize-1){ List<EventDetails> successfulEventDetails = awsHealth.describeEventDetails(new DescribeEventDetailsRequest().withEventArns(eventArnsTemp)). getSuccessfulSet(); List<AffectedEntity> affectedEntities = new ArrayList<>(); do { DescribeAffectedEntitiesRequest affectedEntitiesRequest = new DescribeAffectedEntitiesRequest().withMaxResults(100); if (!StringUtils.isEmpty(nextToken)) { affectedEntitiesRequest.withNextToken(nextToken); } DescribeAffectedEntitiesResult affectedEntitiesResult = awsHealth.describeAffectedEntities(affectedEntitiesRequest.withFilter(new EntityFilter().withEventArns(eventArnsTemp))); nextToken = affectedEntitiesResult.getNextToken(); affectedEntities.addAll(affectedEntitiesResult.getEntities()); } while (!StringUtils.isEmpty(nextToken)); for(EventDetails eventDetail : successfulEventDetails) { PhdVH phdObj = new PhdVH(); phdObj.setEventDetails(eventDetail); phdObj.setAffectedEntities(affectedEntities.parallelStream().filter(affEntity -> affEntity.getEventArn().equals(eventDetail.getEvent().getArn())).collect(Collectors.toList())); phdList.add(phdObj); } eventArnsTemp = new ArrayList<>(); } } if( !phdList.isEmpty() ) { log.debug(InventoryConstants.ACCOUNT + accountId +" Type : PHD "+ " >> "+phdList.size()); phd.put(accountId+delimiter+accountName,phdList); } }catch(Exception e){ log.error(expPrefix +", \"cause\":\"" +e.getMessage()+"\"}"); ErrorManageUtil.uploadError(accountId,"","phd",e.getMessage()); } return phd; } private  InventoryUtil(); static Map<String,List<Instance>> fetchInstances(BasicSessionCredentials temporaryCredentials, String skipRegions,String accountId,String accountName,String ec2Filters); static Map<String,List<NetworkInterface>> fetchNetworkIntefaces(BasicSessionCredentials temporaryCredentials, String skipRegions,String accountId,String accountName); static Map<String,List<SecurityGroup>> fetchSecurityGroups(BasicSessionCredentials temporaryCredentials, String skipRegions,String accountId,String accountName); static Map<String,List<AutoScalingGroup>> fetchAsg(BasicSessionCredentials temporaryCredentials, String skipRegions,String accountId,String accountName); static Map<String,List<Stack>> fetchCloudFormationStack(BasicSessionCredentials temporaryCredentials, String skipRegions,String accountId,String accountName); static Map<String,List<DynamoVH>> fetchDynamoDBTables(BasicSessionCredentials temporaryCredentials, String skipRegions,String accountId,String accountName); static Map<String,List<EfsVH>> fetchEFSInfo(BasicSessionCredentials temporaryCredentials, String skipRegions,String accountId,String accountName); static Map<String,List<Cluster>> fetchEMRInfo(BasicSessionCredentials temporaryCredentials, String skipRegions,String accountId,String accountName); static Map<String,List<LambdaVH>> fetchLambdaInfo(BasicSessionCredentials temporaryCredentials, String skipRegions,String accountId,String accountName); static Map<String,List<ClassicELBVH>> fetchClassicElbInfo(BasicSessionCredentials temporaryCredentials, String skipRegions,String accountId,String accountName); static Map<String,List<LoadBalancerVH>> fetchElbInfo(BasicSessionCredentials temporaryCredentials, String skipRegions,String accountId,String accountName); static Map<String,List<TargetGroupVH>> fetchTargetGroups(BasicSessionCredentials temporaryCredentials, String skipRegions,String accountId,String accountName); static Map<String,List<NatGateway>> fetchNATGatewayInfo(BasicSessionCredentials temporaryCredentials, String skipRegions,String accountId,String accountName); static Map<String,List<DBClusterVH>> fetchRDSClusterInfo(BasicSessionCredentials temporaryCredentials, String skipRegions,String accountId,String accountName); static Map<String,List<DBInstanceVH>> fetchRDSInstanceInfo(BasicSessionCredentials temporaryCredentials, String skipRegions,String accountId,String accountName); static Map<String,List<BucketVH>> fetchS3Info(BasicSessionCredentials temporaryCredentials, String skipRegions,String accountId,String accountName); static Map<String,List<Subnet>> fetchSubnets(BasicSessionCredentials temporaryCredentials, String skipRegions,String accountId,String accountName); static Map<String,List<CheckVH>> fetchTrusterdAdvisorsChecks(BasicSessionCredentials temporaryCredentials,String accountId,String accountName ); static Map<String,List<RedshiftVH>> fetchRedshiftInfo(BasicSessionCredentials temporaryCredentials,String skipRegions,String accountId,String accountName); static Map<String,List<Volume>> fetchVolumetInfo(BasicSessionCredentials temporaryCredentials, String skipRegions,String accountId,String accountName); static Map<String,List<Snapshot>> fetchSnapshots(BasicSessionCredentials temporaryCredentials, String skipRegions,String accountId,String accountName); @SuppressWarnings("rawtypes") static Map<String,List<VpcVH>> fetchVpcInfo(BasicSessionCredentials temporaryCredentials, String skipRegions,String accountId,String accountName); static Map<String,List<RestApi>> fetchApiGateways(BasicSessionCredentials temporaryCredentials, String skipRegions,String accountId,String accountName); static Map<String,List<UserVH>> fetchIAMUsers(BasicSessionCredentials temporaryCredentials,String accountId,String accountName); static Map<String,List<Role>> fetchIAMRoles(BasicSessionCredentials temporaryCredentials,String accountId,String accountName); static Map<String,List<DBSnapshot>> fetchRDSDBSnapshots(BasicSessionCredentials temporaryCredentials, String skipRegions,String accountId,String accountName); static Map<String,List<KMSKeyVH>> fetchKMSKeys(BasicSessionCredentials temporaryCredentials, String skipRegions,String accountId,String accountName); static Map<String,List<CloudFrontVH>> fetchCloudFrontInfo(BasicSessionCredentials temporaryCredentials,String accountId,String accountName); static Map<String,List<EbsVH>> fetchEBSInfo(BasicSessionCredentials temporaryCredentials, String skipRegions,String accountId,String accountName); static Map<String,List<PhdVH>> fetchPHDInfo(BasicSessionCredentials temporaryCredentials,String accountId,String accountName); static Map<String,List<SQSVH>> fetchSQSInfo(BasicSessionCredentials temporaryCredentials, String skipRegions,String accountId,String accountName); static Map<String,List<SSLCertificateVH>> fetchACMCertficateInfo(BasicSessionCredentials temporaryCredentials, String skipRegions, String account, String accountName); static Map<String,List<IAMCertificateVH>> fetchIAMCertificateInfo(BasicSessionCredentials temporaryCredentials, String skipRegions, String account, String accountName); static Map<String,List<AccountVH>> fetchAccountsInfo(BasicSessionCredentials temporaryCredentials, String skipRegions,
			String account, String accountName); static Map<String,List<GroupVH>> fetchIAMGroups(BasicSessionCredentials temporaryCredentials,String account, String accountName); static Map<String,List<Trail>> fetchCloudTrails(BasicSessionCredentials temporaryCredentials, String skipRegions,String account, String accountName);  }