/// <summary>
 /// Initializes a new instance of the ExpressRouteCircuitPeering class.
 /// </summary>
 /// <param name="id">Resource ID.</param>
 /// <param name="peeringType">The peering type. Possible values
 /// include: 'AzurePublicPeering', 'AzurePrivatePeering',
 /// 'MicrosoftPeering'</param>
 /// <param name="state">The peering state. Possible values include:
 /// 'Disabled', 'Enabled'</param>
 /// <param name="azureASN">The Azure ASN.</param>
 /// <param name="peerASN">The peer ASN.</param>
 /// <param name="primaryPeerAddressPrefix">The primary address
 /// prefix.</param>
 /// <param name="secondaryPeerAddressPrefix">The secondary address
 /// prefix.</param>
 /// <param name="primaryAzurePort">The primary port.</param>
 /// <param name="secondaryAzurePort">The secondary port.</param>
 /// <param name="sharedKey">The shared key.</param>
 /// <param name="vlanId">The VLAN ID.</param>
 /// <param name="microsoftPeeringConfig">The Microsoft peering
 /// configuration.</param>
 /// <param name="stats">Gets peering stats.</param>
 /// <param name="provisioningState">Gets the provisioning state of the
 /// public IP resource. Possible values are: 'Updating', 'Deleting',
 /// and 'Failed'.</param>
 /// <param name="gatewayManagerEtag">The GatewayManager Etag.</param>
 /// <param name="lastModifiedBy">Gets whether the provider or the
 /// customer last modified the peering.</param>
 /// <param name="routeFilter">The reference of the RouteFilter
 /// resource.</param>
 /// <param name="ipv6PeeringConfig">The IPv6 peering
 /// configuration.</param>
 /// <param name="expressRouteConnection">The ExpressRoute
 /// connection.</param>
 /// <param name="connections">The list of circuit connections
 /// associated with Azure Private Peering for this circuit.</param>
 /// <param name="peeredConnections">The list of peered circuit
 /// connections associated with Azure Private Peering for this
 /// circuit.</param>
 /// <param name="name">Gets name of the resource that is unique within
 /// a resource group. This name can be used to access the
 /// resource.</param>
 /// <param name="etag">A unique read-only string that changes whenever
 /// the resource is updated.</param>
 public ExpressRouteCircuitPeering(string id = default(string), string peeringType = default(string), string state = default(string), int?azureASN = default(int?), long?peerASN = default(long?), string primaryPeerAddressPrefix = default(string), string secondaryPeerAddressPrefix = default(string), string primaryAzurePort = default(string), string secondaryAzurePort = default(string), string sharedKey = default(string), int?vlanId = default(int?), ExpressRouteCircuitPeeringConfig microsoftPeeringConfig = default(ExpressRouteCircuitPeeringConfig), ExpressRouteCircuitStats stats = default(ExpressRouteCircuitStats), string provisioningState = default(string), string gatewayManagerEtag = default(string), string lastModifiedBy = default(string), RouteFilter routeFilter = default(RouteFilter), Ipv6ExpressRouteCircuitPeeringConfig ipv6PeeringConfig = default(Ipv6ExpressRouteCircuitPeeringConfig), ExpressRouteConnectionId expressRouteConnection = default(ExpressRouteConnectionId), IList <ExpressRouteCircuitConnection> connections = default(IList <ExpressRouteCircuitConnection>), IList <PeerExpressRouteCircuitConnection> peeredConnections = default(IList <PeerExpressRouteCircuitConnection>), string name = default(string), string etag = default(string))
     : base(id)
 {
     PeeringType = peeringType;
     State       = state;
     AzureASN    = azureASN;
     PeerASN     = peerASN;
     PrimaryPeerAddressPrefix   = primaryPeerAddressPrefix;
     SecondaryPeerAddressPrefix = secondaryPeerAddressPrefix;
     PrimaryAzurePort           = primaryAzurePort;
     SecondaryAzurePort         = secondaryAzurePort;
     SharedKey = sharedKey;
     VlanId    = vlanId;
     MicrosoftPeeringConfig = microsoftPeeringConfig;
     Stats                  = stats;
     ProvisioningState      = provisioningState;
     GatewayManagerEtag     = gatewayManagerEtag;
     LastModifiedBy         = lastModifiedBy;
     RouteFilter            = routeFilter;
     Ipv6PeeringConfig      = ipv6PeeringConfig;
     ExpressRouteConnection = expressRouteConnection;
     Connections            = connections;
     PeeredConnections      = peeredConnections;
     Name = name;
     Etag = etag;
     CustomInit();
 }
 /// <summary>
 /// Initializes a new instance of the
 /// Ipv6ExpressRouteCircuitPeeringConfig class.
 /// </summary>
 /// <param name="primaryPeerAddressPrefix">The primary address
 /// prefix.</param>
 /// <param name="secondaryPeerAddressPrefix">The secondary address
 /// prefix.</param>
 /// <param name="microsoftPeeringConfig">The Microsoft peering
 /// configuration.</param>
 /// <param name="routeFilter">The reference of the RouteFilter
 /// resource.</param>
 /// <param name="state">The state of peering. Possible values are:
 /// 'Disabled' and 'Enabled'. Possible values include: 'Disabled',
 /// 'Enabled'</param>
 public Ipv6ExpressRouteCircuitPeeringConfig(string primaryPeerAddressPrefix = default(string), string secondaryPeerAddressPrefix = default(string), ExpressRouteCircuitPeeringConfig microsoftPeeringConfig = default(ExpressRouteCircuitPeeringConfig), RouteFilter routeFilter = default(RouteFilter), string state = default(string))
 {
     PrimaryPeerAddressPrefix   = primaryPeerAddressPrefix;
     SecondaryPeerAddressPrefix = secondaryPeerAddressPrefix;
     MicrosoftPeeringConfig     = microsoftPeeringConfig;
     RouteFilter = routeFilter;
     State       = state;
     CustomInit();
 }