/// <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">The peering stats of express route
 /// circuit.</param>
 /// <param name="provisioningState">The provisioning state of the
 /// express route circuit peering resource. Possible values include:
 /// 'Succeeded', 'Updating', 'Deleting', 'Failed'</param>
 /// <param name="gatewayManagerEtag">The GatewayManager Etag.</param>
 /// <param name="lastModifiedBy">Who was the last to modify 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">The 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>
 /// <param name="type">Type of the resource.</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), SubResource routeFilter = default(SubResource), 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), string type = 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;
     Type = type;
     CustomInit();
 }
 /// <summary>
 /// Initializes a new instance of the ExpressRouteCircuitPeering class.
 /// </summary>
 public ExpressRouteCircuitPeering(string name = default(string), string etag = default(string), string peeringType = default(string), string state = default(string), int?azureASN = default(int?), int?peerASN = default(int?), 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))
 {
     Name        = name;
     Etag        = etag;
     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;
 }