reader

package
v0.8.4 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 18, 2023 License: MIT Imports: 88 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Reader

type Reader interface {
	// GetAccountID returns the current ID for the account used
	GetAccountID() string

	// GetRegion returns the currently used region for the Connector
	GetRegion() string

	// GetAPIGatewayDeployments returns the Deployment Functions on the given input
	// Returned values are commented in the interface doc comment block.
	GetAPIGatewayDeployments(ctx context.Context, input *apigateway.GetDeploymentsInput) ([]*apigateway.Deployment, error)

	// GetAPIGatewayResources returns the Resource Functions on the given input
	// Returned values are commented in the interface doc comment block.
	GetAPIGatewayResources(ctx context.Context, input *apigateway.GetResourcesInput) ([]*apigateway.Resource, error)

	// GetAPIGatewayRestAPIs returns the RestApi Functions on the given input
	// Returned values are commented in the interface doc comment block.
	GetAPIGatewayRestAPIs(ctx context.Context, input *apigateway.GetRestApisInput) ([]*apigateway.RestApi, error)

	// GetAPIGatewayStages returns the Stage Functions on the given input
	// Returned values are commented in the interface doc comment block.
	GetAPIGatewayStages(ctx context.Context, input *apigateway.GetStagesInput) ([]*apigateway.Stage, error)

	// GetAthenaDataCatalogs returns the Athena worker groups on the given input
	// Returned values are commented in the interface doc comment block.
	GetAthenaWorkGroups(ctx context.Context, input *athena.ListWorkGroupsInput) ([]*athena.WorkGroupSummary, error)

	// GetAutoScalingGroups returns all AutoScalingGroup belonging to the Account ID based on the input given.
	// Returned values are commented in the interface doc comment block.
	GetAutoScalingGroups(ctx context.Context, input *autoscaling.DescribeAutoScalingGroupsInput) ([]*autoscaling.Group, error)

	// GetLaunchConfigurations returns all LaunchConfiguration belonging to the Account ID based on the input given.
	// Returned values are commented in the interface doc comment block.
	GetLaunchConfigurations(ctx context.Context, input *autoscaling.DescribeLaunchConfigurationsInput) ([]*autoscaling.LaunchConfiguration, error)

	// GetAutoScalingPolicies returns all AutoScalingPolicies belonging to the Account ID based on the input given.
	// Returned values are commented in the interface doc comment block.
	GetAutoScalingPolicies(ctx context.Context, input *autoscaling.DescribePoliciesInput) ([]*autoscaling.ScalingPolicy, error)

	// GetAutoScalingScheduledActions returns all ScheduledActions based on the input given.
	// Returned values are commented in the interface doc comment block.
	GetAutoScalingScheduledActions(ctx context.Context, input *autoscaling.DescribeScheduledActionsInput) ([]*autoscaling.ScheduledUpdateGroupAction, error)

	// GetBatchJobDefinitions returns the batch jobs on the given input
	// Returned values are commented in the interface doc comment block.
	GetBatchJobDefinitions(ctx context.Context, input *batch.DescribeJobDefinitionsInput) ([]*batch.JobDefinition, error)

	// GetCloudFrontDistributions returns all the CloudFront Distributions on the given input
	// Returned values are commented in the interface doc comment block.
	GetCloudFrontDistributions(ctx context.Context, input *cloudfront.ListDistributionsInput) ([]*cloudfront.DistributionSummary, error)

	// GetCloudFrontOriginAccessIdentities returns all the CloudFront Origin Access Identities on the given input
	// Returned values are commented in the interface doc comment block.
	GetCloudFrontOriginAccessIdentities(ctx context.Context, input *cloudfront.ListCloudFrontOriginAccessIdentitiesInput) ([]*cloudfront.OriginAccessIdentitySummary, error)

	// GetCloudFrontPublicKeys returns all the CloudFront Public Keys on the given input
	// Returned values are commented in the interface doc comment block.
	GetCloudFrontPublicKeys(ctx context.Context, input *cloudfront.ListPublicKeysInput) ([]*cloudfront.PublicKeySummary, error)

	// GetMetricAlarms returns all cloudwatch alarms based on the input given.
	// Returned values are commented in the interface doc comment block.
	GetMetricAlarms(ctx context.Context, input *cloudwatch.DescribeAlarmsInput) ([]*cloudwatch.MetricAlarm, error)

	// GetRecordedResourceCounts returns counts of the AWS resources which have
	// been recorded by AWS Config.
	// See https://docs.aws.amazon.com/config/latest/APIReference/API_GetDiscoveredResourceCounts.html
	// for more information about what to enable in your AWS account, the list of
	// supported resources, etc.
	GetRecordedResourceCounts(ctx context.Context, input *configservice.GetDiscoveredResourceCountsInput) ([]*configservice.ResourceCount, error)

	// GetDAXClusters returns the DAX clusters on the given input
	// Returned values are commented in the interface doc comment block.
	GetDAXClusters(ctx context.Context, input *dax.DescribeClustersInput) ([]*dax.Cluster, error)

	// GetDirectConnectGateways returns the Direct Connect gateways on the given input
	// Returned values are commented in the interface doc comment block.
	GetDirectConnectGateways(ctx context.Context, input *directconnect.DescribeDirectConnectGatewaysInput) ([]*directconnect.Gateway, error)

	// GetDirectoryServiceDirectories returns the Directory Service directorie on the given input
	// Returned values are commented in the interface doc comment block.
	GetDirectoryServiceDirectories(ctx context.Context, input *directoryservice.DescribeDirectoriesInput) ([]*directoryservice.DirectoryDescription, error)

	// GetDMSDescribeReplicationInstances returns the DMS replication instances on the given input
	// Returned values are commented in the interface doc comment block.
	GetDMSDescribeReplicationInstances(ctx context.Context, input *databasemigrationservice.DescribeReplicationInstancesInput) ([]*databasemigrationservice.ReplicationInstance, error)

	// GetDynamodbGlobalTables returns the dynamodb global tables on the given input
	// Returned values are commented in the interface doc comment block.
	GetDynamodbGlobalTables(ctx context.Context, input *dynamodb.ListGlobalTablesInput) ([]*dynamodb.GlobalTable, error)

	// GetDynamodbTables returns the dynamodb talbles on the given input
	// Returned values are commented in the interface doc comment block.
	GetDynamodbTables(ctx context.Context, input *dynamodb.ListTablesInput) ([]*string, error)

	// GetAddresses returns all EC2 Addresses based on the input given.
	// Returned values are commented in the interface doc comment block.
	GetAddresses(ctx context.Context, input *ec2.DescribeAddressesInput) ([]*ec2.Address, error)

	// GetImages returns all EC2 AMI based on the input given.
	// Returned values are commented in the interface doc comment block.
	GetImages(ctx context.Context, input *ec2.DescribeImagesInput) ([]*ec2.Image, error)

	// GetOwnImages returns all EC2 AMI belonging to the Account ID based on the input given.
	// Returned values are commented in the interface doc comment block.
	GetOwnImages(ctx context.Context, input *ec2.DescribeImagesInput) ([]*ec2.Image, error)

	// GetInstances returns all EC2 instances based on the input given.
	// Returned values are commented in the interface doc comment block.
	GetInstances(ctx context.Context, input *ec2.DescribeInstancesInput) ([]*ec2.Instance, error)

	// GetEC2InternetGateways returns the EC2 Internet Gateways on the given input
	// Returned values are commented in the interface doc comment block.
	GetEC2InternetGateways(ctx context.Context, input *ec2.DescribeInternetGatewaysInput) ([]*ec2.InternetGateway, error)

	// GetKeyPairs returns all KeyPairs based on the input given.
	// Returned values are commented in the interface doc comment block.
	GetKeyPairs(ctx context.Context, input *ec2.DescribeKeyPairsInput) ([]*ec2.KeyPairInfo, error)

	// GetLaunchTemplates returns all LaunchTemplate belonging to the Account ID based on the input given.
	// Returned values are commented in the interface doc comment block.
	GetLaunchTemplates(ctx context.Context, input *ec2.DescribeLaunchTemplatesInput) ([]*ec2.LaunchTemplate, error)

	// GetEC2NatGateways returns the EC2 nat gateways on the given input
	// Returned values are commented in the interface doc comment block.
	GetEC2NatGateways(ctx context.Context, input *ec2.DescribeNatGatewaysInput) ([]*ec2.NatGateway, error)

	// GetSecurityGroups returns all EC2 security groups based on the input given.
	// Returned values are commented in the interface doc comment block.
	GetSecurityGroups(ctx context.Context, input *ec2.DescribeSecurityGroupsInput) ([]*ec2.SecurityGroup, error)

	// GetSnapshots returns all snapshots based on the input given.
	// Returned values are commented in the interface doc comment block.
	GetSnapshots(ctx context.Context, input *ec2.DescribeSnapshotsInput) ([]*ec2.Snapshot, error)

	// GetOwnSnapshots returns all snapshots belonging to the Account ID based on the input given.
	// Returned values are commented in the interface doc comment block.
	GetOwnSnapshots(ctx context.Context, input *ec2.DescribeSnapshotsInput) ([]*ec2.Snapshot, error)

	// GetSubnets returns all EC2 subnets based on the input given.
	// Returned values are commented in the interface doc comment block.
	GetSubnets(ctx context.Context, input *ec2.DescribeSubnetsInput) ([]*ec2.Subnet, error)

	// GetVolumes returns all EC2 volumes based on the input given.
	// Returned values are commented in the interface doc comment block.
	GetVolumes(ctx context.Context, input *ec2.DescribeVolumesInput) ([]*ec2.Volume, error)

	// GetVpcEndpoints returns the ec2 VPC Endpoints on the given input
	// Returned values are commented in the interface doc comment block.
	GetVpcEndpoints(ctx context.Context, input *ec2.DescribeVpcEndpointsInput) ([]*ec2.VpcEndpoint, error)

	// GetVpcs returns all EC2 VPCs based on the input given.
	// Returned values are commented in the interface doc comment block.
	GetVpcs(ctx context.Context, input *ec2.DescribeVpcsInput) ([]*ec2.Vpc, error)

	// GetVpcPeeringConnections returns all VpcPeeringConnections based on the input given.
	// Returned values are commented in the interface doc comment block.
	GetVpcPeeringConnections(ctx context.Context, input *ec2.DescribeVpcPeeringConnectionsInput) ([]*ec2.VpcPeeringConnection, error)

	// GetVPNGateways returns the ec2 VPN Gateways on the given input
	// Returned values are commented in the interface doc comment block.
	GetVPNGateways(ctx context.Context, input *ec2.DescribeVpnGatewaysInput) ([]*ec2.VpnGateway, error)

	// GetRouteTables returns the ec2 VPN Route Tables on the given input
	// Returned values are commented in the interface doc comment block.
	GetRouteTables(ctx context.Context, input *ec2.DescribeRouteTablesInput) ([]*ec2.RouteTable, error)

	// GetTransitGateways returns the ec2 Transit Gateways on the given input
	// Returned values are commented in the interface doc comment block.
	GetTransitGateways(ctx context.Context, input *ec2.DescribeTransitGatewaysInput) ([]*ec2.TransitGateway, error)

	// GetTransitGateways returns the ec2 Transit Gateway VPC Attachments on the given input
	// Returned values are commented in the interface doc comment block.
	GetTransitGatewayVpcAttachments(ctx context.Context, input *ec2.DescribeTransitGatewayVpcAttachmentsInput) ([]*ec2.TransitGatewayVpcAttachment, error)

	// GetTransitGateways returns the ec2 Transit Gateway Route Tables on the given input
	// Returned values are commented in the interface doc comment block.
	GetTransitGatewayRouteTables(ctx context.Context, input *ec2.DescribeTransitGatewayRouteTablesInput) ([]*ec2.TransitGatewayRouteTable, error)

	// GetTransitGateways returns the ec2 Transit Gateway Multicasts on the given input
	// Returned values are commented in the interface doc comment block.
	GetTransitGatewayMulticast(ctx context.Context, input *ec2.DescribeTransitGatewayMulticastDomainsInput) ([]*ec2.TransitGatewayMulticastDomain, error)

	// GetTransitGatewayPeeringAttachments returns the ec2 Transit Gateway Peering Attachments on the given input
	// Returned values are commented in the interface doc comment block.
	GetTransitGatewayPeeringAttachments(ctx context.Context, input *ec2.DescribeTransitGatewayPeeringAttachmentsInput) ([]*ec2.TransitGatewayPeeringAttachment, error)

	// GetTransitGatewayPrefixListReference returns the ec2 Transit Gateway Prefix List References on the given input
	// Returned values are commented in the interface doc comment block.
	GetTransitGatewayPrefixListReference(ctx context.Context, input *ec2.GetTransitGatewayPrefixListReferencesInput) ([]*ec2.TransitGatewayPrefixListReference, error)

	// GetTransitGatewayRoutes returns the ec2 Transit Gateway Routes on the given input
	// Returned values are commented in the interface doc comment block.
	GetTransitGatewayRoutes(ctx context.Context, input *ec2.SearchTransitGatewayRoutesInput) ([]*ec2.TransitGatewayRoute, error)

	// GetTransitGatewayRouteTableAssociations returns the ec2 Transit Gateway Route Table Associations on the given input
	// Returned values are commented in the interface doc comment block.
	GetTransitGatewayRouteTableAssociations(ctx context.Context, input *ec2.GetTransitGatewayRouteTableAssociationsInput) ([]*ec2.TransitGatewayRouteTableAssociation, error)

	// GetTransitGatewayRouteTablePropagations returns the ec2 Transit Gateway Route Table Propagations on the given input
	// Returned values are commented in the interface doc comment block.
	GetTransitGatewayRouteTablePropagations(ctx context.Context, input *ec2.GetTransitGatewayRouteTablePropagationsInput) ([]*ec2.TransitGatewayRouteTablePropagation, error)

	// GetECSClustersArns returns the ecs clusters arns on the given input
	// Returned values are commented in the interface doc comment block.
	GetECSClustersArns(ctx context.Context, input *ecs.ListClustersInput) ([]*string, error)

	// GetECSClusters returns the ecs clusters on the given input
	// Returned values are commented in the interface doc comment block.
	GetECSClusters(ctx context.Context, input *ecs.DescribeClustersInput) ([]*ecs.Cluster, error)

	// GetECSServicesArns returns the ecs services arns on the given input
	// Returned values are commented in the interface doc comment block.
	GetECSServicesArns(ctx context.Context, input *ecs.ListServicesInput) ([]*string, error)

	// GetECSServices returns the ecs services on the given input
	// Returned values are commented in the interface doc comment block.
	GetECSServices(ctx context.Context, input *ecs.DescribeServicesInput) ([]*ecs.Service, error)

	// GetECSTaskDefinitionsArns returns the ecs task definitions arns on the given input
	// Returned values are commented in the interface doc comment block.
	GetECSTaskDefinitionsArns(ctx context.Context, input *ecs.ListTaskDefinitionsInput) ([]*string, error)

	// GetEFSFileSystems returns the EFS File Systems on the given input
	// Returned values are commented in the interface doc comment block.
	GetEFSFileSystems(ctx context.Context, input *efs.DescribeFileSystemsInput) ([]*efs.FileSystemDescription, error)

	// GetEKSCluster returns the EKS Cluster on the given input
	// Returned values are commented in the interface doc comment block.
	GetEKSCluster(ctx context.Context, input *eks.DescribeClusterInput) (*eks.Cluster, error)

	// GetEKSClusters returns the EKS Clusters on the given input
	// Returned values are commented in the interface doc comment block.
	GetEKSClusters(ctx context.Context, input *eks.ListClustersInput) ([]*string, error)

	// GetElastiCacheClusters returns all Elasticache clusters based on the input given.
	// Returned values are commented in the interface doc comment block.
	GetElastiCacheClusters(ctx context.Context, input *elasticache.DescribeCacheClustersInput) ([]*elasticache.CacheCluster, error)

	// GetElastiCacheReplicationGroups returns the EKS Replication groups on the given input
	// Returned values are commented in the interface doc comment block.
	GetElastiCacheReplicationGroups(ctx context.Context, input *elasticache.DescribeReplicationGroupsInput) ([]*elasticache.ReplicationGroup, error)

	// GetElastiCacheTags returns a list of tags of Elasticache resources based on its ARN.
	// Returned values are commented in the interface doc comment block.
	GetElastiCacheTags(ctx context.Context, input *elasticache.ListTagsForResourceInput) ([]*elasticache.Tag, error)

	// GetElasticBeanstalkApplications returns the ElasticBeanstalk Applications on the given input
	// Returned values are commented in the interface doc comment block.
	GetElasticBeanstalkApplications(ctx context.Context, input *elasticbeanstalk.DescribeApplicationsInput) ([]*elasticbeanstalk.ApplicationDescription, error)

	// GetElasticsearchDomainNames returns a list of domainNames of Elasticsearch resources.
	// Returned values are commented in the interface doc comment block.
	GetElasticsearchDomainNames(ctx context.Context, input *elasticsearchservice.ListDomainNamesInput) ([]*elasticsearchservice.DomainInfo, error)

	// GetElasticsearchDomains returns a list of domains of Elasticsearch resources.
	// Returned values are commented in the interface doc comment block.
	GetElasticsearchDomains(ctx context.Context, input *elasticsearchservice.DescribeElasticsearchDomainsInput) ([]*elasticsearchservice.ElasticsearchDomainStatus, error)

	// GetLoadBalancerAttributes returns a list of Attributes based on the input from the different regions.
	// Returned values are commented in the interface doc comment block.
	GetLoadBalancerAttributes(ctx context.Context, input *elb.DescribeLoadBalancerAttributesInput) ([]*elb.AdditionalAttribute, error)

	// GetLoadBalancers returns a list of ELB (v1) based on the input from the different regions.
	// Returned values are commented in the interface doc comment block.
	GetLoadBalancers(ctx context.Context, input *elb.DescribeLoadBalancersInput) ([]*elb.LoadBalancerDescription, error)

	// GetLoadBalancerPolicies returns a list of Policies based on the input from the different regions.
	// Returned values are commented in the interface doc comment block.
	GetLoadBalancerPolicies(ctx context.Context, input *elb.DescribeLoadBalancerPoliciesInput) ([]*elb.PolicyDescription, error)

	// GetLoadBalancersTags returns a list of Tags based on the input from the different regions.
	// Returned values are commented in the interface doc comment block.
	GetLoadBalancersTags(ctx context.Context, input *elb.DescribeTagsInput) ([]*elb.TagDescription, error)

	// GetListenerCertificates returns a list of ListenerCertificates based on the input from the different regions.
	// Returned values are commented in the interface doc comment block.
	GetListenerCertificates(ctx context.Context, input *elbv2.DescribeListenerCertificatesInput) ([]*elbv2.Certificate, error)

	// GetLoadBalancersV2Listeners returns a list of Listeners based on the input from the different regions.
	// Returned values are commented in the interface doc comment block.
	GetLoadBalancersV2Listeners(ctx context.Context, input *elbv2.DescribeListenersInput) ([]*elbv2.Listener, error)

	// GetLoadBalancersV2 returns a list of ELB (v2) - also known as ALB - based on the input from the different regions.
	// Returned values are commented in the interface doc comment block.
	GetLoadBalancersV2(ctx context.Context, input *elbv2.DescribeLoadBalancersInput) ([]*elbv2.LoadBalancer, error)

	// GetLoadBalancersV2Tags returns a list of Tags based on the input from the different regions.
	// Returned values are commented in the interface doc comment block.
	GetLoadBalancersV2Tags(ctx context.Context, input *elbv2.DescribeTagsInput) ([]*elbv2.TagDescription, error)

	// GetLoadBalancersV2TargetGroupAttributes returns a list of TargetGroupAttributes based on the input from the different regions.
	// Returned values are commented in the interface doc comment block.
	GetLoadBalancersV2TargetGroupAttributes(ctx context.Context, input *elbv2.DescribeTargetGroupAttributesInput) ([]*elbv2.TargetGroupAttribute, error)

	// GetLoadBalancersV2TargetGroups returns a list of TargetGroups based on the input from the different regions.
	// Returned values are commented in the interface doc comment block.
	GetLoadBalancersV2TargetGroups(ctx context.Context, input *elbv2.DescribeTargetGroupsInput) ([]*elbv2.TargetGroup, error)

	// GetLoadBalancersV2TargetHealth returns a list of TargetHealth based on the input from the different regions.
	// Returned values are commented in the interface doc comment block.
	GetLoadBalancersV2TargetHealth(ctx context.Context, input *elbv2.DescribeTargetHealthInput) ([]*elbv2.TargetHealthDescription, error)

	// GetLoadBalancersV2Rules returns a list of Rules based on the input from the different regions.
	// Returned values are commented in the interface doc comment block.
	GetLoadBalancersV2Rules(ctx context.Context, input *elbv2.DescribeRulesInput) ([]*elbv2.Rule, error)

	// GetEMRClusters returns the EMR Clusters on the given input
	// Returned values are commented in the interface doc comment block.
	GetEMRClusters(ctx context.Context, input *emr.ListClustersInput) ([]*emr.ClusterSummary, error)

	// GetFSXFileSystems returns the fsx filesystems arns on the given input
	// Returned values are commented in the interface doc comment block.
	GetFSXFileSystems(ctx context.Context, input *fsx.DescribeFileSystemsInput) ([]*fsx.FileSystem, error)

	// GetGlueDatabases returns the Glue databases on the given input
	// Returned values are commented in the interface doc comment block.
	GetGlueDatabases(ctx context.Context, input *glue.GetDatabasesInput) ([]*glue.Database, error)

	// GetGlueTables returns the Glue Tables on the given input
	// Returned values are commented in the interface doc comment block.
	GetGlueTables(ctx context.Context, input *glue.GetTablesInput) ([]*glue.TableData, error)

	// GetAccessKeys returns all the IAM AccessKeys on the given input
	// Returned values are commented in the interface doc comment block.
	GetAccessKeys(ctx context.Context, input *iam.ListAccessKeysInput) ([]*iam.AccessKeyMetadata, error)

	// GetAccountAliases returns all the IAM AccountAliases on the given input
	// Returned values are commented in the interface doc comment block.
	GetAccountAliases(ctx context.Context, input *iam.ListAccountAliasesInput) ([]*string, error)

	// GetAccountPasswordPolicy returns the IAM AccountPasswordPolicy on the given input
	// Returned values are commented in the interface doc comment block.
	GetAccountPasswordPolicy(ctx context.Context, input *iam.GetAccountPasswordPolicyInput) (*iam.PasswordPolicy, error)

	// GetAttachedGroupPolicies returns the IAM AttachedGroupPolicies on the given input
	// Returned values are commented in the interface doc comment block.
	GetAttachedGroupPolicies(ctx context.Context, input *iam.ListAttachedGroupPoliciesInput) ([]*iam.AttachedPolicy, error)

	// GetAttachedRolePolicies returns the IAM AttachedRolePolicies on the given input
	// Returned values are commented in the interface doc comment block.
	GetAttachedRolePolicies(ctx context.Context, input *iam.ListAttachedRolePoliciesInput) ([]*iam.AttachedPolicy, error)

	// GetAttachedUserPolicies returns the IAM AttachedUserPolicies on the given input
	// Returned values are commented in the interface doc comment block.
	GetAttachedUserPolicies(ctx context.Context, input *iam.ListAttachedUserPoliciesInput) ([]*iam.AttachedPolicy, error)

	// GetGroupUsers returns a list of IAM users that are in the specified IAM group
	// Returned values are commented in the interface doc comment block.
	GetGroupUsers(ctx context.Context, input *iam.GetGroupInput) ([]*iam.User, error)

	// GetGroupPolicies returns the IAM GroupPolicies on the given input
	// Returned values are commented in the interface doc comment block.
	GetGroupPolicies(ctx context.Context, input *iam.ListGroupPoliciesInput) ([]*string, error)

	// GetGroups returns the IAM Groups on the given input
	// Returned values are commented in the interface doc comment block.
	GetGroups(ctx context.Context, input *iam.ListGroupsInput) ([]*iam.Group, error)

	// GetGroupsForUser returns the IAM GroupsForUser on the given input
	// Returned values are commented in the interface doc comment block.
	GetGroupsForUser(ctx context.Context, input *iam.ListGroupsForUserInput) ([]*iam.Group, error)

	// GetIstanceProfiles returns the IAM InstanceProfiles on the given input
	// Returned values are commented in the interface doc comment block.
	GetInstanceProfiles(ctx context.Context, input *iam.ListInstanceProfilesInput) ([]*iam.InstanceProfile, error)

	// GetOpenIDConnectProviders returns the IAM OpenIDConnectProviders on the given input
	// Returned values are commented in the interface doc comment block.
	GetOpenIDConnectProviders(ctx context.Context, input *iam.ListOpenIDConnectProvidersInput) ([]*iam.OpenIDConnectProviderListEntry, error)

	// GetPolicies returns the IAM Policies on the given input
	// Returned values are commented in the interface doc comment block.
	GetPolicies(ctx context.Context, input *iam.ListPoliciesInput) ([]*iam.Policy, error)

	// GetRolePolicies returns the IAM RolePolicies on the given input
	// Returned values are commented in the interface doc comment block.
	GetRolePolicies(ctx context.Context, input *iam.ListRolePoliciesInput) ([]*string, error)

	// GetRoles returns the IAM Roles on the given input
	// Returned values are commented in the interface doc comment block.
	GetRoles(ctx context.Context, input *iam.ListRolesInput) ([]*iam.Role, error)

	// GetSAMLProviders returns the IAM SAMLProviders on the given input
	// Returned values are commented in the interface doc comment block.
	GetSAMLProviders(ctx context.Context, input *iam.ListSAMLProvidersInput) ([]*iam.SAMLProviderListEntry, error)

	// GetServerCertificates returns the IAM ServerCertificates on the given input
	// Returned values are commented in the interface doc comment block.
	GetServerCertificates(ctx context.Context, input *iam.ListServerCertificatesInput) ([]*iam.ServerCertificateMetadata, error)

	// GetSSHPublicKeys returns the IAM SSHPublicKeys on the given input
	// Returned values are commented in the interface doc comment block.
	GetSSHPublicKeys(ctx context.Context, input *iam.ListSSHPublicKeysInput) ([]*iam.SSHPublicKeyMetadata, error)

	// GetUserPolicies returns the IAM UserPolicies on the given input
	// Returned values are commented in the interface doc comment block.
	GetUserPolicies(ctx context.Context, input *iam.ListUserPoliciesInput) ([]*string, error)

	// GetUsers returns the IAM Users on the given input
	// Returned values are commented in the interface doc comment block.
	GetUsers(ctx context.Context, input *iam.ListUsersInput) ([]*iam.User, error)

	// GetKinesisStreams returns the Kinesis Streams on the given input
	// Returned values are commented in the interface doc comment block.
	GetKinesisStreams(ctx context.Context, input *kinesis.ListStreamsInput) ([]*string, error)

	// GetLambdaFunctions returns the lambda Functions on the given input
	// Returned values are commented in the interface doc comment block.
	GetLambdaFunctions(ctx context.Context, input *lambda.ListFunctionsInput) ([]*lambda.FunctionConfiguration, error)

	// GetLightsailInstances returns the Lightsail Instances on the given input
	// Returned values are commented in the interface doc comment block.
	GetLightsailInstances(ctx context.Context, input *lightsail.GetInstancesInput) ([]*lightsail.Instance, error)

	// GetMediastoreContainers returns the Mediastore Containers on the given input
	// Returned values are commented in the interface doc comment block.
	GetMediastoreContainers(ctx context.Context, input *mediastore.ListContainersInput) ([]*mediastore.Container, error)

	// GetMQBrokers returns the MQ Brokers on the given input
	// Returned values are commented in the interface doc comment block.
	GetMQBrokers(ctx context.Context, input *mq.ListBrokersInput) ([]*mq.BrokerSummary, error)

	// GetNeptuneDBClusters returns the Neptune DBClusters on the given input
	// Returned values are commented in the interface doc comment block.
	GetNeptuneDBClusters(ctx context.Context, input *neptune.DescribeDBClustersInput) ([]*neptune.DBCluster, error)

	// GetRDSDBClusters returns the RDS DB Clusters on the given input
	// Returned values are commented in the interface doc comment block.
	GetRDSDBClusters(ctx context.Context, input *rds.DescribeDBClustersInput) ([]*rds.DBCluster, error)

	// GetDBInstances returns all DB instances based on the input given.
	// Returned values are commented in the interface doc comment block.
	GetDBInstances(ctx context.Context, input *rds.DescribeDBInstancesInput) ([]*rds.DBInstance, error)

	// GetDBParameterGroups returns all DB parameterGroups based on the input given.
	// Returned values are commented in the interface doc comment block.
	GetDBParameterGroups(ctx context.Context, input *rds.DescribeDBParameterGroupsInput) ([]*rds.DBParameterGroup, error)

	// GetDBSubnetGroups returns all DB DBSubnetGroups based on the input given.
	// Returned values are commented in the interface doc comment block.
	GetDBSubnetGroups(ctx context.Context, input *rds.DescribeDBSubnetGroupsInput) ([]*rds.DBSubnetGroup, error)

	// GetRDSGlobalClusters returns the RDS Global Clusters on the given input
	// Returned values are commented in the interface doc comment block.
	GetRDSGlobalClusters(ctx context.Context, input *rds.DescribeGlobalClustersInput) ([]*rds.GlobalCluster, error)

	// GetDBInstancesTags returns a list of tags from an ARN, extra filters for tags can also be provided.
	// Returned values are commented in the interface doc comment block.
	GetDBInstancesTags(ctx context.Context, input *rds.ListTagsForResourceInput) ([]*rds.Tag, error)

	// GetRedshiftClusters returns the Redshift Clusters on the given input
	// Returned values are commented in the interface doc comment block.
	GetRedshiftClusters(ctx context.Context, input *redshift.DescribeClustersInput) ([]*redshift.Cluster, error)

	// GetQueryLoggingConfigs returns the Route53 QueryLoggingConfigs on the given input
	// Returned values are commented in the interface doc comment block.
	GetQueryLoggingConfigs(ctx context.Context, input *route53.ListQueryLoggingConfigsInput) ([]*route53.QueryLoggingConfig, error)

	// GetHealthChecks returns the Route53 HealthChecks on the given input
	// Returned values are commented in the interface doc comment block.
	GetHealthChecks(ctx context.Context, input *route53.ListHealthChecksInput) ([]*route53.HealthCheck, error)

	// GetHostedZones returns the Route53 HostedZones on the given input
	// Returned values are commented in the interface doc comment block.
	GetHostedZones(ctx context.Context, input *route53.ListHostedZonesInput) ([]*route53.HostedZone, error)

	// GetResourceRecordSets returns the Route53 ResourceRecordSets on the given input
	// Returned values are commented in the interface doc comment block.
	GetResourceRecordSets(ctx context.Context, input *route53.ListResourceRecordSetsInput) ([]*route53.ResourceRecordSet, error)

	// GetReusableDelegationSets returns the Route53 ReusableDelegationSets on the given input
	// Returned values are commented in the interface doc comment block.
	GetReusableDelegationSets(ctx context.Context, input *route53.ListReusableDelegationSetsInput) ([]*route53.DelegationSet, error)

	// GetVPCAssociationAuthorizations returns the Route53 VPCAssociationAuthorizations on the given input
	// Returned values are commented in the interface doc comment block.
	GetVPCAssociationAuthorizations(ctx context.Context, input *route53.ListVPCAssociationAuthorizationsInput) ([]*route53.VPC, error)

	// GetResolverEndpoints returns the Route53Resolver ResolverEndpoints on the given input
	// Returned values are commented in the interface doc comment block.
	GetResolverEndpoints(ctx context.Context, input *route53resolver.ListResolverEndpointsInput) ([]*route53resolver.ResolverEndpoint, error)

	// GetResolverRuleAssociations returns the Route53Resolver ResolverRuleAssociations on the given input
	// Returned values are commented in the interface doc comment block.
	GetResolverRuleAssociations(ctx context.Context, input *route53resolver.ListResolverRuleAssociationsInput) ([]*route53resolver.ResolverRuleAssociation, error)

	// GetResolverRules returns the Route53Resolver ResolverRules on the given input
	// Returned values are commented in the interface doc comment block.
	GetResolverRules(ctx context.Context, input *route53resolver.ListResolverRulesInput) ([]*route53resolver.ResolverRule, error)

	// ListBuckets returns all S3 buckets based on the input given and specifically
	// filtering by Location as ListBuckets does not do it by itself
	// Returned values are commented in the interface doc comment block.
	ListBuckets(ctx context.Context, input *s3.ListBucketsInput) ([]*s3.Bucket, error)

	// GetBucketTags returns tags associated with S3 buckets based on the input given.
	// Returned values are commented in the interface doc comment block.
	GetBucketTags(ctx context.Context, input *s3.GetBucketTaggingInput) ([]*s3.Tag, error)

	// ListObjects returns a list of all S3 objects in a bucket based on the input given.
	// Returned values are commented in the interface doc comment block.
	ListObjects(ctx context.Context, input *s3.ListObjectsInput) ([]*s3.Object, error)

	// GetObjectsTags returns tags associated with S3 objects based on the input given.
	// Returned values are commented in the interface doc comment block.
	GetObjectsTags(ctx context.Context, input *s3.GetObjectTaggingInput) ([]*s3.Tag, error)

	// GetActiveReceiptRuleSet returns the SES ActiveReceiptRuleSet on the given input
	// Returned values are commented in the interface doc comment block.
	GetActiveReceiptRuleSet(ctx context.Context, input *ses.DescribeActiveReceiptRuleSetInput) (*string, error)

	// GetActiveReceiptRulesSet returns the SES ActiveReceiptRuleSet on the given input
	// Returned values are commented in the interface doc comment block.
	GetActiveReceiptRulesSet(ctx context.Context, input *ses.DescribeActiveReceiptRuleSetInput) ([]*ses.ReceiptRule, error)

	// GetConfigurationSets returns the SES ConfigurationSets on the given input
	// Returned values are commented in the interface doc comment block.
	GetConfigurationSets(ctx context.Context, input *ses.ListConfigurationSetsInput) ([]*ses.ConfigurationSet, error)

	// GetIdentities returns the SES Identities on the given input
	// Returned values are commented in the interface doc comment block.
	GetIdentities(ctx context.Context, input *ses.ListIdentitiesInput) ([]*string, error)

	// GetIdentityNotificationAttributes returns the SES IdentityNotificationAttributes on the given input
	// Returned values are commented in the interface doc comment block.
	GetIdentityNotificationAttributes(ctx context.Context, input *ses.GetIdentityNotificationAttributesInput) (map[string]*ses.IdentityNotificationAttributes, error)

	// GetReceiptFilters returns the SES ReceiptFilters on the given input
	// Returned values are commented in the interface doc comment block.
	GetReceiptFilters(ctx context.Context, input *ses.ListReceiptFiltersInput) ([]*ses.ReceiptFilter, error)

	// GetTemplates returns the SES Templates on the given input
	// Returned values are commented in the interface doc comment block.
	GetTemplates(ctx context.Context, input *ses.ListTemplatesInput) ([]*ses.TemplateMetadata, error)

	// GetSQSQueues returns the SQS Queues on the given input
	// Returned values are commented in the interface doc comment block.
	GetSQSQueues(ctx context.Context, input *sqs.ListQueuesInput) ([]*string, error)

	// GetStorageGatewayGateways returns the StorageGateway Gateways on the given input
	// Returned values are commented in the interface doc comment block.
	GetStorageGatewayGateways(ctx context.Context, input *storagegateway.ListGatewaysInput) ([]*storagegateway.GatewayInfo, error)
}

Reader is the interface defining all methods that need to be implemented

The next behavior commented in the below paragraph, applies to every method which clearly match what's explained, for the sake of not repeating the same, over and over. The most of the methods defined by this interface, return their results in a map. Those maps, have as keys, the AWS region which have been requested and the values are the items returned by AWS for such region. Because the methods may make calls to different regions, in case that there is an error on a region, the returned map won't have any entry for such region and such errors will be reported by the returned error, nonetheless the items, got from the successful requests to other regions, will be returned, with the meaning that the methods will return partial results, in case of errors. For avoiding by the callers the problem of if the returned map may be nil, the function will always return a map instance, which will be of length 0 in case that there is not any successful request.

func New

func New(ctx context.Context, accessKey, secretKey, region, sessionToken string, config *aws.Config) (Reader, error)

New returns an object which also contains the accountID and the region to use.

The accountID is helpful to return only the AMI or snapshots that belong to the account.

While the region has to be a valid AWS region

An error is returned if any of the needed AWS request for creating the reader returns an AWS error, in such case it will have any of the common error codes (see below) or EmptyStaticCreds code or a go standard error in case that no regions are matched with the ones available, at the time, in AWS. See:

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL