/// <summary> /// Initializes a new instance of the <see cref="PhoneBase" /> class. /// </summary> /// <param name="Name">The name of the entity. (required).</param> /// <param name="Description">Description.</param> /// <param name="Version">Version.</param> /// <param name="DateCreated">Date time is represented as an ISO-8601 string. For example: yyyy-MM-ddTHH:mm:ss.SSSZ.</param> /// <param name="DateModified">Date time is represented as an ISO-8601 string. For example: yyyy-MM-ddTHH:mm:ss.SSSZ.</param> /// <param name="ModifiedBy">ModifiedBy.</param> /// <param name="CreatedBy">CreatedBy.</param> /// <param name="State">State.</param> /// <param name="ModifiedByApp">ModifiedByApp.</param> /// <param name="CreatedByApp">CreatedByApp.</param> /// <param name="PhoneMetaBase">A phone metabase is essentially a database for storing phone configuration settings, which simplifies the configuration process. (required).</param> /// <param name="Lines">The list of linebases associated with the phone base. (required).</param> /// <param name="Properties">Properties.</param> /// <param name="Capabilities">Capabilities.</param> public PhoneBase(string Name = null, string Description = null, int?Version = null, DateTime?DateCreated = null, DateTime?DateModified = null, string ModifiedBy = null, string CreatedBy = null, StateEnum?State = null, string ModifiedByApp = null, string CreatedByApp = null, UriReference PhoneMetaBase = null, List <LineBase> Lines = null, Dictionary <string, Object> Properties = null, PhoneCapabilities Capabilities = null) { // to ensure "Name" is required (not null) if (Name == null) { throw new InvalidDataException("Name is a required property for PhoneBase and cannot be null"); } else { this.Name = Name; } // to ensure "PhoneMetaBase" is required (not null) if (PhoneMetaBase == null) { throw new InvalidDataException("PhoneMetaBase is a required property for PhoneBase and cannot be null"); } else { this.PhoneMetaBase = PhoneMetaBase; } // to ensure "Lines" is required (not null) if (Lines == null) { throw new InvalidDataException("Lines is a required property for PhoneBase and cannot be null"); } else { this.Lines = Lines; } this.Description = Description; this.Version = Version; this.DateCreated = DateCreated; this.DateModified = DateModified; this.ModifiedBy = ModifiedBy; this.CreatedBy = CreatedBy; this.State = State; this.ModifiedByApp = ModifiedByApp; this.CreatedByApp = CreatedByApp; this.Properties = Properties; this.Capabilities = Capabilities; }
/// <summary> /// Initializes a new instance of the <see cref="Phone" /> class. /// </summary> /// <param name="Name">The name of the entity. (required).</param> /// <param name="Description">Description.</param> /// <param name="Version">Version.</param> /// <param name="DateCreated">Date time is represented as an ISO-8601 string. For example: yyyy-MM-ddTHH:mm:ss.SSSZ.</param> /// <param name="DateModified">Date time is represented as an ISO-8601 string. For example: yyyy-MM-ddTHH:mm:ss.SSSZ.</param> /// <param name="ModifiedBy">ModifiedBy.</param> /// <param name="CreatedBy">CreatedBy.</param> /// <param name="State">State.</param> /// <param name="ModifiedByApp">ModifiedByApp.</param> /// <param name="CreatedByApp">CreatedByApp.</param> /// <param name="Site">The site associated to the phone. (required).</param> /// <param name="PhoneBaseSettings">Phone Base Settings (required).</param> /// <param name="LineBaseSettings">LineBaseSettings.</param> /// <param name="PhoneMetaBase">PhoneMetaBase.</param> /// <param name="Lines">Lines (required).</param> /// <param name="Status">The status of the phone and lines from the primary Edge..</param> /// <param name="SecondaryStatus">The status of the phone and lines from the secondary Edge..</param> /// <param name="UserAgentInfo">User Agent Information for this phone. This includes model, firmware version, and manufacturer..</param> /// <param name="Properties">Properties.</param> /// <param name="Capabilities">Capabilities.</param> /// <param name="WebRtcUser">This is the user associated with a WebRTC type phone. It is required for all WebRTC phones..</param> /// <param name="PrimaryEdge">PrimaryEdge.</param> /// <param name="SecondaryEdge">SecondaryEdge.</param> public Phone(string Name = null, string Description = null, int?Version = null, DateTime?DateCreated = null, DateTime?DateModified = null, string ModifiedBy = null, string CreatedBy = null, StateEnum?State = null, string ModifiedByApp = null, string CreatedByApp = null, UriReference Site = null, UriReference PhoneBaseSettings = null, UriReference LineBaseSettings = null, UriReference PhoneMetaBase = null, List <Line> Lines = null, PhoneStatus Status = null, PhoneStatus SecondaryStatus = null, UserAgentInfo UserAgentInfo = null, Dictionary <string, Object> Properties = null, PhoneCapabilities Capabilities = null, UriReference WebRtcUser = null, Edge PrimaryEdge = null, Edge SecondaryEdge = null) { // to ensure "Name" is required (not null) if (Name == null) { throw new InvalidDataException("Name is a required property for Phone and cannot be null"); } else { this.Name = Name; } // to ensure "Site" is required (not null) if (Site == null) { throw new InvalidDataException("Site is a required property for Phone and cannot be null"); } else { this.Site = Site; } // to ensure "PhoneBaseSettings" is required (not null) if (PhoneBaseSettings == null) { throw new InvalidDataException("PhoneBaseSettings is a required property for Phone and cannot be null"); } else { this.PhoneBaseSettings = PhoneBaseSettings; } // to ensure "Lines" is required (not null) if (Lines == null) { throw new InvalidDataException("Lines is a required property for Phone and cannot be null"); } else { this.Lines = Lines; } this.Description = Description; this.Version = Version; this.DateCreated = DateCreated; this.DateModified = DateModified; this.ModifiedBy = ModifiedBy; this.CreatedBy = CreatedBy; this.State = State; this.ModifiedByApp = ModifiedByApp; this.CreatedByApp = CreatedByApp; this.LineBaseSettings = LineBaseSettings; this.PhoneMetaBase = PhoneMetaBase; this.Status = Status; this.SecondaryStatus = SecondaryStatus; this.UserAgentInfo = UserAgentInfo; this.Properties = Properties; this.Capabilities = Capabilities; this.WebRtcUser = WebRtcUser; this.PrimaryEdge = PrimaryEdge; this.SecondaryEdge = SecondaryEdge; }