/// <summary>
 /// Validate the object.
 /// </summary>
 /// <exception cref="ValidationException">
 /// Thrown if validation fails
 /// </exception>
 public virtual void Validate()
 {
     if (VirtualNetworkTap != null)
     {
         VirtualNetworkTap.Validate();
     }
 }
 /// <summary>
 /// Initializes a new instance of the NetworkInterfaceTapConfiguration
 /// class.
 /// </summary>
 /// <param name="id">Resource ID.</param>
 /// <param name="virtualNetworkTap">The reference to the Virtual
 /// Network Tap resource.</param>
 /// <param name="provisioningState">The provisioning state of the
 /// network interface tap configuration resource. Possible values
 /// include: 'Succeeded', 'Updating', 'Deleting', 'Failed'</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">Sub Resource type.</param>
 public NetworkInterfaceTapConfiguration(string id = default(string), VirtualNetworkTap virtualNetworkTap = default(VirtualNetworkTap), string provisioningState = default(string), string name = default(string), string etag = default(string), string type = default(string))
     : base(id)
 {
     VirtualNetworkTap = virtualNetworkTap;
     ProvisioningState = provisioningState;
     Name = name;
     Etag = etag;
     Type = type;
     CustomInit();
 }