Implements: ConfigParams
Description
The AwsConnectionParams class contains connection parameters used to authenticate against Amazon Web Services (AWS) and connect to specific AWS resources.
Important points
- This class is able to compose and parse AWS resource ARNs.
Configuration parameters
- access_id: application access id
- client_id: alternative to access_id
- access_key: application secret key
- client_key: alternative to access_key
- secret_key: alternative to access_key
In addition to standard parameters, CredentialParams may contain any number of custom parameters
Constructors
NewAwsConnectionParams
Creates an new instance of the connection parameters.
NewAwsConnectionParams(values map[string]string) *AwsConnectionParams
- values: map[string]string - (optional) object to be converted into key-value pairs to initialize this connection.
NewAwsConnectionParams
Creates a new instance of the connection parameters.
NewEmptyAwsConnectionParams() *AwsConnectionParams
NewAwsConnectionParamsFromConfig
Retrieves AwsConnectionParams from configuration parameters. The values are retrieved from “connection” and “credential” sections.
See NewAwsConnectionParamsMergeConfigs
NewAwsConnectionParamsFromConfig(config *ConfigParams) *AwsConnectionParams
- config: *ConfigParams - configuration parameters
- returns: *AwsConnectionParams - generated AwsConnectionParams object.
NewAwsConnectionParamsFromString
Creates a new AwsConnectionParams object filled with key-value pairs serialized as a string.
Example: “Key1=123;Key2=ABC;Key3=2016-09-16T00:00:00.00Z”
NewAwsConnectionParamsFromString(line string) *AwsConnectionParams
- line: string - string with serialized key-value pairs as “key1=value1;key2=value2;…”.
- returns: *AwsConnectionParams - new AwsConnectionParams object.
NewAwsConnectionParamsMergeConfigs
Retrieves AwsConnectionParams from multiple configuration parameters. The values are retrieved from “connection” and “credential” sections.
NewAwsConnectionParamsMergeConfigs(configs []*ConfigParams) *AwsConnectionParams
- configs: []*ConfigParams - list with configuration parameters.
- returns: *AwsConnectionParams - generated AwsConnectionParams object.
Methods
GetAccessId
Gets the AWS access id.
(c *AwsConnectionParams) GetAccessId() string
- returns: string - AWS access id.
GetAccessKey
Gets the AWS client key.
(c *AwsConnectionParams) GetAccessKey() string
- returns: string - AWS client key.
GetAccount
Gets the AWS account id.
(c *AwsConnectionParams) GetAccount() string
- returns: string - AWS account id.
GetArn
Gets the AWS resource ARN. If the ARN is not defined, it automatically generates it from other properties.
(c *AwsConnectionParams) GetArn() string
- returns: string - AWS resource ARN.
GetPartition
Gets the AWS partition name.
(c *AwsConnectionParams) GetPartition() string
- returns: string - AWS partition name.
GetRegion
Gets the AWS region.
(c *AwsConnectionParams) GetRegion() string
- returns: string - AWS region.
GetResource
Gets the AWS resource id.
(c *AwsConnectionParams) GetResource() string
- returns: string - AWS resource id.
GetResourceType
Gets the AWS resource type.
(c *AwsConnectionParams) GetResourceType() string
- returns: string - AWS resource type.
GetService
Gets the AWS service name.
(c *AwsConnectionParams) GetService() string
- returns: string - AWS service name.
SetAccessId
Sets the AWS access id.
(c *AwsConnectionParams) SetAccessId(value string)
- value: string - AWS access id.
SetAccessKey
Sets the AWS client key.
(c *AwsConnectionParams) SetAccessKey(value string)
- value: string - new AWS client key.
SetAccount
Sets the AWS account id.
(c *AwsConnectionParams) SetAccount(value string)
- value: string - AWS account id.
SetArn
Sets the AWS resource ARN. When it sets the value, it automatically parses the ARN and sets individual parameters.
(c *AwsConnectionParams) SetArn(value string)
- value: string - new AWS resource ARN.
SetPartition
Sets the AWS partition name.
(c *AwsConnectionParams) SetPartition(value string)
- value: string - new AWS partition name.
SetRegion
Sets the AWS region.
(c *AwsConnectionParams) SetRegion(value string)
- value: string - new AWS region.
SetResource
Sets the AWS resource id.
(c *AwsConnectionParams) SetResource(value string)
- value: string - new AWS resource id.
SetResourceType
Sets the AWS resource type.
(c *AwsConnectionParams) SetResourceType(value string)
- value: string - new AWS resource type.
SetService
Sets the AWS service name.
(c *AwsConnectionParams) SetService(value string)
- value: string - new AWS service name.
Validate
Validates this connection parameters
(c *AwsConnectionParams) Validate(context IContext) *ApplicationError
- context: IContext - (optional) a context to trace execution through a call chain.
- returns: *ApplicationError - ConfigError or nil if validation passed successfully.
Examples
connection := NewAwsConnectionParamsFromTuples(
"region", "us-east-1",
"access_id", "XXXXXXXXXXXXXXX",
"secret_key", "XXXXXXXXXXXXXXX",
"service", "s3",
"bucket", "mybucket"
)
region := connection.Region() // Result: "us-east-1"
accessId := connection.AccessId() // Result: "XXXXXXXXXXXXXXX"
secretKey := connection.AccessKey() // Result: "XXXXXXXXXXXXXXX"
pin := connection.GetAsNullableString("bucket") // Result: "mybucket"