Class Connection


  • public class Connection
    extends com.pulumi.resources.CustomResource
    Provides a Connection of Direct Connect. ## Example Usage ### Create a connection
     
     package generated_program;
     
     import com.pulumi.Context;
     import com.pulumi.Pulumi;
     import com.pulumi.core.Output;
     import com.pulumi.aws.directconnect.Connection;
     import com.pulumi.aws.directconnect.ConnectionArgs;
     import java.util.ArrayList;
     import java.util.Arrays;
     import java.util.Map;
     import java.io.File;
     import java.nio.file.Files;
     import java.nio.file.Paths;
     
     public class App {
         public static void main(String[] args) {
             Pulumi.run(App::stack);
         }
     
         public static void stack(Context ctx) {
             var hoge = new Connection("hoge", ConnectionArgs.builder()
                 .name("tf-dx-connection")
                 .bandwidth("1Gbps")
                 .location("EqDC2")
                 .build());
     
         }
     }
     
     
    ### Request a MACsec-capable connection
     
     package generated_program;
     
     import com.pulumi.Context;
     import com.pulumi.Pulumi;
     import com.pulumi.core.Output;
     import com.pulumi.aws.directconnect.Connection;
     import com.pulumi.aws.directconnect.ConnectionArgs;
     import java.util.ArrayList;
     import java.util.Arrays;
     import java.util.Map;
     import java.io.File;
     import java.nio.file.Files;
     import java.nio.file.Paths;
     
     public class App {
         public static void main(String[] args) {
             Pulumi.run(App::stack);
         }
     
         public static void stack(Context ctx) {
             var example = new Connection("example", ConnectionArgs.builder()
                 .name("tf-dx-connection")
                 .bandwidth("10Gbps")
                 .location("EqDA2")
                 .requestMacsec(true)
                 .build());
     
         }
     }
     
     
    ### Configure encryption mode for MACsec-capable connections > **NOTE:** You can only specify the `encryptionMode` argument once the connection is in an `Available` state.
     
     package generated_program;
     
     import com.pulumi.Context;
     import com.pulumi.Pulumi;
     import com.pulumi.core.Output;
     import com.pulumi.aws.directconnect.Connection;
     import com.pulumi.aws.directconnect.ConnectionArgs;
     import java.util.ArrayList;
     import java.util.Arrays;
     import java.util.Map;
     import java.io.File;
     import java.nio.file.Files;
     import java.nio.file.Paths;
     
     public class App {
         public static void main(String[] args) {
             Pulumi.run(App::stack);
         }
     
         public static void stack(Context ctx) {
             var example = new Connection("example", ConnectionArgs.builder()
                 .name("tf-dx-connection")
                 .bandwidth("10Gbps")
                 .location("EqDC2")
                 .requestMacsec(true)
                 .encryptionMode("must_encrypt")
                 .build());
     
         }
     }
     
     
    ## Import Using `pulumi import`, import Direct Connect connections using the connection `id`. For example: ```sh $ pulumi import aws:directconnect/connection:Connection test_connection dxcon-ffre0ec3 ```
    • Nested Class Summary

      • Nested classes/interfaces inherited from class com.pulumi.resources.CustomResource

        com.pulumi.resources.CustomResource.CustomResourceInternal
      • Nested classes/interfaces inherited from class com.pulumi.resources.Resource

        com.pulumi.resources.Resource.LazyField<T extends java.lang.Object>, com.pulumi.resources.Resource.LazyFields, com.pulumi.resources.Resource.ResourceInternal
    • Field Summary

      • Fields inherited from class com.pulumi.resources.Resource

        childResources, remote
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      com.pulumi.core.Output<java.lang.String> arn()  
      com.pulumi.core.Output<java.lang.String> awsDevice()  
      com.pulumi.core.Output<java.lang.String> bandwidth()  
      com.pulumi.core.Output<java.lang.String> encryptionMode()  
      static Connection get​(java.lang.String name, com.pulumi.core.Output<java.lang.String> id, ConnectionState state, com.pulumi.resources.CustomResourceOptions options)
      Get an existing Host resource's state with the given name, ID, and optional extra properties used to qualify the lookup.
      com.pulumi.core.Output<java.lang.String> hasLogicalRedundancy()  
      com.pulumi.core.Output<java.lang.Boolean> jumboFrameCapable()  
      com.pulumi.core.Output<java.lang.String> location()  
      com.pulumi.core.Output<java.lang.Boolean> macsecCapable()  
      com.pulumi.core.Output<java.lang.String> name()  
      com.pulumi.core.Output<java.lang.String> ownerAccountId()  
      com.pulumi.core.Output<java.lang.String> partnerName()  
      com.pulumi.core.Output<java.lang.String> portEncryptionStatus()  
      com.pulumi.core.Output<java.lang.Integer> prefixPoolSizeIpv4()  
      com.pulumi.core.Output<java.lang.Integer> prefixPoolSizeIpv6()  
      com.pulumi.core.Output<java.lang.Integer> prefixPoolUnallocatedCountIpv4()  
      com.pulumi.core.Output<java.lang.Integer> prefixPoolUnallocatedCountIpv6()  
      com.pulumi.core.Output<java.lang.String> providerName()  
      com.pulumi.core.Output<java.util.List<ConnectionRateLimiterStatus>> rateLimiterStatuses()  
      com.pulumi.core.Output<java.lang.String> region()  
      com.pulumi.core.Output<java.util.Optional<java.lang.Boolean>> requestMacsec()  
      com.pulumi.core.Output<java.util.Optional<java.lang.Boolean>> skipDestroy()  
      com.pulumi.core.Output<java.lang.String> state()  
      com.pulumi.core.Output<java.util.Optional<java.util.Map<java.lang.String,​java.lang.String>>> tags()  
      com.pulumi.core.Output<java.util.Map<java.lang.String,​java.lang.String>> tagsAll()  
      com.pulumi.core.Output<java.lang.Integer> vlanId()  
      • Methods inherited from class com.pulumi.resources.CustomResource

        getId, id, idFuture
      • Methods inherited from class com.pulumi.resources.Resource

        getChildResources, getResourceName, getResourceType, getUrn, pulumiChildResources, pulumiResourceName, pulumiResourceType, urn
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • Connection

        public Connection​(java.lang.String name)
        Parameters:
        name - The _unique_ name of the resulting resource.
      • Connection

        public Connection​(java.lang.String name,
                          ConnectionArgs args)
        Parameters:
        name - The _unique_ name of the resulting resource.
        args - The arguments to use to populate this resource's properties.
      • Connection

        public Connection​(java.lang.String name,
                          ConnectionArgs args,
                          @Nullable
                          com.pulumi.resources.CustomResourceOptions options)
        Parameters:
        name - The _unique_ name of the resulting resource.
        args - The arguments to use to populate this resource's properties.
        options - A bag of options that control this resource's behavior.
    • Method Detail

      • arn

        public com.pulumi.core.Output<java.lang.String> arn()
        Returns:
        The ARN of the connection.
      • awsDevice

        public com.pulumi.core.Output<java.lang.String> awsDevice()
        Returns:
        The Direct Connect endpoint on which the physical connection terminates.
      • bandwidth

        public com.pulumi.core.Output<java.lang.String> bandwidth()
        Returns:
        The bandwidth of the connection. Valid values for dedicated connections: 1Gbps, 10Gbps, 100Gbps, and 400Gbps. Valid values for hosted connections: 50Mbps, 100Mbps, 200Mbps, 300Mbps, 400Mbps, 500Mbps, 1Gbps, 2Gbps, 5Gbps, 10Gbps, and 25Gbps. Case sensitive. Refer to the AWS Direct Connection supported bandwidths for [Dedicated Connections](https://docs.aws.amazon.com/directconnect/latest/UserGuide/dedicated_connection.html) and [Hosted Connections](https://docs.aws.amazon.com/directconnect/latest/UserGuide/hosted_connection.html).
      • encryptionMode

        public com.pulumi.core.Output<java.lang.String> encryptionMode()
        Returns:
        The connection MAC Security (MACsec) encryption mode. MAC Security (MACsec) is only available on dedicated connections. Valid values are `noEncrypt`, `shouldEncrypt`, and `mustEncrypt`.
      • hasLogicalRedundancy

        public com.pulumi.core.Output<java.lang.String> hasLogicalRedundancy()
        Returns:
        Indicates whether the connection supports a secondary BGP peer in the same address family (IPv4/IPv6).
      • jumboFrameCapable

        public com.pulumi.core.Output<java.lang.Boolean> jumboFrameCapable()
        Returns:
        Boolean value representing if jumbo frames have been enabled for this connection.
      • location

        public com.pulumi.core.Output<java.lang.String> location()
        Returns:
        The AWS Direct Connect location where the connection is located. See [DescribeLocations](https://docs.aws.amazon.com/directconnect/latest/APIReference/API_DescribeLocations.html) for the list of AWS Direct Connect locations. Use `locationCode`.
      • macsecCapable

        public com.pulumi.core.Output<java.lang.Boolean> macsecCapable()
        Returns:
        Boolean value indicating whether the connection supports MAC Security (MACsec).
      • name

        public com.pulumi.core.Output<java.lang.String> name()
        Returns:
        The name of the connection.
      • ownerAccountId

        public com.pulumi.core.Output<java.lang.String> ownerAccountId()
        Returns:
        The ID of the AWS account that owns the connection.
      • partnerName

        public com.pulumi.core.Output<java.lang.String> partnerName()
        Returns:
        The name of the AWS Direct Connect service provider associated with the connection.
      • portEncryptionStatus

        public com.pulumi.core.Output<java.lang.String> portEncryptionStatus()
        Returns:
        The MAC Security (MACsec) port link status of the connection.
      • prefixPoolSizeIpv4

        public com.pulumi.core.Output<java.lang.Integer> prefixPoolSizeIpv4()
        Returns:
        The total number of inbound IPv4 route prefixes that can be allocated across the virtual interfaces on the connection.
      • prefixPoolSizeIpv6

        public com.pulumi.core.Output<java.lang.Integer> prefixPoolSizeIpv6()
        Returns:
        The total number of inbound IPv6 route prefixes that can be allocated across the virtual interfaces on the connection.
      • prefixPoolUnallocatedCountIpv4

        public com.pulumi.core.Output<java.lang.Integer> prefixPoolUnallocatedCountIpv4()
        Returns:
        The number of inbound IPv4 route prefixes in the connection prefix pool not yet allocated to a virtual interface.
      • prefixPoolUnallocatedCountIpv6

        public com.pulumi.core.Output<java.lang.Integer> prefixPoolUnallocatedCountIpv6()
        Returns:
        The number of inbound IPv6 route prefixes in the connection prefix pool not yet allocated to a virtual interface.
      • providerName

        public com.pulumi.core.Output<java.lang.String> providerName()
        Returns:
        The name of the service provider associated with the connection.
      • rateLimiterStatuses

        public com.pulumi.core.Output<java.util.List<ConnectionRateLimiterStatus>> rateLimiterStatuses()
        Returns:
        Rate limiter status for the connection. See `rateLimiterStatus` Block below.
      • region

        public com.pulumi.core.Output<java.lang.String> region()
        Returns:
        Region where this resource will be [managed](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). Defaults to the Region set in the provider configuration.
      • requestMacsec

        public com.pulumi.core.Output<java.util.Optional<java.lang.Boolean>> requestMacsec()
        Returns:
        Boolean value indicating whether you want the connection to support MAC Security (MACsec). MAC Security (MACsec) is only available on dedicated connections. See [MACsec prerequisites](https://docs.aws.amazon.com/directconnect/latest/UserGuide/direct-connect-mac-sec-getting-started.html#mac-sec-prerequisites) for more information about MAC Security (MACsec) prerequisites. Default value: `false`. > **NOTE:** Changing the value of `requestMacsec` will cause the resource to be destroyed and re-created.
      • skipDestroy

        public com.pulumi.core.Output<java.util.Optional<java.lang.Boolean>> skipDestroy()
        Returns:
        Set to true if you do not wish the connection to be deleted at destroy time, and instead just removed from the state.
      • state

        public com.pulumi.core.Output<java.lang.String> state()
        Returns:
        State of the connection. See [CreateConnection](https://docs.aws.amazon.com/directconnect/latest/APIReference/API_CreateConnection.html#API_CreateConnection_ResponseSyntax) for list of possible state values.
      • tags

        public com.pulumi.core.Output<java.util.Optional<java.util.Map<java.lang.String,​java.lang.String>>> tags()
        Returns:
        A map of tags to assign to the resource. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
      • tagsAll

        public com.pulumi.core.Output<java.util.Map<java.lang.String,​java.lang.String>> tagsAll()
        Returns:
        A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
      • vlanId

        public com.pulumi.core.Output<java.lang.Integer> vlanId()
        Returns:
        The VLAN ID.
      • get

        public static Connection get​(java.lang.String name,
                                     com.pulumi.core.Output<java.lang.String> id,
                                     @Nullable
                                     ConnectionState state,
                                     @Nullable
                                     com.pulumi.resources.CustomResourceOptions options)
        Get an existing Host resource's state with the given name, ID, and optional extra properties used to qualify the lookup.
        Parameters:
        name - The _unique_ name of the resulting resource.
        id - The _unique_ provider ID of the resource to lookup.
        state -
        options - Optional settings to control the behavior of the CustomResource.