/// <summary>
 /// Initializes a new instance of the LabPlanUpdate class.
 /// </summary>
 /// <param name="tags">Resource tags.</param>
 /// <param name="defaultConnectionProfile">The default lab connection
 /// profile. This can be changed on a lab resource and only provides a
 /// default profile.</param>
 /// <param name="defaultAutoShutdownProfile">The default lab shutdown
 /// profile. This can be changed on a lab resource and only provides a
 /// default profile.</param>
 /// <param name="defaultNetworkProfile">The lab plan network profile.
 /// To enforce lab network policies they must be defined here and
 /// cannot be changed when there are existing labs associated with this
 /// lab plan.</param>
 /// <param name="allowedRegions">The allowed regions for the lab
 /// creator to use when creating labs using this lab plan.</param>
 /// <param name="sharedGalleryId">Resource ID of the Shared Image
 /// Gallery attached to this lab plan. When saving a lab template
 /// virtual machine image it will be persisted in this gallery. Shared
 /// images from the gallery can be made available to use when creating
 /// new labs.</param>
 /// <param name="supportInfo">Support contact information and
 /// instructions for users of the lab plan. This information is
 /// displayed to lab owners and virtual machine users for all labs in
 /// the lab plan.</param>
 /// <param name="linkedLmsInstance">Base Url of the lms instance this
 /// lab plan can link lab rosters against.</param>
 public LabPlanUpdate(IList <string> tags = default(IList <string>), ConnectionProfile defaultConnectionProfile = default(ConnectionProfile), AutoShutdownProfile defaultAutoShutdownProfile = default(AutoShutdownProfile), LabPlanNetworkProfile defaultNetworkProfile = default(LabPlanNetworkProfile), IList <string> allowedRegions = default(IList <string>), string sharedGalleryId = default(string), SupportInfo supportInfo = default(SupportInfo), string linkedLmsInstance = default(string))
     : base(tags)
 {
     DefaultConnectionProfile   = defaultConnectionProfile;
     DefaultAutoShutdownProfile = defaultAutoShutdownProfile;
     DefaultNetworkProfile      = defaultNetworkProfile;
     AllowedRegions             = allowedRegions;
     SharedGalleryId            = sharedGalleryId;
     SupportInfo       = supportInfo;
     LinkedLmsInstance = linkedLmsInstance;
     CustomInit();
 }
 /// <summary>
 /// Initializes a new instance of the LabPlan class.
 /// </summary>
 /// <param name="location">The geo-location where the resource
 /// lives</param>
 /// <param name="id">Fully qualified resource ID for the resource. Ex -
 /// /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}</param>
 /// <param name="name">The name of the resource</param>
 /// <param name="type">The type of the resource. E.g.
 /// "Microsoft.Compute/virtualMachines" or
 /// "Microsoft.Storage/storageAccounts"</param>
 /// <param name="tags">Resource tags.</param>
 /// <param name="systemData">Metadata pertaining to creation and last
 /// modification of the lab plan.</param>
 /// <param name="defaultConnectionProfile">The default lab connection
 /// profile. This can be changed on a lab resource and only provides a
 /// default profile.</param>
 /// <param name="defaultAutoShutdownProfile">The default lab shutdown
 /// profile. This can be changed on a lab resource and only provides a
 /// default profile.</param>
 /// <param name="defaultNetworkProfile">The lab plan network profile.
 /// To enforce lab network policies they must be defined here and
 /// cannot be changed when there are existing labs associated with this
 /// lab plan.</param>
 /// <param name="allowedRegions">The allowed regions for the lab
 /// creator to use when creating labs using this lab plan.</param>
 /// <param name="sharedGalleryId">Resource ID of the Shared Image
 /// Gallery attached to this lab plan. When saving a lab template
 /// virtual machine image it will be persisted in this gallery. Shared
 /// images from the gallery can be made available to use when creating
 /// new labs.</param>
 /// <param name="supportInfo">Support contact information and
 /// instructions for users of the lab plan. This information is
 /// displayed to lab owners and virtual machine users for all labs in
 /// the lab plan.</param>
 /// <param name="linkedLmsInstance">Base Url of the lms instance this
 /// lab plan can link lab rosters against.</param>
 /// <param name="provisioningState">Current provisioning state of the
 /// lab plan. Possible values include: 'Creating', 'Updating',
 /// 'Deleting', 'Succeeded', 'Failed', 'Locked'</param>
 public LabPlan(string location, string id = default(string), string name = default(string), string type = default(string), IDictionary <string, string> tags = default(IDictionary <string, string>), SystemData systemData = default(SystemData), ConnectionProfile defaultConnectionProfile = default(ConnectionProfile), AutoShutdownProfile defaultAutoShutdownProfile = default(AutoShutdownProfile), LabPlanNetworkProfile defaultNetworkProfile = default(LabPlanNetworkProfile), IList <string> allowedRegions = default(IList <string>), string sharedGalleryId = default(string), SupportInfo supportInfo = default(SupportInfo), string linkedLmsInstance = default(string), ProvisioningState?provisioningState = default(ProvisioningState?))
     : base(location, id, name, type, tags)
 {
     SystemData = systemData;
     DefaultConnectionProfile   = defaultConnectionProfile;
     DefaultAutoShutdownProfile = defaultAutoShutdownProfile;
     DefaultNetworkProfile      = defaultNetworkProfile;
     AllowedRegions             = allowedRegions;
     SharedGalleryId            = sharedGalleryId;
     SupportInfo       = supportInfo;
     LinkedLmsInstance = linkedLmsInstance;
     ProvisioningState = provisioningState;
     CustomInit();
 }