Free cookie consent management tool by TermsFeed Policy Generator

source: branches/HeuristicLab.Hive/sources/HeuristicLab.Hive.New/HeuristicLab.Services.Hive.DataAccess/3.3/HiveDataContext.designer.cs @ 4615

Last change on this file since 4615 was 4615, checked in by cneumuel, 14 years ago

renamed folder, implemented heartbeat logic (#1233)

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