/// <summary>
 /// Validate the object.
 /// </summary>
 /// <exception cref="Rest.ValidationException">
 /// Thrown if validation fails
 /// </exception>
 public virtual void Validate()
 {
     if (Capacity != null)
     {
         Capacity.Validate();
     }
     if (Group != null)
     {
         Group.Validate();
     }
 }
 /// <summary>
 /// Initializes a new instance of the Refreshable class.
 /// </summary>
 /// <param name="id">Object id of refreshable</param>
 /// <param name="name">Display name of refreshable</param>
 /// <param name="kind">The refreshable kind. Possible values include:
 /// 'Dataset'</param>
 /// <param name="startTime">The start time of the window for which
 /// summary data exists</param>
 /// <param name="endTime">The end time of the window for which summary
 /// data exists</param>
 /// <param name="refreshCount">The number of refreshes within the
 /// summary time window</param>
 /// <param name="refreshFailures">The number of refresh failures within
 /// the summary time window</param>
 /// <param name="averageDuration">The average duration in seconds of a
 /// refresh within the summary time window</param>
 /// <param name="medianDuration">The median duration in seconds of a
 /// refresh within the summary time window</param>
 /// <param name="refreshesPerDay">The number of refreshes per day
 /// within the summary time window</param>
 /// <param name="lastRefresh">The last Power BI refresh history entry
 /// for the refreshable item</param>
 /// <param name="refreshSchedule">The refresh schedule for the
 /// refreshable item</param>
 /// <param name="configuredBy">Refreshable owners</param>
 /// <param name="capacity">The capacity for the refreshable
 /// item</param>
 /// <param name="group">The associated group for the refreshable
 /// item</param>
 public Refreshable(string id = default(string), string name = default(string), RefreshableKind?kind = default(RefreshableKind?), System.DateTime?startTime = default(System.DateTime?), System.DateTime?endTime = default(System.DateTime?), int?refreshCount = default(int?), int?refreshFailures = default(int?), double?averageDuration = default(double?), double?medianDuration = default(double?), int?refreshesPerDay = default(int?), Refresh lastRefresh = default(Refresh), RefreshSchedule refreshSchedule = default(RefreshSchedule), IList <string> configuredBy = default(IList <string>), Capacity capacity = default(Capacity), Group group = default(Group))
 {
     Id              = id;
     Name            = name;
     Kind            = kind;
     StartTime       = startTime;
     EndTime         = endTime;
     RefreshCount    = refreshCount;
     RefreshFailures = refreshFailures;
     AverageDuration = averageDuration;
     MedianDuration  = medianDuration;
     RefreshesPerDay = refreshesPerDay;
     LastRefresh     = lastRefresh;
     RefreshSchedule = refreshSchedule;
     ConfiguredBy    = configuredBy;
     Capacity        = capacity;
     Group           = group;
     CustomInit();
 }