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 @ 4423

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