Free cookie consent management tool by TermsFeed Policy Generator

source: branches/3.3-Hive/sources/HeuristicLab.Hive/HeuristicLab.Hive.Server.LINQDataAccess/3.3/HiveDataContext.cs @ 4501

Last change on this file since 4501 was 4424, checked in by cneumuel, 14 years ago
  • Added and updated License Information in every file
  • Sort and remove usings in every file
  • Deleted obsolete DataAccess.ADOHelper
  • Deleted some obsolete files
File size: 80.6 KB
Line 
1#pragma warning disable 1591
2//------------------------------------------------------------------------------
3// <auto-generated>
4//     This code was generated by a tool.
5//     Runtime Version:4.0.30319.1
6//
7//     Changes to this file may cause incorrect behavior and will be lost if
8//     the code is regenerated.
9// </auto-generated>
10//------------------------------------------------------------------------------
11
12namespace HeuristicLab.Hive.Server.LINQDataAccess
13{
14  using System;
15  using System.ComponentModel;
16  using System.Data.Linq;
17  using System.Data.Linq.Mapping;
18 
19 
20  [global::System.Data.Linq.Mapping.DatabaseAttribute(Name="HeuristicLab.Hive")]
21  public partial class HiveDataContext : System.Data.Linq.DataContext
22  {
23   
24    private static System.Data.Linq.Mapping.MappingSource mappingSource = new AttributeMappingSource();
25   
26    #region Extensibility Method Definitions
27    partial void OnCreated();
28    partial void InsertAssignedResource(AssignedResource instance);
29    partial void UpdateAssignedResource(AssignedResource instance);
30    partial void DeleteAssignedResource(AssignedResource instance);
31    partial void InsertUptimeStatistic(UptimeStatistic instance);
32    partial void UpdateUptimeStatistic(UptimeStatistic instance);
33    partial void DeleteUptimeStatistic(UptimeStatistic instance);
34    partial void InsertSlaveConfig(SlaveConfig instance);
35    partial void UpdateSlaveConfig(SlaveConfig instance);
36    partial void DeleteSlaveConfig(SlaveConfig instance);
37    partial void InsertSlaveGroup_Resource(SlaveGroup_Resource instance);
38    partial void UpdateSlaveGroup_Resource(SlaveGroup_Resource instance);
39    partial void DeleteSlaveGroup_Resource(SlaveGroup_Resource instance);
40    partial void InsertPluginInfo(PluginInfo instance);
41    partial void UpdatePluginInfo(PluginInfo instance);
42    partial void DeletePluginInfo(PluginInfo instance);
43    partial void InsertProject(Project instance);
44    partial void UpdateProject(Project instance);
45    partial void DeleteProject(Project instance);
46    partial void InsertRequiredPlugin(RequiredPlugin instance);
47    partial void UpdateRequiredPlugin(RequiredPlugin instance);
48    partial void DeleteRequiredPlugin(RequiredPlugin instance);
49    partial void InsertResource(Resource instance);
50    partial void UpdateResource(Resource instance);
51    partial void DeleteResource(Resource instance);
52    partial void InsertJob(Job instance);
53    partial void UpdateJob(Job instance);
54    partial void DeleteJob(Job instance);
55    partial void InsertUptimeCalendar(UptimeCalendar instance);
56    partial void UpdateUptimeCalendar(UptimeCalendar instance);
57    partial void DeleteUptimeCalendar(UptimeCalendar instance);
58    partial void InsertHiveExperiment(HiveExperiment instance);
59    partial void UpdateHiveExperiment(HiveExperiment instance);
60    partial void DeleteHiveExperiment(HiveExperiment instance);
61    #endregion
62   
63    public HiveDataContext(string connection) :
64        base(connection, mappingSource)
65    {
66      OnCreated();
67    }
68   
69    public HiveDataContext(System.Data.IDbConnection connection) :
70        base(connection, mappingSource)
71    {
72      OnCreated();
73    }
74   
75    public HiveDataContext(string connection, System.Data.Linq.Mapping.MappingSource mappingSource) :
76        base(connection, mappingSource)
77    {
78      OnCreated();
79    }
80   
81    public HiveDataContext(System.Data.IDbConnection connection, System.Data.Linq.Mapping.MappingSource mappingSource) :
82        base(connection, mappingSource)
83    {
84      OnCreated();
85    }
86   
87    public System.Data.Linq.Table<AssignedResource> AssignedResources
88    {
89      get
90      {
91        return this.GetTable<AssignedResource>();
92      }
93    }
94   
95    public System.Data.Linq.Table<UptimeStatistic> UptimeStatistics
96    {
97      get
98      {
99        return this.GetTable<UptimeStatistic>();
100      }
101    }
102   
103    public System.Data.Linq.Table<SlaveConfig> SlaveConfigs
104    {
105      get
106      {
107        return this.GetTable<SlaveConfig>();
108      }
109    }
110   
111    public System.Data.Linq.Table<SlaveGroup_Resource> SlaveGroup_Resources
112    {
113      get
114      {
115        return this.GetTable<SlaveGroup_Resource>();
116      }
117    }
118   
119    public System.Data.Linq.Table<PluginInfo> PluginInfos
120    {
121      get
122      {
123        return this.GetTable<PluginInfo>();
124      }
125    }
126   
127    public System.Data.Linq.Table<Project> Projects
128    {
129      get
130      {
131        return this.GetTable<Project>();
132      }
133    }
134   
135    public System.Data.Linq.Table<RequiredPlugin> RequiredPlugins
136    {
137      get
138      {
139        return this.GetTable<RequiredPlugin>();
140      }
141    }
142   
143    public System.Data.Linq.Table<Resource> Resources
144    {
145      get
146      {
147        return this.GetTable<Resource>();
148      }
149    }
150   
151    public System.Data.Linq.Table<Job> Jobs
152    {
153      get
154      {
155        return this.GetTable<Job>();
156      }
157    }
158   
159    public System.Data.Linq.Table<UptimeCalendar> UptimeCalendars
160    {
161      get
162      {
163        return this.GetTable<UptimeCalendar>();
164      }
165    }
166   
167    public System.Data.Linq.Table<HiveExperiment> HiveExperiments
168    {
169      get
170      {
171        return this.GetTable<HiveExperiment>();
172      }
173    }
174  }
175 
176  [global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.AssignedResources")]
177  public partial class AssignedResource : INotifyPropertyChanging, INotifyPropertyChanged
178  {
179   
180    private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
181   
182    private System.Guid _ResourceId;
183   
184    private System.Guid _JobId;
185   
186    private System.Guid _AssignedRessourcesId;
187   
188    private EntityRef<Resource> _Resource;
189   
190    private EntityRef<Job> _Job;
191   
192    #region Extensibility Method Definitions
193    partial void OnLoaded();
194    partial void OnValidate(System.Data.Linq.ChangeAction action);
195    partial void OnCreated();
196    partial void OnResourceIdChanging(System.Guid value);
197    partial void OnResourceIdChanged();
198    partial void OnJobIdChanging(System.Guid value);
199    partial void OnJobIdChanged();
200    partial void OnAssignedRessourcesIdChanging(System.Guid value);
201    partial void OnAssignedRessourcesIdChanged();
202    #endregion
203   
204    public AssignedResource()
205    {
206      this._Resource = default(EntityRef<Resource>);
207      this._Job = default(EntityRef<Job>);
208      OnCreated();
209    }
210   
211    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ResourceId", DbType="UniqueIdentifier NOT NULL")]
212    public System.Guid ResourceId
213    {
214      get
215      {
216        return this._ResourceId;
217      }
218      set
219      {
220        if ((this._ResourceId != value))
221        {
222          if (this._Resource.HasLoadedOrAssignedValue)
223          {
224            throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
225          }
226          this.OnResourceIdChanging(value);
227          this.SendPropertyChanging();
228          this._ResourceId = value;
229          this.SendPropertyChanged("ResourceId");
230          this.OnResourceIdChanged();
231        }
232      }
233    }
234   
235    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_JobId", DbType="UniqueIdentifier NOT NULL")]
236    public System.Guid JobId
237    {
238      get
239      {
240        return this._JobId;
241      }
242      set
243      {
244        if ((this._JobId != value))
245        {
246          if (this._Job.HasLoadedOrAssignedValue)
247          {
248            throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
249          }
250          this.OnJobIdChanging(value);
251          this.SendPropertyChanging();
252          this._JobId = value;
253          this.SendPropertyChanged("JobId");
254          this.OnJobIdChanged();
255        }
256      }
257    }
258   
259    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_AssignedRessourcesId", AutoSync=AutoSync.OnInsert, DbType="UniqueIdentifier NOT NULL", IsPrimaryKey=true, IsDbGenerated=true)]
260    public System.Guid AssignedRessourcesId
261    {
262      get
263      {
264        return this._AssignedRessourcesId;
265      }
266      set
267      {
268        if ((this._AssignedRessourcesId != value))
269        {
270          this.OnAssignedRessourcesIdChanging(value);
271          this.SendPropertyChanging();
272          this._AssignedRessourcesId = value;
273          this.SendPropertyChanged("AssignedRessourcesId");
274          this.OnAssignedRessourcesIdChanged();
275        }
276      }
277    }
278   
279    [global::System.Data.Linq.Mapping.AssociationAttribute(Name="Resource_AssignedResource", Storage="_Resource", ThisKey="ResourceId", OtherKey="ResourceId", IsForeignKey=true, DeleteRule="CASCADE")]
280    public Resource Resource
281    {
282      get
283      {
284        return this._Resource.Entity;
285      }
286      set
287      {
288        Resource previousValue = this._Resource.Entity;
289        if (((previousValue != value)
290              || (this._Resource.HasLoadedOrAssignedValue == false)))
291        {
292          this.SendPropertyChanging();
293          if ((previousValue != null))
294          {
295            this._Resource.Entity = null;
296            previousValue.AssignedResources.Remove(this);
297          }
298          this._Resource.Entity = value;
299          if ((value != null))
300          {
301            value.AssignedResources.Add(this);
302            this._ResourceId = value.ResourceId;
303          }
304          else
305          {
306            this._ResourceId = default(System.Guid);
307          }
308          this.SendPropertyChanged("Resource");
309        }
310      }
311    }
312   
313    [global::System.Data.Linq.Mapping.AssociationAttribute(Name="Job_AssignedResource", Storage="_Job", ThisKey="JobId", OtherKey="JobId", IsForeignKey=true, DeleteRule="CASCADE")]
314    public Job Job
315    {
316      get
317      {
318        return this._Job.Entity;
319      }
320      set
321      {
322        Job previousValue = this._Job.Entity;
323        if (((previousValue != value)
324              || (this._Job.HasLoadedOrAssignedValue == false)))
325        {
326          this.SendPropertyChanging();
327          if ((previousValue != null))
328          {
329            this._Job.Entity = null;
330            previousValue.AssignedResources.Remove(this);
331          }
332          this._Job.Entity = value;
333          if ((value != null))
334          {
335            value.AssignedResources.Add(this);
336            this._JobId = value.JobId;
337          }
338          else
339          {
340            this._JobId = default(System.Guid);
341          }
342          this.SendPropertyChanged("Job");
343        }
344      }
345    }
346   
347    public event PropertyChangingEventHandler PropertyChanging;
348   
349    public event PropertyChangedEventHandler PropertyChanged;
350   
351    protected virtual void SendPropertyChanging()
352    {
353      if ((this.PropertyChanging != null))
354      {
355        this.PropertyChanging(this, emptyChangingEventArgs);
356      }
357    }
358   
359    protected virtual void SendPropertyChanged(String propertyName)
360    {
361      if ((this.PropertyChanged != null))
362      {
363        this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
364      }
365    }
366  }
367 
368  [global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.UptimeStatistics")]
369  public partial class UptimeStatistic : INotifyPropertyChanging, INotifyPropertyChanged
370  {
371   
372    private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
373   
374    private System.Guid _UptimeStatisticsId;
375   
376    private System.DateTime _Login;
377   
378    private System.DateTime _Logout;
379   
380    private System.Guid _ResourceId;
381   
382    private EntityRef<Slave> _Slave;
383   
384    #region Extensibility Method Definitions
385    partial void OnLoaded();
386    partial void OnValidate(System.Data.Linq.ChangeAction action);
387    partial void OnCreated();
388    partial void OnUptimeStatisticsIdChanging(System.Guid value);
389    partial void OnUptimeStatisticsIdChanged();
390    partial void OnLoginChanging(System.DateTime value);
391    partial void OnLoginChanged();
392    partial void OnLogoutChanging(System.DateTime value);
393    partial void OnLogoutChanged();
394    partial void OnResourceIdChanging(System.Guid value);
395    partial void OnResourceIdChanged();
396    #endregion
397   
398    public UptimeStatistic()
399    {
400      this._Slave = default(EntityRef<Slave>);
401      OnCreated();
402    }
403   
404    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_UptimeStatisticsId", AutoSync=AutoSync.OnInsert, DbType="UniqueIdentifier NOT NULL", IsPrimaryKey=true, IsDbGenerated=true)]
405    public System.Guid UptimeStatisticsId
406    {
407      get
408      {
409        return this._UptimeStatisticsId;
410      }
411      set
412      {
413        if ((this._UptimeStatisticsId != value))
414        {
415          this.OnUptimeStatisticsIdChanging(value);
416          this.SendPropertyChanging();
417          this._UptimeStatisticsId = value;
418          this.SendPropertyChanged("UptimeStatisticsId");
419          this.OnUptimeStatisticsIdChanged();
420        }
421      }
422    }
423   
424    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Login", DbType="DateTime")]
425    public System.DateTime Login
426    {
427      get
428      {
429        return this._Login;
430      }
431      set
432      {
433        if ((this._Login != value))
434        {
435          this.OnLoginChanging(value);
436          this.SendPropertyChanging();
437          this._Login = value;
438          this.SendPropertyChanged("Login");
439          this.OnLoginChanged();
440        }
441      }
442    }
443   
444    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Logout", DbType="DateTime")]
445    public System.DateTime Logout
446    {
447      get
448      {
449        return this._Logout;
450      }
451      set
452      {
453        if ((this._Logout != value))
454        {
455          this.OnLogoutChanging(value);
456          this.SendPropertyChanging();
457          this._Logout = value;
458          this.SendPropertyChanged("Logout");
459          this.OnLogoutChanged();
460        }
461      }
462    }
463   
464    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ResourceId", DbType="UniqueIdentifier")]
465    public System.Guid ResourceId
466    {
467      get
468      {
469        return this._ResourceId;
470      }
471      set
472      {
473        if ((this._ResourceId != value))
474        {
475          if (this._Slave.HasLoadedOrAssignedValue)
476          {
477            throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
478          }
479          this.OnResourceIdChanging(value);
480          this.SendPropertyChanging();
481          this._ResourceId = value;
482          this.SendPropertyChanged("ResourceId");
483          this.OnResourceIdChanged();
484        }
485      }
486    }
487   
488    [global::System.Data.Linq.Mapping.AssociationAttribute(Name="Slave_UptimeStatistic", Storage="_Slave", ThisKey="ResourceId", OtherKey="ResourceId", IsForeignKey=true, DeleteRule="SET NULL")]
489    public Slave Slave
490    {
491      get
492      {
493        return this._Slave.Entity;
494      }
495      set
496      {
497        Slave previousValue = this._Slave.Entity;
498        if (((previousValue != value)
499              || (this._Slave.HasLoadedOrAssignedValue == false)))
500        {
501          this.SendPropertyChanging();
502          if ((previousValue != null))
503          {
504            this._Slave.Entity = null;
505            previousValue.UptimeStatistics.Remove(this);
506          }
507          this._Slave.Entity = value;
508          if ((value != null))
509          {
510            value.UptimeStatistics.Add(this);
511            this._ResourceId = value.ResourceId;
512          }
513          else
514          {
515            this._ResourceId = default(System.Guid);
516          }
517          this.SendPropertyChanged("Slave");
518        }
519      }
520    }
521   
522    public event PropertyChangingEventHandler PropertyChanging;
523   
524    public event PropertyChangedEventHandler PropertyChanged;
525   
526    protected virtual void SendPropertyChanging()
527    {
528      if ((this.PropertyChanging != null))
529      {
530        this.PropertyChanging(this, emptyChangingEventArgs);
531      }
532    }
533   
534    protected virtual void SendPropertyChanged(String propertyName)
535    {
536      if ((this.PropertyChanged != null))
537      {
538        this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
539      }
540    }
541  }
542 
543  [global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.SlaveConfig")]
544  public partial class SlaveConfig : INotifyPropertyChanging, INotifyPropertyChanged
545  {
546   
547    private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
548   
549    private System.Guid _SlaveConfigId;
550   
551    private System.Xml.Linq.XElement _UpDownTimeCalendar;
552   
553    private System.Nullable<int> _HeartBeatIntervall;
554   
555    private EntitySet<Slave> _Slaves;
556   
557    #region Extensibility Method Definitions
558    partial void OnLoaded();
559    partial void OnValidate(System.Data.Linq.ChangeAction action);
560    partial void OnCreated();
561    partial void OnSlaveConfigIdChanging(System.Guid value);
562    partial void OnSlaveConfigIdChanged();
563    partial void OnUpDownTimeCalendarChanging(System.Xml.Linq.XElement value);
564    partial void OnUpDownTimeCalendarChanged();
565    partial void OnHeartBeatIntervallChanging(System.Nullable<int> value);
566    partial void OnHeartBeatIntervallChanged();
567    #endregion
568   
569    public SlaveConfig()
570    {
571      this._Slaves = new EntitySet<Slave>(new Action<Slave>(this.attach_Slaves), new Action<Slave>(this.detach_Slaves));
572      OnCreated();
573    }
574   
575    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_SlaveConfigId", AutoSync=AutoSync.OnInsert, DbType="UniqueIdentifier NOT NULL", IsPrimaryKey=true, IsDbGenerated=true)]
576    public System.Guid SlaveConfigId
577    {
578      get
579      {
580        return this._SlaveConfigId;
581      }
582      set
583      {
584        if ((this._SlaveConfigId != value))
585        {
586          this.OnSlaveConfigIdChanging(value);
587          this.SendPropertyChanging();
588          this._SlaveConfigId = value;
589          this.SendPropertyChanged("SlaveConfigId");
590          this.OnSlaveConfigIdChanged();
591        }
592      }
593    }
594   
595    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_UpDownTimeCalendar", DbType="Xml", CanBeNull=false, UpdateCheck=UpdateCheck.Never)]
596    public System.Xml.Linq.XElement UpDownTimeCalendar
597    {
598      get
599      {
600        return this._UpDownTimeCalendar;
601      }
602      set
603      {
604        if ((this._UpDownTimeCalendar != value))
605        {
606          this.OnUpDownTimeCalendarChanging(value);
607          this.SendPropertyChanging();
608          this._UpDownTimeCalendar = value;
609          this.SendPropertyChanged("UpDownTimeCalendar");
610          this.OnUpDownTimeCalendarChanged();
611        }
612      }
613    }
614   
615    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_HeartBeatIntervall", DbType="Int")]
616    public System.Nullable<int> HeartBeatIntervall
617    {
618      get
619      {
620        return this._HeartBeatIntervall;
621      }
622      set
623      {
624        if ((this._HeartBeatIntervall != value))
625        {
626          this.OnHeartBeatIntervallChanging(value);
627          this.SendPropertyChanging();
628          this._HeartBeatIntervall = value;
629          this.SendPropertyChanged("HeartBeatIntervall");
630          this.OnHeartBeatIntervallChanged();
631        }
632      }
633    }
634   
635    [global::System.Data.Linq.Mapping.AssociationAttribute(Name="SlaveConfig_Slave", Storage="_Slaves", ThisKey="SlaveConfigId", OtherKey="SlaveConfigId")]
636    public EntitySet<Slave> Slaves
637    {
638      get
639      {
640        return this._Slaves;
641      }
642      set
643      {
644        this._Slaves.Assign(value);
645      }
646    }
647   
648    public event PropertyChangingEventHandler PropertyChanging;
649   
650    public event PropertyChangedEventHandler PropertyChanged;
651   
652    protected virtual void SendPropertyChanging()
653    {
654      if ((this.PropertyChanging != null))
655      {
656        this.PropertyChanging(this, emptyChangingEventArgs);
657      }
658    }
659   
660    protected virtual void SendPropertyChanged(String propertyName)
661    {
662      if ((this.PropertyChanged != null))
663      {
664        this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
665      }
666    }
667   
668    private void attach_Slaves(Slave entity)
669    {
670      this.SendPropertyChanging();
671      entity.SlaveConfig = this;
672    }
673   
674    private void detach_Slaves(Slave entity)
675    {
676      this.SendPropertyChanging();
677      entity.SlaveConfig = null;
678    }
679  }
680 
681  [global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.SlaveGroup_Resource")]
682  public partial class SlaveGroup_Resource : INotifyPropertyChanging, INotifyPropertyChanged
683  {
684   
685    private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
686   
687    private System.Guid _SlaveGroup_RessourceId;
688   
689    private System.Guid _SlaveGroupId;
690   
691    private System.Guid _ResourceId;
692   
693    private EntityRef<SlaveGroup> _SlaveGroup;
694   
695    private EntityRef<Resource> _Resource;
696   
697    #region Extensibility Method Definitions
698    partial void OnLoaded();
699    partial void OnValidate(System.Data.Linq.ChangeAction action);
700    partial void OnCreated();
701    partial void OnSlaveGroup_RessourceIdChanging(System.Guid value);
702    partial void OnSlaveGroup_RessourceIdChanged();
703    partial void OnSlaveGroupIdChanging(System.Guid value);
704    partial void OnSlaveGroupIdChanged();
705    partial void OnResourceIdChanging(System.Guid value);
706    partial void OnResourceIdChanged();
707    #endregion
708   
709    public SlaveGroup_Resource()
710    {
711      this._SlaveGroup = default(EntityRef<SlaveGroup>);
712      this._Resource = default(EntityRef<Resource>);
713      OnCreated();
714    }
715   
716    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_SlaveGroup_RessourceId", AutoSync=AutoSync.OnInsert, DbType="UniqueIdentifier NOT NULL", IsPrimaryKey=true, IsDbGenerated=true)]
717    public System.Guid SlaveGroup_RessourceId
718    {
719      get
720      {
721        return this._SlaveGroup_RessourceId;
722      }
723      set
724      {
725        if ((this._SlaveGroup_RessourceId != value))
726        {
727          this.OnSlaveGroup_RessourceIdChanging(value);
728          this.SendPropertyChanging();
729          this._SlaveGroup_RessourceId = value;
730          this.SendPropertyChanged("SlaveGroup_RessourceId");
731          this.OnSlaveGroup_RessourceIdChanged();
732        }
733      }
734    }
735   
736    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_SlaveGroupId", DbType="UniqueIdentifier NOT NULL")]
737    public System.Guid SlaveGroupId
738    {
739      get
740      {
741        return this._SlaveGroupId;
742      }
743      set
744      {
745        if ((this._SlaveGroupId != value))
746        {
747          if (this._SlaveGroup.HasLoadedOrAssignedValue)
748          {
749            throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
750          }
751          this.OnSlaveGroupIdChanging(value);
752          this.SendPropertyChanging();
753          this._SlaveGroupId = value;
754          this.SendPropertyChanged("SlaveGroupId");
755          this.OnSlaveGroupIdChanged();
756        }
757      }
758    }
759   
760    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ResourceId", DbType="UniqueIdentifier NOT NULL")]
761    public System.Guid ResourceId
762    {
763      get
764      {
765        return this._ResourceId;
766      }
767      set
768      {
769        if ((this._ResourceId != value))
770        {
771          if (this._Resource.HasLoadedOrAssignedValue)
772          {
773            throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
774          }
775          this.OnResourceIdChanging(value);
776          this.SendPropertyChanging();
777          this._ResourceId = value;
778          this.SendPropertyChanged("ResourceId");
779          this.OnResourceIdChanged();
780        }
781      }
782    }
783   
784    [global::System.Data.Linq.Mapping.AssociationAttribute(Name="SlaveGroup_SlaveGroup_Resource", Storage="_SlaveGroup", ThisKey="SlaveGroupId", OtherKey="ResourceId", IsForeignKey=true)]
785    public SlaveGroup SlaveGroup
786    {
787      get
788      {
789        return this._SlaveGroup.Entity;
790      }
791      set
792      {
793        SlaveGroup previousValue = this._SlaveGroup.Entity;
794        if (((previousValue != value)
795              || (this._SlaveGroup.HasLoadedOrAssignedValue == false)))
796        {
797          this.SendPropertyChanging();
798          if ((previousValue != null))
799          {
800            this._SlaveGroup.Entity = null;
801            previousValue.SlaveGroup_Resources_Children.Remove(this);
802          }
803          this._SlaveGroup.Entity = value;
804          if ((value != null))
805          {
806            value.SlaveGroup_Resources_Children.Add(this);
807            this._SlaveGroupId = value.ResourceId;
808          }
809          else
810          {
811            this._SlaveGroupId = default(System.Guid);
812          }
813          this.SendPropertyChanged("SlaveGroup");
814        }
815      }
816    }
817   
818    [global::System.Data.Linq.Mapping.AssociationAttribute(Name="Resource_SlaveGroup_Resource", Storage="_Resource", ThisKey="ResourceId", OtherKey="ResourceId", IsForeignKey=true, DeleteRule="CASCADE")]
819    public Resource Resource
820    {
821      get
822      {
823        return this._Resource.Entity;
824      }
825      set
826      {
827        Resource previousValue = this._Resource.Entity;
828        if (((previousValue != value)
829              || (this._Resource.HasLoadedOrAssignedValue == false)))
830        {
831          this.SendPropertyChanging();
832          if ((previousValue != null))
833          {
834            this._Resource.Entity = null;
835            previousValue.SlaveGroup_Resources_Parents.Remove(this);
836          }
837          this._Resource.Entity = value;
838          if ((value != null))
839          {
840            value.SlaveGroup_Resources_Parents.Add(this);
841            this._ResourceId = value.ResourceId;
842          }
843          else
844          {
845            this._ResourceId = default(System.Guid);
846          }
847          this.SendPropertyChanged("Resource");
848        }
849      }
850    }
851   
852    public event PropertyChangingEventHandler PropertyChanging;
853   
854    public event PropertyChangedEventHandler PropertyChanged;
855   
856    protected virtual void SendPropertyChanging()
857    {
858      if ((this.PropertyChanging != null))
859      {
860        this.PropertyChanging(this, emptyChangingEventArgs);
861      }
862    }
863   
864    protected virtual void SendPropertyChanged(String propertyName)
865    {
866      if ((this.PropertyChanged != null))
867      {
868        this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
869      }
870    }
871  }
872 
873  [global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.PluginInfo")]
874  public partial class PluginInfo : INotifyPropertyChanging, INotifyPropertyChanged
875  {
876   
877    private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
878   
879    private System.Guid _PluginId;
880   
881    private string _Name;
882   
883    private string _Version;
884   
885    private string _BuildDate;
886   
887    private EntitySet<RequiredPlugin> _RequiredPlugins;
888   
889    #region Extensibility Method Definitions
890    partial void OnLoaded();
891    partial void OnValidate(System.Data.Linq.ChangeAction action);
892    partial void OnCreated();
893    partial void OnPluginIdChanging(System.Guid value);
894    partial void OnPluginIdChanged();
895    partial void OnNameChanging(string value);
896    partial void OnNameChanged();
897    partial void OnVersionChanging(string value);
898    partial void OnVersionChanged();
899    partial void OnBuildDateChanging(string value);
900    partial void OnBuildDateChanged();
901    #endregion
902   
903    public PluginInfo()
904    {
905      this._RequiredPlugins = new EntitySet<RequiredPlugin>(new Action<RequiredPlugin>(this.attach_RequiredPlugins), new Action<RequiredPlugin>(this.detach_RequiredPlugins));
906      OnCreated();
907    }
908   
909    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_PluginId", AutoSync=AutoSync.OnInsert, DbType="UniqueIdentifier NOT NULL", IsPrimaryKey=true, IsDbGenerated=true)]
910    public System.Guid PluginId
911    {
912      get
913      {
914        return this._PluginId;
915      }
916      set
917      {
918        if ((this._PluginId != value))
919        {
920          this.OnPluginIdChanging(value);
921          this.SendPropertyChanging();
922          this._PluginId = value;
923          this.SendPropertyChanged("PluginId");
924          this.OnPluginIdChanged();
925        }
926      }
927    }
928   
929    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Name", DbType="VarChar(MAX)", CanBeNull=false)]
930    public string Name
931    {
932      get
933      {
934        return this._Name;
935      }
936      set
937      {
938        if ((this._Name != value))
939        {
940          this.OnNameChanging(value);
941          this.SendPropertyChanging();
942          this._Name = value;
943          this.SendPropertyChanged("Name");
944          this.OnNameChanged();
945        }
946      }
947    }
948   
949    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Version", DbType="VarChar(MAX)", CanBeNull=false)]
950    public string Version
951    {
952      get
953      {
954        return this._Version;
955      }
956      set
957      {
958        if ((this._Version != value))
959        {
960          this.OnVersionChanging(value);
961          this.SendPropertyChanging();
962          this._Version = value;
963          this.SendPropertyChanged("Version");
964          this.OnVersionChanged();
965        }
966      }
967    }
968   
969    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_BuildDate", DbType="VarChar(20)", CanBeNull=false)]
970    public string BuildDate
971    {
972      get
973      {
974        return this._BuildDate;
975      }
976      set
977      {
978        if ((this._BuildDate != value))
979        {
980          this.OnBuildDateChanging(value);
981          this.SendPropertyChanging();
982          this._BuildDate = value;
983          this.SendPropertyChanged("BuildDate");
984          this.OnBuildDateChanged();
985        }
986      }
987    }
988   
989    [global::System.Data.Linq.Mapping.AssociationAttribute(Name="PluginInfo_RequiredPlugin", Storage="_RequiredPlugins", ThisKey="PluginId", OtherKey="PluginId")]
990    public EntitySet<RequiredPlugin> RequiredPlugins
991    {
992      get
993      {
994        return this._RequiredPlugins;
995      }
996      set
997      {
998        this._RequiredPlugins.Assign(value);
999      }
1000    }
1001   
1002    public event PropertyChangingEventHandler PropertyChanging;
1003   
1004    public event PropertyChangedEventHandler PropertyChanged;
1005   
1006    protected virtual void SendPropertyChanging()
1007    {
1008      if ((this.PropertyChanging != null))
1009      {
1010        this.PropertyChanging(this, emptyChangingEventArgs);
1011      }
1012    }
1013   
1014    protected virtual void SendPropertyChanged(String propertyName)
1015    {
1016      if ((this.PropertyChanged != null))
1017      {
1018        this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
1019      }
1020    }
1021   
1022    private void attach_RequiredPlugins(RequiredPlugin entity)
1023    {
1024      this.SendPropertyChanging();
1025      entity.PluginInfo = this;
1026    }
1027   
1028    private void detach_RequiredPlugins(RequiredPlugin entity)
1029    {
1030      this.SendPropertyChanging();
1031      entity.PluginInfo = null;
1032    }
1033  }
1034 
1035  [global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.Project")]
1036  public partial class Project : INotifyPropertyChanging, INotifyPropertyChanged
1037  {
1038   
1039    private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
1040   
1041    private System.Guid _ProjectId;
1042   
1043    private string _Name;
1044   
1045    private EntitySet<Job> _Jobs;
1046   
1047    #region Extensibility Method Definitions
1048    partial void OnLoaded();
1049    partial void OnValidate(System.Data.Linq.ChangeAction action);
1050    partial void OnCreated();
1051    partial void OnProjectIdChanging(System.Guid value);
1052    partial void OnProjectIdChanged();
1053    partial void OnNameChanging(string value);
1054    partial void OnNameChanged();
1055    #endregion
1056   
1057    public Project()
1058    {
1059      this._Jobs = new EntitySet<Job>(new Action<Job>(this.attach_Jobs), new Action<Job>(this.detach_Jobs));
1060      OnCreated();
1061    }
1062   
1063    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ProjectId", AutoSync=AutoSync.OnInsert, DbType="UniqueIdentifier NOT NULL", IsPrimaryKey=true, IsDbGenerated=true)]
1064    public System.Guid ProjectId
1065    {
1066      get
1067      {
1068        return this._ProjectId;
1069      }
1070      set
1071      {
1072        if ((this._ProjectId != value))
1073        {
1074          this.OnProjectIdChanging(value);
1075          this.SendPropertyChanging();
1076          this._ProjectId = value;
1077          this.SendPropertyChanged("ProjectId");
1078          this.OnProjectIdChanged();
1079        }
1080      }
1081    }
1082   
1083    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Name", DbType="VarChar(MAX)", CanBeNull=false)]
1084    public string Name
1085    {
1086      get
1087      {
1088        return this._Name;
1089      }
1090      set
1091      {
1092        if ((this._Name != value))
1093        {
1094          this.OnNameChanging(value);
1095          this.SendPropertyChanging();
1096          this._Name = value;
1097          this.SendPropertyChanged("Name");
1098          this.OnNameChanged();
1099        }
1100      }
1101    }
1102   
1103    [global::System.Data.Linq.Mapping.AssociationAttribute(Name="Project_Job", Storage="_Jobs", ThisKey="ProjectId", OtherKey="ProjectId")]
1104    public EntitySet<Job> Jobs
1105    {
1106      get
1107      {
1108        return this._Jobs;
1109      }
1110      set
1111      {
1112        this._Jobs.Assign(value);
1113      }
1114    }
1115   
1116    public event PropertyChangingEventHandler PropertyChanging;
1117   
1118    public event PropertyChangedEventHandler PropertyChanged;
1119   
1120    protected virtual void SendPropertyChanging()
1121    {
1122      if ((this.PropertyChanging != null))
1123      {
1124        this.PropertyChanging(this, emptyChangingEventArgs);
1125      }
1126    }
1127   
1128    protected virtual void SendPropertyChanged(String propertyName)
1129    {
1130      if ((this.PropertyChanged != null))
1131      {
1132        this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
1133      }
1134    }
1135   
1136    private void attach_Jobs(Job entity)
1137    {
1138      this.SendPropertyChanging();
1139      entity.Project = this;
1140    }
1141   
1142    private void detach_Jobs(Job entity)
1143    {
1144      this.SendPropertyChanging();
1145      entity.Project = null;
1146    }
1147  }
1148 
1149  [global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.RequiredPlugins")]
1150  public partial class RequiredPlugin : INotifyPropertyChanging, INotifyPropertyChanged
1151  {
1152   
1153    private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
1154   
1155    private System.Guid _RequiredPluginId;
1156   
1157    private System.Guid _JobId;
1158   
1159    private System.Guid _PluginId;
1160   
1161    private EntityRef<PluginInfo> _PluginInfo;
1162   
1163    private EntityRef<Job> _Job;
1164   
1165    #region Extensibility Method Definitions
1166    partial void OnLoaded();
1167    partial void OnValidate(System.Data.Linq.ChangeAction action);
1168    partial void OnCreated();
1169    partial void OnRequiredPluginIdChanging(System.Guid value);
1170    partial void OnRequiredPluginIdChanged();
1171    partial void OnJobIdChanging(System.Guid value);
1172    partial void OnJobIdChanged();
1173    partial void OnPluginIdChanging(System.Guid value);
1174    partial void OnPluginIdChanged();
1175    #endregion
1176   
1177    public RequiredPlugin()
1178    {
1179      this._PluginInfo = default(EntityRef<PluginInfo>);
1180      this._Job = default(EntityRef<Job>);
1181      OnCreated();
1182    }
1183   
1184    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_RequiredPluginId", AutoSync=AutoSync.OnInsert, DbType="UniqueIdentifier NOT NULL", IsPrimaryKey=true, IsDbGenerated=true, UpdateCheck=UpdateCheck.Never)]
1185    public System.Guid RequiredPluginId
1186    {
1187      get
1188      {
1189        return this._RequiredPluginId;
1190      }
1191      set
1192      {
1193        if ((this._RequiredPluginId != value))
1194        {
1195          this.OnRequiredPluginIdChanging(value);
1196          this.SendPropertyChanging();
1197          this._RequiredPluginId = value;
1198          this.SendPropertyChanged("RequiredPluginId");
1199          this.OnRequiredPluginIdChanged();
1200        }
1201      }
1202    }
1203   
1204    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_JobId", DbType="UniqueIdentifier NOT NULL")]
1205    public System.Guid JobId
1206    {
1207      get
1208      {
1209        return this._JobId;
1210      }
1211      set
1212      {
1213        if ((this._JobId != value))
1214        {
1215          if (this._Job.HasLoadedOrAssignedValue)
1216          {
1217            throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
1218          }
1219          this.OnJobIdChanging(value);
1220          this.SendPropertyChanging();
1221          this._JobId = value;
1222          this.SendPropertyChanged("JobId");
1223          this.OnJobIdChanged();
1224        }
1225      }
1226    }
1227   
1228    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_PluginId", DbType="UniqueIdentifier NOT NULL")]
1229    public System.Guid PluginId
1230    {
1231      get
1232      {
1233        return this._PluginId;
1234      }
1235      set
1236      {
1237        if ((this._PluginId != value))
1238        {
1239          if (this._PluginInfo.HasLoadedOrAssignedValue)
1240          {
1241            throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
1242          }
1243          this.OnPluginIdChanging(value);
1244          this.SendPropertyChanging();
1245          this._PluginId = value;
1246          this.SendPropertyChanged("PluginId");
1247          this.OnPluginIdChanged();
1248        }
1249      }
1250    }
1251   
1252    [global::System.Data.Linq.Mapping.AssociationAttribute(Name="PluginInfo_RequiredPlugin", Storage="_PluginInfo", ThisKey="PluginId", OtherKey="PluginId", IsForeignKey=true, DeleteRule="CASCADE")]
1253    public PluginInfo PluginInfo
1254    {
1255      get
1256      {
1257        return this._PluginInfo.Entity;
1258      }
1259      set
1260      {
1261        PluginInfo previousValue = this._PluginInfo.Entity;
1262        if (((previousValue != value)
1263              || (this._PluginInfo.HasLoadedOrAssignedValue == false)))
1264        {
1265          this.SendPropertyChanging();
1266          if ((previousValue != null))
1267          {
1268            this._PluginInfo.Entity = null;
1269            previousValue.RequiredPlugins.Remove(this);
1270          }
1271          this._PluginInfo.Entity = value;
1272          if ((value != null))
1273          {
1274            value.RequiredPlugins.Add(this);
1275            this._PluginId = value.PluginId;
1276          }
1277          else
1278          {
1279            this._PluginId = default(System.Guid);
1280          }
1281          this.SendPropertyChanged("PluginInfo");
1282        }
1283      }
1284    }
1285   
1286    [global::System.Data.Linq.Mapping.AssociationAttribute(Name="Job_RequiredPlugin", Storage="_Job", ThisKey="JobId", OtherKey="JobId", IsForeignKey=true)]
1287    public Job Job
1288    {
1289      get
1290      {
1291        return this._Job.Entity;
1292      }
1293      set
1294      {
1295        Job previousValue = this._Job.Entity;
1296        if (((previousValue != value)
1297              || (this._Job.HasLoadedOrAssignedValue == false)))
1298        {
1299          this.SendPropertyChanging();
1300          if ((previousValue != null))
1301          {
1302            this._Job.Entity = null;
1303            previousValue.RequiredPlugins.Remove(this);
1304          }
1305          this._Job.Entity = value;
1306          if ((value != null))
1307          {
1308            value.RequiredPlugins.Add(this);
1309            this._JobId = value.JobId;
1310          }
1311          else
1312          {
1313            this._JobId = default(System.Guid);
1314          }
1315          this.SendPropertyChanged("Job");
1316        }
1317      }
1318    }
1319   
1320    public event PropertyChangingEventHandler PropertyChanging;
1321   
1322    public event PropertyChangedEventHandler PropertyChanged;
1323   
1324    protected virtual void SendPropertyChanging()
1325    {
1326      if ((this.PropertyChanging != null))
1327      {
1328        this.PropertyChanging(this, emptyChangingEventArgs);
1329      }
1330    }
1331   
1332    protected virtual void SendPropertyChanged(String propertyName)
1333    {
1334      if ((this.PropertyChanged != null))
1335      {
1336        this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
1337      }
1338    }
1339  }
1340 
1341  [global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.Resource")]
1342  [global::System.Data.Linq.Mapping.InheritanceMappingAttribute(Code="RESOURCE", Type=typeof(Resource))]
1343  [global::System.Data.Linq.Mapping.InheritanceMappingAttribute(Code="Slave", Type=typeof(Slave), IsDefault=true)]
1344  [global::System.Data.Linq.Mapping.InheritanceMappingAttribute(Code="GROUP", Type=typeof(SlaveGroup))]
1345  public partial class Resource : INotifyPropertyChanging, INotifyPropertyChanged
1346  {
1347   
1348    private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
1349   
1350    protected System.Guid _ResourceId;
1351   
1352    private string _Name;
1353   
1354    private string _ResourceType;
1355   
1356    private EntitySet<AssignedResource> _AssignedResources;
1357   
1358    private EntitySet<SlaveGroup_Resource> _SlaveGroup_Resources_Parents;
1359   
1360    private EntitySet<UptimeCalendar> _UptimeCalendars;
1361   
1362    #region Extensibility Method Definitions
1363    partial void OnLoaded();
1364    partial void OnValidate(System.Data.Linq.ChangeAction action);
1365    partial void OnCreated();
1366    partial void OnResourceIdChanging(System.Guid value);
1367    partial void OnResourceIdChanged();
1368    partial void OnNameChanging(string value);
1369    partial void OnNameChanged();
1370    partial void OnResourceTypeChanging(string value);
1371    partial void OnResourceTypeChanged();
1372    #endregion
1373   
1374    public Resource()
1375    {
1376      this._AssignedResources = new EntitySet<AssignedResource>(new Action<AssignedResource>(this.attach_AssignedResources), new Action<AssignedResource>(this.detach_AssignedResources));
1377      this._SlaveGroup_Resources_Parents = new EntitySet<SlaveGroup_Resource>(new Action<SlaveGroup_Resource>(this.attach_SlaveGroup_Resources_Parents), new Action<SlaveGroup_Resource>(this.detach_SlaveGroup_Resources_Parents));
1378      this._UptimeCalendars = new EntitySet<UptimeCalendar>(new Action<UptimeCalendar>(this.attach_UptimeCalendars), new Action<UptimeCalendar>(this.detach_UptimeCalendars));
1379      OnCreated();
1380    }
1381   
1382    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ResourceId", AutoSync=AutoSync.OnInsert, DbType="UniqueIdentifier NOT NULL", IsPrimaryKey=true)]
1383    public System.Guid ResourceId
1384    {
1385      get
1386      {
1387        return this._ResourceId;
1388      }
1389      set
1390      {
1391        if ((this._ResourceId != value))
1392        {
1393          this.OnResourceIdChanging(value);
1394          this.SendPropertyChanging();
1395          this._ResourceId = value;
1396          this.SendPropertyChanged("ResourceId");
1397          this.OnResourceIdChanged();
1398        }
1399      }
1400    }
1401   
1402    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Name", DbType="VarChar(MAX)", CanBeNull=false)]
1403    public string Name
1404    {
1405      get
1406      {
1407        return this._Name;
1408      }
1409      set
1410      {
1411        if ((this._Name != value))
1412        {
1413          this.OnNameChanging(value);
1414          this.SendPropertyChanging();
1415          this._Name = value;
1416          this.SendPropertyChanged("Name");
1417          this.OnNameChanged();
1418        }
1419      }
1420    }
1421   
1422    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ResourceType", CanBeNull=false, IsDiscriminator=true)]
1423    public string ResourceType
1424    {
1425      get
1426      {
1427        return this._ResourceType;
1428      }
1429      set
1430      {
1431        if ((this._ResourceType != value))
1432        {
1433          this.OnResourceTypeChanging(value);
1434          this.SendPropertyChanging();
1435          this._ResourceType = value;
1436          this.SendPropertyChanged("ResourceType");
1437          this.OnResourceTypeChanged();
1438        }
1439      }
1440    }
1441   
1442    [global::System.Data.Linq.Mapping.AssociationAttribute(Name="Resource_AssignedResource", Storage="_AssignedResources", ThisKey="ResourceId", OtherKey="ResourceId")]
1443    public EntitySet<AssignedResource> AssignedResources
1444    {
1445      get
1446      {
1447        return this._AssignedResources;
1448      }
1449      set
1450      {
1451        this._AssignedResources.Assign(value);
1452      }
1453    }
1454   
1455    [global::System.Data.Linq.Mapping.AssociationAttribute(Name="Resource_SlaveGroup_Resource", Storage="_SlaveGroup_Resources_Parents", ThisKey="ResourceId", OtherKey="ResourceId")]
1456    public EntitySet<SlaveGroup_Resource> SlaveGroup_Resources_Parents
1457    {
1458      get
1459      {
1460        return this._SlaveGroup_Resources_Parents;
1461      }
1462      set
1463      {
1464        this._SlaveGroup_Resources_Parents.Assign(value);
1465      }
1466    }
1467   
1468    [global::System.Data.Linq.Mapping.AssociationAttribute(Name="Resource_UptimeCalendar", Storage="_UptimeCalendars", ThisKey="ResourceId", OtherKey="ResourceId")]
1469    public EntitySet<UptimeCalendar> UptimeCalendars
1470    {
1471      get
1472      {
1473        return this._UptimeCalendars;
1474      }
1475      set
1476      {
1477        this._UptimeCalendars.Assign(value);
1478      }
1479    }
1480   
1481    public event PropertyChangingEventHandler PropertyChanging;
1482   
1483    public event PropertyChangedEventHandler PropertyChanged;
1484   
1485    protected virtual void SendPropertyChanging()
1486    {
1487      if ((this.PropertyChanging != null))
1488      {
1489        this.PropertyChanging(this, emptyChangingEventArgs);
1490      }
1491    }
1492   
1493    protected virtual void SendPropertyChanged(String propertyName)
1494    {
1495      if ((this.PropertyChanged != null))
1496      {
1497        this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
1498      }
1499    }
1500   
1501    private void attach_AssignedResources(AssignedResource entity)
1502    {
1503      this.SendPropertyChanging();
1504      entity.Resource = this;
1505    }
1506   
1507    private void detach_AssignedResources(AssignedResource entity)
1508    {
1509      this.SendPropertyChanging();
1510      entity.Resource = null;
1511    }
1512   
1513    private void attach_SlaveGroup_Resources_Parents(SlaveGroup_Resource entity)
1514    {
1515      this.SendPropertyChanging();
1516      entity.Resource = this;
1517    }
1518   
1519    private void detach_SlaveGroup_Resources_Parents(SlaveGroup_Resource entity)
1520    {
1521      this.SendPropertyChanging();
1522      entity.Resource = null;
1523    }
1524   
1525    private void attach_UptimeCalendars(UptimeCalendar entity)
1526    {
1527      this.SendPropertyChanging();
1528      entity.Resource = this;
1529    }
1530   
1531    private void detach_UptimeCalendars(UptimeCalendar entity)
1532    {
1533      this.SendPropertyChanging();
1534      entity.Resource = null;
1535    }
1536  }
1537 
1538  public partial class Slave : Resource
1539  {
1540   
1541    private System.Nullable<int> _CPUSpeed;
1542   
1543    private System.Nullable<int> _Memory;
1544   
1545    private System.Nullable<System.DateTime> _Login;
1546   
1547    private string _Status;
1548   
1549    private string _CalendarSyncStatus;
1550   
1551    private System.Nullable<System.Guid> _UseCalendarFromResourceId;
1552   
1553    private System.Nullable<System.Guid> _SlaveConfigId;
1554   
1555    private System.Nullable<int> _NumberOfCores;
1556   
1557    private System.Nullable<int> _NumberOfFreeCores;
1558   
1559    private System.Nullable<int> _FreeMemory;
1560   
1561    private bool _IsAllowedToCalculate;
1562   
1563    private EntitySet<UptimeStatistic> _UptimeStatistics;
1564   
1565    private EntitySet<Job> _Jobs;
1566   
1567    private EntityRef<SlaveConfig> _SlaveConfig;
1568   
1569    #region Extensibility Method Definitions
1570    partial void OnLoaded();
1571    partial void OnValidate(System.Data.Linq.ChangeAction action);
1572    partial void OnCreated();
1573    partial void OnCPUSpeedChanging(System.Nullable<int> value);
1574    partial void OnCPUSpeedChanged();
1575    partial void OnMemoryChanging(System.Nullable<int> value);
1576    partial void OnMemoryChanged();
1577    partial void OnLoginChanging(System.Nullable<System.DateTime> value);
1578    partial void OnLoginChanged();
1579    partial void OnStatusChanging(string value);
1580    partial void OnStatusChanged();
1581    partial void OnCalendarSyncStatusChanging(string value);
1582    partial void OnCalendarSyncStatusChanged();
1583    partial void OnUseCalendarFromResourceIdChanging(System.Nullable<System.Guid> value);
1584    partial void OnUseCalendarFromResourceIdChanged();
1585    partial void OnSlaveConfigIdChanging(System.Nullable<System.Guid> value);
1586    partial void OnSlaveConfigIdChanged();
1587    partial void OnNumberOfCoresChanging(System.Nullable<int> value);
1588    partial void OnNumberOfCoresChanged();
1589    partial void OnNumberOfFreeCoresChanging(System.Nullable<int> value);
1590    partial void OnNumberOfFreeCoresChanged();
1591    partial void OnFreeMemoryChanging(System.Nullable<int> value);
1592    partial void OnFreeMemoryChanged();
1593    partial void OnIsAllowedToCalculateChanging(bool value);
1594    partial void OnIsAllowedToCalculateChanged();
1595    #endregion
1596   
1597    public Slave()
1598    {
1599      this._UptimeStatistics = new EntitySet<UptimeStatistic>(new Action<UptimeStatistic>(this.attach_UptimeStatistics), new Action<UptimeStatistic>(this.detach_UptimeStatistics));
1600      this._Jobs = new EntitySet<Job>(new Action<Job>(this.attach_Jobs), new Action<Job>(this.detach_Jobs));
1601      this._SlaveConfig = default(EntityRef<SlaveConfig>);
1602      OnCreated();
1603    }
1604   
1605    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_CPUSpeed", DbType="Int")]
1606    public System.Nullable<int> CPUSpeed
1607    {
1608      get
1609      {
1610        return this._CPUSpeed;
1611      }
1612      set
1613      {
1614        if ((this._CPUSpeed != value))
1615        {
1616          this.OnCPUSpeedChanging(value);
1617          this.SendPropertyChanging();
1618          this._CPUSpeed = value;
1619          this.SendPropertyChanged("CPUSpeed");
1620          this.OnCPUSpeedChanged();
1621        }
1622      }
1623    }
1624   
1625    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Memory", DbType="Int")]
1626    public System.Nullable<int> Memory
1627    {
1628      get
1629      {
1630        return this._Memory;
1631      }
1632      set
1633      {
1634        if ((this._Memory != value))
1635        {
1636          this.OnMemoryChanging(value);
1637          this.SendPropertyChanging();
1638          this._Memory = value;
1639          this.SendPropertyChanged("Memory");
1640          this.OnMemoryChanged();
1641        }
1642      }
1643    }
1644   
1645    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Login", DbType="DateTime")]
1646    public System.Nullable<System.DateTime> Login
1647    {
1648      get
1649      {
1650        return this._Login;
1651      }
1652      set
1653      {
1654        if ((this._Login != value))
1655        {
1656          this.OnLoginChanging(value);
1657          this.SendPropertyChanging();
1658          this._Login = value;
1659          this.SendPropertyChanged("Login");
1660          this.OnLoginChanged();
1661        }
1662      }
1663    }
1664   
1665    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Status", DbType="VarChar(MAX)")]
1666    public string Status
1667    {
1668      get
1669      {
1670        return this._Status;
1671      }
1672      set
1673      {
1674        if ((this._Status != value))
1675        {
1676          this.OnStatusChanging(value);
1677          this.SendPropertyChanging();
1678          this._Status = value;
1679          this.SendPropertyChanged("Status");
1680          this.OnStatusChanged();
1681        }
1682      }
1683    }
1684   
1685    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_CalendarSyncStatus", DbType="VarChar(MAX)")]
1686    public string CalendarSyncStatus
1687    {
1688      get
1689      {
1690        return this._CalendarSyncStatus;
1691      }
1692      set
1693      {
1694        if ((this._CalendarSyncStatus != value))
1695        {
1696          this.OnCalendarSyncStatusChanging(value);
1697          this.SendPropertyChanging();
1698          this._CalendarSyncStatus = value;
1699          this.SendPropertyChanged("CalendarSyncStatus");
1700          this.OnCalendarSyncStatusChanged();
1701        }
1702      }
1703    }
1704   
1705    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_UseCalendarFromResourceId", DbType="UniqueIdentifier")]
1706    public System.Nullable<System.Guid> UseCalendarFromResourceId
1707    {
1708      get
1709      {
1710        return this._UseCalendarFromResourceId;
1711      }
1712      set
1713      {
1714        if ((this._UseCalendarFromResourceId != value))
1715        {
1716          this.OnUseCalendarFromResourceIdChanging(value);
1717          this.SendPropertyChanging();
1718          this._UseCalendarFromResourceId = value;
1719          this.SendPropertyChanged("UseCalendarFromResourceId");
1720          this.OnUseCalendarFromResourceIdChanged();
1721        }
1722      }
1723    }
1724   
1725    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_SlaveConfigId", DbType="UniqueIdentifier")]
1726    public System.Nullable<System.Guid> SlaveConfigId
1727    {
1728      get
1729      {
1730        return this._SlaveConfigId;
1731      }
1732      set
1733      {
1734        if ((this._SlaveConfigId != value))
1735        {
1736          if (this._SlaveConfig.HasLoadedOrAssignedValue)
1737          {
1738            throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
1739          }
1740          this.OnSlaveConfigIdChanging(value);
1741          this.SendPropertyChanging();
1742          this._SlaveConfigId = value;
1743          this.SendPropertyChanged("SlaveConfigId");
1744          this.OnSlaveConfigIdChanged();
1745        }
1746      }
1747    }
1748   
1749    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_NumberOfCores", DbType="Int")]
1750    public System.Nullable<int> NumberOfCores
1751    {
1752      get
1753      {
1754        return this._NumberOfCores;
1755      }
1756      set
1757      {
1758        if ((this._NumberOfCores != value))
1759        {
1760          this.OnNumberOfCoresChanging(value);
1761          this.SendPropertyChanging();
1762          this._NumberOfCores = value;
1763          this.SendPropertyChanged("NumberOfCores");
1764          this.OnNumberOfCoresChanged();
1765        }
1766      }
1767    }
1768   
1769    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_NumberOfFreeCores", DbType="Int")]
1770    public System.Nullable<int> NumberOfFreeCores
1771    {
1772      get
1773      {
1774        return this._NumberOfFreeCores;
1775      }
1776      set
1777      {
1778        if ((this._NumberOfFreeCores != value))
1779        {
1780          this.OnNumberOfFreeCoresChanging(value);
1781          this.SendPropertyChanging();
1782          this._NumberOfFreeCores = value;
1783          this.SendPropertyChanged("NumberOfFreeCores");
1784          this.OnNumberOfFreeCoresChanged();
1785        }
1786      }
1787    }
1788   
1789    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_FreeMemory", DbType="Int")]
1790    public System.Nullable<int> FreeMemory
1791    {
1792      get
1793      {
1794        return this._FreeMemory;
1795      }
1796      set
1797      {
1798        if ((this._FreeMemory != value))
1799        {
1800          this.OnFreeMemoryChanging(value);
1801          this.SendPropertyChanging();
1802          this._FreeMemory = value;
1803          this.SendPropertyChanged("FreeMemory");
1804          this.OnFreeMemoryChanged();
1805        }
1806      }
1807    }
1808   
1809    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_IsAllowedToCalculate", DbType="Bit")]
1810    public bool IsAllowedToCalculate
1811    {
1812      get
1813      {
1814        return this._IsAllowedToCalculate;
1815      }
1816      set
1817      {
1818        if ((this._IsAllowedToCalculate != value))
1819        {
1820          this.OnIsAllowedToCalculateChanging(value);
1821          this.SendPropertyChanging();
1822          this._IsAllowedToCalculate = value;
1823          this.SendPropertyChanged("IsAllowedToCalculate");
1824          this.OnIsAllowedToCalculateChanged();
1825        }
1826      }
1827    }
1828   
1829    [global::System.Data.Linq.Mapping.AssociationAttribute(Name="Slave_UptimeStatistic", Storage="_UptimeStatistics", ThisKey="ResourceId", OtherKey="ResourceId")]
1830    public EntitySet<UptimeStatistic> UptimeStatistics
1831    {
1832      get
1833      {
1834        return this._UptimeStatistics;
1835      }
1836      set
1837      {
1838        this._UptimeStatistics.Assign(value);
1839      }
1840    }
1841   
1842    [global::System.Data.Linq.Mapping.AssociationAttribute(Name="Slave_Job", Storage="_Jobs", ThisKey="ResourceId", OtherKey="ResourceId")]
1843    public EntitySet<Job> Jobs
1844    {
1845      get
1846      {
1847        return this._Jobs;
1848      }
1849      set
1850      {
1851        this._Jobs.Assign(value);
1852      }
1853    }
1854   
1855    [global::System.Data.Linq.Mapping.AssociationAttribute(Name="SlaveConfig_Slave", Storage="_SlaveConfig", ThisKey="SlaveConfigId", OtherKey="SlaveConfigId", IsForeignKey=true, DeleteRule="SET NULL")]
1856    public SlaveConfig SlaveConfig
1857    {
1858      get
1859      {
1860        return this._SlaveConfig.Entity;
1861      }
1862      set
1863      {
1864        SlaveConfig previousValue = this._SlaveConfig.Entity;
1865        if (((previousValue != value)
1866              || (this._SlaveConfig.HasLoadedOrAssignedValue == false)))
1867        {
1868          this.SendPropertyChanging();
1869          if ((previousValue != null))
1870          {
1871            this._SlaveConfig.Entity = null;
1872            previousValue.Slaves.Remove(this);
1873          }
1874          this._SlaveConfig.Entity = value;
1875          if ((value != null))
1876          {
1877            value.Slaves.Add(this);
1878            this._SlaveConfigId = value.SlaveConfigId;
1879          }
1880          else
1881          {
1882            this._SlaveConfigId = default(Nullable<System.Guid>);
1883          }
1884          this.SendPropertyChanged("SlaveConfig");
1885        }
1886      }
1887    }
1888   
1889    private void attach_UptimeStatistics(UptimeStatistic entity)
1890    {
1891      this.SendPropertyChanging();
1892      entity.Slave = this;
1893    }
1894   
1895    private void detach_UptimeStatistics(UptimeStatistic entity)
1896    {
1897      this.SendPropertyChanging();
1898      entity.Slave = null;
1899    }
1900   
1901    private void attach_Jobs(Job entity)
1902    {
1903      this.SendPropertyChanging();
1904      entity.Slave = this;
1905    }
1906   
1907    private void detach_Jobs(Job entity)
1908    {
1909      this.SendPropertyChanging();
1910      entity.Slave = null;
1911    }
1912  }
1913 
1914  public partial class SlaveGroup : Resource
1915  {
1916   
1917    private EntitySet<SlaveGroup_Resource> _SlaveGroup_Resources_Children;
1918   
1919    #region Extensibility Method Definitions
1920    partial void OnLoaded();
1921    partial void OnValidate(System.Data.Linq.ChangeAction action);
1922    partial void OnCreated();
1923    #endregion
1924   
1925    public SlaveGroup()
1926    {
1927      this._SlaveGroup_Resources_Children = new EntitySet<SlaveGroup_Resource>(new Action<SlaveGroup_Resource>(this.attach_SlaveGroup_Resources_Children), new Action<SlaveGroup_Resource>(this.detach_SlaveGroup_Resources_Children));
1928      OnCreated();
1929    }
1930   
1931    [global::System.Data.Linq.Mapping.AssociationAttribute(Name="SlaveGroup_SlaveGroup_Resource", Storage="_SlaveGroup_Resources_Children", ThisKey="ResourceId", OtherKey="SlaveGroupId")]
1932    public EntitySet<SlaveGroup_Resource> SlaveGroup_Resources_Children
1933    {
1934      get
1935      {
1936        return this._SlaveGroup_Resources_Children;
1937      }
1938      set
1939      {
1940        this._SlaveGroup_Resources_Children.Assign(value);
1941      }
1942    }
1943   
1944    private void attach_SlaveGroup_Resources_Children(SlaveGroup_Resource entity)
1945    {
1946      this.SendPropertyChanging();
1947      entity.SlaveGroup = this;
1948    }
1949   
1950    private void detach_SlaveGroup_Resources_Children(SlaveGroup_Resource entity)
1951    {
1952      this.SendPropertyChanging();
1953      entity.SlaveGroup = null;
1954    }
1955  }
1956 
1957  [global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.Job")]
1958  public partial class Job : INotifyPropertyChanging, INotifyPropertyChanged
1959  {
1960   
1961    private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
1962   
1963    private System.Guid _JobId;
1964   
1965    private System.Nullable<System.Guid> _ParentJobId;
1966   
1967    private string _JobState;
1968   
1969    private System.Nullable<System.Guid> _ResourceId;
1970   
1971    private System.Nullable<System.TimeSpan> _ExecutionTime;
1972   
1973    private string _Exception;
1974   
1975    private System.Data.Linq.Link<System.Data.Linq.Binary> _SerializedJob;
1976   
1977    private System.Nullable<System.DateTime> _DateCreated;
1978   
1979    private System.Nullable<System.DateTime> _DateCalculated;
1980   
1981    private System.Nullable<System.DateTime> _DateFinished;
1982   
1983    private int _Priority;
1984   
1985    private System.Nullable<System.Guid> _ProjectId;
1986   
1987    private System.Guid _UserId;
1988   
1989    private int _CoresNeeded;
1990   
1991    private int _MemoryNeeded;
1992   
1993    private EntitySet<AssignedResource> _AssignedResources;
1994   
1995    private EntitySet<RequiredPlugin> _RequiredPlugins;
1996   
1997    private EntitySet<Job> _Jobs;
1998   
1999    private EntityRef<Job> _Job1;
2000   
2001    private EntityRef<Project> _Project;
2002   
2003    private EntityRef<Slave> _Slave;
2004   
2005    #region Extensibility Method Definitions
2006    partial void OnLoaded();
2007    partial void OnValidate(System.Data.Linq.ChangeAction action);
2008    partial void OnCreated();
2009    partial void OnJobIdChanging(System.Guid value);
2010    partial void OnJobIdChanged();
2011    partial void OnParentJobIdChanging(System.Nullable<System.Guid> value);
2012    partial void OnParentJobIdChanged();
2013    partial void OnJobStateChanging(string value);
2014    partial void OnJobStateChanged();
2015    partial void OnResourceIdChanging(System.Nullable<System.Guid> value);
2016    partial void OnResourceIdChanged();
2017    partial void OnExecutionTimeChanging(System.Nullable<System.TimeSpan> value);
2018    partial void OnExecutionTimeChanged();
2019    partial void OnExceptionChanging(string value);
2020    partial void OnExceptionChanged();
2021    partial void OnSerializedJobChanging(System.Data.Linq.Binary value);
2022    partial void OnSerializedJobChanged();
2023    partial void OnDateCreatedChanging(System.Nullable<System.DateTime> value);
2024    partial void OnDateCreatedChanged();
2025    partial void OnDateCalculatedChanging(System.Nullable<System.DateTime> value);
2026    partial void OnDateCalculatedChanged();
2027    partial void OnDateFinishedChanging(System.Nullable<System.DateTime> value);
2028    partial void OnDateFinishedChanged();
2029    partial void OnPriorityChanging(int value);
2030    partial void OnPriorityChanged();
2031    partial void OnProjectIdChanging(System.Nullable<System.Guid> value);
2032    partial void OnProjectIdChanged();
2033    partial void OnUserIdChanging(System.Guid value);
2034    partial void OnUserIdChanged();
2035    partial void OnCoresNeededChanging(int value);
2036    partial void OnCoresNeededChanged();
2037    partial void OnMemoryNeededChanging(int value);
2038    partial void OnMemoryNeededChanged();
2039    #endregion
2040   
2041    public Job()
2042    {
2043      this._AssignedResources = new EntitySet<AssignedResource>(new Action<AssignedResource>(this.attach_AssignedResources), new Action<AssignedResource>(this.detach_AssignedResources));
2044      this._RequiredPlugins = new EntitySet<RequiredPlugin>(new Action<RequiredPlugin>(this.attach_RequiredPlugins), new Action<RequiredPlugin>(this.detach_RequiredPlugins));
2045      this._Jobs = new EntitySet<Job>(new Action<Job>(this.attach_Jobs), new Action<Job>(this.detach_Jobs));
2046      this._Job1 = default(EntityRef<Job>);
2047      this._Project = default(EntityRef<Project>);
2048      this._Slave = default(EntityRef<Slave>);
2049      OnCreated();
2050    }
2051   
2052    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_JobId", AutoSync=AutoSync.OnInsert, DbType="UniqueIdentifier NOT NULL", IsPrimaryKey=true, IsDbGenerated=true)]
2053    public System.Guid JobId
2054    {
2055      get
2056      {
2057        return this._JobId;
2058      }
2059      set
2060      {
2061        if ((this._JobId != value))
2062        {
2063          this.OnJobIdChanging(value);
2064          this.SendPropertyChanging();
2065          this._JobId = value;
2066          this.SendPropertyChanged("JobId");
2067          this.OnJobIdChanged();
2068        }
2069      }
2070    }
2071   
2072    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ParentJobId", DbType="UniqueIdentifier")]
2073    public System.Nullable<System.Guid> ParentJobId
2074    {
2075      get
2076      {
2077        return this._ParentJobId;
2078      }
2079      set
2080      {
2081        if ((this._ParentJobId != value))
2082        {
2083          if (this._Job1.HasLoadedOrAssignedValue)
2084          {
2085            throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
2086          }
2087          this.OnParentJobIdChanging(value);
2088          this.SendPropertyChanging();
2089          this._ParentJobId = value;
2090          this.SendPropertyChanged("ParentJobId");
2091          this.OnParentJobIdChanged();
2092        }
2093      }
2094    }
2095   
2096    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_JobState", DbType="VarChar(MAX)", CanBeNull=false)]
2097    public string JobState
2098    {
2099      get
2100      {
2101        return this._JobState;
2102      }
2103      set
2104      {
2105        if ((this._JobState != value))
2106        {
2107          this.OnJobStateChanging(value);
2108          this.SendPropertyChanging();
2109          this._JobState = value;
2110          this.SendPropertyChanged("JobState");
2111          this.OnJobStateChanged();
2112        }
2113      }
2114    }
2115   
2116    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ResourceId", DbType="UniqueIdentifier")]
2117    public System.Nullable<System.Guid> ResourceId
2118    {
2119      get
2120      {
2121        return this._ResourceId;
2122      }
2123      set
2124      {
2125        if ((this._ResourceId != value))
2126        {
2127          if (this._Slave.HasLoadedOrAssignedValue)
2128          {
2129            throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
2130          }
2131          this.OnResourceIdChanging(value);
2132          this.SendPropertyChanging();
2133          this._ResourceId = value;
2134          this.SendPropertyChanged("ResourceId");
2135          this.OnResourceIdChanged();
2136        }
2137      }
2138    }
2139   
2140    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ExecutionTime", DbType="Time")]
2141    public System.Nullable<System.TimeSpan> ExecutionTime
2142    {
2143      get
2144      {
2145        return this._ExecutionTime;
2146      }
2147      set
2148      {
2149        if ((this._ExecutionTime != value))
2150        {
2151          this.OnExecutionTimeChanging(value);
2152          this.SendPropertyChanging();
2153          this._ExecutionTime = value;
2154          this.SendPropertyChanged("ExecutionTime");
2155          this.OnExecutionTimeChanged();
2156        }
2157      }
2158    }
2159   
2160    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Exception", DbType="VarChar(MAX)")]
2161    public string Exception
2162    {
2163      get
2164      {
2165        return this._Exception;
2166      }
2167      set
2168      {
2169        if ((this._Exception != value))
2170        {
2171          this.OnExceptionChanging(value);
2172          this.SendPropertyChanging();
2173          this._Exception = value;
2174          this.SendPropertyChanged("Exception");
2175          this.OnExceptionChanged();
2176        }
2177      }
2178    }
2179   
2180    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_SerializedJob", DbType="VarBinary(MAX)", CanBeNull=false, UpdateCheck=UpdateCheck.Never)]
2181    public System.Data.Linq.Binary SerializedJob
2182    {
2183      get
2184      {
2185        return this._SerializedJob.Value;
2186      }
2187      set
2188      {
2189        if ((this._SerializedJob.Value != value))
2190        {
2191          this.OnSerializedJobChanging(value);
2192          this.SendPropertyChanging();
2193          this._SerializedJob.Value = value;
2194          this.SendPropertyChanged("SerializedJob");
2195          this.OnSerializedJobChanged();
2196        }
2197      }
2198    }
2199   
2200    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_DateCreated", DbType="DateTime")]
2201    public System.Nullable<System.DateTime> DateCreated
2202    {
2203      get
2204      {
2205        return this._DateCreated;
2206      }
2207      set
2208      {
2209        if ((this._DateCreated != value))
2210        {
2211          this.OnDateCreatedChanging(value);
2212          this.SendPropertyChanging();
2213          this._DateCreated = value;
2214          this.SendPropertyChanged("DateCreated");
2215          this.OnDateCreatedChanged();
2216        }
2217      }
2218    }
2219   
2220    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_DateCalculated", DbType="DateTime")]
2221    public System.Nullable<System.DateTime> DateCalculated
2222    {
2223      get
2224      {
2225        return this._DateCalculated;
2226      }
2227      set
2228      {
2229        if ((this._DateCalculated != value))
2230        {
2231          this.OnDateCalculatedChanging(value);
2232          this.SendPropertyChanging();
2233          this._DateCalculated = value;
2234          this.SendPropertyChanged("DateCalculated");
2235          this.OnDateCalculatedChanged();
2236        }
2237      }
2238    }
2239   
2240    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_DateFinished", DbType="DateTime")]
2241    public System.Nullable<System.DateTime> DateFinished
2242    {
2243      get
2244      {
2245        return this._DateFinished;
2246      }
2247      set
2248      {
2249        if ((this._DateFinished != value))
2250        {
2251          this.OnDateFinishedChanging(value);
2252          this.SendPropertyChanging();
2253          this._DateFinished = value;
2254          this.SendPropertyChanged("DateFinished");
2255          this.OnDateFinishedChanged();
2256        }
2257      }
2258    }
2259   
2260    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Priority", DbType="Int NOT NULL")]
2261    public int Priority
2262    {
2263      get
2264      {
2265        return this._Priority;
2266      }
2267      set
2268      {
2269        if ((this._Priority != value))
2270        {
2271          this.OnPriorityChanging(value);
2272          this.SendPropertyChanging();
2273          this._Priority = value;
2274          this.SendPropertyChanged("Priority");
2275          this.OnPriorityChanged();
2276        }
2277      }
2278    }
2279   
2280    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ProjectId", DbType="UniqueIdentifier")]
2281    public System.Nullable<System.Guid> ProjectId
2282    {
2283      get
2284      {
2285        return this._ProjectId;
2286      }
2287      set
2288      {
2289        if ((this._ProjectId != value))
2290        {
2291          if (this._Project.HasLoadedOrAssignedValue)
2292          {
2293            throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
2294          }
2295          this.OnProjectIdChanging(value);
2296          this.SendPropertyChanging();
2297          this._ProjectId = value;
2298          this.SendPropertyChanged("ProjectId");
2299          this.OnProjectIdChanged();
2300        }
2301      }
2302    }
2303   
2304    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_UserId", DbType="UniqueIdentifier")]
2305    public System.Guid UserId
2306    {
2307      get
2308      {
2309        return this._UserId;
2310      }
2311      set
2312      {
2313        if ((this._UserId != value))
2314        {
2315          this.OnUserIdChanging(value);
2316          this.SendPropertyChanging();
2317          this._UserId = value;
2318          this.SendPropertyChanged("UserId");
2319          this.OnUserIdChanged();
2320        }
2321      }
2322    }
2323   
2324    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_CoresNeeded", DbType="Int NOT NULL")]
2325    public int CoresNeeded
2326    {
2327      get
2328      {
2329        return this._CoresNeeded;
2330      }
2331      set
2332      {
2333        if ((this._CoresNeeded != value))
2334        {
2335          this.OnCoresNeededChanging(value);
2336          this.SendPropertyChanging();
2337          this._CoresNeeded = value;
2338          this.SendPropertyChanged("CoresNeeded");
2339          this.OnCoresNeededChanged();
2340        }
2341      }
2342    }
2343   
2344    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_MemoryNeeded", DbType="Int NOT NULL")]
2345    public int MemoryNeeded
2346    {
2347      get
2348      {
2349        return this._MemoryNeeded;
2350      }
2351      set
2352      {
2353        if ((this._MemoryNeeded != value))
2354        {
2355          this.OnMemoryNeededChanging(value);
2356          this.SendPropertyChanging();
2357          this._MemoryNeeded = value;
2358          this.SendPropertyChanged("MemoryNeeded");
2359          this.OnMemoryNeededChanged();
2360        }
2361      }
2362    }
2363   
2364    [global::System.Data.Linq.Mapping.AssociationAttribute(Name="Job_AssignedResource", Storage="_AssignedResources", ThisKey="JobId", OtherKey="JobId")]
2365    public EntitySet<AssignedResource> AssignedResources
2366    {
2367      get
2368      {
2369        return this._AssignedResources;
2370      }
2371      set
2372      {
2373        this._AssignedResources.Assign(value);
2374      }
2375    }
2376   
2377    [global::System.Data.Linq.Mapping.AssociationAttribute(Name="Job_RequiredPlugin", Storage="_RequiredPlugins", ThisKey="JobId", OtherKey="JobId")]
2378    public EntitySet<RequiredPlugin> RequiredPlugins
2379    {
2380      get
2381      {
2382        return this._RequiredPlugins;
2383      }
2384      set
2385      {
2386        this._RequiredPlugins.Assign(value);
2387      }
2388    }
2389   
2390    [global::System.Data.Linq.Mapping.AssociationAttribute(Name="Job_Job", Storage="_Jobs", ThisKey="JobId", OtherKey="ParentJobId")]
2391    public EntitySet<Job> Jobs
2392    {
2393      get
2394      {
2395        return this._Jobs;
2396      }
2397      set
2398      {
2399        this._Jobs.Assign(value);
2400      }
2401    }
2402   
2403    [global::System.Data.Linq.Mapping.AssociationAttribute(Name="Job_Job", Storage="_Job1", ThisKey="ParentJobId", OtherKey="JobId", IsForeignKey=true)]
2404    public Job Job1
2405    {
2406      get
2407      {
2408        return this._Job1.Entity;
2409      }
2410      set
2411      {
2412        Job previousValue = this._Job1.Entity;
2413        if (((previousValue != value)
2414              || (this._Job1.HasLoadedOrAssignedValue == false)))
2415        {
2416          this.SendPropertyChanging();
2417          if ((previousValue != null))
2418          {
2419            this._Job1.Entity = null;
2420            previousValue.Jobs.Remove(this);
2421          }
2422          this._Job1.Entity = value;
2423          if ((value != null))
2424          {
2425            value.Jobs.Add(this);
2426            this._ParentJobId = value.JobId;
2427          }
2428          else
2429          {
2430            this._ParentJobId = default(Nullable<System.Guid>);
2431          }
2432          this.SendPropertyChanged("Job1");
2433        }
2434      }
2435    }
2436   
2437    [global::System.Data.Linq.Mapping.AssociationAttribute(Name="Project_Job", Storage="_Project", ThisKey="ProjectId", OtherKey="ProjectId", IsForeignKey=true, DeleteRule="SET NULL")]
2438    public Project Project
2439    {
2440      get
2441      {
2442        return this._Project.Entity;
2443      }
2444      set
2445      {
2446        Project previousValue = this._Project.Entity;
2447        if (((previousValue != value)
2448              || (this._Project.HasLoadedOrAssignedValue == false)))
2449        {
2450          this.SendPropertyChanging();
2451          if ((previousValue != null))
2452          {
2453            this._Project.Entity = null;
2454            previousValue.Jobs.Remove(this);
2455          }
2456          this._Project.Entity = value;
2457          if ((value != null))
2458          {
2459            value.Jobs.Add(this);
2460            this._ProjectId = value.ProjectId;
2461          }
2462          else
2463          {
2464            this._ProjectId = default(Nullable<System.Guid>);
2465          }
2466          this.SendPropertyChanged("Project");
2467        }
2468      }
2469    }
2470   
2471    [global::System.Data.Linq.Mapping.AssociationAttribute(Name="Slave_Job", Storage="_Slave", ThisKey="ResourceId", OtherKey="ResourceId", IsForeignKey=true, DeleteRule="SET NULL")]
2472    public Slave Slave
2473    {
2474      get
2475      {
2476        return this._Slave.Entity;
2477      }
2478      set
2479      {
2480        Slave previousValue = this._Slave.Entity;
2481        if (((previousValue != value)
2482              || (this._Slave.HasLoadedOrAssignedValue == false)))
2483        {
2484          this.SendPropertyChanging();
2485          if ((previousValue != null))
2486          {
2487            this._Slave.Entity = null;
2488            previousValue.Jobs.Remove(this);
2489          }
2490          this._Slave.Entity = value;
2491          if ((value != null))
2492          {
2493            value.Jobs.Add(this);
2494            this._ResourceId = value.ResourceId;
2495          }
2496          else
2497          {
2498            this._ResourceId = default(Nullable<System.Guid>);
2499          }
2500          this.SendPropertyChanged("Slave");
2501        }
2502      }
2503    }
2504   
2505    public event PropertyChangingEventHandler PropertyChanging;
2506   
2507    public event PropertyChangedEventHandler PropertyChanged;
2508   
2509    protected virtual void SendPropertyChanging()
2510    {
2511      if ((this.PropertyChanging != null))
2512      {
2513        this.PropertyChanging(this, emptyChangingEventArgs);
2514      }
2515    }
2516   
2517    protected virtual void SendPropertyChanged(String propertyName)
2518    {
2519      if ((this.PropertyChanged != null))
2520      {
2521        this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
2522      }
2523    }
2524   
2525    private void attach_AssignedResources(AssignedResource entity)
2526    {
2527      this.SendPropertyChanging();
2528      entity.Job = this;
2529    }
2530   
2531    private void detach_AssignedResources(AssignedResource entity)
2532    {
2533      this.SendPropertyChanging();
2534      entity.Job = null;
2535    }
2536   
2537    private void attach_RequiredPlugins(RequiredPlugin entity)
2538    {
2539      this.SendPropertyChanging();
2540      entity.Job = this;
2541    }
2542   
2543    private void detach_RequiredPlugins(RequiredPlugin entity)
2544    {
2545      this.SendPropertyChanging();
2546      entity.Job = null;
2547    }
2548   
2549    private void attach_Jobs(Job entity)
2550    {
2551      this.SendPropertyChanging();
2552      entity.Job1 = this;
2553    }
2554   
2555    private void detach_Jobs(Job entity)
2556    {
2557      this.SendPropertyChanging();
2558      entity.Job1 = null;
2559    }
2560  }
2561 
2562  [global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.UptimeCalendar")]
2563  public partial class UptimeCalendar : INotifyPropertyChanging, INotifyPropertyChanged
2564  {
2565   
2566    private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
2567   
2568    private System.Guid _UptimeCalendarId;
2569   
2570    private System.Guid _ResourceId;
2571   
2572    private System.DateTime _StartDate;
2573   
2574    private System.DateTime _EndDate;
2575   
2576    private bool _AllDayEvent;
2577   
2578    private bool _Recurring;
2579   
2580    private System.Guid _RecurringId;
2581   
2582    private EntityRef<Resource> _Resource;
2583   
2584    #region Extensibility Method Definitions
2585    partial void OnLoaded();
2586    partial void OnValidate(System.Data.Linq.ChangeAction action);
2587    partial void OnCreated();
2588    partial void OnUptimeCalendarIdChanging(System.Guid value);
2589    partial void OnUptimeCalendarIdChanged();
2590    partial void OnResourceIdChanging(System.Guid value);
2591    partial void OnResourceIdChanged();
2592    partial void OnStartDateChanging(System.DateTime value);
2593    partial void OnStartDateChanged();
2594    partial void OnEndDateChanging(System.DateTime value);
2595    partial void OnEndDateChanged();
2596    partial void OnAllDayEventChanging(bool value);
2597    partial void OnAllDayEventChanged();
2598    partial void OnRecurringChanging(bool value);
2599    partial void OnRecurringChanged();
2600    partial void OnRecurringIdChanging(System.Guid value);
2601    partial void OnRecurringIdChanged();
2602    #endregion
2603   
2604    public UptimeCalendar()
2605    {
2606      this._Resource = default(EntityRef<Resource>);
2607      OnCreated();
2608    }
2609   
2610    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_UptimeCalendarId", AutoSync=AutoSync.OnInsert, DbType="UniqueIdentifier NOT NULL", IsPrimaryKey=true, IsDbGenerated=true)]
2611    public System.Guid UptimeCalendarId
2612    {
2613      get
2614      {
2615        return this._UptimeCalendarId;
2616      }
2617      set
2618      {
2619        if ((this._UptimeCalendarId != value))
2620        {
2621          this.OnUptimeCalendarIdChanging(value);
2622          this.SendPropertyChanging();
2623          this._UptimeCalendarId = value;
2624          this.SendPropertyChanged("UptimeCalendarId");
2625          this.OnUptimeCalendarIdChanged();
2626        }
2627      }
2628    }
2629   
2630    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ResourceId", DbType="UniqueIdentifier NOT NULL")]
2631    public System.Guid ResourceId
2632    {
2633      get
2634      {
2635        return this._ResourceId;
2636      }
2637      set
2638      {
2639        if ((this._ResourceId != value))
2640        {
2641          if (this._Resource.HasLoadedOrAssignedValue)
2642          {
2643            throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
2644          }
2645          this.OnResourceIdChanging(value);
2646          this.SendPropertyChanging();
2647          this._ResourceId = value;
2648          this.SendPropertyChanged("ResourceId");
2649          this.OnResourceIdChanged();
2650        }
2651      }
2652    }
2653   
2654    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_StartDate", DbType="DateTime NOT NULL")]
2655    public System.DateTime StartDate
2656    {
2657      get
2658      {
2659        return this._StartDate;
2660      }
2661      set
2662      {
2663        if ((this._StartDate != value))
2664        {
2665          this.OnStartDateChanging(value);
2666          this.SendPropertyChanging();
2667          this._StartDate = value;
2668          this.SendPropertyChanged("StartDate");
2669          this.OnStartDateChanged();
2670        }
2671      }
2672    }
2673   
2674    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_EndDate", DbType="DateTime NOT NULL")]
2675    public System.DateTime EndDate
2676    {
2677      get
2678      {
2679        return this._EndDate;
2680      }
2681      set
2682      {
2683        if ((this._EndDate != value))
2684        {
2685          this.OnEndDateChanging(value);
2686          this.SendPropertyChanging();
2687          this._EndDate = value;
2688          this.SendPropertyChanged("EndDate");
2689          this.OnEndDateChanged();
2690        }
2691      }
2692    }
2693   
2694    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_AllDayEvent", DbType="Bit NOT NULL")]
2695    public bool AllDayEvent
2696    {
2697      get
2698      {
2699        return this._AllDayEvent;
2700      }
2701      set
2702      {
2703        if ((this._AllDayEvent != value))
2704        {
2705          this.OnAllDayEventChanging(value);
2706          this.SendPropertyChanging();
2707          this._AllDayEvent = value;
2708          this.SendPropertyChanged("AllDayEvent");
2709          this.OnAllDayEventChanged();
2710        }
2711      }
2712    }
2713   
2714    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Recurring", DbType="Bit NOT NULL")]
2715    public bool Recurring
2716    {
2717      get
2718      {
2719        return this._Recurring;
2720      }
2721      set
2722      {
2723        if ((this._Recurring != value))
2724        {
2725          this.OnRecurringChanging(value);
2726          this.SendPropertyChanging();
2727          this._Recurring = value;
2728          this.SendPropertyChanged("Recurring");
2729          this.OnRecurringChanged();
2730        }
2731      }
2732    }
2733   
2734    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_RecurringId", DbType="UniqueIdentifier")]
2735    public System.Guid RecurringId
2736    {
2737      get
2738      {
2739        return this._RecurringId;
2740      }
2741      set
2742      {
2743        if ((this._RecurringId != value))
2744        {
2745          this.OnRecurringIdChanging(value);
2746          this.SendPropertyChanging();
2747          this._RecurringId = value;
2748          this.SendPropertyChanged("RecurringId");
2749          this.OnRecurringIdChanged();
2750        }
2751      }
2752    }
2753   
2754    [global::System.Data.Linq.Mapping.AssociationAttribute(Name="Resource_UptimeCalendar", Storage="_Resource", ThisKey="ResourceId", OtherKey="ResourceId", IsForeignKey=true, DeleteRule="CASCADE")]
2755    public Resource Resource
2756    {
2757      get
2758      {
2759        return this._Resource.Entity;
2760      }
2761      set
2762      {
2763        Resource previousValue = this._Resource.Entity;
2764        if (((previousValue != value)
2765              || (this._Resource.HasLoadedOrAssignedValue == false)))
2766        {
2767          this.SendPropertyChanging();
2768          if ((previousValue != null))
2769          {
2770            this._Resource.Entity = null;
2771            previousValue.UptimeCalendars.Remove(this);
2772          }
2773          this._Resource.Entity = value;
2774          if ((value != null))
2775          {
2776            value.UptimeCalendars.Add(this);
2777            this._ResourceId = value.ResourceId;
2778          }
2779          else
2780          {
2781            this._ResourceId = default(System.Guid);
2782          }
2783          this.SendPropertyChanged("Resource");
2784        }
2785      }
2786    }
2787   
2788    public event PropertyChangingEventHandler PropertyChanging;
2789   
2790    public event PropertyChangedEventHandler PropertyChanged;
2791   
2792    protected virtual void SendPropertyChanging()
2793    {
2794      if ((this.PropertyChanging != null))
2795      {
2796        this.PropertyChanging(this, emptyChangingEventArgs);
2797      }
2798    }
2799   
2800    protected virtual void SendPropertyChanged(String propertyName)
2801    {
2802      if ((this.PropertyChanged != null))
2803      {
2804        this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
2805      }
2806    }
2807  }
2808 
2809  [global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.HiveExperiment")]
2810  public partial class HiveExperiment : INotifyPropertyChanging, INotifyPropertyChanged
2811  {
2812   
2813    private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
2814   
2815    private System.Guid _HiveExperimentId;
2816   
2817    private string _Name;
2818   
2819    private string _Description;
2820   
2821    private string _ResourceIds;
2822   
2823    private System.Guid _UserId;
2824   
2825    private System.Nullable<System.Guid> _RootJobId;
2826   
2827    private EntityRef<Job> _Job;
2828   
2829    #region Extensibility Method Definitions
2830    partial void OnLoaded();
2831    partial void OnValidate(System.Data.Linq.ChangeAction action);
2832    partial void OnCreated();
2833    partial void OnHiveExperimentIdChanging(System.Guid value);
2834    partial void OnHiveExperimentIdChanged();
2835    partial void OnNameChanging(string value);
2836    partial void OnNameChanged();
2837    partial void OnDescriptionChanging(string value);
2838    partial void OnDescriptionChanged();
2839    partial void OnResourceIdsChanging(string value);
2840    partial void OnResourceIdsChanged();
2841    partial void OnUserIdChanging(System.Guid value);
2842    partial void OnUserIdChanged();
2843    partial void OnRootJobIdChanging(System.Nullable<System.Guid> value);
2844    partial void OnRootJobIdChanged();
2845    #endregion
2846   
2847    public HiveExperiment()
2848    {
2849      this._Job = default(EntityRef<Job>);
2850      OnCreated();
2851    }
2852   
2853    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_HiveExperimentId", AutoSync=AutoSync.OnInsert, DbType="UniqueIdentifier NOT NULL", IsPrimaryKey=true, IsDbGenerated=true)]
2854    public System.Guid HiveExperimentId
2855    {
2856      get
2857      {
2858        return this._HiveExperimentId;
2859      }
2860      set
2861      {
2862        if ((this._HiveExperimentId != value))
2863        {
2864          this.OnHiveExperimentIdChanging(value);
2865          this.SendPropertyChanging();
2866          this._HiveExperimentId = value;
2867          this.SendPropertyChanged("HiveExperimentId");
2868          this.OnHiveExperimentIdChanged();
2869        }
2870      }
2871    }
2872   
2873    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Name", DbType="VarChar(MAX)", CanBeNull=false)]
2874    public string Name
2875    {
2876      get
2877      {
2878        return this._Name;
2879      }
2880      set
2881      {
2882        if ((this._Name != value))
2883        {
2884          this.OnNameChanging(value);
2885          this.SendPropertyChanging();
2886          this._Name = value;
2887          this.SendPropertyChanged("Name");
2888          this.OnNameChanged();
2889        }
2890      }
2891    }
2892   
2893    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Description", DbType="VarChar(MAX)")]
2894    public string Description
2895    {
2896      get
2897      {
2898        return this._Description;
2899      }
2900      set
2901      {
2902        if ((this._Description != value))
2903        {
2904          this.OnDescriptionChanging(value);
2905          this.SendPropertyChanging();
2906          this._Description = value;
2907          this.SendPropertyChanged("Description");
2908          this.OnDescriptionChanged();
2909        }
2910      }
2911    }
2912   
2913    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ResourceIds", DbType="VarChar(MAX)")]
2914    public string ResourceIds
2915    {
2916      get
2917      {
2918        return this._ResourceIds;
2919      }
2920      set
2921      {
2922        if ((this._ResourceIds != value))
2923        {
2924          this.OnResourceIdsChanging(value);
2925          this.SendPropertyChanging();
2926          this._ResourceIds = value;
2927          this.SendPropertyChanged("ResourceIds");
2928          this.OnResourceIdsChanged();
2929        }
2930      }
2931    }
2932   
2933    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_UserId", DbType="UniqueIdentifier")]
2934    public System.Guid UserId
2935    {
2936      get
2937      {
2938        return this._UserId;
2939      }
2940      set
2941      {
2942        if ((this._UserId != value))
2943        {
2944          this.OnUserIdChanging(value);
2945          this.SendPropertyChanging();
2946          this._UserId = value;
2947          this.SendPropertyChanged("UserId");
2948          this.OnUserIdChanged();
2949        }
2950      }
2951    }
2952   
2953    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_RootJobId", DbType="UniqueIdentifier")]
2954    public System.Nullable<System.Guid> RootJobId
2955    {
2956      get
2957      {
2958        return this._RootJobId;
2959      }
2960      set
2961      {
2962        if ((this._RootJobId != value))
2963        {
2964          if (this._Job.HasLoadedOrAssignedValue)
2965          {
2966            throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
2967          }
2968          this.OnRootJobIdChanging(value);
2969          this.SendPropertyChanging();
2970          this._RootJobId = value;
2971          this.SendPropertyChanged("RootJobId");
2972          this.OnRootJobIdChanged();
2973        }
2974      }
2975    }
2976   
2977    [global::System.Data.Linq.Mapping.AssociationAttribute(Name="Job_HiveExperiment", Storage="_Job", ThisKey="RootJobId", OtherKey="JobId", IsForeignKey=true, DeleteRule="CASCADE")]
2978    public Job RootJob
2979    {
2980      get
2981      {
2982        return this._Job.Entity;
2983      }
2984      set
2985      {
2986        if ((this._Job.Entity != value))
2987        {
2988          this.SendPropertyChanging();
2989          this._Job.Entity = value;
2990          this.SendPropertyChanged("RootJob");
2991        }
2992      }
2993    }
2994   
2995    public event PropertyChangingEventHandler PropertyChanging;
2996   
2997    public event PropertyChangedEventHandler PropertyChanged;
2998   
2999    protected virtual void SendPropertyChanging()
3000    {
3001      if ((this.PropertyChanging != null))
3002      {
3003        this.PropertyChanging(this, emptyChangingEventArgs);
3004      }
3005    }
3006   
3007    protected virtual void SendPropertyChanged(String propertyName)
3008    {
3009      if ((this.PropertyChanged != null))
3010      {
3011        this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
3012      }
3013    }
3014  }
3015}
3016#pragma warning restore 1591
Note: See TracBrowser for help on using the repository browser.