Changeset 5779


Ignore:
Timestamp:
03/21/11 15:05:48 (11 years ago)
Author:
cneumuel
Message:

#1233

  • implemented pause, stop for single jobs
  • introduced Command property for jobs (to distinguish between state and command (abort vs. aborted))
  • improved behaviour of ItemTreeView (double click opens new window, selected item stays marked)
  • fixed bugs in StateLogGanttChartListView and HiveJobView
  • fixed cloning of client-side dtos
Location:
branches/HeuristicLab.Hive-3.4/sources
Files:
3 added
41 edited

Legend:

Unmodified
Added
Removed
  • branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Clients.Hive.LifecycleClient

    • Property svn:ignore
      •  

        old new  
        22obj
        33*.vs10x
         4*.user
  • branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Clients.Hive.Slave.Tests/Mocks/MockHiveService.cs

    r5636 r5779  
    194194      // do nothing
    195195    }
     196
     197    public void RestartJob(Guid jobId) {
     198      // do nothing
     199    }
    196200    #endregion
    197201
  • branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Clients.Hive.Views/3.4/ExperimentManager/GanttChart.Designer.cs

    r5636 r5779  
    5151      series1.YValueType = System.Windows.Forms.DataVisualization.Charting.ChartValueType.Time;
    5252      this.chart.Series.Add(series1);
    53       this.chart.Size = new System.Drawing.Size(709, 347);
     53      this.chart.Size = new System.Drawing.Size(687, 347);
    5454      this.chart.TabIndex = 0;
    5555      this.chart.Text = "chart";
     
    6161      this.Controls.Add(this.chart);
    6262      this.Name = "GanttChart";
    63       this.Size = new System.Drawing.Size(709, 347);
     63      this.Size = new System.Drawing.Size(687, 347);
    6464      ((System.ComponentModel.ISupportInitialize)(this.chart)).EndInit();
    6565      this.ResumeLayout(false);
  • branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Clients.Hive.Views/3.4/ExperimentManager/HiveExperimentView.Designer.cs

    r5675 r5779  
    5252      this.experimentNamedItemView = new HeuristicLab.Core.Views.NamedItemView();
    5353      this.viewExperimentButton = new System.Windows.Forms.Button();
     54      this.jobsTabPage = new System.Windows.Forms.TabPage();
     55      this.jobsTreeView = new HeuristicLab.Clients.Hive.Views.ItemTreeView();
    5456      this.logTabPage = new System.Windows.Forms.TabPage();
    5557      this.logView = new HeuristicLab.Core.Views.LogView();
     
    6769      this.downloadExperimentPanel = new System.Windows.Forms.Panel();
    6870      this.useLocalPluginsCheckBox = new System.Windows.Forms.CheckBox();
    69       this.jobsTabPage = new System.Windows.Forms.TabPage();
    70       this.jobsTreeView = new HeuristicLab.Clients.Hive.Views.ItemTreeView();
    7171      ((System.ComponentModel.ISupportInitialize)(this.errorProvider)).BeginInit();
    7272      this.tabControl.SuspendLayout();
    7373      this.experimentTabPage.SuspendLayout();
     74      this.jobsTabPage.SuspendLayout();
    7475      this.logTabPage.SuspendLayout();
    7576      this.downloadExperimentPanel.SuspendLayout();
    76       this.jobsTabPage.SuspendLayout();
    7777      this.SuspendLayout();
    7878      //
     
    161161      this.viewExperimentButton.Click += new System.EventHandler(this.showExperimentButton_Click);
    162162      //
     163      // jobsTabPage
     164      //
     165      this.jobsTabPage.Controls.Add(this.jobsTreeView);
     166      this.jobsTabPage.Location = new System.Drawing.Point(4, 22);
     167      this.jobsTabPage.Name = "jobsTabPage";
     168      this.jobsTabPage.Size = new System.Drawing.Size(791, 494);
     169      this.jobsTabPage.TabIndex = 5;
     170      this.jobsTabPage.Text = "Jobs";
     171      this.jobsTabPage.UseVisualStyleBackColor = true;
     172      //
     173      // jobsTreeView
     174      //
     175      this.jobsTreeView.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
     176                  | System.Windows.Forms.AnchorStyles.Left)
     177                  | System.Windows.Forms.AnchorStyles.Right)));
     178      this.jobsTreeView.Caption = "ItemTree View";
     179      this.jobsTreeView.Content = null;
     180      this.jobsTreeView.Location = new System.Drawing.Point(2, 3);
     181      this.jobsTreeView.Name = "jobsTreeView";
     182      this.jobsTreeView.ReadOnly = false;
     183      this.jobsTreeView.Size = new System.Drawing.Size(786, 488);
     184      this.jobsTreeView.TabIndex = 0;
     185      //
    163186      // logTabPage
    164187      //
     
    330353      this.useLocalPluginsCheckBox.UseVisualStyleBackColor = true;
    331354      this.useLocalPluginsCheckBox.CheckedChanged += new System.EventHandler(this.useLocalPluginsCheckBox_CheckedChanged);
    332       //
    333       // jobsTabPage
    334       //
    335       this.jobsTabPage.Controls.Add(this.jobsTreeView);
    336       this.jobsTabPage.Location = new System.Drawing.Point(4, 22);
    337       this.jobsTabPage.Name = "jobsTabPage";
    338       this.jobsTabPage.Size = new System.Drawing.Size(791, 494);
    339       this.jobsTabPage.TabIndex = 5;
    340       this.jobsTabPage.Text = "Jobs";
    341       this.jobsTabPage.UseVisualStyleBackColor = true;
    342       //
    343       // jobsTreeView
    344       //
    345       this.jobsTreeView.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
    346                   | System.Windows.Forms.AnchorStyles.Left)
    347                   | System.Windows.Forms.AnchorStyles.Right)));
    348       this.jobsTreeView.Caption = "ItemTree View";
    349       this.jobsTreeView.Content = null;
    350       this.jobsTreeView.Location = new System.Drawing.Point(2, 3);
    351       this.jobsTreeView.Name = "jobsTreeView";
    352       this.jobsTreeView.ReadOnly = false;
    353       this.jobsTreeView.Size = new System.Drawing.Size(786, 488);
    354       this.jobsTreeView.TabIndex = 0;
    355355      //
    356356      // HiveExperimentView
     
    393393      this.tabControl.ResumeLayout(false);
    394394      this.experimentTabPage.ResumeLayout(false);
     395      this.jobsTabPage.ResumeLayout(false);
    395396      this.logTabPage.ResumeLayout(false);
    396397      this.downloadExperimentPanel.ResumeLayout(false);
    397       this.jobsTabPage.ResumeLayout(false);
    398398      this.ResumeLayout(false);
    399399      this.PerformLayout();
  • branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Clients.Hive.Views/3.4/ExperimentManager/HiveJobView.cs

    r5718 r5779  
    107107        if (Content != null && Content.Job != null) {
    108108          this.jobIdTextBox.Text = Content.Job.Id.ToString();
    109           this.dateCreatedTextBox.Text = Content.Job.DateCreated.HasValue ? Content.Job.DateCreated.ToString() : "-";
     109          this.dateCreatedTextBox.Text = Content.Job.DateCreated.HasValue ? Content.Job.DateCreated.ToString() : string.Empty;
    110110          this.priorityTextBox.Text = Content.Job.Priority.ToString();
    111111          this.coresNeededTextBox.Text = Content.Job.CoresNeeded.ToString();
     
    129129          this.executionTimeTextBox.Text = Content.Job.ExecutionTime.ToString();
    130130          this.dateFinishedTextBox.Text = Content.Job.DateFinished.ToString();
    131           this.exceptionTextBox.Text = Content.Job.CurrentStateLog.Exception;
     131          this.exceptionTextBox.Text = Content.Job.CurrentStateLog != null ? Content.Job.CurrentStateLog.Exception : string.Empty;
    132132          if (Content.OptimizerJob.ComputeInParallel) {
    133133            this.stateLogViewHost.Content = new StateLogListList(
     
    145145          this.stateLogViewHost.Content = null;
    146146        }
     147        SetEnabledStateOfControls();
    147148      }
    148149    }
     
    163164      this.computeInParallelCheckBox.Enabled = !this.ReadOnly && this.Content != null && this.Content.OptimizerJob != null && this.Content.OptimizerJob.IsParallelizable;
    164165
     166      this.restartButton.Enabled = Content != null && Content.Job.State == JobState.Paused;
     167      this.pauseButton.Enabled = Content != null && Content.Job.State == JobState.Calculating;
     168      this.stopButton.Enabled = Content != null && (Content.Job.State == JobState.Calculating || Content.Job.State == JobState.Waiting || Content.Job.State == JobState.Paused);
     169
    165170      optimizerNamedItemView.ReadOnly = true;
    166171    }
     
    180185      }
    181186    }
     187
     188    private void exceptionTextBox_DoubleClick(object sender, EventArgs e) {
     189      using (TextDialog dialog = new TextDialog("Exception", exceptionTextBox.Text, ReadOnly || !Content.CanChangeDescription)) {
     190        if (dialog.ShowDialog(this) == DialogResult.OK)
     191          Content.Description = dialog.Content;
     192      }
     193    }
     194
     195    private void restartButton_Click(object sender, EventArgs e) {
     196      Content.Restart();
     197    }
     198
     199    private void pauseButton_Click(object sender, EventArgs e) {
     200      Content.Pause();
     201    }
     202
     203    private void stopButton_Click(object sender, EventArgs e) {
     204      Content.Stop();
     205    }
    182206  }
    183207}
  • branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Clients.Hive.Views/3.4/ExperimentManager/HiveJobView.designer.cs

    r5718 r5779  
    2424    /// </summary>
    2525    private void InitializeComponent() {
     26      System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(HiveJobView));
    2627      this.logTabPage = new System.Windows.Forms.TabPage();
    2728      this.logView = new HeuristicLab.Core.Views.LogView();
     
    3132      this.runCollectionViewHost = new HeuristicLab.MainForm.WindowsForms.ViewHost();
    3233      this.detailsTabPage = new System.Windows.Forms.TabPage();
    33       this.jobStatusGroupBox = new System.Windows.Forms.GroupBox();
    34       this.exceptionTextBox = new System.Windows.Forms.TextBox();
    35       this.dateFinishedLabel = new System.Windows.Forms.Label();
    36       this.dateCreatedLabel = new System.Windows.Forms.Label();
    37       this.exceptionLabel = new System.Windows.Forms.Label();
    38       this.executionTimeLabel = new System.Windows.Forms.Label();
    39       this.dateCreatedTextBox = new System.Windows.Forms.TextBox();
    40       this.executionTimeTextBox = new System.Windows.Forms.TextBox();
    41       this.dateFinishedTextBox = new System.Windows.Forms.TextBox();
    42       this.dateCalculatedText = new System.Windows.Forms.TextBox();
    43       this.stateLabel = new System.Windows.Forms.Label();
    44       this.dateCalculatedLabel = new System.Windows.Forms.Label();
    45       this.stateTextBox = new System.Windows.Forms.TextBox();
    46       this.jobIdTextBox = new System.Windows.Forms.TextBox();
    47       this.jobIdLabel = new System.Windows.Forms.Label();
    48       this.configurationGroupBox = new System.Windows.Forms.GroupBox();
    49       this.computeInParallelCheckBox = new System.Windows.Forms.CheckBox();
    50       this.computeInParallelLabel = new System.Windows.Forms.Label();
    51       this.coresNeededLabel = new System.Windows.Forms.Label();
    52       this.memoryNeededLabel = new System.Windows.Forms.Label();
    53       this.memoryNeededTextBox = new System.Windows.Forms.TextBox();
    54       this.coresNeededTextBox = new System.Windows.Forms.TextBox();
    55       this.priorityLabel = new System.Windows.Forms.Label();
    56       this.priorityTextBox = new System.Windows.Forms.TextBox();
    5734      this.optimizerGroupBox = new System.Windows.Forms.GroupBox();
    5835      this.optimizerNamedItemView = new HeuristicLab.Core.Views.NamedItemView();
     36      this.configurationGroupBox = new System.Windows.Forms.GroupBox();
     37      this.priorityTextBox = new System.Windows.Forms.TextBox();
     38      this.priorityLabel = new System.Windows.Forms.Label();
     39      this.coresNeededTextBox = new System.Windows.Forms.TextBox();
     40      this.memoryNeededTextBox = new System.Windows.Forms.TextBox();
     41      this.memoryNeededLabel = new System.Windows.Forms.Label();
     42      this.coresNeededLabel = new System.Windows.Forms.Label();
     43      this.computeInParallelLabel = new System.Windows.Forms.Label();
     44      this.computeInParallelCheckBox = new System.Windows.Forms.CheckBox();
     45      this.jobIdLabel = new System.Windows.Forms.Label();
     46      this.jobIdTextBox = new System.Windows.Forms.TextBox();
     47      this.jobStatusGroupBox = new System.Windows.Forms.GroupBox();
     48      this.stateTextBox = new System.Windows.Forms.TextBox();
     49      this.dateCalculatedLabel = new System.Windows.Forms.Label();
     50      this.stateLabel = new System.Windows.Forms.Label();
     51      this.dateCalculatedText = new System.Windows.Forms.TextBox();
     52      this.dateFinishedTextBox = new System.Windows.Forms.TextBox();
     53      this.executionTimeTextBox = new System.Windows.Forms.TextBox();
     54      this.dateCreatedTextBox = new System.Windows.Forms.TextBox();
     55      this.executionTimeLabel = new System.Windows.Forms.Label();
     56      this.exceptionLabel = new System.Windows.Forms.Label();
     57      this.dateCreatedLabel = new System.Windows.Forms.Label();
     58      this.dateFinishedLabel = new System.Windows.Forms.Label();
     59      this.exceptionTextBox = new System.Windows.Forms.TextBox();
    5960      this.tabControl = new System.Windows.Forms.TabControl();
     61      this.restartButton = new System.Windows.Forms.Button();
     62      this.pauseButton = new System.Windows.Forms.Button();
     63      this.stopButton = new System.Windows.Forms.Button();
    6064      this.logTabPage.SuspendLayout();
    6165      this.stateLogTabPage.SuspendLayout();
    6266      this.runsTabPage.SuspendLayout();
    6367      this.detailsTabPage.SuspendLayout();
     68      this.optimizerGroupBox.SuspendLayout();
     69      this.configurationGroupBox.SuspendLayout();
    6470      this.jobStatusGroupBox.SuspendLayout();
    65       this.configurationGroupBox.SuspendLayout();
    66       this.optimizerGroupBox.SuspendLayout();
    6771      this.tabControl.SuspendLayout();
    6872      this.SuspendLayout();
     
    7478      this.logTabPage.Name = "logTabPage";
    7579      this.logTabPage.Padding = new System.Windows.Forms.Padding(3);
    76       this.logTabPage.Size = new System.Drawing.Size(619, 492);
     80      this.logTabPage.Size = new System.Drawing.Size(406, 492);
    7781      this.logTabPage.TabIndex = 1;
    7882      this.logTabPage.Text = "Log";
     
    97101      this.stateLogTabPage.Location = new System.Drawing.Point(4, 22);
    98102      this.stateLogTabPage.Name = "stateLogTabPage";
    99       this.stateLogTabPage.Size = new System.Drawing.Size(619, 492);
     103      this.stateLogTabPage.Size = new System.Drawing.Size(611, 492);
    100104      this.stateLogTabPage.TabIndex = 5;
    101105      this.stateLogTabPage.Text = "State";
     
    104108      // stateLogViewHost
    105109      //
    106       this.stateLogViewHost.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
    107                   | System.Windows.Forms.AnchorStyles.Left)
    108                   | System.Windows.Forms.AnchorStyles.Right)));
    109110      this.stateLogViewHost.Caption = "View";
    110111      this.stateLogViewHost.Content = null;
     112      this.stateLogViewHost.Dock = System.Windows.Forms.DockStyle.Fill;
    111113      this.stateLogViewHost.Enabled = false;
    112114      this.stateLogViewHost.Location = new System.Drawing.Point(0, 0);
    113115      this.stateLogViewHost.Name = "stateLogViewHost";
    114116      this.stateLogViewHost.ReadOnly = false;
    115       this.stateLogViewHost.Size = new System.Drawing.Size(619, 492);
     117      this.stateLogViewHost.Size = new System.Drawing.Size(611, 492);
    116118      this.stateLogViewHost.TabIndex = 0;
    117119      this.stateLogViewHost.ViewsLabelVisible = true;
     
    123125      this.runsTabPage.Location = new System.Drawing.Point(4, 22);
    124126      this.runsTabPage.Name = "runsTabPage";
    125       this.runsTabPage.Size = new System.Drawing.Size(619, 492);
     127      this.runsTabPage.Size = new System.Drawing.Size(406, 492);
    126128      this.runsTabPage.TabIndex = 4;
    127129      this.runsTabPage.Text = "Runs";
     
    146148      // detailsTabPage
    147149      //
     150      this.detailsTabPage.Controls.Add(this.restartButton);
     151      this.detailsTabPage.Controls.Add(this.pauseButton);
     152      this.detailsTabPage.Controls.Add(this.stopButton);
    148153      this.detailsTabPage.Controls.Add(this.optimizerGroupBox);
    149154      this.detailsTabPage.Controls.Add(this.configurationGroupBox);
     
    154159      this.detailsTabPage.Name = "detailsTabPage";
    155160      this.detailsTabPage.Padding = new System.Windows.Forms.Padding(3);
    156       this.detailsTabPage.Size = new System.Drawing.Size(619, 492);
     161      this.detailsTabPage.Size = new System.Drawing.Size(611, 492);
    157162      this.detailsTabPage.TabIndex = 0;
    158163      this.detailsTabPage.Text = "Details";
    159164      this.detailsTabPage.UseVisualStyleBackColor = true;
     165      //
     166      // optimizerGroupBox
     167      //
     168      this.optimizerGroupBox.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
     169                  | System.Windows.Forms.AnchorStyles.Right)));
     170      this.optimizerGroupBox.Controls.Add(this.optimizerNamedItemView);
     171      this.optimizerGroupBox.Location = new System.Drawing.Point(6, 29);
     172      this.optimizerGroupBox.Name = "optimizerGroupBox";
     173      this.optimizerGroupBox.Size = new System.Drawing.Size(599, 74);
     174      this.optimizerGroupBox.TabIndex = 28;
     175      this.optimizerGroupBox.TabStop = false;
     176      this.optimizerGroupBox.Text = "Optimizer";
     177      //
     178      // optimizerNamedItemView
     179      //
     180      this.optimizerNamedItemView.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
     181                  | System.Windows.Forms.AnchorStyles.Right)));
     182      this.optimizerNamedItemView.Caption = "NamedItem View";
     183      this.optimizerNamedItemView.Content = null;
     184      this.optimizerNamedItemView.Location = new System.Drawing.Point(6, 20);
     185      this.optimizerNamedItemView.Name = "optimizerNamedItemView";
     186      this.optimizerNamedItemView.ReadOnly = false;
     187      this.optimizerNamedItemView.Size = new System.Drawing.Size(587, 51);
     188      this.optimizerNamedItemView.TabIndex = 0;
     189      //
     190      // configurationGroupBox
     191      //
     192      this.configurationGroupBox.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
     193                  | System.Windows.Forms.AnchorStyles.Right)));
     194      this.configurationGroupBox.Controls.Add(this.priorityTextBox);
     195      this.configurationGroupBox.Controls.Add(this.priorityLabel);
     196      this.configurationGroupBox.Controls.Add(this.coresNeededTextBox);
     197      this.configurationGroupBox.Controls.Add(this.memoryNeededTextBox);
     198      this.configurationGroupBox.Controls.Add(this.memoryNeededLabel);
     199      this.configurationGroupBox.Controls.Add(this.coresNeededLabel);
     200      this.configurationGroupBox.Controls.Add(this.computeInParallelLabel);
     201      this.configurationGroupBox.Controls.Add(this.computeInParallelCheckBox);
     202      this.configurationGroupBox.Location = new System.Drawing.Point(6, 106);
     203      this.configurationGroupBox.Name = "configurationGroupBox";
     204      this.configurationGroupBox.Size = new System.Drawing.Size(599, 119);
     205      this.configurationGroupBox.TabIndex = 27;
     206      this.configurationGroupBox.TabStop = false;
     207      this.configurationGroupBox.Text = "Configuration";
     208      //
     209      // priorityTextBox
     210      //
     211      this.priorityTextBox.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
     212                  | System.Windows.Forms.AnchorStyles.Right)));
     213      this.priorityTextBox.Location = new System.Drawing.Point(108, 66);
     214      this.priorityTextBox.Name = "priorityTextBox";
     215      this.priorityTextBox.Size = new System.Drawing.Size(485, 20);
     216      this.priorityTextBox.TabIndex = 41;
     217      //
     218      // priorityLabel
     219      //
     220      this.priorityLabel.AutoSize = true;
     221      this.priorityLabel.Location = new System.Drawing.Point(7, 66);
     222      this.priorityLabel.Name = "priorityLabel";
     223      this.priorityLabel.Size = new System.Drawing.Size(41, 13);
     224      this.priorityLabel.TabIndex = 42;
     225      this.priorityLabel.Text = "Priority:";
     226      //
     227      // coresNeededTextBox
     228      //
     229      this.coresNeededTextBox.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
     230                  | System.Windows.Forms.AnchorStyles.Right)));
     231      this.coresNeededTextBox.Location = new System.Drawing.Point(108, 20);
     232      this.coresNeededTextBox.Name = "coresNeededTextBox";
     233      this.coresNeededTextBox.Size = new System.Drawing.Size(485, 20);
     234      this.coresNeededTextBox.TabIndex = 37;
     235      //
     236      // memoryNeededTextBox
     237      //
     238      this.memoryNeededTextBox.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
     239                  | System.Windows.Forms.AnchorStyles.Right)));
     240      this.memoryNeededTextBox.Location = new System.Drawing.Point(108, 42);
     241      this.memoryNeededTextBox.Name = "memoryNeededTextBox";
     242      this.memoryNeededTextBox.Size = new System.Drawing.Size(485, 20);
     243      this.memoryNeededTextBox.TabIndex = 38;
     244      //
     245      // memoryNeededLabel
     246      //
     247      this.memoryNeededLabel.AutoSize = true;
     248      this.memoryNeededLabel.Location = new System.Drawing.Point(7, 42);
     249      this.memoryNeededLabel.Name = "memoryNeededLabel";
     250      this.memoryNeededLabel.Size = new System.Drawing.Size(85, 13);
     251      this.memoryNeededLabel.TabIndex = 40;
     252      this.memoryNeededLabel.Text = "MemoryNeeded:";
     253      //
     254      // coresNeededLabel
     255      //
     256      this.coresNeededLabel.AutoSize = true;
     257      this.coresNeededLabel.Location = new System.Drawing.Point(7, 20);
     258      this.coresNeededLabel.Name = "coresNeededLabel";
     259      this.coresNeededLabel.Size = new System.Drawing.Size(75, 13);
     260      this.coresNeededLabel.TabIndex = 39;
     261      this.coresNeededLabel.Text = "CoresNeeded:";
     262      //
     263      // computeInParallelLabel
     264      //
     265      this.computeInParallelLabel.AutoSize = true;
     266      this.computeInParallelLabel.Location = new System.Drawing.Point(7, 93);
     267      this.computeInParallelLabel.Name = "computeInParallelLabel";
     268      this.computeInParallelLabel.Size = new System.Drawing.Size(95, 13);
     269      this.computeInParallelLabel.TabIndex = 36;
     270      this.computeInParallelLabel.Text = "ComputeInParallel:";
     271      //
     272      // computeInParallelCheckBox
     273      //
     274      this.computeInParallelCheckBox.AutoSize = true;
     275      this.computeInParallelCheckBox.Location = new System.Drawing.Point(108, 92);
     276      this.computeInParallelCheckBox.Name = "computeInParallelCheckBox";
     277      this.computeInParallelCheckBox.Size = new System.Drawing.Size(15, 14);
     278      this.computeInParallelCheckBox.TabIndex = 35;
     279      this.computeInParallelCheckBox.UseVisualStyleBackColor = true;
     280      this.computeInParallelCheckBox.CheckedChanged += new System.EventHandler(this.computeInParallelCheckBox_CheckedChanged);
     281      //
     282      // jobIdLabel
     283      //
     284      this.jobIdLabel.AutoSize = true;
     285      this.jobIdLabel.Location = new System.Drawing.Point(3, 6);
     286      this.jobIdLabel.Name = "jobIdLabel";
     287      this.jobIdLabel.Size = new System.Drawing.Size(36, 13);
     288      this.jobIdLabel.TabIndex = 25;
     289      this.jobIdLabel.Text = "JobId:";
     290      //
     291      // jobIdTextBox
     292      //
     293      this.jobIdTextBox.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
     294                  | System.Windows.Forms.AnchorStyles.Right)));
     295      this.jobIdTextBox.Location = new System.Drawing.Point(91, 6);
     296      this.jobIdTextBox.Name = "jobIdTextBox";
     297      this.jobIdTextBox.Size = new System.Drawing.Size(514, 20);
     298      this.jobIdTextBox.TabIndex = 26;
    160299      //
    161300      // jobStatusGroupBox
     
    177316      this.jobStatusGroupBox.Location = new System.Drawing.Point(6, 226);
    178317      this.jobStatusGroupBox.Name = "jobStatusGroupBox";
    179       this.jobStatusGroupBox.Size = new System.Drawing.Size(610, 162);
     318      this.jobStatusGroupBox.Size = new System.Drawing.Size(599, 162);
    180319      this.jobStatusGroupBox.TabIndex = 24;
    181320      this.jobStatusGroupBox.TabStop = false;
    182321      this.jobStatusGroupBox.Text = "Job Status";
    183322      //
    184       // exceptionTextBox
    185       //
    186       this.exceptionTextBox.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
    187                   | System.Windows.Forms.AnchorStyles.Right)));
    188       this.exceptionTextBox.Location = new System.Drawing.Point(95, 129);
    189       this.exceptionTextBox.Name = "exceptionTextBox";
    190       this.exceptionTextBox.Size = new System.Drawing.Size(509, 20);
    191       this.exceptionTextBox.TabIndex = 10;
     323      // stateTextBox
     324      //
     325      this.stateTextBox.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
     326                  | System.Windows.Forms.AnchorStyles.Right)));
     327      this.stateTextBox.Location = new System.Drawing.Point(95, 19);
     328      this.stateTextBox.Name = "stateTextBox";
     329      this.stateTextBox.Size = new System.Drawing.Size(498, 20);
     330      this.stateTextBox.TabIndex = 2;
     331      //
     332      // dateCalculatedLabel
     333      //
     334      this.dateCalculatedLabel.AutoSize = true;
     335      this.dateCalculatedLabel.Location = new System.Drawing.Point(7, 85);
     336      this.dateCalculatedLabel.Name = "dateCalculatedLabel";
     337      this.dateCalculatedLabel.Size = new System.Drawing.Size(83, 13);
     338      this.dateCalculatedLabel.TabIndex = 23;
     339      this.dateCalculatedLabel.Text = "DateCalculated:";
     340      //
     341      // stateLabel
     342      //
     343      this.stateLabel.AutoSize = true;
     344      this.stateLabel.Location = new System.Drawing.Point(7, 19);
     345      this.stateLabel.Name = "stateLabel";
     346      this.stateLabel.Size = new System.Drawing.Size(35, 13);
     347      this.stateLabel.TabIndex = 0;
     348      this.stateLabel.Text = "State:";
     349      //
     350      // dateCalculatedText
     351      //
     352      this.dateCalculatedText.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
     353                  | System.Windows.Forms.AnchorStyles.Right)));
     354      this.dateCalculatedText.Location = new System.Drawing.Point(95, 85);
     355      this.dateCalculatedText.Name = "dateCalculatedText";
     356      this.dateCalculatedText.Size = new System.Drawing.Size(498, 20);
     357      this.dateCalculatedText.TabIndex = 22;
     358      //
     359      // dateFinishedTextBox
     360      //
     361      this.dateFinishedTextBox.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
     362                  | System.Windows.Forms.AnchorStyles.Right)));
     363      this.dateFinishedTextBox.Location = new System.Drawing.Point(95, 107);
     364      this.dateFinishedTextBox.Name = "dateFinishedTextBox";
     365      this.dateFinishedTextBox.Size = new System.Drawing.Size(498, 20);
     366      this.dateFinishedTextBox.TabIndex = 6;
     367      //
     368      // executionTimeTextBox
     369      //
     370      this.executionTimeTextBox.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
     371                  | System.Windows.Forms.AnchorStyles.Right)));
     372      this.executionTimeTextBox.Location = new System.Drawing.Point(95, 41);
     373      this.executionTimeTextBox.Name = "executionTimeTextBox";
     374      this.executionTimeTextBox.Size = new System.Drawing.Size(498, 20);
     375      this.executionTimeTextBox.TabIndex = 4;
     376      //
     377      // dateCreatedTextBox
     378      //
     379      this.dateCreatedTextBox.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
     380                  | System.Windows.Forms.AnchorStyles.Right)));
     381      this.dateCreatedTextBox.Location = new System.Drawing.Point(95, 63);
     382      this.dateCreatedTextBox.Name = "dateCreatedTextBox";
     383      this.dateCreatedTextBox.Size = new System.Drawing.Size(498, 20);
     384      this.dateCreatedTextBox.TabIndex = 5;
     385      //
     386      // executionTimeLabel
     387      //
     388      this.executionTimeLabel.AutoSize = true;
     389      this.executionTimeLabel.Location = new System.Drawing.Point(7, 41);
     390      this.executionTimeLabel.Name = "executionTimeLabel";
     391      this.executionTimeLabel.Size = new System.Drawing.Size(80, 13);
     392      this.executionTimeLabel.TabIndex = 13;
     393      this.executionTimeLabel.Text = "ExecutionTime:";
     394      //
     395      // exceptionLabel
     396      //
     397      this.exceptionLabel.AutoSize = true;
     398      this.exceptionLabel.Location = new System.Drawing.Point(7, 129);
     399      this.exceptionLabel.Name = "exceptionLabel";
     400      this.exceptionLabel.Size = new System.Drawing.Size(57, 13);
     401      this.exceptionLabel.TabIndex = 19;
     402      this.exceptionLabel.Text = "Exception:";
     403      //
     404      // dateCreatedLabel
     405      //
     406      this.dateCreatedLabel.AutoSize = true;
     407      this.dateCreatedLabel.Location = new System.Drawing.Point(7, 63);
     408      this.dateCreatedLabel.Name = "dateCreatedLabel";
     409      this.dateCreatedLabel.Size = new System.Drawing.Size(70, 13);
     410      this.dateCreatedLabel.TabIndex = 14;
     411      this.dateCreatedLabel.Text = "DateCreated:";
    192412      //
    193413      // dateFinishedLabel
     
    200420      this.dateFinishedLabel.Text = "DateFinished:";
    201421      //
    202       // dateCreatedLabel
    203       //
    204       this.dateCreatedLabel.AutoSize = true;
    205       this.dateCreatedLabel.Location = new System.Drawing.Point(7, 63);
    206       this.dateCreatedLabel.Name = "dateCreatedLabel";
    207       this.dateCreatedLabel.Size = new System.Drawing.Size(70, 13);
    208       this.dateCreatedLabel.TabIndex = 14;
    209       this.dateCreatedLabel.Text = "DateCreated:";
    210       //
    211       // exceptionLabel
    212       //
    213       this.exceptionLabel.AutoSize = true;
    214       this.exceptionLabel.Location = new System.Drawing.Point(7, 129);
    215       this.exceptionLabel.Name = "exceptionLabel";
    216       this.exceptionLabel.Size = new System.Drawing.Size(57, 13);
    217       this.exceptionLabel.TabIndex = 19;
    218       this.exceptionLabel.Text = "Exception:";
    219       //
    220       // executionTimeLabel
    221       //
    222       this.executionTimeLabel.AutoSize = true;
    223       this.executionTimeLabel.Location = new System.Drawing.Point(7, 41);
    224       this.executionTimeLabel.Name = "executionTimeLabel";
    225       this.executionTimeLabel.Size = new System.Drawing.Size(80, 13);
    226       this.executionTimeLabel.TabIndex = 13;
    227       this.executionTimeLabel.Text = "ExecutionTime:";
    228       //
    229       // dateCreatedTextBox
    230       //
    231       this.dateCreatedTextBox.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
    232                   | System.Windows.Forms.AnchorStyles.Right)));
    233       this.dateCreatedTextBox.Location = new System.Drawing.Point(95, 63);
    234       this.dateCreatedTextBox.Name = "dateCreatedTextBox";
    235       this.dateCreatedTextBox.Size = new System.Drawing.Size(509, 20);
    236       this.dateCreatedTextBox.TabIndex = 5;
    237       //
    238       // executionTimeTextBox
    239       //
    240       this.executionTimeTextBox.Location = new System.Drawing.Point(95, 41);
    241       this.executionTimeTextBox.Name = "executionTimeTextBox";
    242       this.executionTimeTextBox.Size = new System.Drawing.Size(509, 20);
    243       this.executionTimeTextBox.TabIndex = 4;
    244       //
    245       // dateFinishedTextBox
    246       //
    247       this.dateFinishedTextBox.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
    248                   | System.Windows.Forms.AnchorStyles.Right)));
    249       this.dateFinishedTextBox.Location = new System.Drawing.Point(95, 107);
    250       this.dateFinishedTextBox.Name = "dateFinishedTextBox";
    251       this.dateFinishedTextBox.Size = new System.Drawing.Size(509, 20);
    252       this.dateFinishedTextBox.TabIndex = 6;
    253       //
    254       // dateCalculatedText
    255       //
    256       this.dateCalculatedText.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
    257                   | System.Windows.Forms.AnchorStyles.Right)));
    258       this.dateCalculatedText.Location = new System.Drawing.Point(95, 85);
    259       this.dateCalculatedText.Name = "dateCalculatedText";
    260       this.dateCalculatedText.Size = new System.Drawing.Size(509, 20);
    261       this.dateCalculatedText.TabIndex = 22;
    262       //
    263       // stateLabel
    264       //
    265       this.stateLabel.AutoSize = true;
    266       this.stateLabel.Location = new System.Drawing.Point(7, 19);
    267       this.stateLabel.Name = "stateLabel";
    268       this.stateLabel.Size = new System.Drawing.Size(35, 13);
    269       this.stateLabel.TabIndex = 0;
    270       this.stateLabel.Text = "State:";
    271       //
    272       // dateCalculatedLabel
    273       //
    274       this.dateCalculatedLabel.AutoSize = true;
    275       this.dateCalculatedLabel.Location = new System.Drawing.Point(7, 85);
    276       this.dateCalculatedLabel.Name = "dateCalculatedLabel";
    277       this.dateCalculatedLabel.Size = new System.Drawing.Size(83, 13);
    278       this.dateCalculatedLabel.TabIndex = 23;
    279       this.dateCalculatedLabel.Text = "DateCalculated:";
    280       //
    281       // stateTextBox
    282       //
    283       this.stateTextBox.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
    284                   | System.Windows.Forms.AnchorStyles.Right)));
    285       this.stateTextBox.Location = new System.Drawing.Point(95, 19);
    286       this.stateTextBox.Name = "stateTextBox";
    287       this.stateTextBox.Size = new System.Drawing.Size(509, 20);
    288       this.stateTextBox.TabIndex = 2;
    289       //
    290       // jobIdTextBox
    291       //
    292       this.jobIdTextBox.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
    293                   | System.Windows.Forms.AnchorStyles.Right)));
    294       this.jobIdTextBox.Location = new System.Drawing.Point(91, 6);
    295       this.jobIdTextBox.Name = "jobIdTextBox";
    296       this.jobIdTextBox.Size = new System.Drawing.Size(525, 20);
    297       this.jobIdTextBox.TabIndex = 26;
    298       //
    299       // jobIdLabel
    300       //
    301       this.jobIdLabel.AutoSize = true;
    302       this.jobIdLabel.Location = new System.Drawing.Point(3, 6);
    303       this.jobIdLabel.Name = "jobIdLabel";
    304       this.jobIdLabel.Size = new System.Drawing.Size(36, 13);
    305       this.jobIdLabel.TabIndex = 25;
    306       this.jobIdLabel.Text = "JobId:";
    307       //
    308       // configurationGroupBox
    309       //
    310       this.configurationGroupBox.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
    311                   | System.Windows.Forms.AnchorStyles.Right)));
    312       this.configurationGroupBox.Controls.Add(this.priorityTextBox);
    313       this.configurationGroupBox.Controls.Add(this.priorityLabel);
    314       this.configurationGroupBox.Controls.Add(this.coresNeededTextBox);
    315       this.configurationGroupBox.Controls.Add(this.memoryNeededTextBox);
    316       this.configurationGroupBox.Controls.Add(this.memoryNeededLabel);
    317       this.configurationGroupBox.Controls.Add(this.coresNeededLabel);
    318       this.configurationGroupBox.Controls.Add(this.computeInParallelLabel);
    319       this.configurationGroupBox.Controls.Add(this.computeInParallelCheckBox);
    320       this.configurationGroupBox.Location = new System.Drawing.Point(6, 105);
    321       this.configurationGroupBox.Name = "configurationGroupBox";
    322       this.configurationGroupBox.Size = new System.Drawing.Size(610, 119);
    323       this.configurationGroupBox.TabIndex = 27;
    324       this.configurationGroupBox.TabStop = false;
    325       this.configurationGroupBox.Text = "Configuration";
    326       //
    327       // computeInParallelCheckBox
    328       //
    329       this.computeInParallelCheckBox.AutoSize = true;
    330       this.computeInParallelCheckBox.Location = new System.Drawing.Point(108, 92);
    331       this.computeInParallelCheckBox.Name = "computeInParallelCheckBox";
    332       this.computeInParallelCheckBox.Size = new System.Drawing.Size(15, 14);
    333       this.computeInParallelCheckBox.TabIndex = 35;
    334       this.computeInParallelCheckBox.UseVisualStyleBackColor = true;
    335       this.computeInParallelCheckBox.CheckedChanged += new System.EventHandler(this.computeInParallelCheckBox_CheckedChanged);
    336       //
    337       // computeInParallelLabel
    338       //
    339       this.computeInParallelLabel.AutoSize = true;
    340       this.computeInParallelLabel.Location = new System.Drawing.Point(7, 93);
    341       this.computeInParallelLabel.Name = "computeInParallelLabel";
    342       this.computeInParallelLabel.Size = new System.Drawing.Size(95, 13);
    343       this.computeInParallelLabel.TabIndex = 36;
    344       this.computeInParallelLabel.Text = "ComputeInParallel:";
    345       //
    346       // coresNeededLabel
    347       //
    348       this.coresNeededLabel.AutoSize = true;
    349       this.coresNeededLabel.Location = new System.Drawing.Point(7, 20);
    350       this.coresNeededLabel.Name = "coresNeededLabel";
    351       this.coresNeededLabel.Size = new System.Drawing.Size(75, 13);
    352       this.coresNeededLabel.TabIndex = 39;
    353       this.coresNeededLabel.Text = "CoresNeeded:";
    354       //
    355       // memoryNeededLabel
    356       //
    357       this.memoryNeededLabel.AutoSize = true;
    358       this.memoryNeededLabel.Location = new System.Drawing.Point(7, 42);
    359       this.memoryNeededLabel.Name = "memoryNeededLabel";
    360       this.memoryNeededLabel.Size = new System.Drawing.Size(85, 13);
    361       this.memoryNeededLabel.TabIndex = 40;
    362       this.memoryNeededLabel.Text = "MemoryNeeded:";
    363       //
    364       // memoryNeededTextBox
    365       //
    366       this.memoryNeededTextBox.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
    367                   | System.Windows.Forms.AnchorStyles.Right)));
    368       this.memoryNeededTextBox.Location = new System.Drawing.Point(108, 42);
    369       this.memoryNeededTextBox.Name = "memoryNeededTextBox";
    370       this.memoryNeededTextBox.Size = new System.Drawing.Size(496, 20);
    371       this.memoryNeededTextBox.TabIndex = 38;
    372       //
    373       // coresNeededTextBox
    374       //
    375       this.coresNeededTextBox.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
    376                   | System.Windows.Forms.AnchorStyles.Right)));
    377       this.coresNeededTextBox.Location = new System.Drawing.Point(108, 20);
    378       this.coresNeededTextBox.Name = "coresNeededTextBox";
    379       this.coresNeededTextBox.Size = new System.Drawing.Size(496, 20);
    380       this.coresNeededTextBox.TabIndex = 37;
    381       //
    382       // priorityLabel
    383       //
    384       this.priorityLabel.AutoSize = true;
    385       this.priorityLabel.Location = new System.Drawing.Point(7, 66);
    386       this.priorityLabel.Name = "priorityLabel";
    387       this.priorityLabel.Size = new System.Drawing.Size(41, 13);
    388       this.priorityLabel.TabIndex = 42;
    389       this.priorityLabel.Text = "Priority:";
    390       //
    391       // priorityTextBox
    392       //
    393       this.priorityTextBox.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
    394                   | System.Windows.Forms.AnchorStyles.Right)));
    395       this.priorityTextBox.Location = new System.Drawing.Point(108, 66);
    396       this.priorityTextBox.Name = "priorityTextBox";
    397       this.priorityTextBox.Size = new System.Drawing.Size(496, 20);
    398       this.priorityTextBox.TabIndex = 41;
    399       //
    400       // optimizerGroupBox
    401       //
    402       this.optimizerGroupBox.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
    403                   | System.Windows.Forms.AnchorStyles.Right)));
    404       this.optimizerGroupBox.Controls.Add(this.optimizerNamedItemView);
    405       this.optimizerGroupBox.Location = new System.Drawing.Point(6, 29);
    406       this.optimizerGroupBox.Name = "optimizerGroupBox";
    407       this.optimizerGroupBox.Size = new System.Drawing.Size(610, 74);
    408       this.optimizerGroupBox.TabIndex = 28;
    409       this.optimizerGroupBox.TabStop = false;
    410       this.optimizerGroupBox.Text = "Optimizer";
    411       //
    412       // optimizerNamedItemView
    413       //
    414       this.optimizerNamedItemView.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
    415                   | System.Windows.Forms.AnchorStyles.Right)));
    416       this.optimizerNamedItemView.Caption = "NamedItem View";
    417       this.optimizerNamedItemView.Content = null;
    418       this.optimizerNamedItemView.Location = new System.Drawing.Point(6, 20);
    419       this.optimizerNamedItemView.Name = "optimizerNamedItemView";
    420       this.optimizerNamedItemView.ReadOnly = false;
    421       this.optimizerNamedItemView.Size = new System.Drawing.Size(598, 51);
    422       this.optimizerNamedItemView.TabIndex = 0;
     422      // exceptionTextBox
     423      //
     424      this.exceptionTextBox.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
     425                  | System.Windows.Forms.AnchorStyles.Right)));
     426      this.exceptionTextBox.Location = new System.Drawing.Point(95, 129);
     427      this.exceptionTextBox.Name = "exceptionTextBox";
     428      this.exceptionTextBox.Size = new System.Drawing.Size(498, 20);
     429      this.exceptionTextBox.TabIndex = 10;
     430      this.exceptionTextBox.DoubleClick += new System.EventHandler(this.exceptionTextBox_DoubleClick);
    423431      //
    424432      // tabControl
     
    434442      this.tabControl.Name = "tabControl";
    435443      this.tabControl.SelectedIndex = 0;
    436       this.tabControl.Size = new System.Drawing.Size(627, 518);
     444      this.tabControl.Size = new System.Drawing.Size(619, 518);
    437445      this.tabControl.TabIndex = 25;
     446      //
     447      // restartButton
     448      //
     449      this.restartButton.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
     450      this.restartButton.Image = ((System.Drawing.Image)(resources.GetObject("restartButton.Image")));
     451      this.restartButton.Location = new System.Drawing.Point(3, 465);
     452      this.restartButton.Name = "restartButton";
     453      this.restartButton.Size = new System.Drawing.Size(24, 24);
     454      this.restartButton.TabIndex = 30;
     455      this.restartButton.UseVisualStyleBackColor = true;
     456      this.restartButton.Click += new System.EventHandler(this.restartButton_Click);
     457      //
     458      // pauseButton
     459      //
     460      this.pauseButton.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
     461      this.pauseButton.Enabled = false;
     462      this.pauseButton.Image = ((System.Drawing.Image)(resources.GetObject("pauseButton.Image")));
     463      this.pauseButton.Location = new System.Drawing.Point(33, 465);
     464      this.pauseButton.Name = "pauseButton";
     465      this.pauseButton.Size = new System.Drawing.Size(24, 24);
     466      this.pauseButton.TabIndex = 31;
     467      this.pauseButton.UseVisualStyleBackColor = true;
     468      this.pauseButton.Click += new System.EventHandler(this.pauseButton_Click);
     469      //
     470      // stopButton
     471      //
     472      this.stopButton.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
     473      this.stopButton.Image = ((System.Drawing.Image)(resources.GetObject("stopButton.Image")));
     474      this.stopButton.Location = new System.Drawing.Point(63, 465);
     475      this.stopButton.Name = "stopButton";
     476      this.stopButton.Size = new System.Drawing.Size(24, 24);
     477      this.stopButton.TabIndex = 32;
     478      this.stopButton.UseVisualStyleBackColor = true;
     479      this.stopButton.Click += new System.EventHandler(this.stopButton_Click);
    438480      //
    439481      // HiveJobView
     
    443485      this.Controls.Add(this.tabControl);
    444486      this.Name = "HiveJobView";
    445       this.Size = new System.Drawing.Size(633, 524);
     487      this.Size = new System.Drawing.Size(625, 524);
    446488      this.logTabPage.ResumeLayout(false);
    447489      this.stateLogTabPage.ResumeLayout(false);
     
    449491      this.detailsTabPage.ResumeLayout(false);
    450492      this.detailsTabPage.PerformLayout();
     493      this.optimizerGroupBox.ResumeLayout(false);
     494      this.configurationGroupBox.ResumeLayout(false);
     495      this.configurationGroupBox.PerformLayout();
    451496      this.jobStatusGroupBox.ResumeLayout(false);
    452497      this.jobStatusGroupBox.PerformLayout();
    453       this.configurationGroupBox.ResumeLayout(false);
    454       this.configurationGroupBox.PerformLayout();
    455       this.optimizerGroupBox.ResumeLayout(false);
    456498      this.tabControl.ResumeLayout(false);
    457499      this.ResumeLayout(false);
     
    495537    private System.Windows.Forms.TextBox exceptionTextBox;
    496538    private System.Windows.Forms.TabControl tabControl;
     539    private System.Windows.Forms.Button restartButton;
     540    private System.Windows.Forms.Button pauseButton;
     541    private System.Windows.Forms.Button stopButton;
    497542
    498543  }
  • branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Clients.Hive.Views/3.4/ExperimentManager/HiveJobView.resx

    r5597 r5779  
    118118    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
    119119  </resheader>
     120  <assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
     121  <data name="restartButton.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
     122    <value>
     123        iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
     124        YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAAlwSFlzAAAK/wAA
     125        Cv8BNGKaggAAALBJREFUOE9j+P//PwMlGKvmsv3ZbsQaitWAhBkR/4k1BKcBlmX6RBmC1YCoKUH/N9xa
     126        /J8YQ7AaEDzBG2Q7UYZgNcCnyxlsAAhHLQrA6xKsBjg2W/zP2BAL1mzbrP9fp1jhv0QaN4hWQ48drAaY
     127        1+ihaOZPYMGqGWQYVgP0SpXhNuPTjNMAlXwpsLMJacZpgHSGIFGacRogksyJ089EBSK20MaVNyjKiTi9
     128        QGxOBKkDACT9xOni1RbMAAAAAElFTkSuQmCC
     129</value>
     130  </data>
     131  <data name="pauseButton.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
     132    <value>
     133        iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
     134        YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAAlwSFlzAAAK/wAA
     135        Cv8BNGKaggAAAL5JREFUOE9j+P//PwMlmCLNIIsHoQG9m//+79rw63/e1EefQE5E56OHF4YXQJqvPvzz
     136        Xzd0FVDtfwZ0PkED2tZ++3/r6e//qn6LwAag8wka0Lji8//LD3//l3ObBTYAnU/QgNrF7/+fuP77v5jd
     137        JLAB6HyCBlTMe/V/94Wf//nNusEGoPMJGlAy+/n/9Sd//uc0aAUbgM4naEDB9Mf/F+z5/J9VpxFsADqf
     138        oAGg+GfTbYIbgM4naACpGWvg8wIAkX3yJyVePz4AAAAASUVORK5CYII=
     139</value>
     140  </data>
     141  <data name="stopButton.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
     142    <value>
     143        iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
     144        YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAAlwSFlzAAAK/wAA
     145        Cv8BNGKaggAAAWtJREFUOE/Nkz9IAmEYxl0KGqKtMVpaIiEoipYIgnByCSGhSQiCNBqCMiqwsr8clChF
     146        YmYSSikeWEbZH2qwEhKhwhAXjQwKEbw0zyue7nO7hgtyqOEbf7/ne5+XVwJAUsorCSbB/0xAeT+xSBcw
     147        685B52QwYU9jdOMFw+ZnDK0+YtCUyHzvSzACge/jH7hLcAg8FHB4w8IbZOEKsLD4s5AqdnheWLpAQJKj
     148        TxyCUa4IOi/yWPPlsOJlMGePoU6+JS4g376NczgKsdg+y8PIg3pnBmPWV6ipMGq61sUFZOarCAf3JZ98
     149        8I75XQKnoDEmoRg5RXW7QVxACvOHWdhO8lim36C1ptFvSEI5E4NsYA9VLUviAtK255qFcT+LSXsKahMP
     150        66OQa0Po7HOholEvLiCr2jxmMG2LQEOFoBw/55M96FA50NpjRlmDTlxA9tym8qGpl0Z9twO1Mktx7srm
     151        BZRLp34W/Oao/v4WvgBcI/R+TmAaZAAAAABJRU5ErkJggg==
     152</value>
     153  </data>
    120154</root>
  • branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Clients.Hive.Views/3.4/ExperimentManager/ItemTreeView.cs

    r5675 r5779  
    232232      }
    233233    }
     234
     235    private void treeView_DoubleClick(object sender, EventArgs e) {
     236      if (treeView.SelectedNode != null) {
     237        var item = treeView.SelectedNode.Tag as IItemTree;
     238        if (item != null) {
     239          IContentView view = MainFormManager.MainForm.ShowContent(item);
     240          if (view != null) {
     241            view.ReadOnly = ReadOnly;
     242            view.Locked = Locked;
     243          }
     244        }
     245      }
     246    }
    234247  }
    235248}
  • branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Clients.Hive.Views/3.4/ExperimentManager/ItemTreeView.designer.cs

    r5675 r5779  
    5858      //
    5959      this.treeView.Dock = System.Windows.Forms.DockStyle.Fill;
     60      this.treeView.HideSelection = false;
    6061      this.treeView.ImageIndex = 0;
    6162      this.treeView.ImageList = this.imageList;
     
    6667      this.treeView.TabIndex = 0;
    6768      this.treeView.AfterSelect += new System.Windows.Forms.TreeViewEventHandler(this.treeView_AfterSelect);
     69      this.treeView.DoubleClick += new System.EventHandler(this.treeView_DoubleClick);
    6870      //
    6971      // imageList
  • branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Clients.Hive.Views/3.4/ExperimentManager/StateLogGanttChartListView.cs

    r5718 r5779  
    6262        ganttChart.Reset();
    6363        SetupCategories(ganttChart);
     64        if (Content.Count > 0) {
     65          DateTime maxValue = Content.Max(x => x.Count > 0 ? x.Max(y => y.DateTime) : DateTime.MinValue);
     66          var upperLimit = DateTime.FromOADate(Math.Min(DateTime.Now.AddSeconds(10).ToOADate(), maxValue.AddSeconds(10).ToOADate()));
    6467
    65         DateTime maxValue = Content.Max(x => x.Max(y => y.DateTime));
    66         var upperLimit = DateTime.FromOADate(Math.Min(DateTime.Now.AddSeconds(10).ToOADate(), maxValue.AddSeconds(10).ToOADate()));
    67 
    68         for (int i = 0; i < Content.Count; i++) {
    69           for (int j = 0; j < Content[i].Count - 1; j++) {
    70             if(Content[i][j].State != JobState.Offline && Content[i][j].State != JobState.Finished)
    71               AddData(ganttChart, i.ToString(), Content[i][j], Content[i][j+1], upperLimit);
    72           }
    73           if(Content[i].Count > 0) {
    74             AddData(ganttChart, i.ToString(), Content[i][Content[i].Count - 1], null, upperLimit);
     68          for (int i = 0; i < Content.Count; i++) {
     69            for (int j = 0; j < Content[i].Count - 1; j++) {
     70              if (Content[i][j].State != JobState.Offline)
     71                AddData(ganttChart, i.ToString(), Content[i][j], Content[i][j + 1], upperLimit);
     72            }
     73            if (Content[i].Count > 0) {
     74              AddData(ganttChart, i.ToString(), Content[i][Content[i].Count - 1], null, upperLimit);
     75            }
    7576          }
    7677        }
     
    8182      ganttChart.AddCategory(JobState.Offline.ToString(), Color.Gainsboro);
    8283      ganttChart.AddCategory(JobState.Waiting.ToString(), Color.NavajoWhite);
     84      ganttChart.AddCategory(JobState.Paused.ToString(), Color.PaleVioletRed);
    8385      ganttChart.AddCategory(JobState.Transferring.ToString(), Color.CornflowerBlue);
    8486      ganttChart.AddCategory(JobState.Calculating.ToString(), Color.DarkGreen);
  • branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Clients.Hive.Views/3.4/ExperimentManager/StateLogGanttChartListView.designer.cs

    r5636 r5779  
    3434      this.ganttChart.Location = new System.Drawing.Point(0, 0);
    3535      this.ganttChart.Name = "ganttChart";
    36       this.ganttChart.Size = new System.Drawing.Size(518, 307);
     36      this.ganttChart.Size = new System.Drawing.Size(493, 293);
    3737      this.ganttChart.TabIndex = 0;
    3838      //
    39       // StateLogGanttChartView
     39      // StateLogGanttChartListView
    4040      //
    4141      this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
    4242      this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
    4343      this.Controls.Add(this.ganttChart);
    44       this.Name = "StateLogGanttChartView";
    45       this.Size = new System.Drawing.Size(518, 307);
     44      this.Name = "StateLogGanttChartListView";
     45      this.Size = new System.Drawing.Size(493, 293);
    4646      this.ResumeLayout(false);
    4747
  • branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Clients.Hive.Views/3.4/ExperimentManager/StateLogGanttChartView.cs

    r5718 r5779  
    6161        ganttChart.Reset();
    6262        StateLogGanttChartListView.SetupCategories(ganttChart);
    63         var upperLimit = DateTime.FromOADate(Math.Min(Content.Max(x => x.DateTime).ToOADate(), DateTime.Now.AddSeconds(10).ToOADate()));
     63        if (Content.Count > 0) {
     64          var upperLimit = DateTime.FromOADate(Math.Min(Content.Max(x => x.DateTime).ToOADate(), DateTime.Now.AddSeconds(10).ToOADate()));
    6465
    65         for (int i = 0; i < Content.Count-1; i++) {
    66           StateLogGanttChartListView.AddData(ganttChart, i.ToString(), Content[i], Content[i+1], upperLimit);
     66          for (int i = 0; i < Content.Count - 1; i++) {
     67            StateLogGanttChartListView.AddData(ganttChart, i.ToString(), Content[i], Content[i + 1], upperLimit);
     68          }
     69          StateLogGanttChartListView.AddData(ganttChart, (Content.Count - 1).ToString(), Content[Content.Count - 1], null, upperLimit);
    6770        }
    68         StateLogGanttChartListView.AddData(ganttChart, (Content.Count - 1).ToString(), Content[Content.Count - 1], null, upperLimit);
    6971      }
    7072    }
  • branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Clients.Hive.Views/3.4/ExperimentManager/StateLogGanttChartView.designer.cs

    r5636 r5779  
    3434      this.ganttChart.Location = new System.Drawing.Point(0, 0);
    3535      this.ganttChart.Name = "ganttChart";
    36       this.ganttChart.Size = new System.Drawing.Size(518, 307);
     36      this.ganttChart.Size = new System.Drawing.Size(533, 302);
    3737      this.ganttChart.TabIndex = 0;
    3838      //
     
    4343      this.Controls.Add(this.ganttChart);
    4444      this.Name = "StateLogGanttChartView";
    45       this.Size = new System.Drawing.Size(518, 307);
     45      this.Size = new System.Drawing.Size(533, 302);
    4646      this.ResumeLayout(false);
    4747
  • branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Clients.Hive/3.4/ExperimentManager/HiveJobClient.cs

    r5718 r5779  
    4545          else if (job.State == JobState.Calculating) return HeuristicLab.Common.Resources.VSImageLibrary.ExecutableStarted;
    4646          else if (job.State == JobState.Transferring) return HeuristicLab.Common.Resources.VSImageLibrary.ExecutableStarted;
     47          else if (job.State == JobState.Paused) return HeuristicLab.Common.Resources.VSImageLibrary.ExecutablePaused;
    4748          else if (job.State == JobState.Aborted) return HeuristicLab.Common.Resources.VSImageLibrary.ExecutableStopped;
    4849          else if (job.State == JobState.Failed) return HeuristicLab.Common.Resources.VSImageLibrary.Error;
     
    604605    }
    605606    #endregion
     607
     608    public void Pause() {
     609      ServiceLocator.Instance.CallHiveService(s => s.PauseJob(this.job.Id));
     610    }
     611
     612    public void Stop() {
     613      ServiceLocator.Instance.CallHiveService(s => s.StopJob(this.job.Id));
     614    }
     615
     616    public void Restart() {
     617      ServiceLocator.Instance.CallHiveService(s => s.RestartJob(this.job.Id));
     618    }
    606619  }
    607620}
  • branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Clients.Hive/3.4/HeuristicLab.Clients.Hive-3.4.csproj

    r5718 r5779  
    139139    <Compile Include="Exceptions\ServiceClientFactoryException.cs" />
    140140    <Compile Include="ServiceClients\Appointment.cs" />
     141    <Compile Include="ServiceClients\NamedHiveItem.cs" />
    141142    <Compile Include="ServiceClients\Heartbeat.cs" />
    142143    <Compile Include="ServiceClients\HiveExperimentPermission.cs" />
  • branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Clients.Hive/3.4/ServiceClients/Appointment.cs

    r5633 r5779  
    2727    public Appointment() { }
    2828
    29     protected Appointment(Appointment original, Cloner cloner) {
     29    protected Appointment(Appointment original, Cloner cloner)
     30      : base(original, cloner) {
    3031      this.AllDayEvent = original.AllDayEvent;
    3132      this.EndDate = original.EndDate;
     
    3435      this.ResourceId = original.ResourceId;
    3536      this.StartDate = original.StartDate;
    36       this.Id = original.Id;
    3737    }
    3838
  • branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Clients.Hive/3.4/ServiceClients/HiveExperiment.cs

    r5614 r5779  
    2929
    3030    protected HiveExperiment(HiveExperiment original, Cloner cloner) {
     31      cloner.RegisterClonedObject(original, this);
    3132      this.RootJobId = original.RootJobId;
    3233      this.OwnerUserId = original.OwnerUserId;
  • branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Clients.Hive/3.4/ServiceClients/HiveExperimentPermission.cs

    r5614 r5779  
    2929
    3030    protected HiveExperimentPermission(HiveExperimentPermission original, Cloner cloner) {
    31       /*this.HiveExperimentId = original.HiveExperimentId;
    32       this.GrantedUserId = original.GrantedUserId;
    33       this.GrantedByUserId = original.GrantedByUserId;
    34       this.Permission = original.Permission;
    35       this.Id = original.Id;*/
     31      cloner.RegisterClonedObject(original, this);
    3632    }
    3733
  • branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Clients.Hive/3.4/ServiceClients/HiveServiceClient.cs

    r5676 r5779  
    22// <auto-generated>
    33//     This code was generated by a tool.
    4 //     Runtime Version:4.0.30319.1
     4//     Runtime Version:4.0.30319.208
    55//
    66//     Changes to this file may cause incorrect behavior and will be lost if
     
    1313
    1414  [System.Diagnostics.DebuggerStepThroughAttribute()]
    15   [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
    16   [System.Runtime.Serialization.DataContractAttribute(Name = "HiveItem", Namespace = "http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Hive.Common.DataTra" +
    17       "nsfer")]
    18   [System.SerializableAttribute()]
    19   [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Hive.Appointment))]
    20   [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Hive.LightweightJob))]
    21   [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Hive.StateLog))]
    22   [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Hive.Job))]
    23   [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Hive.PluginData))]
    24   [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Hive.NamedHiveItem))]
    25   [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Hive.HiveExperiment))]
    26   [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Hive.Plugin))]
    27   [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Hive.Resource))]
    28   [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Hive.SlaveGroup))]
    29   [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Hive.Slave))]
    30   public partial class HiveItem : object, System.Runtime.Serialization.IExtensibleDataObject, System.ComponentModel.INotifyPropertyChanged {
    31 
    32     [System.NonSerializedAttribute()]
    33     private System.Runtime.Serialization.ExtensionDataObject extensionDataField;
    34 
    35     [System.Runtime.Serialization.OptionalFieldAttribute()]
    36     private System.Guid IdField;
    37 
    38     public System.Runtime.Serialization.ExtensionDataObject ExtensionData {
    39       get {
    40         return this.extensionDataField;
    41       }
    42       set {
    43         this.extensionDataField = value;
    44       }
    45     }
    46 
    47     [System.Runtime.Serialization.DataMemberAttribute()]
    48     public System.Guid Id {
    49       get {
    50         return this.IdField;
    51       }
    52       set {
    53         if ((this.IdField.Equals(value) != true)) {
    54           this.IdField = value;
    55           this.RaisePropertyChanged("Id");
    56         }
    57       }
    58     }
    59 
    60     public event System.ComponentModel.PropertyChangedEventHandler PropertyChanged;
    61 
    62 
    63   }
    64 
    65   [System.Diagnostics.DebuggerStepThroughAttribute()]
    66   [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
    67   [System.Runtime.Serialization.DataContractAttribute(Name = "Appointment", Namespace = "http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Hive.Common.DataTra" +
    68       "nsfer")]
    69   [System.SerializableAttribute()]
    70   public partial class Appointment : HeuristicLab.Clients.Hive.HiveItem {
    71 
    72     [System.Runtime.Serialization.OptionalFieldAttribute()]
    73     private bool AllDayEventField;
    74 
    75     [System.Runtime.Serialization.OptionalFieldAttribute()]
    76     private System.DateTime EndDateField;
    77 
    78     [System.Runtime.Serialization.OptionalFieldAttribute()]
    79     private bool RecurringField;
    80 
    81     [System.Runtime.Serialization.OptionalFieldAttribute()]
    82     private System.Guid RecurringIdField;
    83 
    84     [System.Runtime.Serialization.OptionalFieldAttribute()]
    85     private System.Guid ResourceIdField;
    86 
    87     [System.Runtime.Serialization.OptionalFieldAttribute()]
    88     private System.DateTime StartDateField;
    89 
    90     [System.Runtime.Serialization.DataMemberAttribute()]
    91     public bool AllDayEvent {
    92       get {
    93         return this.AllDayEventField;
    94       }
    95       set {
    96         if ((this.AllDayEventField.Equals(value) != true)) {
    97           this.AllDayEventField = value;
    98           this.RaisePropertyChanged("AllDayEvent");
    99         }
    100       }
    101     }
    102 
    103     [System.Runtime.Serialization.DataMemberAttribute()]
    104     public System.DateTime EndDate {
    105       get {
    106         return this.EndDateField;
    107       }
    108       set {
    109         if ((this.EndDateField.Equals(value) != true)) {
    110           this.EndDateField = value;
    111           this.RaisePropertyChanged("EndDate");
    112         }
    113       }
    114     }
    115 
    116     [System.Runtime.Serialization.DataMemberAttribute()]
    117     public bool Recurring {
    118       get {
    119         return this.RecurringField;
    120       }
    121       set {
    122         if ((this.RecurringField.Equals(value) != true)) {
    123           this.RecurringField = value;
    124           this.RaisePropertyChanged("Recurring");
    125         }
    126       }
    127     }
    128 
    129     [System.Runtime.Serialization.DataMemberAttribute()]
    130     public System.Guid RecurringId {
    131       get {
    132         return this.RecurringIdField;
    133       }
    134       set {
    135         if ((this.RecurringIdField.Equals(value) != true)) {
    136           this.RecurringIdField = value;
    137           this.RaisePropertyChanged("RecurringId");
    138         }
    139       }
    140     }
    141 
    142     [System.Runtime.Serialization.DataMemberAttribute()]
    143     public System.Guid ResourceId {
    144       get {
    145         return this.ResourceIdField;
    146       }
    147       set {
    148         if ((this.ResourceIdField.Equals(value) != true)) {
    149           this.ResourceIdField = value;
    150           this.RaisePropertyChanged("ResourceId");
    151         }
    152       }
    153     }
    154 
    155     [System.Runtime.Serialization.DataMemberAttribute()]
    156     public System.DateTime StartDate {
    157       get {
    158         return this.StartDateField;
    159       }
    160       set {
    161         if ((this.StartDateField.Equals(value) != true)) {
    162           this.StartDateField = value;
    163           this.RaisePropertyChanged("StartDate");
    164         }
    165       }
    166     }
    167   }
    168 
    169   [System.Diagnostics.DebuggerStepThroughAttribute()]
    170   [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
    171   [System.Runtime.Serialization.DataContractAttribute(Name = "LightweightJob", Namespace = "http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Hive.Common.DataTra" +
    172       "nsfer")]
    173   [System.SerializableAttribute()]
    174   [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Hive.Job))]
    175   public partial class LightweightJob : HeuristicLab.Clients.Hive.HiveItem {
    176 
    177     [System.Runtime.Serialization.OptionalFieldAttribute()]
    178     private System.Nullable<System.TimeSpan> ExecutionTimeField;
    179 
    180     [System.Runtime.Serialization.OptionalFieldAttribute()]
    181     private System.Nullable<System.Guid> ParentJobIdField;
    182 
    183     [System.Runtime.Serialization.OptionalFieldAttribute()]
    184     private HeuristicLab.Clients.Hive.JobState StateField;
    185 
    186     [System.Runtime.Serialization.OptionalFieldAttribute()]
    187     private System.Collections.Generic.List<HeuristicLab.Clients.Hive.StateLog> StateLogField;
    188 
    189     [System.Runtime.Serialization.DataMemberAttribute()]
    190     public System.Nullable<System.TimeSpan> ExecutionTime {
    191       get {
    192         return this.ExecutionTimeField;
    193       }
    194       set {
    195         if ((this.ExecutionTimeField.Equals(value) != true)) {
    196           this.ExecutionTimeField = value;
    197           this.RaisePropertyChanged("ExecutionTime");
    198         }
    199       }
    200     }
    201 
    202     [System.Runtime.Serialization.DataMemberAttribute()]
    203     public System.Nullable<System.Guid> ParentJobId {
    204       get {
    205         return this.ParentJobIdField;
    206       }
    207       set {
    208         if ((this.ParentJobIdField.Equals(value) != true)) {
    209           this.ParentJobIdField = value;
    210           this.RaisePropertyChanged("ParentJobId");
    211         }
    212       }
    213     }
    214 
    215     [System.Runtime.Serialization.DataMemberAttribute()]
    216     public HeuristicLab.Clients.Hive.JobState State {
    217       get {
    218         return this.StateField;
    219       }
    220       set {
    221         if ((this.StateField.Equals(value) != true)) {
    222           this.StateField = value;
    223           this.RaisePropertyChanged("State");
    224         }
    225       }
    226     }
    227 
    228     [System.Runtime.Serialization.DataMemberAttribute()]
    229     public System.Collections.Generic.List<HeuristicLab.Clients.Hive.StateLog> StateLog {
    230       get {
    231         return this.StateLogField;
    232       }
    233       set {
    234         if ((object.ReferenceEquals(this.StateLogField, value) != true)) {
    235           this.StateLogField = value;
    236           this.RaisePropertyChanged("StateLog");
    237         }
    238       }
    239     }
    240   }
    241 
    242   [System.Diagnostics.DebuggerStepThroughAttribute()]
    243   [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
    244   [System.Runtime.Serialization.DataContractAttribute(Name = "StateLog", Namespace = "http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Hive.Common.DataTra" +
    245       "nsfer")]
    246   [System.SerializableAttribute()]
    247   public partial class StateLog : HeuristicLab.Clients.Hive.HiveItem {
    248 
    249     [System.Runtime.Serialization.OptionalFieldAttribute()]
    250     private System.DateTime DateTimeField;
    251 
    252     [System.Runtime.Serialization.OptionalFieldAttribute()]
    253     private string ExceptionField;
    254 
    255     [System.Runtime.Serialization.OptionalFieldAttribute()]
    256     private System.Guid JobIdField;
    257 
    258     [System.Runtime.Serialization.OptionalFieldAttribute()]
    259     private System.Nullable<System.Guid> SlaveIdField;
    260 
    261     [System.Runtime.Serialization.OptionalFieldAttribute()]
    262     private HeuristicLab.Clients.Hive.JobState StateField;
    263 
    264     [System.Runtime.Serialization.OptionalFieldAttribute()]
    265     private System.Nullable<System.Guid> UserIdField;
    266 
    267     [System.Runtime.Serialization.DataMemberAttribute()]
    268     public System.DateTime DateTime {
    269       get {
    270         return this.DateTimeField;
    271       }
    272       set {
    273         if ((this.DateTimeField.Equals(value) != true)) {
    274           this.DateTimeField = value;
    275           this.RaisePropertyChanged("DateTime");
    276         }
    277       }
    278     }
    279 
    280     [System.Runtime.Serialization.DataMemberAttribute()]
    281     public string Exception {
    282       get {
    283         return this.ExceptionField;
    284       }
    285       set {
    286         if ((object.ReferenceEquals(this.ExceptionField, value) != true)) {
    287           this.ExceptionField = value;
    288           this.RaisePropertyChanged("Exception");
    289         }
    290       }
    291     }
    292 
    293     [System.Runtime.Serialization.DataMemberAttribute()]
    294     public System.Guid JobId {
    295       get {
    296         return this.JobIdField;
    297       }
    298       set {
    299         if ((this.JobIdField.Equals(value) != true)) {
    300           this.JobIdField = value;
    301           this.RaisePropertyChanged("JobId");
    302         }
    303       }
    304     }
    305 
    306     [System.Runtime.Serialization.DataMemberAttribute()]
    307     public System.Nullable<System.Guid> SlaveId {
    308       get {
    309         return this.SlaveIdField;
    310       }
    311       set {
    312         if ((this.SlaveIdField.Equals(value) != true)) {
    313           this.SlaveIdField = value;
    314           this.RaisePropertyChanged("SlaveId");
    315         }
    316       }
    317     }
    318 
    319     [System.Runtime.Serialization.DataMemberAttribute()]
    320     public HeuristicLab.Clients.Hive.JobState State {
    321       get {
    322         return this.StateField;
    323       }
    324       set {
    325         if ((this.StateField.Equals(value) != true)) {
    326           this.StateField = value;
    327           this.RaisePropertyChanged("State");
    328         }
    329       }
    330     }
    331 
    332     [System.Runtime.Serialization.DataMemberAttribute()]
    333     public System.Nullable<System.Guid> UserId {
    334       get {
    335         return this.UserIdField;
    336       }
    337       set {
    338         if ((this.UserIdField.Equals(value) != true)) {
    339           this.UserIdField = value;
    340           this.RaisePropertyChanged("UserId");
    341         }
    342       }
    343     }
    344   }
    345 
    346   [System.Diagnostics.DebuggerStepThroughAttribute()]
    347   [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
    348   [System.Runtime.Serialization.DataContractAttribute(Name = "Job", Namespace = "http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Hive.Common.DataTra" +
    349       "nsfer")]
    350   [System.SerializableAttribute()]
    351   public partial class Job : HeuristicLab.Clients.Hive.LightweightJob {
    352 
    353     [System.Runtime.Serialization.OptionalFieldAttribute()]
    354     private int CoresNeededField;
    355 
    356     [System.Runtime.Serialization.OptionalFieldAttribute()]
    357     private bool FinishWhenChildJobsFinishedField;
    358 
    359     [System.Runtime.Serialization.OptionalFieldAttribute()]
    360     private bool IsParentJobField;
    361 
    362     [System.Runtime.Serialization.OptionalFieldAttribute()]
    363     private System.Nullable<System.DateTime> LastHeartbeatField;
    364 
    365     [System.Runtime.Serialization.OptionalFieldAttribute()]
    366     private int MemoryNeededField;
    367 
    368     [System.Runtime.Serialization.OptionalFieldAttribute()]
    369     private System.Collections.Generic.List<System.Guid> PluginsNeededIdsField;
    370 
    371     [System.Runtime.Serialization.OptionalFieldAttribute()]
    372     private int PriorityField;
    373 
    374     [System.Runtime.Serialization.DataMemberAttribute()]
    375     public int CoresNeeded {
    376       get {
    377         return this.CoresNeededField;
    378       }
    379       set {
    380         if ((this.CoresNeededField.Equals(value) != true)) {
    381           this.CoresNeededField = value;
    382           this.RaisePropertyChanged("CoresNeeded");
    383         }
    384       }
    385     }
    386 
    387     [System.Runtime.Serialization.DataMemberAttribute()]
    388     public bool FinishWhenChildJobsFinished {
    389       get {
    390         return this.FinishWhenChildJobsFinishedField;
    391       }
    392       set {
    393         if ((this.FinishWhenChildJobsFinishedField.Equals(value) != true)) {
    394           this.FinishWhenChildJobsFinishedField = value;
    395           this.RaisePropertyChanged("FinishWhenChildJobsFinished");
    396         }
    397       }
    398     }
    399 
    400     [System.Runtime.Serialization.DataMemberAttribute()]
    401     public bool IsParentJob {
    402       get {
    403         return this.IsParentJobField;
    404       }
    405       set {
    406         if ((this.IsParentJobField.Equals(value) != true)) {
    407           this.IsParentJobField = value;
    408           this.RaisePropertyChanged("IsParentJob");
    409         }
    410       }
    411     }
    412 
    413     [System.Runtime.Serialization.DataMemberAttribute()]
    414     public System.Nullable<System.DateTime> LastHeartbeat {
    415       get {
    416         return this.LastHeartbeatField;
    417       }
    418       set {
    419         if ((this.LastHeartbeatField.Equals(value) != true)) {
    420           this.LastHeartbeatField = value;
    421           this.RaisePropertyChanged("LastHeartbeat");
    422         }
    423       }
    424     }
    425 
    426     [System.Runtime.Serialization.DataMemberAttribute()]
    427     public int MemoryNeeded {
    428       get {
    429         return this.MemoryNeededField;
    430       }
    431       set {
    432         if ((this.MemoryNeededField.Equals(value) != true)) {
    433           this.MemoryNeededField = value;
    434           this.RaisePropertyChanged("MemoryNeeded");
    435         }
    436       }
    437     }
    438 
    439     [System.Runtime.Serialization.DataMemberAttribute()]
    440     public System.Collections.Generic.List<System.Guid> PluginsNeededIds {
    441       get {
    442         return this.PluginsNeededIdsField;
    443       }
    444       set {
    445         if ((object.ReferenceEquals(this.PluginsNeededIdsField, value) != true)) {
    446           this.PluginsNeededIdsField = value;
    447           this.RaisePropertyChanged("PluginsNeededIds");
    448         }
    449       }
    450     }
    451 
    452     [System.Runtime.Serialization.DataMemberAttribute()]
    453     public int Priority {
    454       get {
    455         return this.PriorityField;
    456       }
    457       set {
    458         if ((this.PriorityField.Equals(value) != true)) {
    459           this.PriorityField = value;
    460           this.RaisePropertyChanged("Priority");
    461         }
    462       }
    463     }
    464   }
    465 
    466   [System.Diagnostics.DebuggerStepThroughAttribute()]
    467   [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
    468   [System.Runtime.Serialization.DataContractAttribute(Name = "PluginData", Namespace = "http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Hive.Common.DataTra" +
    469       "nsfer")]
    470   [System.SerializableAttribute()]
    471   public partial class PluginData : HeuristicLab.Clients.Hive.HiveItem {
    472 
    473     [System.Runtime.Serialization.OptionalFieldAttribute()]
    474     private byte[] DataField;
    475 
    476     [System.Runtime.Serialization.OptionalFieldAttribute()]
    477     private string FileNameField;
    478 
    479     [System.Runtime.Serialization.OptionalFieldAttribute()]
    480     private System.Guid PluginIdField;
    481 
    482     [System.Runtime.Serialization.DataMemberAttribute()]
    483     public byte[] Data {
    484       get {
    485         return this.DataField;
    486       }
    487       set {
    488         if ((object.ReferenceEquals(this.DataField, value) != true)) {
    489           this.DataField = value;
    490           this.RaisePropertyChanged("Data");
    491         }
    492       }
    493     }
    494 
    495     [System.Runtime.Serialization.DataMemberAttribute()]
    496     public string FileName {
    497       get {
    498         return this.FileNameField;
    499       }
    500       set {
    501         if ((object.ReferenceEquals(this.FileNameField, value) != true)) {
    502           this.FileNameField = value;
    503           this.RaisePropertyChanged("FileName");
    504         }
    505       }
    506     }
    507 
    508     [System.Runtime.Serialization.DataMemberAttribute()]
    509     public System.Guid PluginId {
    510       get {
    511         return this.PluginIdField;
    512       }
    513       set {
    514         if ((this.PluginIdField.Equals(value) != true)) {
    515           this.PluginIdField = value;
    516           this.RaisePropertyChanged("PluginId");
    517         }
    518       }
    519     }
    520   }
    521 
    522   [System.Diagnostics.DebuggerStepThroughAttribute()]
    523   [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
    524   [System.Runtime.Serialization.DataContractAttribute(Name = "NamedHiveItem", Namespace = "http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Hive.Common.DataTra" +
    525       "nsfer")]
    526   [System.SerializableAttribute()]
    527   [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Hive.HiveExperiment))]
    528   [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Hive.Plugin))]
    529   [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Hive.Resource))]
    530   [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Hive.SlaveGroup))]
    531   [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Hive.Slave))]
    532   public partial class NamedHiveItem : HeuristicLab.Clients.Hive.HiveItem {
    533 
    534     [System.Runtime.Serialization.OptionalFieldAttribute()]
    535     private string DescriptionField;
    536 
    537     [System.Runtime.Serialization.OptionalFieldAttribute()]
    538     private string NameField;
    539 
    540     [System.Runtime.Serialization.DataMemberAttribute()]
    541     public string Description {
    542       get {
    543         return this.DescriptionField;
    544       }
    545       set {
    546         if ((object.ReferenceEquals(this.DescriptionField, value) != true)) {
    547           this.DescriptionField = value;
    548           this.RaisePropertyChanged("Description");
    549         }
    550       }
    551     }
    552 
    553     [System.Runtime.Serialization.DataMemberAttribute()]
    554     public string Name {
    555       get {
    556         return this.NameField;
    557       }
    558       set {
    559         if ((object.ReferenceEquals(this.NameField, value) != true)) {
    560           this.NameField = value;
    561           this.RaisePropertyChanged("Name");
    562         }
    563       }
    564     }
    565   }
    566 
    567   [System.Diagnostics.DebuggerStepThroughAttribute()]
    568   [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
    569   [System.Runtime.Serialization.DataContractAttribute(Name = "HiveExperiment", Namespace = "http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Hive.Common.DataTra" +
    570       "nsfer")]
    571   [System.SerializableAttribute()]
    572   public partial class HiveExperiment : HeuristicLab.Clients.Hive.NamedHiveItem {
    573 
    574     [System.Runtime.Serialization.OptionalFieldAttribute()]
    575     private System.DateTime DateCreatedField;
    576 
    577     [System.Runtime.Serialization.OptionalFieldAttribute()]
    578     private System.Nullable<System.DateTime> LastAccessedField;
    579 
    580     [System.Runtime.Serialization.OptionalFieldAttribute()]
    581     private System.Guid OwnerUserIdField;
    582 
    583     [System.Runtime.Serialization.OptionalFieldAttribute()]
    584     private string ResourceNamesField;
    585 
    586     [System.Runtime.Serialization.OptionalFieldAttribute()]
    587     private System.Guid RootJobIdField;
    588 
    589     [System.Runtime.Serialization.DataMemberAttribute()]
    590     public System.DateTime DateCreated {
    591       get {
    592         return this.DateCreatedField;
    593       }
    594       set {
    595         if ((this.DateCreatedField.Equals(value) != true)) {
    596           this.DateCreatedField = value;
    597           this.RaisePropertyChanged("DateCreated");
    598         }
    599       }
    600     }
    601 
    602     [System.Runtime.Serialization.DataMemberAttribute()]
    603     public System.Nullable<System.DateTime> LastAccessed {
    604       get {
    605         return this.LastAccessedField;
    606       }
    607       set {
    608         if ((this.LastAccessedField.Equals(value) != true)) {
    609           this.LastAccessedField = value;
    610           this.RaisePropertyChanged("LastAccessed");
    611         }
    612       }
    613     }
    614 
    615     [System.Runtime.Serialization.DataMemberAttribute()]
    616     public System.Guid OwnerUserId {
    617       get {
    618         return this.OwnerUserIdField;
    619       }
    620       set {
    621         if ((this.OwnerUserIdField.Equals(value) != true)) {
    622           this.OwnerUserIdField = value;
    623           this.RaisePropertyChanged("OwnerUserId");
    624         }
    625       }
    626     }
    627 
    628     [System.Runtime.Serialization.DataMemberAttribute()]
    629     public string ResourceNames {
    630       get {
    631         return this.ResourceNamesField;
    632       }
    633       set {
    634         if ((object.ReferenceEquals(this.ResourceNamesField, value) != true)) {
    635           this.ResourceNamesField = value;
    636           this.RaisePropertyChanged("ResourceNames");
    637         }
    638       }
    639     }
    640 
    641     [System.Runtime.Serialization.DataMemberAttribute()]
    642     public System.Guid RootJobId {
    643       get {
    644         return this.RootJobIdField;
    645       }
    646       set {
    647         if ((this.RootJobIdField.Equals(value) != true)) {
    648           this.RootJobIdField = value;
    649           this.RaisePropertyChanged("RootJobId");
    650         }
    651       }
    652     }
    653   }
    654 
    655   [System.Diagnostics.DebuggerStepThroughAttribute()]
    656   [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
    657   [System.Runtime.Serialization.DataContractAttribute(Name = "Plugin", Namespace = "http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Hive.Common.DataTra" +
    658       "nsfer")]
    659   [System.SerializableAttribute()]
    660   public partial class Plugin : HeuristicLab.Clients.Hive.NamedHiveItem {
    661 
    662     [System.Runtime.Serialization.OptionalFieldAttribute()]
    663     private System.DateTime DateCreatedField;
    664 
    665     [System.Runtime.Serialization.OptionalFieldAttribute()]
    666     private bool IsLocalField;
    667 
    668     [System.Runtime.Serialization.OptionalFieldAttribute()]
    669     private System.Guid UserIdField;
    670 
    671     [System.Runtime.Serialization.OptionalFieldAttribute()]
    672     private System.Version VersionField;
    673 
    674     [System.Runtime.Serialization.DataMemberAttribute()]
    675     public System.DateTime DateCreated {
    676       get {
    677         return this.DateCreatedField;
    678       }
    679       set {
    680         if ((this.DateCreatedField.Equals(value) != true)) {
    681           this.DateCreatedField = value;
    682           this.RaisePropertyChanged("DateCreated");
    683         }
    684       }
    685     }
    686 
    687     [System.Runtime.Serialization.DataMemberAttribute()]
    688     public bool IsLocal {
    689       get {
    690         return this.IsLocalField;
    691       }
    692       set {
    693         if ((this.IsLocalField.Equals(value) != true)) {
    694           this.IsLocalField = value;
    695           this.RaisePropertyChanged("IsLocal");
    696         }
    697       }
    698     }
    699 
    700     [System.Runtime.Serialization.DataMemberAttribute()]
    701     public System.Guid UserId {
    702       get {
    703         return this.UserIdField;
    704       }
    705       set {
    706         if ((this.UserIdField.Equals(value) != true)) {
    707           this.UserIdField = value;
    708           this.RaisePropertyChanged("UserId");
    709         }
    710       }
    711     }
    712 
    713     [System.Runtime.Serialization.DataMemberAttribute()]
    714     public System.Version Version {
    715       get {
    716         return this.VersionField;
    717       }
    718       set {
    719         if ((object.ReferenceEquals(this.VersionField, value) != true)) {
    720           this.VersionField = value;
    721           this.RaisePropertyChanged("Version");
    722         }
    723       }
    724     }
    725   }
    726 
    727   [System.Diagnostics.DebuggerStepThroughAttribute()]
    728   [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
    729   [System.Runtime.Serialization.DataContractAttribute(Name = "Resource", Namespace = "http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Hive.Common.DataTra" +
    730       "nsfer")]
    731   [System.SerializableAttribute()]
    732   [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Hive.SlaveGroup))]
    733   [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Hive.Slave))]
    734   public partial class Resource : HeuristicLab.Clients.Hive.NamedHiveItem {
    735 
    736     [System.Runtime.Serialization.OptionalFieldAttribute()]
    737     private System.Nullable<System.Guid> ParentResourceIdField;
    738 
    739     [System.Runtime.Serialization.DataMemberAttribute()]
    740     public System.Nullable<System.Guid> ParentResourceId {
    741       get {
    742         return this.ParentResourceIdField;
    743       }
    744       set {
    745         if ((this.ParentResourceIdField.Equals(value) != true)) {
    746           this.ParentResourceIdField = value;
    747           this.RaisePropertyChanged("ParentResourceId");
    748         }
    749       }
    750     }
    751   }
    752 
    753   [System.Diagnostics.DebuggerStepThroughAttribute()]
    754   [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
    755   [System.Runtime.Serialization.DataContractAttribute(Name = "SlaveGroup", Namespace = "http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Hive.Common.DataTra" +
    756       "nsfer")]
    757   [System.SerializableAttribute()]
    758   public partial class SlaveGroup : HeuristicLab.Clients.Hive.Resource {
    759   }
    760 
    761   [System.Diagnostics.DebuggerStepThroughAttribute()]
    762   [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
    763   [System.Runtime.Serialization.DataContractAttribute(Name = "Slave", Namespace = "http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Hive.Common.DataTra" +
    764       "nsfer")]
    765   [System.SerializableAttribute()]
    766   public partial class Slave : HeuristicLab.Clients.Hive.Resource {
    767 
    768     [System.Runtime.Serialization.OptionalFieldAttribute()]
    769     private System.Nullable<int> CoresField;
    770 
    771     [System.Runtime.Serialization.OptionalFieldAttribute()]
    772     private HeuristicLab.Clients.Hive.CpuArchitecture CpuArchitectureField;
    773 
    774     [System.Runtime.Serialization.OptionalFieldAttribute()]
    775     private System.Nullable<int> CpuSpeedField;
    776 
    777     [System.Runtime.Serialization.OptionalFieldAttribute()]
    778     private System.Nullable<int> FreeCoresField;
    779 
    780     [System.Runtime.Serialization.OptionalFieldAttribute()]
    781     private System.Nullable<int> FreeMemoryField;
    782 
    783     [System.Runtime.Serialization.OptionalFieldAttribute()]
    784     private bool IsAllowedToCalculateField;
    785 
    786     [System.Runtime.Serialization.OptionalFieldAttribute()]
    787     private System.Nullable<System.DateTime> LastHeartbeatField;
    788 
    789     [System.Runtime.Serialization.OptionalFieldAttribute()]
    790     private System.Nullable<int> MemoryField;
    791 
    792     [System.Runtime.Serialization.OptionalFieldAttribute()]
    793     private string OperatingSystemField;
    794 
    795     [System.Runtime.Serialization.OptionalFieldAttribute()]
    796     private HeuristicLab.Clients.Hive.SlaveState SlaveStateField;
    797 
    798     [System.Runtime.Serialization.DataMemberAttribute()]
    799     public System.Nullable<int> Cores {
    800       get {
    801         return this.CoresField;
    802       }
    803       set {
    804         if ((this.CoresField.Equals(value) != true)) {
    805           this.CoresField = value;
    806           this.RaisePropertyChanged("Cores");
    807         }
    808       }
    809     }
    810 
    811     [System.Runtime.Serialization.DataMemberAttribute()]
    812     public HeuristicLab.Clients.Hive.CpuArchitecture CpuArchitecture {
    813       get {
    814         return this.CpuArchitectureField;
    815       }
    816       set {
    817         if ((this.CpuArchitectureField.Equals(value) != true)) {
    818           this.CpuArchitectureField = value;
    819           this.RaisePropertyChanged("CpuArchitecture");
    820         }
    821       }
    822     }
    823 
    824     [System.Runtime.Serialization.DataMemberAttribute()]
    825     public System.Nullable<int> CpuSpeed {
    826       get {
    827         return this.CpuSpeedField;
    828       }
    829       set {
    830         if ((this.CpuSpeedField.Equals(value) != true)) {
    831           this.CpuSpeedField = value;
    832           this.RaisePropertyChanged("CpuSpeed");
    833         }
    834       }
    835     }
    836 
    837     [System.Runtime.Serialization.DataMemberAttribute()]
    838     public System.Nullable<int> FreeCores {
    839       get {
    840         return this.FreeCoresField;
    841       }
    842       set {
    843         if ((this.FreeCoresField.Equals(value) != true)) {
    844           this.FreeCoresField = value;
    845           this.RaisePropertyChanged("FreeCores");
    846         }
    847       }
    848     }
    849 
    850     [System.Runtime.Serialization.DataMemberAttribute()]
    851     public System.Nullable<int> FreeMemory {
    852       get {
    853         return this.FreeMemoryField;
    854       }
    855       set {
    856         if ((this.FreeMemoryField.Equals(value) != true)) {
    857           this.FreeMemoryField = value;
    858           this.RaisePropertyChanged("FreeMemory");
    859         }
    860       }
    861     }
    862 
    863     [System.Runtime.Serialization.DataMemberAttribute()]
    864     public bool IsAllowedToCalculate {
    865       get {
    866         return this.IsAllowedToCalculateField;
    867       }
    868       set {
    869         if ((this.IsAllowedToCalculateField.Equals(value) != true)) {
    870           this.IsAllowedToCalculateField = value;
    871           this.RaisePropertyChanged("IsAllowedToCalculate");
    872         }
    873       }
    874     }
    875 
    876     [System.Runtime.Serialization.DataMemberAttribute()]
    877     public System.Nullable<System.DateTime> LastHeartbeat {
    878       get {
    879         return this.LastHeartbeatField;
    880       }
    881       set {
    882         if ((this.LastHeartbeatField.Equals(value) != true)) {
    883           this.LastHeartbeatField = value;
    884           this.RaisePropertyChanged("LastHeartbeat");
    885         }
    886       }
    887     }
    888 
    889     [System.Runtime.Serialization.DataMemberAttribute()]
    890     public System.Nullable<int> Memory {
    891       get {
    892         return this.MemoryField;
    893       }
    894       set {
    895         if ((this.MemoryField.Equals(value) != true)) {
    896           this.MemoryField = value;
    897           this.RaisePropertyChanged("Memory");
    898         }
    899       }
    900     }
    901 
    902     [System.Runtime.Serialization.DataMemberAttribute()]
    903     public string OperatingSystem {
    904       get {
    905         return this.OperatingSystemField;
    906       }
    907       set {
    908         if ((object.ReferenceEquals(this.OperatingSystemField, value) != true)) {
    909           this.OperatingSystemField = value;
    910           this.RaisePropertyChanged("OperatingSystem");
    911         }
    912       }
    913     }
    914 
    915     [System.Runtime.Serialization.DataMemberAttribute()]
    916     public HeuristicLab.Clients.Hive.SlaveState SlaveState {
    917       get {
    918         return this.SlaveStateField;
    919       }
    920       set {
    921         if ((this.SlaveStateField.Equals(value) != true)) {
    922           this.SlaveStateField = value;
    923           this.RaisePropertyChanged("SlaveState");
    924         }
    925       }
    926     }
    927   }
    928 
    929   [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
    930   [System.Runtime.Serialization.DataContractAttribute(Name = "CpuArchitecture", Namespace = "http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Hive.Common.DataTra" +
    931       "nsfer")]
    932   public enum CpuArchitecture : int {
    933 
    934     [System.Runtime.Serialization.EnumMemberAttribute()]
    935     x86 = 0,
    936 
    937     [System.Runtime.Serialization.EnumMemberAttribute()]
    938     x64 = 1,
    939   }
    940 
    941   [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
    942   [System.Runtime.Serialization.DataContractAttribute(Name = "SlaveState", Namespace = "http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Hive.Common.DataTra" +
    943       "nsfer")]
    944   public enum SlaveState : int {
    945 
    946     [System.Runtime.Serialization.EnumMemberAttribute()]
    947     Idle = 0,
    948 
    949     [System.Runtime.Serialization.EnumMemberAttribute()]
    950     Calculating = 1,
    951 
    952     [System.Runtime.Serialization.EnumMemberAttribute()]
    953     Offline = 2,
    954   }
    955 
    956   [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
    957   [System.Runtime.Serialization.DataContractAttribute(Name = "JobState", Namespace = "http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Hive.Common.DataTra" +
    958       "nsfer")]
    959   public enum JobState : int {
    960 
    961     [System.Runtime.Serialization.EnumMemberAttribute()]
    962     Offline = 0,
    963 
    964     [System.Runtime.Serialization.EnumMemberAttribute()]
    965     Waiting = 1,
    966 
    967     [System.Runtime.Serialization.EnumMemberAttribute()]
    968     Transferring = 2,
    969 
    970     [System.Runtime.Serialization.EnumMemberAttribute()]
    971     Calculating = 3,
    972 
    973     [System.Runtime.Serialization.EnumMemberAttribute()]
    974     Paused = 4,
    975 
    976     [System.Runtime.Serialization.EnumMemberAttribute()]
    977     Finished = 5,
    978 
    979     [System.Runtime.Serialization.EnumMemberAttribute()]
    980     Aborted = 6,
    981 
    982     [System.Runtime.Serialization.EnumMemberAttribute()]
    983     Failed = 7,
    984   }
    985 
    986   [System.Diagnostics.DebuggerStepThroughAttribute()]
    987   [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
    988   [System.Runtime.Serialization.DataContractAttribute(Name = "JobData", Namespace = "http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Hive.Common.DataTra" +
    989       "nsfer")]
    990   [System.SerializableAttribute()]
    991   public partial class JobData : object, System.Runtime.Serialization.IExtensibleDataObject, System.ComponentModel.INotifyPropertyChanged {
    992 
    993     [System.NonSerializedAttribute()]
    994     private System.Runtime.Serialization.ExtensionDataObject extensionDataField;
    995 
    996     [System.Runtime.Serialization.OptionalFieldAttribute()]
    997     private byte[] DataField;
    998 
    999     [System.Runtime.Serialization.OptionalFieldAttribute()]
    1000     private System.Guid JobIdField;
    1001 
    1002     [System.Runtime.Serialization.OptionalFieldAttribute()]
    1003     private System.DateTime LastUpdateField;
    1004 
    1005     public System.Runtime.Serialization.ExtensionDataObject ExtensionData {
    1006       get {
    1007         return this.extensionDataField;
    1008       }
    1009       set {
    1010         this.extensionDataField = value;
    1011       }
    1012     }
    1013 
    1014     [System.Runtime.Serialization.DataMemberAttribute()]
    1015     public byte[] Data {
    1016       get {
    1017         return this.DataField;
    1018       }
    1019       set {
    1020         if ((object.ReferenceEquals(this.DataField, value) != true)) {
    1021           this.DataField = value;
    1022           this.RaisePropertyChanged("Data");
    1023         }
    1024       }
    1025     }
    1026 
    1027     [System.Runtime.Serialization.DataMemberAttribute()]
    1028     public System.Guid JobId {
    1029       get {
    1030         return this.JobIdField;
    1031       }
    1032       set {
    1033         if ((this.JobIdField.Equals(value) != true)) {
    1034           this.JobIdField = value;
    1035           this.RaisePropertyChanged("JobId");
    1036         }
    1037       }
    1038     }
    1039 
    1040     [System.Runtime.Serialization.DataMemberAttribute()]
    1041     public System.DateTime LastUpdate {
    1042       get {
    1043         return this.LastUpdateField;
    1044       }
    1045       set {
    1046         if ((this.LastUpdateField.Equals(value) != true)) {
    1047           this.LastUpdateField = value;
    1048           this.RaisePropertyChanged("LastUpdate");
    1049         }
    1050       }
    1051     }
    1052 
    1053     public event System.ComponentModel.PropertyChangedEventHandler PropertyChanged;
    1054 
    1055     protected void RaisePropertyChanged(string propertyName) {
    1056       System.ComponentModel.PropertyChangedEventHandler propertyChanged = this.PropertyChanged;
    1057       if ((propertyChanged != null)) {
    1058         propertyChanged(this, new System.ComponentModel.PropertyChangedEventArgs(propertyName));
    1059       }
    1060     }
    1061   }
    1062 
    1063   [System.Diagnostics.DebuggerStepThroughAttribute()]
    1064   [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
    1065   [System.Runtime.Serialization.DataContractAttribute(Name = "Heartbeat", Namespace = "http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Hive.Common.DataTra" +
    1066       "nsfer")]
    1067   [System.SerializableAttribute()]
    1068   public partial class Heartbeat : object, System.Runtime.Serialization.IExtensibleDataObject, System.ComponentModel.INotifyPropertyChanged {
    1069 
    1070     [System.NonSerializedAttribute()]
    1071     private System.Runtime.Serialization.ExtensionDataObject extensionDataField;
    1072 
    1073     [System.Runtime.Serialization.OptionalFieldAttribute()]
    1074     private bool AssignJobField;
    1075 
    1076     [System.Runtime.Serialization.OptionalFieldAttribute()]
    1077     private int FreeCoresField;
    1078 
    1079     [System.Runtime.Serialization.OptionalFieldAttribute()]
    1080     private int FreeMemoryField;
    1081 
    1082     [System.Runtime.Serialization.OptionalFieldAttribute()]
    1083     private System.Collections.Generic.Dictionary<System.Guid, System.TimeSpan> JobProgressField;
    1084 
    1085     [System.Runtime.Serialization.OptionalFieldAttribute()]
    1086     private System.Guid SlaveIdField;
    1087 
    1088     public System.Runtime.Serialization.ExtensionDataObject ExtensionData {
    1089       get {
    1090         return this.extensionDataField;
    1091       }
    1092       set {
    1093         this.extensionDataField = value;
    1094       }
    1095     }
    1096 
    1097     [System.Runtime.Serialization.DataMemberAttribute()]
    1098     public bool AssignJob {
    1099       get {
    1100         return this.AssignJobField;
    1101       }
    1102       set {
    1103         if ((this.AssignJobField.Equals(value) != true)) {
    1104           this.AssignJobField = value;
    1105           this.RaisePropertyChanged("AssignJob");
    1106         }
    1107       }
    1108     }
    1109 
    1110     [System.Runtime.Serialization.DataMemberAttribute()]
    1111     public int FreeCores {
    1112       get {
    1113         return this.FreeCoresField;
    1114       }
    1115       set {
    1116         if ((this.FreeCoresField.Equals(value) != true)) {
    1117           this.FreeCoresField = value;
    1118           this.RaisePropertyChanged("FreeCores");
    1119         }
    1120       }
    1121     }
    1122 
    1123     [System.Runtime.Serialization.DataMemberAttribute()]
    1124     public int FreeMemory {
    1125       get {
    1126         return this.FreeMemoryField;
    1127       }
    1128       set {
    1129         if ((this.FreeMemoryField.Equals(value) != true)) {
    1130           this.FreeMemoryField = value;
    1131           this.RaisePropertyChanged("FreeMemory");
    1132         }
    1133       }
    1134     }
    1135 
    1136     [System.Runtime.Serialization.DataMemberAttribute()]
    1137     public System.Collections.Generic.Dictionary<System.Guid, System.TimeSpan> JobProgress {
    1138       get {
    1139         return this.JobProgressField;
    1140       }
    1141       set {
    1142         if ((object.ReferenceEquals(this.JobProgressField, value) != true)) {
    1143           this.JobProgressField = value;
    1144           this.RaisePropertyChanged("JobProgress");
    1145         }
    1146       }
    1147     }
    1148 
    1149     [System.Runtime.Serialization.DataMemberAttribute()]
    1150     public System.Guid SlaveId {
    1151       get {
    1152         return this.SlaveIdField;
    1153       }
    1154       set {
    1155         if ((this.SlaveIdField.Equals(value) != true)) {
    1156           this.SlaveIdField = value;
    1157           this.RaisePropertyChanged("SlaveId");
    1158         }
    1159       }
    1160     }
    1161 
    1162     public event System.ComponentModel.PropertyChangedEventHandler PropertyChanged;
    1163 
    1164     protected void RaisePropertyChanged(string propertyName) {
    1165       System.ComponentModel.PropertyChangedEventHandler propertyChanged = this.PropertyChanged;
    1166       if ((propertyChanged != null)) {
    1167         propertyChanged(this, new System.ComponentModel.PropertyChangedEventArgs(propertyName));
    1168       }
    1169     }
    1170   }
    1171 
    1172   [System.Diagnostics.DebuggerStepThroughAttribute()]
    1173   [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
    1174   [System.Runtime.Serialization.DataContractAttribute(Name = "MessageContainer", Namespace = "http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Hive.Common")]
    1175   [System.SerializableAttribute()]
    1176   public partial class MessageContainer : object, System.Runtime.Serialization.IExtensibleDataObject, System.ComponentModel.INotifyPropertyChanged {
    1177 
    1178     [System.NonSerializedAttribute()]
    1179     private System.Runtime.Serialization.ExtensionDataObject extensionDataField;
    1180 
    1181     [System.Runtime.Serialization.OptionalFieldAttribute()]
    1182     private System.Guid JobIdField;
    1183 
    1184     [System.Runtime.Serialization.OptionalFieldAttribute()]
    1185     private HeuristicLab.Clients.Hive.MessageContainer.MessageType MessageField;
    1186 
    1187     public System.Runtime.Serialization.ExtensionDataObject ExtensionData {
    1188       get {
    1189         return this.extensionDataField;
    1190       }
    1191       set {
    1192         this.extensionDataField = value;
    1193       }
    1194     }
    1195 
    1196     [System.Runtime.Serialization.DataMemberAttribute()]
    1197     public System.Guid JobId {
    1198       get {
    1199         return this.JobIdField;
    1200       }
    1201       set {
    1202         if ((this.JobIdField.Equals(value) != true)) {
    1203           this.JobIdField = value;
    1204           this.RaisePropertyChanged("JobId");
    1205         }
    1206       }
    1207     }
    1208 
    1209     [System.Runtime.Serialization.DataMemberAttribute()]
    1210     public HeuristicLab.Clients.Hive.MessageContainer.MessageType Message {
    1211       get {
    1212         return this.MessageField;
    1213       }
    1214       set {
    1215         if ((this.MessageField.Equals(value) != true)) {
    1216           this.MessageField = value;
    1217           this.RaisePropertyChanged("Message");
    1218         }
    1219       }
    1220     }
    1221 
    1222     public event System.ComponentModel.PropertyChangedEventHandler PropertyChanged;
    1223 
    1224     protected void RaisePropertyChanged(string propertyName) {
    1225       System.ComponentModel.PropertyChangedEventHandler propertyChanged = this.PropertyChanged;
    1226       if ((propertyChanged != null)) {
    1227         propertyChanged(this, new System.ComponentModel.PropertyChangedEventArgs(propertyName));
    1228       }
    1229     }
    1230 
    123115    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
    1232     [System.Runtime.Serialization.DataContractAttribute(Name = "MessageContainer.MessageType", Namespace = "http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Hive.Common")]
    1233     public enum MessageType : int {
    1234 
    1235       [System.Runtime.Serialization.EnumMemberAttribute()]
    1236       CalculateJob = 0,
    1237 
    1238       [System.Runtime.Serialization.EnumMemberAttribute()]
    1239       StopJob = 1,
    1240 
    1241       [System.Runtime.Serialization.EnumMemberAttribute()]
    1242       StopAll = 2,
    1243 
    1244       [System.Runtime.Serialization.EnumMemberAttribute()]
    1245       AbortJob = 3,
    1246 
    1247       [System.Runtime.Serialization.EnumMemberAttribute()]
    1248       AbortAll = 4,
    1249 
    1250       [System.Runtime.Serialization.EnumMemberAttribute()]
    1251       PauseJob = 5,
    1252 
    1253       [System.Runtime.Serialization.EnumMemberAttribute()]
    1254       PauseAll = 6,
    1255 
    1256       [System.Runtime.Serialization.EnumMemberAttribute()]
    1257       Restart = 7,
    1258 
    1259       [System.Runtime.Serialization.EnumMemberAttribute()]
    1260       Sleep = 8,
    1261 
    1262       [System.Runtime.Serialization.EnumMemberAttribute()]
    1263       ShutdownSlave = 9,
    1264 
    1265       [System.Runtime.Serialization.EnumMemberAttribute()]
    1266       SayHello = 10,
    1267 
    1268       [System.Runtime.Serialization.EnumMemberAttribute()]
    1269       AddChildJob = 11,
    1270 
    1271       [System.Runtime.Serialization.EnumMemberAttribute()]
    1272       GetChildJobs = 12,
    1273 
    1274       [System.Runtime.Serialization.EnumMemberAttribute()]
    1275       DeleteChildJobs = 13,
    1276     }
    1277   }
    1278 
    1279   [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
    1280   [System.ServiceModel.ServiceContractAttribute(ConfigurationName = "HeuristicLab.Clients.Hive.IHiveService")]
    1281   public interface IHiveService {
    1282 
    1283     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/GetSlave", ReplyAction = "http://tempuri.org/IHiveService/GetSlaveResponse")]
    1284     HeuristicLab.Clients.Hive.Slave GetSlave(System.Guid slaveId);
    1285 
    1286     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/GetSlaveGroup", ReplyAction = "http://tempuri.org/IHiveService/GetSlaveGroupResponse")]
    1287     HeuristicLab.Clients.Hive.SlaveGroup GetSlaveGroup(System.Guid slaveGroupId);
    1288 
    1289     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/GetSlaves", ReplyAction = "http://tempuri.org/IHiveService/GetSlavesResponse")]
    1290     System.Collections.Generic.List<HeuristicLab.Clients.Hive.Slave> GetSlaves();
    1291 
    1292     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/GetSlaveGroups", ReplyAction = "http://tempuri.org/IHiveService/GetSlaveGroupsResponse")]
    1293     System.Collections.Generic.List<HeuristicLab.Clients.Hive.SlaveGroup> GetSlaveGroups();
    1294 
    1295     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/UpdateSlave", ReplyAction = "http://tempuri.org/IHiveService/UpdateSlaveResponse")]
    1296     void UpdateSlave(HeuristicLab.Clients.Hive.Slave slave);
    1297 
    1298     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/UpdateSlaveGroup", ReplyAction = "http://tempuri.org/IHiveService/UpdateSlaveGroupResponse")]
    1299     void UpdateSlaveGroup(HeuristicLab.Clients.Hive.SlaveGroup slaveGroup);
    1300 
    1301     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/DeleteSlave", ReplyAction = "http://tempuri.org/IHiveService/DeleteSlaveResponse")]
    1302     void DeleteSlave(System.Guid slaveId);
    1303 
    1304     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/DeleteSlaveGroup", ReplyAction = "http://tempuri.org/IHiveService/DeleteSlaveGroupResponse")]
    1305     void DeleteSlaveGroup(System.Guid slaveGroupId);
    1306 
    1307     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/AddResourceToGroup", ReplyAction = "http://tempuri.org/IHiveService/AddResourceToGroupResponse")]
    1308     void AddResourceToGroup(System.Guid slaveGroupId, System.Guid resourceId);
    1309 
    1310     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/RemoveResourceFromGroup", ReplyAction = "http://tempuri.org/IHiveService/RemoveResourceFromGroupResponse")]
    1311     void RemoveResourceFromGroup(System.Guid slaveGroupId, System.Guid resourceId);
    1312 
    1313     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/GetResourceId", ReplyAction = "http://tempuri.org/IHiveService/GetResourceIdResponse")]
    1314     System.Guid GetResourceId(string resourceName);
    1315 
    1316     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/TriggerLifecycle", ReplyAction = "http://tempuri.org/IHiveService/TriggerLifecycleResponse")]
    1317     void TriggerLifecycle(bool force);
    1318 
    1319     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/AddAppointment", ReplyAction = "http://tempuri.org/IHiveService/AddAppointmentResponse")]
    1320     System.Guid AddAppointment(HeuristicLab.Clients.Hive.Appointment appointment);
    1321 
    1322     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/DeleteAppointment", ReplyAction = "http://tempuri.org/IHiveService/DeleteAppointmentResponse")]
    1323     void DeleteAppointment(System.Guid appointmentId);
    1324 
    1325     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/UpdateAppointment", ReplyAction = "http://tempuri.org/IHiveService/UpdateAppointmentResponse")]
    1326     void UpdateAppointment(HeuristicLab.Clients.Hive.Appointment appointment);
    1327 
    1328     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/GetScheduleForResource", ReplyAction = "http://tempuri.org/IHiveService/GetScheduleForResourceResponse")]
    1329     System.Collections.Generic.List<HeuristicLab.Clients.Hive.Appointment> GetScheduleForResource(System.Guid resourceId);
    1330 
    1331     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/AddJob", ReplyAction = "http://tempuri.org/IHiveService/AddJobResponse")]
    1332     System.Guid AddJob(HeuristicLab.Clients.Hive.Job job, HeuristicLab.Clients.Hive.JobData jobData, System.Collections.Generic.List<System.Guid> resourceIds);
    1333 
    1334     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/AddChildJob", ReplyAction = "http://tempuri.org/IHiveService/AddChildJobResponse")]
    1335     System.Guid AddChildJob(System.Guid parentJobId, HeuristicLab.Clients.Hive.Job job, HeuristicLab.Clients.Hive.JobData jobData);
    1336 
    1337     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/GetJob", ReplyAction = "http://tempuri.org/IHiveService/GetJobResponse")]
    1338     HeuristicLab.Clients.Hive.Job GetJob(System.Guid jobId);
    1339 
    1340     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/GetJobs", ReplyAction = "http://tempuri.org/IHiveService/GetJobsResponse")]
    1341     System.Collections.Generic.List<HeuristicLab.Clients.Hive.Job> GetJobs();
    1342 
    1343     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/GetLightweightJobs", ReplyAction = "http://tempuri.org/IHiveService/GetLightweightJobsResponse")]
    1344     System.Collections.Generic.List<HeuristicLab.Clients.Hive.LightweightJob> GetLightweightJobs(System.Collections.Generic.List<System.Guid> jobIds);
    1345 
    1346     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/GetLightweightChildJobs", ReplyAction = "http://tempuri.org/IHiveService/GetLightweightChildJobsResponse")]
    1347     System.Collections.Generic.List<HeuristicLab.Clients.Hive.LightweightJob> GetLightweightChildJobs(System.Nullable<System.Guid> parentJobId, bool recursive, bool includeParent);
    1348 
    1349     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/GetJobData", ReplyAction = "http://tempuri.org/IHiveService/GetJobDataResponse")]
    1350     HeuristicLab.Clients.Hive.JobData GetJobData(System.Guid jobId);
    1351 
    1352     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/UpdateJob", ReplyAction = "http://tempuri.org/IHiveService/UpdateJobResponse")]
    1353     void UpdateJob(HeuristicLab.Clients.Hive.Job jobDto);
    1354 
    1355     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/UpdateJobData", ReplyAction = "http://tempuri.org/IHiveService/UpdateJobDataResponse")]
    1356     void UpdateJobData(HeuristicLab.Clients.Hive.Job jobDto, HeuristicLab.Clients.Hive.JobData jobDataDto);
    1357 
    1358     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/DeleteJob", ReplyAction = "http://tempuri.org/IHiveService/DeleteJobResponse")]
    1359     void DeleteJob(System.Guid jobId);
    1360 
    1361     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/DeleteChildJobs", ReplyAction = "http://tempuri.org/IHiveService/DeleteChildJobsResponse")]
    1362     void DeleteChildJobs(System.Guid parentJobId);
    1363 
    1364     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/UpdateJobState", ReplyAction = "http://tempuri.org/IHiveService/UpdateJobStateResponse")]
    1365     HeuristicLab.Clients.Hive.Job UpdateJobState(System.Guid jobId, HeuristicLab.Clients.Hive.JobState jobState, System.Nullable<System.Guid> slaveId, System.Nullable<System.Guid> userId, string exception);
    1366 
    1367     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/StopJob", ReplyAction = "http://tempuri.org/IHiveService/StopJobResponse")]
    1368     void StopJob(System.Guid jobId);
    1369 
    1370     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/PauseJob", ReplyAction = "http://tempuri.org/IHiveService/PauseJobResponse")]
    1371     void PauseJob(System.Guid jobId);
    1372 
    1373     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/GetHiveExperiment", ReplyAction = "http://tempuri.org/IHiveService/GetHiveExperimentResponse")]
    1374     HeuristicLab.Clients.Hive.HiveExperiment GetHiveExperiment(System.Guid id);
    1375 
    1376     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/GetHiveExperiments", ReplyAction = "http://tempuri.org/IHiveService/GetHiveExperimentsResponse")]
    1377     System.Collections.Generic.List<HeuristicLab.Clients.Hive.HiveExperiment> GetHiveExperiments();
    1378 
    1379     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/GetAllHiveExperiments", ReplyAction = "http://tempuri.org/IHiveService/GetAllHiveExperimentsResponse")]
    1380     System.Collections.Generic.List<HeuristicLab.Clients.Hive.HiveExperiment> GetAllHiveExperiments();
    1381 
    1382     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/AddHiveExperiment", ReplyAction = "http://tempuri.org/IHiveService/AddHiveExperimentResponse")]
    1383     System.Guid AddHiveExperiment(HeuristicLab.Clients.Hive.HiveExperiment hiveExperimentDto);
    1384 
    1385     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/UpdateHiveExperiment", ReplyAction = "http://tempuri.org/IHiveService/UpdateHiveExperimentResponse")]
    1386     void UpdateHiveExperiment(HeuristicLab.Clients.Hive.HiveExperiment hiveExperimentDto);
    1387 
    1388     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/DeleteHiveExperiment", ReplyAction = "http://tempuri.org/IHiveService/DeleteHiveExperimentResponse")]
    1389     void DeleteHiveExperiment(System.Guid hiveExperimentId);
    1390 
    1391     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/Hello", ReplyAction = "http://tempuri.org/IHiveService/HelloResponse")]
    1392     void Hello(HeuristicLab.Clients.Hive.Slave slave);
    1393 
    1394     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/GoodBye", ReplyAction = "http://tempuri.org/IHiveService/GoodByeResponse")]
    1395     void GoodBye(System.Guid slaveId);
    1396 
    1397     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/Heartbeat", ReplyAction = "http://tempuri.org/IHiveService/HeartbeatResponse")]
    1398     System.Collections.Generic.List<HeuristicLab.Clients.Hive.MessageContainer> Heartbeat([System.ServiceModel.MessageParameterAttribute(Name = "heartbeat")] HeuristicLab.Clients.Hive.Heartbeat heartbeat1);
    1399 
    1400     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/AddPlugin", ReplyAction = "http://tempuri.org/IHiveService/AddPluginResponse")]
    1401     System.Guid AddPlugin(HeuristicLab.Clients.Hive.Plugin plugin, System.Collections.Generic.List<HeuristicLab.Clients.Hive.PluginData> pluginData);
    1402 
    1403     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/GetPlugins", ReplyAction = "http://tempuri.org/IHiveService/GetPluginsResponse")]
    1404     System.Collections.Generic.List<HeuristicLab.Clients.Hive.Plugin> GetPlugins();
    1405 
    1406     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/GetPluginDatas", ReplyAction = "http://tempuri.org/IHiveService/GetPluginDatasResponse")]
    1407     System.Collections.Generic.List<HeuristicLab.Clients.Hive.PluginData> GetPluginDatas(System.Collections.Generic.List<System.Guid> pluginIds);
    1408 
    1409     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/AddSlave", ReplyAction = "http://tempuri.org/IHiveService/AddSlaveResponse")]
    1410     System.Guid AddSlave(HeuristicLab.Clients.Hive.Slave slave);
    1411 
    1412     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/AddSlaveGroup", ReplyAction = "http://tempuri.org/IHiveService/AddSlaveGroupResponse")]
    1413     System.Guid AddSlaveGroup(HeuristicLab.Clients.Hive.SlaveGroup slaveGroup);
    1414   }
    1415 
    1416   [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
    1417   public interface IHiveServiceChannel : HeuristicLab.Clients.Hive.IHiveService, System.ServiceModel.IClientChannel {
    1418   }
    1419 
    1420   [System.Diagnostics.DebuggerStepThroughAttribute()]
    1421   [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
    1422   public partial class HiveServiceClient : System.ServiceModel.ClientBase<HeuristicLab.Clients.Hive.IHiveService>, HeuristicLab.Clients.Hive.IHiveService {
    1423 
    1424     public HiveServiceClient() {
    1425     }
    1426 
    1427     public HiveServiceClient(string endpointConfigurationName) :
    1428       base(endpointConfigurationName) {
    1429     }
    1430 
    1431     public HiveServiceClient(string endpointConfigurationName, string remoteAddress) :
    1432       base(endpointConfigurationName, remoteAddress) {
    1433     }
    1434 
    1435     public HiveServiceClient(string endpointConfigurationName, System.ServiceModel.EndpointAddress remoteAddress) :
    1436       base(endpointConfigurationName, remoteAddress) {
    1437     }
    1438 
    1439     public HiveServiceClient(System.ServiceModel.Channels.Binding binding, System.ServiceModel.EndpointAddress remoteAddress) :
    1440       base(binding, remoteAddress) {
    1441     }
    1442 
    1443     public HeuristicLab.Clients.Hive.Slave GetSlave(System.Guid slaveId) {
    1444       return base.Channel.GetSlave(slaveId);
    1445     }
    1446 
    1447     public HeuristicLab.Clients.Hive.SlaveGroup GetSlaveGroup(System.Guid slaveGroupId) {
    1448       return base.Channel.GetSlaveGroup(slaveGroupId);
    1449     }
    1450 
    1451     public System.Collections.Generic.List<HeuristicLab.Clients.Hive.Slave> GetSlaves() {
    1452       return base.Channel.GetSlaves();
    1453     }
    1454 
    1455     public System.Collections.Generic.List<HeuristicLab.Clients.Hive.SlaveGroup> GetSlaveGroups() {
    1456       return base.Channel.GetSlaveGroups();
    1457     }
    1458 
    1459     public void UpdateSlave(HeuristicLab.Clients.Hive.Slave slave) {
    1460       base.Channel.UpdateSlave(slave);
    1461     }
    1462 
    1463     public void UpdateSlaveGroup(HeuristicLab.Clients.Hive.SlaveGroup slaveGroup) {
    1464       base.Channel.UpdateSlaveGroup(slaveGroup);
    1465     }
    1466 
    1467     public void DeleteSlave(System.Guid slaveId) {
    1468       base.Channel.DeleteSlave(slaveId);
    1469     }
    1470 
    1471     public void DeleteSlaveGroup(System.Guid slaveGroupId) {
    1472       base.Channel.DeleteSlaveGroup(slaveGroupId);
    1473     }
    1474 
    1475     public void AddResourceToGroup(System.Guid slaveGroupId, System.Guid resourceId) {
    1476       base.Channel.AddResourceToGroup(slaveGroupId, resourceId);
    1477     }
    1478 
    1479     public void RemoveResourceFromGroup(System.Guid slaveGroupId, System.Guid resourceId) {
    1480       base.Channel.RemoveResourceFromGroup(slaveGroupId, resourceId);
    1481     }
    1482 
    1483     public System.Guid GetResourceId(string resourceName) {
    1484       return base.Channel.GetResourceId(resourceName);
    1485     }
    1486 
    1487     public void TriggerLifecycle(bool force) {
    1488       base.Channel.TriggerLifecycle(force);
    1489     }
    1490 
    1491     public System.Guid AddAppointment(HeuristicLab.Clients.Hive.Appointment appointment) {
    1492       return base.Channel.AddAppointment(appointment);
    1493     }
    1494 
    1495     public void DeleteAppointment(System.Guid appointmentId) {
    1496       base.Channel.DeleteAppointment(appointmentId);
    1497     }
    1498 
    1499     public void UpdateAppointment(HeuristicLab.Clients.Hive.Appointment appointment) {
    1500       base.Channel.UpdateAppointment(appointment);
    1501     }
    1502 
    1503     public System.Collections.Generic.List<HeuristicLab.Clients.Hive.Appointment> GetScheduleForResource(System.Guid resourceId) {
    1504       return base.Channel.GetScheduleForResource(resourceId);
    1505     }
    1506 
    1507     public System.Guid AddJob(HeuristicLab.Clients.Hive.Job job, HeuristicLab.Clients.Hive.JobData jobData, System.Collections.Generic.List<System.Guid> resourceIds) {
    1508       return base.Channel.AddJob(job, jobData, resourceIds);
    1509     }
    1510 
    1511     public System.Guid AddChildJob(System.Guid parentJobId, HeuristicLab.Clients.Hive.Job job, HeuristicLab.Clients.Hive.JobData jobData) {
    1512       return base.Channel.AddChildJob(parentJobId, job, jobData);
    1513     }
    1514 
    1515     public HeuristicLab.Clients.Hive.Job GetJob(System.Guid jobId) {
    1516       return base.Channel.GetJob(jobId);
    1517     }
    1518 
    1519     public System.Collections.Generic.List<HeuristicLab.Clients.Hive.Job> GetJobs() {
    1520       return base.Channel.GetJobs();
    1521     }
    1522 
    1523     public System.Collections.Generic.List<HeuristicLab.Clients.Hive.LightweightJob> GetLightweightJobs(System.Collections.Generic.List<System.Guid> jobIds) {
    1524       return base.Channel.GetLightweightJobs(jobIds);
    1525     }
    1526 
    1527     public System.Collections.Generic.List<HeuristicLab.Clients.Hive.LightweightJob> GetLightweightChildJobs(System.Nullable<System.Guid> parentJobId, bool recursive, bool includeParent) {
    1528       return base.Channel.GetLightweightChildJobs(parentJobId, recursive, includeParent);
    1529     }
    1530 
    1531     public HeuristicLab.Clients.Hive.JobData GetJobData(System.Guid jobId) {
    1532       return base.Channel.GetJobData(jobId);
    1533     }
    1534 
    1535     public void UpdateJob(HeuristicLab.Clients.Hive.Job jobDto) {
    1536       base.Channel.UpdateJob(jobDto);
    1537     }
    1538 
    1539     public void UpdateJobData(HeuristicLab.Clients.Hive.Job jobDto, HeuristicLab.Clients.Hive.JobData jobDataDto) {
    1540       base.Channel.UpdateJobData(jobDto, jobDataDto);
    1541     }
    1542 
    1543     public void DeleteJob(System.Guid jobId) {
    1544       base.Channel.DeleteJob(jobId);
    1545     }
    1546 
    1547     public void DeleteChildJobs(System.Guid parentJobId) {
    1548       base.Channel.DeleteChildJobs(parentJobId);
    1549     }
    1550 
    1551     public HeuristicLab.Clients.Hive.Job UpdateJobState(System.Guid jobId, HeuristicLab.Clients.Hive.JobState jobState, System.Nullable<System.Guid> slaveId, System.Nullable<System.Guid> userId, string exception) {
    1552       return base.Channel.UpdateJobState(jobId, jobState, slaveId, userId, exception);
    1553     }
    1554 
    1555     public void StopJob(System.Guid jobId) {
    1556       base.Channel.StopJob(jobId);
    1557     }
    1558 
    1559     public void PauseJob(System.Guid jobId) {
    1560       base.Channel.PauseJob(jobId);
    1561     }
    1562 
    1563     public HeuristicLab.Clients.Hive.HiveExperiment GetHiveExperiment(System.Guid id) {
    1564       return base.Channel.GetHiveExperiment(id);
    1565     }
    1566 
    1567     public System.Collections.Generic.List<HeuristicLab.Clients.Hive.HiveExperiment> GetHiveExperiments() {
    1568       return base.Channel.GetHiveExperiments();
    1569     }
    1570 
    1571     public System.Collections.Generic.List<HeuristicLab.Clients.Hive.HiveExperiment> GetAllHiveExperiments() {
    1572       return base.Channel.GetAllHiveExperiments();
    1573     }
    1574 
    1575     public System.Guid AddHiveExperiment(HeuristicLab.Clients.Hive.HiveExperiment hiveExperimentDto) {
    1576       return base.Channel.AddHiveExperiment(hiveExperimentDto);
    1577     }
    1578 
    1579     public void UpdateHiveExperiment(HeuristicLab.Clients.Hive.HiveExperiment hiveExperimentDto) {
    1580       base.Channel.UpdateHiveExperiment(hiveExperimentDto);
    1581     }
    1582 
    1583     public void DeleteHiveExperiment(System.Guid hiveExperimentId) {
    1584       base.Channel.DeleteHiveExperiment(hiveExperimentId);
    1585     }
    1586 
    1587     public void Hello(HeuristicLab.Clients.Hive.Slave slave) {
    1588       base.Channel.Hello(slave);
    1589     }
    1590 
    1591     public void GoodBye(System.Guid slaveId) {
    1592       base.Channel.GoodBye(slaveId);
    1593     }
    1594 
    1595     public System.Collections.Generic.List<HeuristicLab.Clients.Hive.MessageContainer> Heartbeat(HeuristicLab.Clients.Hive.Heartbeat heartbeat1) {
    1596       return base.Channel.Heartbeat(heartbeat1);
    1597     }
    1598 
    1599     public System.Guid AddPlugin(HeuristicLab.Clients.Hive.Plugin plugin, System.Collections.Generic.List<HeuristicLab.Clients.Hive.PluginData> pluginData) {
    1600       return base.Channel.AddPlugin(plugin, pluginData);
    1601     }
    1602 
    1603     public System.Collections.Generic.List<HeuristicLab.Clients.Hive.Plugin> GetPlugins() {
    1604       return base.Channel.GetPlugins();
    1605     }
    1606 
    1607     public System.Collections.Generic.List<HeuristicLab.Clients.Hive.PluginData> GetPluginDatas(System.Collections.Generic.List<System.Guid> pluginIds) {
    1608       return base.Channel.GetPluginDatas(pluginIds);
    1609     }
    1610 
    1611     public System.Guid AddSlave(HeuristicLab.Clients.Hive.Slave slave) {
    1612       return base.Channel.AddSlave(slave);
    1613     }
    1614 
    1615     public System.Guid AddSlaveGroup(HeuristicLab.Clients.Hive.SlaveGroup slaveGroup) {
    1616       return base.Channel.AddSlaveGroup(slaveGroup);
    1617     }
    1618   }
     16    [System.Runtime.Serialization.DataContractAttribute(Name="HiveItem", Namespace="http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Hive.Common.DataTra" +
     17        "nsfer")]
     18    [System.SerializableAttribute()]
     19    [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Hive.LightweightJob))]
     20    [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Hive.StateLog))]
     21    [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Hive.Job))]
     22    [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Hive.NamedHiveItem))]
     23    [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Hive.HiveExperiment))]
     24    [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Hive.Resource))]
     25    [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Hive.Slave))]
     26    [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Hive.SlaveGroup))]
     27    [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Hive.Plugin))]
     28    [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Hive.PluginData))]
     29    [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Hive.Appointment))]
     30    public partial class HiveItem : object, System.Runtime.Serialization.IExtensibleDataObject, System.ComponentModel.INotifyPropertyChanged
     31    {
     32       
     33        [System.NonSerializedAttribute()]
     34        private System.Runtime.Serialization.ExtensionDataObject extensionDataField;
     35       
     36        [System.Runtime.Serialization.OptionalFieldAttribute()]
     37        private System.Guid IdField;
     38       
     39        public System.Runtime.Serialization.ExtensionDataObject ExtensionData
     40        {
     41            get
     42            {
     43                return this.extensionDataField;
     44            }
     45            set
     46            {
     47                this.extensionDataField = value;
     48            }
     49        }
     50       
     51        [System.Runtime.Serialization.DataMemberAttribute()]
     52        public System.Guid Id
     53        {
     54            get
     55            {
     56                return this.IdField;
     57            }
     58            set
     59            {
     60                if ((this.IdField.Equals(value) != true))
     61                {
     62                    this.IdField = value;
     63                    this.RaisePropertyChanged("Id");
     64                }
     65            }
     66        }
     67       
     68        public event System.ComponentModel.PropertyChangedEventHandler PropertyChanged;
     69       
     70        //protected void RaisePropertyChanged(string propertyName)
     71        //{
     72        //    System.ComponentModel.PropertyChangedEventHandler propertyChanged = this.PropertyChanged;
     73        //    if ((propertyChanged != null))
     74        //    {
     75        //        propertyChanged(this, new System.ComponentModel.PropertyChangedEventArgs(propertyName));
     76        //    }
     77        //}
     78    }
     79   
     80    [System.Diagnostics.DebuggerStepThroughAttribute()]
     81    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
     82    [System.Runtime.Serialization.DataContractAttribute(Name="LightweightJob", Namespace="http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Hive.Common.DataTra" +
     83        "nsfer")]
     84    [System.SerializableAttribute()]
     85    [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Hive.Job))]
     86    public partial class LightweightJob : HeuristicLab.Clients.Hive.HiveItem
     87    {
     88       
     89        [System.Runtime.Serialization.OptionalFieldAttribute()]
     90        private System.Nullable<HeuristicLab.Clients.Hive.Command> CommandField;
     91       
     92        [System.Runtime.Serialization.OptionalFieldAttribute()]
     93        private System.Nullable<System.TimeSpan> ExecutionTimeField;
     94       
     95        [System.Runtime.Serialization.OptionalFieldAttribute()]
     96        private System.Nullable<System.Guid> ParentJobIdField;
     97       
     98        [System.Runtime.Serialization.OptionalFieldAttribute()]
     99        private HeuristicLab.Clients.Hive.JobState StateField;
     100       
     101        [System.Runtime.Serialization.OptionalFieldAttribute()]
     102        private System.Collections.Generic.List<HeuristicLab.Clients.Hive.StateLog> StateLogField;
     103       
     104        [System.Runtime.Serialization.DataMemberAttribute()]
     105        public System.Nullable<HeuristicLab.Clients.Hive.Command> Command
     106        {
     107            get
     108            {
     109                return this.CommandField;
     110            }
     111            set
     112            {
     113                if ((this.CommandField.Equals(value) != true))
     114                {
     115                    this.CommandField = value;
     116                    this.RaisePropertyChanged("Command");
     117                }
     118            }
     119        }
     120       
     121        [System.Runtime.Serialization.DataMemberAttribute()]
     122        public System.Nullable<System.TimeSpan> ExecutionTime
     123        {
     124            get
     125            {
     126                return this.ExecutionTimeField;
     127            }
     128            set
     129            {
     130                if ((this.ExecutionTimeField.Equals(value) != true))
     131                {
     132                    this.ExecutionTimeField = value;
     133                    this.RaisePropertyChanged("ExecutionTime");
     134                }
     135            }
     136        }
     137       
     138        [System.Runtime.Serialization.DataMemberAttribute()]
     139        public System.Nullable<System.Guid> ParentJobId
     140        {
     141            get
     142            {
     143                return this.ParentJobIdField;
     144            }
     145            set
     146            {
     147                if ((this.ParentJobIdField.Equals(value) != true))
     148                {
     149                    this.ParentJobIdField = value;
     150                    this.RaisePropertyChanged("ParentJobId");
     151                }
     152            }
     153        }
     154       
     155        [System.Runtime.Serialization.DataMemberAttribute()]
     156        public HeuristicLab.Clients.Hive.JobState State
     157        {
     158            get
     159            {
     160                return this.StateField;
     161            }
     162            set
     163            {
     164                if ((this.StateField.Equals(value) != true))
     165                {
     166                    this.StateField = value;
     167                    this.RaisePropertyChanged("State");
     168                }
     169            }
     170        }
     171       
     172        [System.Runtime.Serialization.DataMemberAttribute()]
     173        public System.Collections.Generic.List<HeuristicLab.Clients.Hive.StateLog> StateLog
     174        {
     175            get
     176            {
     177                return this.StateLogField;
     178            }
     179            set
     180            {
     181                if ((object.ReferenceEquals(this.StateLogField, value) != true))
     182                {
     183                    this.StateLogField = value;
     184                    this.RaisePropertyChanged("StateLog");
     185                }
     186            }
     187        }
     188    }
     189   
     190    [System.Diagnostics.DebuggerStepThroughAttribute()]
     191    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
     192    [System.Runtime.Serialization.DataContractAttribute(Name="StateLog", Namespace="http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Hive.Common.DataTra" +
     193        "nsfer")]
     194    [System.SerializableAttribute()]
     195    public partial class StateLog : HeuristicLab.Clients.Hive.HiveItem
     196    {
     197       
     198        [System.Runtime.Serialization.OptionalFieldAttribute()]
     199        private System.DateTime DateTimeField;
     200       
     201        [System.Runtime.Serialization.OptionalFieldAttribute()]
     202        private string ExceptionField;
     203       
     204        [System.Runtime.Serialization.OptionalFieldAttribute()]
     205        private System.Guid JobIdField;
     206       
     207        [System.Runtime.Serialization.OptionalFieldAttribute()]
     208        private System.Nullable<System.Guid> SlaveIdField;
     209       
     210        [System.Runtime.Serialization.OptionalFieldAttribute()]
     211        private HeuristicLab.Clients.Hive.JobState StateField;
     212       
     213        [System.Runtime.Serialization.OptionalFieldAttribute()]
     214        private System.Nullable<System.Guid> UserIdField;
     215       
     216        [System.Runtime.Serialization.DataMemberAttribute()]
     217        public System.DateTime DateTime
     218        {
     219            get
     220            {
     221                return this.DateTimeField;
     222            }
     223            set
     224            {
     225                if ((this.DateTimeField.Equals(value) != true))
     226                {
     227                    this.DateTimeField = value;
     228                    this.RaisePropertyChanged("DateTime");
     229                }
     230            }
     231        }
     232       
     233        [System.Runtime.Serialization.DataMemberAttribute()]
     234        public string Exception
     235        {
     236            get
     237            {
     238                return this.ExceptionField;
     239            }
     240            set
     241            {
     242                if ((object.ReferenceEquals(this.ExceptionField, value) != true))
     243                {
     244                    this.ExceptionField = value;
     245                    this.RaisePropertyChanged("Exception");
     246                }
     247            }
     248        }
     249       
     250        [System.Runtime.Serialization.DataMemberAttribute()]
     251        public System.Guid JobId
     252        {
     253            get
     254            {
     255                return this.JobIdField;
     256            }
     257            set
     258            {
     259                if ((this.JobIdField.Equals(value) != true))
     260                {
     261                    this.JobIdField = value;
     262                    this.RaisePropertyChanged("JobId");
     263                }
     264            }
     265        }
     266       
     267        [System.Runtime.Serialization.DataMemberAttribute()]
     268        public System.Nullable<System.Guid> SlaveId
     269        {
     270            get
     271            {
     272                return this.SlaveIdField;
     273            }
     274            set
     275            {
     276                if ((this.SlaveIdField.Equals(value) != true))
     277                {
     278                    this.SlaveIdField = value;
     279                    this.RaisePropertyChanged("SlaveId");
     280                }
     281            }
     282        }
     283       
     284        [System.Runtime.Serialization.DataMemberAttribute()]
     285        public HeuristicLab.Clients.Hive.JobState State
     286        {
     287            get
     288            {
     289                return this.StateField;
     290            }
     291            set
     292            {
     293                if ((this.StateField.Equals(value) != true))
     294                {
     295                    this.StateField = value;
     296                    this.RaisePropertyChanged("State");
     297                }
     298            }
     299        }
     300       
     301        [System.Runtime.Serialization.DataMemberAttribute()]
     302        public System.Nullable<System.Guid> UserId
     303        {
     304            get
     305            {
     306                return this.UserIdField;
     307            }
     308            set
     309            {
     310                if ((this.UserIdField.Equals(value) != true))
     311                {
     312                    this.UserIdField = value;
     313                    this.RaisePropertyChanged("UserId");
     314                }
     315            }
     316        }
     317    }
     318   
     319    [System.Diagnostics.DebuggerStepThroughAttribute()]
     320    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
     321    [System.Runtime.Serialization.DataContractAttribute(Name="Job", Namespace="http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Hive.Common.DataTra" +
     322        "nsfer")]
     323    [System.SerializableAttribute()]
     324    public partial class Job : HeuristicLab.Clients.Hive.LightweightJob
     325    {
     326       
     327        [System.Runtime.Serialization.OptionalFieldAttribute()]
     328        private int CoresNeededField;
     329       
     330        [System.Runtime.Serialization.OptionalFieldAttribute()]
     331        private bool FinishWhenChildJobsFinishedField;
     332       
     333        [System.Runtime.Serialization.OptionalFieldAttribute()]
     334        private bool IsParentJobField;
     335       
     336        [System.Runtime.Serialization.OptionalFieldAttribute()]
     337        private System.Nullable<System.DateTime> LastHeartbeatField;
     338       
     339        [System.Runtime.Serialization.OptionalFieldAttribute()]
     340        private int MemoryNeededField;
     341       
     342        [System.Runtime.Serialization.OptionalFieldAttribute()]
     343        private System.Collections.Generic.List<System.Guid> PluginsNeededIdsField;
     344       
     345        [System.Runtime.Serialization.OptionalFieldAttribute()]
     346        private int PriorityField;
     347       
     348        [System.Runtime.Serialization.DataMemberAttribute()]
     349        public int CoresNeeded
     350        {
     351            get
     352            {
     353                return this.CoresNeededField;
     354            }
     355            set
     356            {
     357                if ((this.CoresNeededField.Equals(value) != true))
     358                {
     359                    this.CoresNeededField = value;
     360                    this.RaisePropertyChanged("CoresNeeded");
     361                }
     362            }
     363        }
     364       
     365        [System.Runtime.Serialization.DataMemberAttribute()]
     366        public bool FinishWhenChildJobsFinished
     367        {
     368            get
     369            {
     370                return this.FinishWhenChildJobsFinishedField;
     371            }
     372            set
     373            {
     374                if ((this.FinishWhenChildJobsFinishedField.Equals(value) != true))
     375                {
     376                    this.FinishWhenChildJobsFinishedField = value;
     377                    this.RaisePropertyChanged("FinishWhenChildJobsFinished");
     378                }
     379            }
     380        }
     381       
     382        [System.Runtime.Serialization.DataMemberAttribute()]
     383        public bool IsParentJob
     384        {
     385            get
     386            {
     387                return this.IsParentJobField;
     388            }
     389            set
     390            {
     391                if ((this.IsParentJobField.Equals(value) != true))
     392                {
     393                    this.IsParentJobField = value;
     394                    this.RaisePropertyChanged("IsParentJob");
     395                }
     396            }
     397        }
     398       
     399        [System.Runtime.Serialization.DataMemberAttribute()]
     400        public System.Nullable<System.DateTime> LastHeartbeat
     401        {
     402            get
     403            {
     404                return this.LastHeartbeatField;
     405            }
     406            set
     407            {
     408                if ((this.LastHeartbeatField.Equals(value) != true))
     409                {
     410                    this.LastHeartbeatField = value;
     411                    this.RaisePropertyChanged("LastHeartbeat");
     412                }
     413            }
     414        }
     415       
     416        [System.Runtime.Serialization.DataMemberAttribute()]
     417        public int MemoryNeeded
     418        {
     419            get
     420            {
     421                return this.MemoryNeededField;
     422            }
     423            set
     424            {
     425                if ((this.MemoryNeededField.Equals(value) != true))
     426                {
     427                    this.MemoryNeededField = value;
     428                    this.RaisePropertyChanged("MemoryNeeded");
     429                }
     430            }
     431        }
     432       
     433        [System.Runtime.Serialization.DataMemberAttribute()]
     434        public System.Collections.Generic.List<System.Guid> PluginsNeededIds
     435        {
     436            get
     437            {
     438                return this.PluginsNeededIdsField;
     439            }
     440            set
     441            {
     442                if ((object.ReferenceEquals(this.PluginsNeededIdsField, value) != true))
     443                {
     444                    this.PluginsNeededIdsField = value;
     445                    this.RaisePropertyChanged("PluginsNeededIds");
     446                }
     447            }
     448        }
     449       
     450        [System.Runtime.Serialization.DataMemberAttribute()]
     451        public int Priority
     452        {
     453            get
     454            {
     455                return this.PriorityField;
     456            }
     457            set
     458            {
     459                if ((this.PriorityField.Equals(value) != true))
     460                {
     461                    this.PriorityField = value;
     462                    this.RaisePropertyChanged("Priority");
     463                }
     464            }
     465        }
     466    }
     467   
     468    [System.Diagnostics.DebuggerStepThroughAttribute()]
     469    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
     470    [System.Runtime.Serialization.DataContractAttribute(Name="NamedHiveItem", Namespace="http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Hive.Common.DataTra" +
     471        "nsfer")]
     472    [System.SerializableAttribute()]
     473    [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Hive.HiveExperiment))]
     474    [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Hive.Resource))]
     475    [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Hive.Slave))]
     476    [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Hive.SlaveGroup))]
     477    [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Hive.Plugin))]
     478    public partial class NamedHiveItem : HeuristicLab.Clients.Hive.HiveItem
     479    {
     480       
     481        [System.Runtime.Serialization.OptionalFieldAttribute()]
     482        private string DescriptionField;
     483       
     484        [System.Runtime.Serialization.OptionalFieldAttribute()]
     485        private string NameField;
     486       
     487        [System.Runtime.Serialization.DataMemberAttribute()]
     488        public string Description
     489        {
     490            get
     491            {
     492                return this.DescriptionField;
     493            }
     494            set
     495            {
     496                if ((object.ReferenceEquals(this.DescriptionField, value) != true))
     497                {
     498                    this.DescriptionField = value;
     499                    this.RaisePropertyChanged("Description");
     500                }
     501            }
     502        }
     503       
     504        [System.Runtime.Serialization.DataMemberAttribute()]
     505        public string Name
     506        {
     507            get
     508            {
     509                return this.NameField;
     510            }
     511            set
     512            {
     513                if ((object.ReferenceEquals(this.NameField, value) != true))
     514                {
     515                    this.NameField = value;
     516                    this.RaisePropertyChanged("Name");
     517                }
     518            }
     519        }
     520    }
     521   
     522    [System.Diagnostics.DebuggerStepThroughAttribute()]
     523    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
     524    [System.Runtime.Serialization.DataContractAttribute(Name="HiveExperiment", Namespace="http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Hive.Common.DataTra" +
     525        "nsfer")]
     526    [System.SerializableAttribute()]
     527    public partial class HiveExperiment : HeuristicLab.Clients.Hive.NamedHiveItem
     528    {
     529       
     530        [System.Runtime.Serialization.OptionalFieldAttribute()]
     531        private System.DateTime DateCreatedField;
     532       
     533        [System.Runtime.Serialization.OptionalFieldAttribute()]
     534        private System.Nullable<System.DateTime> LastAccessedField;
     535       
     536        [System.Runtime.Serialization.OptionalFieldAttribute()]
     537        private System.Guid OwnerUserIdField;
     538       
     539        [System.Runtime.Serialization.OptionalFieldAttribute()]
     540        private string ResourceNamesField;
     541       
     542        [System.Runtime.Serialization.OptionalFieldAttribute()]
     543        private System.Guid RootJobIdField;
     544       
     545        [System.Runtime.Serialization.DataMemberAttribute()]
     546        public System.DateTime DateCreated
     547        {
     548            get
     549            {
     550                return this.DateCreatedField;
     551            }
     552            set
     553            {
     554                if ((this.DateCreatedField.Equals(value) != true))
     555                {
     556                    this.DateCreatedField = value;
     557                    this.RaisePropertyChanged("DateCreated");
     558                }
     559            }
     560        }
     561       
     562        [System.Runtime.Serialization.DataMemberAttribute()]
     563        public System.Nullable<System.DateTime> LastAccessed
     564        {
     565            get
     566            {
     567                return this.LastAccessedField;
     568            }
     569            set
     570            {
     571                if ((this.LastAccessedField.Equals(value) != true))
     572                {
     573                    this.LastAccessedField = value;
     574                    this.RaisePropertyChanged("LastAccessed");
     575                }
     576            }
     577        }
     578       
     579        [System.Runtime.Serialization.DataMemberAttribute()]
     580        public System.Guid OwnerUserId
     581        {
     582            get
     583            {
     584                return this.OwnerUserIdField;
     585            }
     586            set
     587            {
     588                if ((this.OwnerUserIdField.Equals(value) != true))
     589                {
     590                    this.OwnerUserIdField = value;
     591                    this.RaisePropertyChanged("OwnerUserId");
     592                }
     593            }
     594        }
     595       
     596        [System.Runtime.Serialization.DataMemberAttribute()]
     597        public string ResourceNames
     598        {
     599            get
     600            {
     601                return this.ResourceNamesField;
     602            }
     603            set
     604            {
     605                if ((object.ReferenceEquals(this.ResourceNamesField, value) != true))
     606                {
     607                    this.ResourceNamesField = value;
     608                    this.RaisePropertyChanged("ResourceNames");
     609                }
     610            }
     611        }
     612       
     613        [System.Runtime.Serialization.DataMemberAttribute()]
     614        public System.Guid RootJobId
     615        {
     616            get
     617            {
     618                return this.RootJobIdField;
     619            }
     620            set
     621            {
     622                if ((this.RootJobIdField.Equals(value) != true))
     623                {
     624                    this.RootJobIdField = value;
     625                    this.RaisePropertyChanged("RootJobId");
     626                }
     627            }
     628        }
     629    }
     630   
     631    [System.Diagnostics.DebuggerStepThroughAttribute()]
     632    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
     633    [System.Runtime.Serialization.DataContractAttribute(Name="Resource", Namespace="http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Hive.Common.DataTra" +
     634        "nsfer")]
     635    [System.SerializableAttribute()]
     636    [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Hive.Slave))]
     637    [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Hive.SlaveGroup))]
     638    public partial class Resource : HeuristicLab.Clients.Hive.NamedHiveItem
     639    {
     640       
     641        [System.Runtime.Serialization.OptionalFieldAttribute()]
     642        private System.Nullable<System.Guid> ParentResourceIdField;
     643       
     644        [System.Runtime.Serialization.DataMemberAttribute()]
     645        public System.Nullable<System.Guid> ParentResourceId
     646        {
     647            get
     648            {
     649                return this.ParentResourceIdField;
     650            }
     651            set
     652            {
     653                if ((this.ParentResourceIdField.Equals(value) != true))
     654                {
     655                    this.ParentResourceIdField = value;
     656                    this.RaisePropertyChanged("ParentResourceId");
     657                }
     658            }
     659        }
     660    }
     661   
     662    [System.Diagnostics.DebuggerStepThroughAttribute()]
     663    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
     664    [System.Runtime.Serialization.DataContractAttribute(Name="Slave", Namespace="http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Hive.Common.DataTra" +
     665        "nsfer")]
     666    [System.SerializableAttribute()]
     667    public partial class Slave : HeuristicLab.Clients.Hive.Resource
     668    {
     669       
     670        [System.Runtime.Serialization.OptionalFieldAttribute()]
     671        private System.Nullable<int> CoresField;
     672       
     673        [System.Runtime.Serialization.OptionalFieldAttribute()]
     674        private HeuristicLab.Clients.Hive.CpuArchitecture CpuArchitectureField;
     675       
     676        [System.Runtime.Serialization.OptionalFieldAttribute()]
     677        private System.Nullable<int> CpuSpeedField;
     678       
     679        [System.Runtime.Serialization.OptionalFieldAttribute()]
     680        private System.Nullable<int> FreeCoresField;
     681       
     682        [System.Runtime.Serialization.OptionalFieldAttribute()]
     683        private System.Nullable<int> FreeMemoryField;
     684       
     685        [System.Runtime.Serialization.OptionalFieldAttribute()]
     686        private bool IsAllowedToCalculateField;
     687       
     688        [System.Runtime.Serialization.OptionalFieldAttribute()]
     689        private System.Nullable<System.DateTime> LastHeartbeatField;
     690       
     691        [System.Runtime.Serialization.OptionalFieldAttribute()]
     692        private System.Nullable<int> MemoryField;
     693       
     694        [System.Runtime.Serialization.OptionalFieldAttribute()]
     695        private string OperatingSystemField;
     696       
     697        [System.Runtime.Serialization.OptionalFieldAttribute()]
     698        private HeuristicLab.Clients.Hive.SlaveState SlaveStateField;
     699       
     700        [System.Runtime.Serialization.DataMemberAttribute()]
     701        public System.Nullable<int> Cores
     702        {
     703            get
     704            {
     705                return this.CoresField;
     706            }
     707            set
     708            {
     709                if ((this.CoresField.Equals(value) != true))
     710                {
     711                    this.CoresField = value;
     712                    this.RaisePropertyChanged("Cores");
     713                }
     714            }
     715        }
     716       
     717        [System.Runtime.Serialization.DataMemberAttribute()]
     718        public HeuristicLab.Clients.Hive.CpuArchitecture CpuArchitecture
     719        {
     720            get
     721            {
     722                return this.CpuArchitectureField;
     723            }
     724            set
     725            {
     726                if ((this.CpuArchitectureField.Equals(value) != true))
     727                {
     728                    this.CpuArchitectureField = value;
     729                    this.RaisePropertyChanged("CpuArchitecture");
     730                }
     731            }
     732        }
     733       
     734        [System.Runtime.Serialization.DataMemberAttribute()]
     735        public System.Nullable<int> CpuSpeed
     736        {
     737            get
     738            {
     739                return this.CpuSpeedField;
     740            }
     741            set
     742            {
     743                if ((this.CpuSpeedField.Equals(value) != true))
     744                {
     745                    this.CpuSpeedField = value;
     746                    this.RaisePropertyChanged("CpuSpeed");
     747                }
     748            }
     749        }
     750       
     751        [System.Runtime.Serialization.DataMemberAttribute()]
     752        public System.Nullable<int> FreeCores
     753        {
     754            get
     755            {
     756                return this.FreeCoresField;
     757            }
     758            set
     759            {
     760                if ((this.FreeCoresField.Equals(value) != true))
     761                {
     762                    this.FreeCoresField = value;
     763                    this.RaisePropertyChanged("FreeCores");
     764                }
     765            }
     766        }
     767       
     768        [System.Runtime.Serialization.DataMemberAttribute()]
     769        public System.Nullable<int> FreeMemory
     770        {
     771            get
     772            {
     773                return this.FreeMemoryField;
     774            }
     775            set
     776            {
     777                if ((this.FreeMemoryField.Equals(value) != true))
     778                {
     779                    this.FreeMemoryField = value;
     780                    this.RaisePropertyChanged("FreeMemory");
     781                }
     782            }
     783        }
     784       
     785        [System.Runtime.Serialization.DataMemberAttribute()]
     786        public bool IsAllowedToCalculate
     787        {
     788            get
     789            {
     790                return this.IsAllowedToCalculateField;
     791            }
     792            set
     793            {
     794                if ((this.IsAllowedToCalculateField.Equals(value) != true))
     795                {
     796                    this.IsAllowedToCalculateField = value;
     797                    this.RaisePropertyChanged("IsAllowedToCalculate");
     798                }
     799            }
     800        }
     801       
     802        [System.Runtime.Serialization.DataMemberAttribute()]
     803        public System.Nullable<System.DateTime> LastHeartbeat
     804        {
     805            get
     806            {
     807                return this.LastHeartbeatField;
     808            }
     809            set
     810            {
     811                if ((this.LastHeartbeatField.Equals(value) != true))
     812                {
     813                    this.LastHeartbeatField = value;
     814                    this.RaisePropertyChanged("LastHeartbeat");
     815                }
     816            }
     817        }
     818       
     819        [System.Runtime.Serialization.DataMemberAttribute()]
     820        public System.Nullable<int> Memory
     821        {
     822            get
     823            {
     824                return this.MemoryField;
     825            }
     826            set
     827            {
     828                if ((this.MemoryField.Equals(value) != true))
     829                {
     830                    this.MemoryField = value;
     831                    this.RaisePropertyChanged("Memory");
     832                }
     833            }
     834        }
     835       
     836        [System.Runtime.Serialization.DataMemberAttribute()]
     837        public string OperatingSystem
     838        {
     839            get
     840            {
     841                return this.OperatingSystemField;
     842            }
     843            set
     844            {
     845                if ((object.ReferenceEquals(this.OperatingSystemField, value) != true))
     846                {
     847                    this.OperatingSystemField = value;
     848                    this.RaisePropertyChanged("OperatingSystem");
     849                }
     850            }
     851        }
     852       
     853        [System.Runtime.Serialization.DataMemberAttribute()]
     854        public HeuristicLab.Clients.Hive.SlaveState SlaveState
     855        {
     856            get
     857            {
     858                return this.SlaveStateField;
     859            }
     860            set
     861            {
     862                if ((this.SlaveStateField.Equals(value) != true))
     863                {
     864                    this.SlaveStateField = value;
     865                    this.RaisePropertyChanged("SlaveState");
     866                }
     867            }
     868        }
     869    }
     870   
     871    [System.Diagnostics.DebuggerStepThroughAttribute()]
     872    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
     873    [System.Runtime.Serialization.DataContractAttribute(Name="SlaveGroup", Namespace="http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Hive.Common.DataTra" +
     874        "nsfer")]
     875    [System.SerializableAttribute()]
     876    public partial class SlaveGroup : HeuristicLab.Clients.Hive.Resource
     877    {
     878    }
     879   
     880    [System.Diagnostics.DebuggerStepThroughAttribute()]
     881    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
     882    [System.Runtime.Serialization.DataContractAttribute(Name="Plugin", Namespace="http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Hive.Common.DataTra" +
     883        "nsfer")]
     884    [System.SerializableAttribute()]
     885    public partial class Plugin : HeuristicLab.Clients.Hive.NamedHiveItem
     886    {
     887       
     888        [System.Runtime.Serialization.OptionalFieldAttribute()]
     889        private System.DateTime DateCreatedField;
     890       
     891        [System.Runtime.Serialization.OptionalFieldAttribute()]
     892        private bool IsLocalField;
     893       
     894        [System.Runtime.Serialization.OptionalFieldAttribute()]
     895        private System.Guid UserIdField;
     896       
     897        [System.Runtime.Serialization.OptionalFieldAttribute()]
     898        private System.Version VersionField;
     899       
     900        [System.Runtime.Serialization.DataMemberAttribute()]
     901        public System.DateTime DateCreated
     902        {
     903            get
     904            {
     905                return this.DateCreatedField;
     906            }
     907            set
     908            {
     909                if ((this.DateCreatedField.Equals(value) != true))
     910                {
     911                    this.DateCreatedField = value;
     912                    this.RaisePropertyChanged("DateCreated");
     913                }
     914            }
     915        }
     916       
     917        [System.Runtime.Serialization.DataMemberAttribute()]
     918        public bool IsLocal
     919        {
     920            get
     921            {
     922                return this.IsLocalField;
     923            }
     924            set
     925            {
     926                if ((this.IsLocalField.Equals(value) != true))
     927                {
     928                    this.IsLocalField = value;
     929                    this.RaisePropertyChanged("IsLocal");
     930                }
     931            }
     932        }
     933       
     934        [System.Runtime.Serialization.DataMemberAttribute()]
     935        public System.Guid UserId
     936        {
     937            get
     938            {
     939                return this.UserIdField;
     940            }
     941            set
     942            {
     943                if ((this.UserIdField.Equals(value) != true))
     944                {
     945                    this.UserIdField = value;
     946                    this.RaisePropertyChanged("UserId");
     947                }
     948            }
     949        }
     950       
     951        [System.Runtime.Serialization.DataMemberAttribute()]
     952        public System.Version Version
     953        {
     954            get
     955            {
     956                return this.VersionField;
     957            }
     958            set
     959            {
     960                if ((object.ReferenceEquals(this.VersionField, value) != true))
     961                {
     962                    this.VersionField = value;
     963                    this.RaisePropertyChanged("Version");
     964                }
     965            }
     966        }
     967    }
     968   
     969    [System.Diagnostics.DebuggerStepThroughAttribute()]
     970    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
     971    [System.Runtime.Serialization.DataContractAttribute(Name="PluginData", Namespace="http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Hive.Common.DataTra" +
     972        "nsfer")]
     973    [System.SerializableAttribute()]
     974    public partial class PluginData : HeuristicLab.Clients.Hive.HiveItem
     975    {
     976       
     977        [System.Runtime.Serialization.OptionalFieldAttribute()]
     978        private byte[] DataField;
     979       
     980        [System.Runtime.Serialization.OptionalFieldAttribute()]
     981        private string FileNameField;
     982       
     983        [System.Runtime.Serialization.OptionalFieldAttribute()]
     984        private System.Guid PluginIdField;
     985       
     986        [System.Runtime.Serialization.DataMemberAttribute()]
     987        public byte[] Data
     988        {
     989            get
     990            {
     991                return this.DataField;
     992            }
     993            set
     994            {
     995                if ((object.ReferenceEquals(this.DataField, value) != true))
     996                {
     997                    this.DataField = value;
     998                    this.RaisePropertyChanged("Data");
     999                }
     1000            }
     1001        }
     1002       
     1003        [System.Runtime.Serialization.DataMemberAttribute()]
     1004        public string FileName
     1005        {
     1006            get
     1007            {
     1008                return this.FileNameField;
     1009            }
     1010            set
     1011            {
     1012                if ((object.ReferenceEquals(this.FileNameField, value) != true))
     1013                {
     1014                    this.FileNameField = value;
     1015                    this.RaisePropertyChanged("FileName");
     1016                }
     1017            }
     1018        }
     1019       
     1020        [System.Runtime.Serialization.DataMemberAttribute()]
     1021        public System.Guid PluginId
     1022        {
     1023            get
     1024            {
     1025                return this.PluginIdField;
     1026            }
     1027            set
     1028            {
     1029                if ((this.PluginIdField.Equals(value) != true))
     1030                {
     1031                    this.PluginIdField = value;
     1032                    this.RaisePropertyChanged("PluginId");
     1033                }
     1034            }
     1035        }
     1036    }
     1037   
     1038    [System.Diagnostics.DebuggerStepThroughAttribute()]
     1039    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
     1040    [System.Runtime.Serialization.DataContractAttribute(Name="Appointment", Namespace="http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Hive.Common.DataTra" +
     1041        "nsfer")]
     1042    [System.SerializableAttribute()]
     1043    public partial class Appointment : HeuristicLab.Clients.Hive.HiveItem
     1044    {
     1045       
     1046        [System.Runtime.Serialization.OptionalFieldAttribute()]
     1047        private bool AllDayEventField;
     1048       
     1049        [System.Runtime.Serialization.OptionalFieldAttribute()]
     1050        private System.DateTime EndDateField;
     1051       
     1052        [System.Runtime.Serialization.OptionalFieldAttribute()]
     1053        private bool RecurringField;
     1054       
     1055        [System.Runtime.Serialization.OptionalFieldAttribute()]
     1056        private System.Guid RecurringIdField;
     1057       
     1058        [System.Runtime.Serialization.OptionalFieldAttribute()]
     1059        private System.Guid ResourceIdField;
     1060       
     1061        [System.Runtime.Serialization.OptionalFieldAttribute()]
     1062        private System.DateTime StartDateField;
     1063       
     1064        [System.Runtime.Serialization.DataMemberAttribute()]
     1065        public bool AllDayEvent
     1066        {
     1067            get
     1068            {
     1069                return this.AllDayEventField;
     1070            }
     1071            set
     1072            {
     1073                if ((this.AllDayEventField.Equals(value) != true))
     1074                {
     1075                    this.AllDayEventField = value;
     1076                    this.RaisePropertyChanged("AllDayEvent");
     1077                }
     1078            }
     1079        }
     1080       
     1081        [System.Runtime.Serialization.DataMemberAttribute()]
     1082        public System.DateTime EndDate
     1083        {
     1084            get
     1085            {
     1086                return this.EndDateField;
     1087            }
     1088            set
     1089            {
     1090                if ((this.EndDateField.Equals(value) != true))
     1091                {
     1092                    this.EndDateField = value;
     1093                    this.RaisePropertyChanged("EndDate");
     1094                }
     1095            }
     1096        }
     1097       
     1098        [System.Runtime.Serialization.DataMemberAttribute()]
     1099        public bool Recurring
     1100        {
     1101            get
     1102            {
     1103                return this.RecurringField;
     1104            }
     1105            set
     1106            {
     1107                if ((this.RecurringField.Equals(value) != true))
     1108                {
     1109                    this.RecurringField = value;
     1110                    this.RaisePropertyChanged("Recurring");
     1111                }
     1112            }
     1113        }
     1114       
     1115        [System.Runtime.Serialization.DataMemberAttribute()]
     1116        public System.Guid RecurringId
     1117        {
     1118            get
     1119            {
     1120                return this.RecurringIdField;
     1121            }
     1122            set
     1123            {
     1124                if ((this.RecurringIdField.Equals(value) != true))
     1125                {
     1126                    this.RecurringIdField = value;
     1127                    this.RaisePropertyChanged("RecurringId");
     1128                }
     1129            }
     1130        }
     1131       
     1132        [System.Runtime.Serialization.DataMemberAttribute()]
     1133        public System.Guid ResourceId
     1134        {
     1135            get
     1136            {
     1137                return this.ResourceIdField;
     1138            }
     1139            set
     1140            {
     1141                if ((this.ResourceIdField.Equals(value) != true))
     1142                {
     1143                    this.ResourceIdField = value;
     1144                    this.RaisePropertyChanged("ResourceId");
     1145                }
     1146            }
     1147        }
     1148       
     1149        [System.Runtime.Serialization.DataMemberAttribute()]
     1150        public System.DateTime StartDate
     1151        {
     1152            get
     1153            {
     1154                return this.StartDateField;
     1155            }
     1156            set
     1157            {
     1158                if ((this.StartDateField.Equals(value) != true))
     1159                {
     1160                    this.StartDateField = value;
     1161                    this.RaisePropertyChanged("StartDate");
     1162                }
     1163            }
     1164        }
     1165    }
     1166   
     1167    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
     1168    [System.Runtime.Serialization.DataContractAttribute(Name="Command", Namespace="http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Hive.Common.DataTra" +
     1169        "nsfer")]
     1170    public enum Command : int
     1171    {
     1172       
     1173        [System.Runtime.Serialization.EnumMemberAttribute()]
     1174        Stop = 0,
     1175       
     1176        [System.Runtime.Serialization.EnumMemberAttribute()]
     1177        Abort = 1,
     1178       
     1179        [System.Runtime.Serialization.EnumMemberAttribute()]
     1180        Pause = 2,
     1181    }
     1182   
     1183    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
     1184    [System.Runtime.Serialization.DataContractAttribute(Name="JobState", Namespace="http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Hive.Common.DataTra" +
     1185        "nsfer")]
     1186    public enum JobState : int
     1187    {
     1188       
     1189        [System.Runtime.Serialization.EnumMemberAttribute()]
     1190        Offline = 0,
     1191       
     1192        [System.Runtime.Serialization.EnumMemberAttribute()]
     1193        Waiting = 1,
     1194       
     1195        [System.Runtime.Serialization.EnumMemberAttribute()]
     1196        Transferring = 2,
     1197       
     1198        [System.Runtime.Serialization.EnumMemberAttribute()]
     1199        Calculating = 3,
     1200       
     1201        [System.Runtime.Serialization.EnumMemberAttribute()]
     1202        Paused = 4,
     1203       
     1204        [System.Runtime.Serialization.EnumMemberAttribute()]
     1205        Finished = 5,
     1206       
     1207        [System.Runtime.Serialization.EnumMemberAttribute()]
     1208        Aborted = 6,
     1209       
     1210        [System.Runtime.Serialization.EnumMemberAttribute()]
     1211        Failed = 7,
     1212    }
     1213   
     1214    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
     1215    [System.Runtime.Serialization.DataContractAttribute(Name="CpuArchitecture", Namespace="http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Hive.Common.DataTra" +
     1216        "nsfer")]
     1217    public enum CpuArchitecture : int
     1218    {
     1219       
     1220        [System.Runtime.Serialization.EnumMemberAttribute()]
     1221        x86 = 0,
     1222       
     1223        [System.Runtime.Serialization.EnumMemberAttribute()]
     1224        x64 = 1,
     1225    }
     1226   
     1227    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
     1228    [System.Runtime.Serialization.DataContractAttribute(Name="SlaveState", Namespace="http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Hive.Common.DataTra" +
     1229        "nsfer")]
     1230    public enum SlaveState : int
     1231    {
     1232       
     1233        [System.Runtime.Serialization.EnumMemberAttribute()]
     1234        Idle = 0,
     1235       
     1236        [System.Runtime.Serialization.EnumMemberAttribute()]
     1237        Calculating = 1,
     1238       
     1239        [System.Runtime.Serialization.EnumMemberAttribute()]
     1240        Offline = 2,
     1241    }
     1242   
     1243    [System.Diagnostics.DebuggerStepThroughAttribute()]
     1244    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
     1245    [System.Runtime.Serialization.DataContractAttribute(Name="JobData", Namespace="http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Hive.Common.DataTra" +
     1246        "nsfer")]
     1247    [System.SerializableAttribute()]
     1248    public partial class JobData : object, System.Runtime.Serialization.IExtensibleDataObject, System.ComponentModel.INotifyPropertyChanged
     1249    {
     1250       
     1251        [System.NonSerializedAttribute()]
     1252        private System.Runtime.Serialization.ExtensionDataObject extensionDataField;
     1253       
     1254        [System.Runtime.Serialization.OptionalFieldAttribute()]
     1255        private byte[] DataField;
     1256       
     1257        [System.Runtime.Serialization.OptionalFieldAttribute()]
     1258        private System.Guid JobIdField;
     1259       
     1260        [System.Runtime.Serialization.OptionalFieldAttribute()]
     1261        private System.DateTime LastUpdateField;
     1262       
     1263        public System.Runtime.Serialization.ExtensionDataObject ExtensionData
     1264        {
     1265            get
     1266            {
     1267                return this.extensionDataField;
     1268            }
     1269            set
     1270            {
     1271                this.extensionDataField = value;
     1272            }
     1273        }
     1274       
     1275        [System.Runtime.Serialization.DataMemberAttribute()]
     1276        public byte[] Data
     1277        {
     1278            get
     1279            {
     1280                return this.DataField;
     1281            }
     1282            set
     1283            {
     1284                if ((object.ReferenceEquals(this.DataField, value) != true))
     1285                {
     1286                    this.DataField = value;
     1287                    this.RaisePropertyChanged("Data");
     1288                }
     1289            }
     1290        }
     1291       
     1292        [System.Runtime.Serialization.DataMemberAttribute()]
     1293        public System.Guid JobId
     1294        {
     1295            get
     1296            {
     1297                return this.JobIdField;
     1298            }
     1299            set
     1300            {
     1301                if ((this.JobIdField.Equals(value) != true))
     1302                {
     1303                    this.JobIdField = value;
     1304                    this.RaisePropertyChanged("JobId");
     1305                }
     1306            }
     1307        }
     1308       
     1309        [System.Runtime.Serialization.DataMemberAttribute()]
     1310        public System.DateTime LastUpdate
     1311        {
     1312            get
     1313            {
     1314                return this.LastUpdateField;
     1315            }
     1316            set
     1317            {
     1318                if ((this.LastUpdateField.Equals(value) != true))
     1319                {
     1320                    this.LastUpdateField = value;
     1321                    this.RaisePropertyChanged("LastUpdate");
     1322                }
     1323            }
     1324        }
     1325       
     1326        public event System.ComponentModel.PropertyChangedEventHandler PropertyChanged;
     1327       
     1328        protected void RaisePropertyChanged(string propertyName)
     1329        {
     1330            System.ComponentModel.PropertyChangedEventHandler propertyChanged = this.PropertyChanged;
     1331            if ((propertyChanged != null))
     1332            {
     1333                propertyChanged(this, new System.ComponentModel.PropertyChangedEventArgs(propertyName));
     1334            }
     1335        }
     1336    }
     1337   
     1338    [System.Diagnostics.DebuggerStepThroughAttribute()]
     1339    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
     1340    [System.Runtime.Serialization.DataContractAttribute(Name="Heartbeat", Namespace="http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Hive.Common.DataTra" +
     1341        "nsfer")]
     1342    [System.SerializableAttribute()]
     1343    public partial class Heartbeat : object, System.Runtime.Serialization.IExtensibleDataObject, System.ComponentModel.INotifyPropertyChanged
     1344    {
     1345       
     1346        [System.NonSerializedAttribute()]
     1347        private System.Runtime.Serialization.ExtensionDataObject extensionDataField;
     1348       
     1349        [System.Runtime.Serialization.OptionalFieldAttribute()]
     1350        private bool AssignJobField;
     1351       
     1352        [System.Runtime.Serialization.OptionalFieldAttribute()]
     1353        private int FreeCoresField;
     1354       
     1355        [System.Runtime.Serialization.OptionalFieldAttribute()]
     1356        private int FreeMemoryField;
     1357       
     1358        [System.Runtime.Serialization.OptionalFieldAttribute()]
     1359        private System.Collections.Generic.Dictionary<System.Guid, System.TimeSpan> JobProgressField;
     1360       
     1361        [System.Runtime.Serialization.OptionalFieldAttribute()]
     1362        private System.Guid SlaveIdField;
     1363       
     1364        public System.Runtime.Serialization.ExtensionDataObject ExtensionData
     1365        {
     1366            get
     1367            {
     1368                return this.extensionDataField;
     1369            }
     1370            set
     1371            {
     1372                this.extensionDataField = value;
     1373            }
     1374        }
     1375       
     1376        [System.Runtime.Serialization.DataMemberAttribute()]
     1377        public bool AssignJob
     1378        {
     1379            get
     1380            {
     1381                return this.AssignJobField;
     1382            }
     1383            set
     1384            {
     1385                if ((this.AssignJobField.Equals(value) != true))
     1386                {
     1387                    this.AssignJobField = value;
     1388                    this.RaisePropertyChanged("AssignJob");
     1389                }
     1390            }
     1391        }
     1392       
     1393        [System.Runtime.Serialization.DataMemberAttribute()]
     1394        public int FreeCores
     1395        {
     1396            get
     1397            {
     1398                return this.FreeCoresField;
     1399            }
     1400            set
     1401            {
     1402                if ((this.FreeCoresField.Equals(value) != true))
     1403                {
     1404                    this.FreeCoresField = value;
     1405                    this.RaisePropertyChanged("FreeCores");
     1406                }
     1407            }
     1408        }
     1409       
     1410        [System.Runtime.Serialization.DataMemberAttribute()]
     1411        public int FreeMemory
     1412        {
     1413            get
     1414            {
     1415                return this.FreeMemoryField;
     1416            }
     1417            set
     1418            {
     1419                if ((this.FreeMemoryField.Equals(value) != true))
     1420                {
     1421                    this.FreeMemoryField = value;
     1422                    this.RaisePropertyChanged("FreeMemory");
     1423                }
     1424            }
     1425        }
     1426       
     1427        [System.Runtime.Serialization.DataMemberAttribute()]
     1428        public System.Collections.Generic.Dictionary<System.Guid, System.TimeSpan> JobProgress
     1429        {
     1430            get
     1431            {
     1432                return this.JobProgressField;
     1433            }
     1434            set
     1435            {
     1436                if ((object.ReferenceEquals(this.JobProgressField, value) != true))
     1437                {
     1438                    this.JobProgressField = value;
     1439                    this.RaisePropertyChanged("JobProgress");
     1440                }
     1441            }
     1442        }
     1443       
     1444        [System.Runtime.Serialization.DataMemberAttribute()]
     1445        public System.Guid SlaveId
     1446        {
     1447            get
     1448            {
     1449                return this.SlaveIdField;
     1450            }
     1451            set
     1452            {
     1453                if ((this.SlaveIdField.Equals(value) != true))
     1454                {
     1455                    this.SlaveIdField = value;
     1456                    this.RaisePropertyChanged("SlaveId");
     1457                }
     1458            }
     1459        }
     1460       
     1461        public event System.ComponentModel.PropertyChangedEventHandler PropertyChanged;
     1462       
     1463        protected void RaisePropertyChanged(string propertyName)
     1464        {
     1465            System.ComponentModel.PropertyChangedEventHandler propertyChanged = this.PropertyChanged;
     1466            if ((propertyChanged != null))
     1467            {
     1468                propertyChanged(this, new System.ComponentModel.PropertyChangedEventArgs(propertyName));
     1469            }
     1470        }
     1471    }
     1472   
     1473    [System.Diagnostics.DebuggerStepThroughAttribute()]
     1474    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
     1475    [System.Runtime.Serialization.DataContractAttribute(Name="MessageContainer", Namespace="http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Hive.Common")]
     1476    [System.SerializableAttribute()]
     1477    public partial class MessageContainer : object, System.Runtime.Serialization.IExtensibleDataObject, System.ComponentModel.INotifyPropertyChanged
     1478    {
     1479       
     1480        [System.NonSerializedAttribute()]
     1481        private System.Runtime.Serialization.ExtensionDataObject extensionDataField;
     1482       
     1483        [System.Runtime.Serialization.OptionalFieldAttribute()]
     1484        private System.Guid JobIdField;
     1485       
     1486        [System.Runtime.Serialization.OptionalFieldAttribute()]
     1487        private HeuristicLab.Clients.Hive.MessageContainer.MessageType MessageField;
     1488       
     1489        public System.Runtime.Serialization.ExtensionDataObject ExtensionData
     1490        {
     1491            get
     1492            {
     1493                return this.extensionDataField;
     1494            }
     1495            set
     1496            {
     1497                this.extensionDataField = value;
     1498            }
     1499        }
     1500       
     1501        [System.Runtime.Serialization.DataMemberAttribute()]
     1502        public System.Guid JobId
     1503        {
     1504            get
     1505            {
     1506                return this.JobIdField;
     1507            }
     1508            set
     1509            {
     1510                if ((this.JobIdField.Equals(value) != true))
     1511                {
     1512                    this.JobIdField = value;
     1513                    this.RaisePropertyChanged("JobId");
     1514                }
     1515            }
     1516        }
     1517       
     1518        [System.Runtime.Serialization.DataMemberAttribute()]
     1519        public HeuristicLab.Clients.Hive.MessageContainer.MessageType Message
     1520        {
     1521            get
     1522            {
     1523                return this.MessageField;
     1524            }
     1525            set
     1526            {
     1527                if ((this.MessageField.Equals(value) != true))
     1528                {
     1529                    this.MessageField = value;
     1530                    this.RaisePropertyChanged("Message");
     1531                }
     1532            }
     1533        }
     1534       
     1535        public event System.ComponentModel.PropertyChangedEventHandler PropertyChanged;
     1536       
     1537        protected void RaisePropertyChanged(string propertyName)
     1538        {
     1539            System.ComponentModel.PropertyChangedEventHandler propertyChanged = this.PropertyChanged;
     1540            if ((propertyChanged != null))
     1541            {
     1542                propertyChanged(this, new System.ComponentModel.PropertyChangedEventArgs(propertyName));
     1543            }
     1544        }
     1545       
     1546        [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
     1547        [System.Runtime.Serialization.DataContractAttribute(Name="MessageContainer.MessageType", Namespace="http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Hive.Common")]
     1548        public enum MessageType : int
     1549        {
     1550           
     1551            [System.Runtime.Serialization.EnumMemberAttribute()]
     1552            CalculateJob = 0,
     1553           
     1554            [System.Runtime.Serialization.EnumMemberAttribute()]
     1555            StopJob = 1,
     1556           
     1557            [System.Runtime.Serialization.EnumMemberAttribute()]
     1558            StopAll = 2,
     1559           
     1560            [System.Runtime.Serialization.EnumMemberAttribute()]
     1561            AbortJob = 3,
     1562           
     1563            [System.Runtime.Serialization.EnumMemberAttribute()]
     1564            AbortAll = 4,
     1565           
     1566            [System.Runtime.Serialization.EnumMemberAttribute()]
     1567            PauseJob = 5,
     1568           
     1569            [System.Runtime.Serialization.EnumMemberAttribute()]
     1570            PauseAll = 6,
     1571           
     1572            [System.Runtime.Serialization.EnumMemberAttribute()]
     1573            Restart = 7,
     1574           
     1575            [System.Runtime.Serialization.EnumMemberAttribute()]
     1576            Sleep = 8,
     1577           
     1578            [System.Runtime.Serialization.EnumMemberAttribute()]
     1579            ShutdownSlave = 9,
     1580           
     1581            [System.Runtime.Serialization.EnumMemberAttribute()]
     1582            SayHello = 10,
     1583           
     1584            [System.Runtime.Serialization.EnumMemberAttribute()]
     1585            AddChildJob = 11,
     1586           
     1587            [System.Runtime.Serialization.EnumMemberAttribute()]
     1588            GetChildJobs = 12,
     1589           
     1590            [System.Runtime.Serialization.EnumMemberAttribute()]
     1591            DeleteChildJobs = 13,
     1592        }
     1593    }
     1594   
     1595    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
     1596    [System.ServiceModel.ServiceContractAttribute(ConfigurationName="HeuristicLab.Clients.Hive.IHiveService")]
     1597    public interface IHiveService
     1598    {
     1599       
     1600        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IHiveService/DeleteAppointment", ReplyAction="http://tempuri.org/IHiveService/DeleteAppointmentResponse")]
     1601        void DeleteAppointment(System.Guid appointmentId);
     1602       
     1603        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IHiveService/UpdateAppointment", ReplyAction="http://tempuri.org/IHiveService/UpdateAppointmentResponse")]
     1604        void UpdateAppointment(HeuristicLab.Clients.Hive.Appointment appointment);
     1605       
     1606        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IHiveService/GetScheduleForResource", ReplyAction="http://tempuri.org/IHiveService/GetScheduleForResourceResponse")]
     1607        System.Collections.Generic.List<HeuristicLab.Clients.Hive.Appointment> GetScheduleForResource(System.Guid resourceId);
     1608       
     1609        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IHiveService/AddJob", ReplyAction="http://tempuri.org/IHiveService/AddJobResponse")]
     1610        System.Guid AddJob(HeuristicLab.Clients.Hive.Job job, HeuristicLab.Clients.Hive.JobData jobData, System.Collections.Generic.List<System.Guid> resourceIds);
     1611       
     1612        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IHiveService/AddChildJob", ReplyAction="http://tempuri.org/IHiveService/AddChildJobResponse")]
     1613        System.Guid AddChildJob(System.Guid parentJobId, HeuristicLab.Clients.Hive.Job job, HeuristicLab.Clients.Hive.JobData jobData);
     1614       
     1615        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IHiveService/GetJob", ReplyAction="http://tempuri.org/IHiveService/GetJobResponse")]
     1616        HeuristicLab.Clients.Hive.Job GetJob(System.Guid jobId);
     1617       
     1618        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IHiveService/GetJobs", ReplyAction="http://tempuri.org/IHiveService/GetJobsResponse")]
     1619        System.Collections.Generic.List<HeuristicLab.Clients.Hive.Job> GetJobs();
     1620       
     1621        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IHiveService/GetLightweightJobs", ReplyAction="http://tempuri.org/IHiveService/GetLightweightJobsResponse")]
     1622        System.Collections.Generic.List<HeuristicLab.Clients.Hive.LightweightJob> GetLightweightJobs(System.Collections.Generic.List<System.Guid> jobIds);
     1623       
     1624        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IHiveService/GetLightweightChildJobs", ReplyAction="http://tempuri.org/IHiveService/GetLightweightChildJobsResponse")]
     1625        System.Collections.Generic.List<HeuristicLab.Clients.Hive.LightweightJob> GetLightweightChildJobs(System.Nullable<System.Guid> parentJobId, bool recursive, bool includeParent);
     1626       
     1627        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IHiveService/GetJobData", ReplyAction="http://tempuri.org/IHiveService/GetJobDataResponse")]
     1628        HeuristicLab.Clients.Hive.JobData GetJobData(System.Guid jobId);
     1629       
     1630        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IHiveService/UpdateJob", ReplyAction="http://tempuri.org/IHiveService/UpdateJobResponse")]
     1631        void UpdateJob(HeuristicLab.Clients.Hive.Job jobDto);
     1632       
     1633        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IHiveService/UpdateJobData", ReplyAction="http://tempuri.org/IHiveService/UpdateJobDataResponse")]
     1634        void UpdateJobData(HeuristicLab.Clients.Hive.Job jobDto, HeuristicLab.Clients.Hive.JobData jobDataDto);
     1635       
     1636        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IHiveService/DeleteJob", ReplyAction="http://tempuri.org/IHiveService/DeleteJobResponse")]
     1637        void DeleteJob(System.Guid jobId);
     1638       
     1639        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IHiveService/DeleteChildJobs", ReplyAction="http://tempuri.org/IHiveService/DeleteChildJobsResponse")]
     1640        void DeleteChildJobs(System.Guid parentJobId);
     1641       
     1642        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IHiveService/UpdateJobState", ReplyAction="http://tempuri.org/IHiveService/UpdateJobStateResponse")]
     1643        HeuristicLab.Clients.Hive.Job UpdateJobState(System.Guid jobId, HeuristicLab.Clients.Hive.JobState jobState, System.Nullable<System.Guid> slaveId, System.Nullable<System.Guid> userId, string exception);
     1644       
     1645        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IHiveService/StopJob", ReplyAction="http://tempuri.org/IHiveService/StopJobResponse")]
     1646        void StopJob(System.Guid jobId);
     1647       
     1648        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IHiveService/PauseJob", ReplyAction="http://tempuri.org/IHiveService/PauseJobResponse")]
     1649        void PauseJob(System.Guid jobId);
     1650       
     1651        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IHiveService/RestartJob", ReplyAction="http://tempuri.org/IHiveService/RestartJobResponse")]
     1652        void RestartJob(System.Guid jobId);
     1653       
     1654        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IHiveService/GetHiveExperiment", ReplyAction="http://tempuri.org/IHiveService/GetHiveExperimentResponse")]
     1655        HeuristicLab.Clients.Hive.HiveExperiment GetHiveExperiment(System.Guid id);
     1656       
     1657        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IHiveService/GetHiveExperiments", ReplyAction="http://tempuri.org/IHiveService/GetHiveExperimentsResponse")]
     1658        System.Collections.Generic.List<HeuristicLab.Clients.Hive.HiveExperiment> GetHiveExperiments();
     1659       
     1660        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IHiveService/GetAllHiveExperiments", ReplyAction="http://tempuri.org/IHiveService/GetAllHiveExperimentsResponse")]
     1661        System.Collections.Generic.List<HeuristicLab.Clients.Hive.HiveExperiment> GetAllHiveExperiments();
     1662       
     1663        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IHiveService/AddHiveExperiment", ReplyAction="http://tempuri.org/IHiveService/AddHiveExperimentResponse")]
     1664        System.Guid AddHiveExperiment(HeuristicLab.Clients.Hive.HiveExperiment hiveExperimentDto);
     1665       
     1666        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IHiveService/UpdateHiveExperiment", ReplyAction="http://tempuri.org/IHiveService/UpdateHiveExperimentResponse")]
     1667        void UpdateHiveExperiment(HeuristicLab.Clients.Hive.HiveExperiment hiveExperimentDto);
     1668       
     1669        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IHiveService/DeleteHiveExperiment", ReplyAction="http://tempuri.org/IHiveService/DeleteHiveExperimentResponse")]
     1670        void DeleteHiveExperiment(System.Guid hiveExperimentId);
     1671       
     1672        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IHiveService/Hello", ReplyAction="http://tempuri.org/IHiveService/HelloResponse")]
     1673        void Hello(HeuristicLab.Clients.Hive.Slave slave);
     1674       
     1675        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IHiveService/GoodBye", ReplyAction="http://tempuri.org/IHiveService/GoodByeResponse")]
     1676        void GoodBye(System.Guid slaveId);
     1677       
     1678        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IHiveService/Heartbeat", ReplyAction="http://tempuri.org/IHiveService/HeartbeatResponse")]
     1679        System.Collections.Generic.List<HeuristicLab.Clients.Hive.MessageContainer> Heartbeat([System.ServiceModel.MessageParameterAttribute(Name="heartbeat")] HeuristicLab.Clients.Hive.Heartbeat heartbeat1);
     1680       
     1681        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IHiveService/AddPlugin", ReplyAction="http://tempuri.org/IHiveService/AddPluginResponse")]
     1682        System.Guid AddPlugin(HeuristicLab.Clients.Hive.Plugin plugin, System.Collections.Generic.List<HeuristicLab.Clients.Hive.PluginData> pluginData);
     1683       
     1684        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IHiveService/GetPlugins", ReplyAction="http://tempuri.org/IHiveService/GetPluginsResponse")]
     1685        System.Collections.Generic.List<HeuristicLab.Clients.Hive.Plugin> GetPlugins();
     1686       
     1687        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IHiveService/GetPluginDatas", ReplyAction="http://tempuri.org/IHiveService/GetPluginDatasResponse")]
     1688        System.Collections.Generic.List<HeuristicLab.Clients.Hive.PluginData> GetPluginDatas(System.Collections.Generic.List<System.Guid> pluginIds);
     1689       
     1690        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IHiveService/AddSlave", ReplyAction="http://tempuri.org/IHiveService/AddSlaveResponse")]
     1691        System.Guid AddSlave(HeuristicLab.Clients.Hive.Slave slave);
     1692       
     1693        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IHiveService/AddSlaveGroup", ReplyAction="http://tempuri.org/IHiveService/AddSlaveGroupResponse")]
     1694        System.Guid AddSlaveGroup(HeuristicLab.Clients.Hive.SlaveGroup slaveGroup);
     1695       
     1696        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IHiveService/GetSlave", ReplyAction="http://tempuri.org/IHiveService/GetSlaveResponse")]
     1697        HeuristicLab.Clients.Hive.Slave GetSlave(System.Guid slaveId);
     1698       
     1699        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IHiveService/GetSlaveGroup", ReplyAction="http://tempuri.org/IHiveService/GetSlaveGroupResponse")]
     1700        HeuristicLab.Clients.Hive.SlaveGroup GetSlaveGroup(System.Guid slaveGroupId);
     1701       
     1702        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IHiveService/GetSlaves", ReplyAction="http://tempuri.org/IHiveService/GetSlavesResponse")]
     1703        System.Collections.Generic.List<HeuristicLab.Clients.Hive.Slave> GetSlaves();
     1704       
     1705        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IHiveService/GetSlaveGroups", ReplyAction="http://tempuri.org/IHiveService/GetSlaveGroupsResponse")]
     1706        System.Collections.Generic.List<HeuristicLab.Clients.Hive.SlaveGroup> GetSlaveGroups();
     1707       
     1708        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IHiveService/UpdateSlave", ReplyAction="http://tempuri.org/IHiveService/UpdateSlaveResponse")]
     1709        void UpdateSlave(HeuristicLab.Clients.Hive.Slave slave);
     1710       
     1711        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IHiveService/UpdateSlaveGroup", ReplyAction="http://tempuri.org/IHiveService/UpdateSlaveGroupResponse")]
     1712        void UpdateSlaveGroup(HeuristicLab.Clients.Hive.SlaveGroup slaveGroup);
     1713       
     1714        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IHiveService/DeleteSlave", ReplyAction="http://tempuri.org/IHiveService/DeleteSlaveResponse")]
     1715        void DeleteSlave(System.Guid slaveId);
     1716       
     1717        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IHiveService/DeleteSlaveGroup", ReplyAction="http://tempuri.org/IHiveService/DeleteSlaveGroupResponse")]
     1718        void DeleteSlaveGroup(System.Guid slaveGroupId);
     1719       
     1720        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IHiveService/AddResourceToGroup", ReplyAction="http://tempuri.org/IHiveService/AddResourceToGroupResponse")]
     1721        void AddResourceToGroup(System.Guid slaveGroupId, System.Guid resourceId);
     1722       
     1723        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IHiveService/RemoveResourceFromGroup", ReplyAction="http://tempuri.org/IHiveService/RemoveResourceFromGroupResponse")]
     1724        void RemoveResourceFromGroup(System.Guid slaveGroupId, System.Guid resourceId);
     1725       
     1726        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IHiveService/GetResourceId", ReplyAction="http://tempuri.org/IHiveService/GetResourceIdResponse")]
     1727        System.Guid GetResourceId(string resourceName);
     1728       
     1729        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IHiveService/TriggerLifecycle", ReplyAction="http://tempuri.org/IHiveService/TriggerLifecycleResponse")]
     1730        void TriggerLifecycle(bool force);
     1731       
     1732        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IHiveService/AddAppointment", ReplyAction="http://tempuri.org/IHiveService/AddAppointmentResponse")]
     1733        System.Guid AddAppointment(HeuristicLab.Clients.Hive.Appointment appointment);
     1734    }
     1735   
     1736    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
     1737    public interface IHiveServiceChannel : HeuristicLab.Clients.Hive.IHiveService, System.ServiceModel.IClientChannel
     1738    {
     1739    }
     1740   
     1741    [System.Diagnostics.DebuggerStepThroughAttribute()]
     1742    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
     1743    public partial class HiveServiceClient : System.ServiceModel.ClientBase<HeuristicLab.Clients.Hive.IHiveService>, HeuristicLab.Clients.Hive.IHiveService
     1744    {
     1745       
     1746        public HiveServiceClient()
     1747        {
     1748        }
     1749       
     1750        public HiveServiceClient(string endpointConfigurationName) :
     1751                base(endpointConfigurationName)
     1752        {
     1753        }
     1754       
     1755        public HiveServiceClient(string endpointConfigurationName, string remoteAddress) :
     1756                base(endpointConfigurationName, remoteAddress)
     1757        {
     1758        }
     1759       
     1760        public HiveServiceClient(string endpointConfigurationName, System.ServiceModel.EndpointAddress remoteAddress) :
     1761                base(endpointConfigurationName, remoteAddress)
     1762        {
     1763        }
     1764       
     1765        public HiveServiceClient(System.ServiceModel.Channels.Binding binding, System.ServiceModel.EndpointAddress remoteAddress) :
     1766                base(binding, remoteAddress)
     1767        {
     1768        }
     1769       
     1770        public void DeleteAppointment(System.Guid appointmentId)
     1771        {
     1772            base.Channel.DeleteAppointment(appointmentId);
     1773        }
     1774       
     1775        public void UpdateAppointment(HeuristicLab.Clients.Hive.Appointment appointment)
     1776        {
     1777            base.Channel.UpdateAppointment(appointment);
     1778        }
     1779       
     1780        public System.Collections.Generic.List<HeuristicLab.Clients.Hive.Appointment> GetScheduleForResource(System.Guid resourceId)
     1781        {
     1782            return base.Channel.GetScheduleForResource(resourceId);
     1783        }
     1784       
     1785        public System.Guid AddJob(HeuristicLab.Clients.Hive.Job job, HeuristicLab.Clients.Hive.JobData jobData, System.Collections.Generic.List<System.Guid> resourceIds)
     1786        {
     1787            return base.Channel.AddJob(job, jobData, resourceIds);
     1788        }
     1789       
     1790        public System.Guid AddChildJob(System.Guid parentJobId, HeuristicLab.Clients.Hive.Job job, HeuristicLab.Clients.Hive.JobData jobData)
     1791        {
     1792            return base.Channel.AddChildJob(parentJobId, job, jobData);
     1793        }
     1794       
     1795        public HeuristicLab.Clients.Hive.Job GetJob(System.Guid jobId)
     1796        {
     1797            return base.Channel.GetJob(jobId);
     1798        }
     1799       
     1800        public System.Collections.Generic.List<HeuristicLab.Clients.Hive.Job> GetJobs()
     1801        {
     1802            return base.Channel.GetJobs();
     1803        }
     1804       
     1805        public System.Collections.Generic.List<HeuristicLab.Clients.Hive.LightweightJob> GetLightweightJobs(System.Collections.Generic.List<System.Guid> jobIds)
     1806        {
     1807            return base.Channel.GetLightweightJobs(jobIds);
     1808        }
     1809       
     1810        public System.Collections.Generic.List<HeuristicLab.Clients.Hive.LightweightJob> GetLightweightChildJobs(System.Nullable<System.Guid> parentJobId, bool recursive, bool includeParent)
     1811        {
     1812            return base.Channel.GetLightweightChildJobs(parentJobId, recursive, includeParent);
     1813        }
     1814       
     1815        public HeuristicLab.Clients.Hive.JobData GetJobData(System.Guid jobId)
     1816        {
     1817            return base.Channel.GetJobData(jobId);
     1818        }
     1819       
     1820        public void UpdateJob(HeuristicLab.Clients.Hive.Job jobDto)
     1821        {
     1822            base.Channel.UpdateJob(jobDto);
     1823        }
     1824       
     1825        public void UpdateJobData(HeuristicLab.Clients.Hive.Job jobDto, HeuristicLab.Clients.Hive.JobData jobDataDto)
     1826        {
     1827            base.Channel.UpdateJobData(jobDto, jobDataDto);
     1828        }
     1829       
     1830        public void DeleteJob(System.Guid jobId)
     1831        {
     1832            base.Channel.DeleteJob(jobId);
     1833        }
     1834       
     1835        public void DeleteChildJobs(System.Guid parentJobId)
     1836        {
     1837            base.Channel.DeleteChildJobs(parentJobId);
     1838        }
     1839       
     1840        public HeuristicLab.Clients.Hive.Job UpdateJobState(System.Guid jobId, HeuristicLab.Clients.Hive.JobState jobState, System.Nullable<System.Guid> slaveId, System.Nullable<System.Guid> userId, string exception)
     1841        {
     1842            return base.Channel.UpdateJobState(jobId, jobState, slaveId, userId, exception);
     1843        }
     1844       
     1845        public void StopJob(System.Guid jobId)
     1846        {
     1847            base.Channel.StopJob(jobId);
     1848        }
     1849       
     1850        public void PauseJob(System.Guid jobId)
     1851        {
     1852            base.Channel.PauseJob(jobId);
     1853        }
     1854       
     1855        public void RestartJob(System.Guid jobId)
     1856        {
     1857            base.Channel.RestartJob(jobId);
     1858        }
     1859       
     1860        public HeuristicLab.Clients.Hive.HiveExperiment GetHiveExperiment(System.Guid id)
     1861        {
     1862            return base.Channel.GetHiveExperiment(id);
     1863        }
     1864       
     1865        public System.Collections.Generic.List<HeuristicLab.Clients.Hive.HiveExperiment> GetHiveExperiments()
     1866        {
     1867            return base.Channel.GetHiveExperiments();
     1868        }
     1869       
     1870        public System.Collections.Generic.List<HeuristicLab.Clients.Hive.HiveExperiment> GetAllHiveExperiments()
     1871        {
     1872            return base.Channel.GetAllHiveExperiments();
     1873        }
     1874       
     1875        public System.Guid AddHiveExperiment(HeuristicLab.Clients.Hive.HiveExperiment hiveExperimentDto)
     1876        {
     1877            return base.Channel.AddHiveExperiment(hiveExperimentDto);
     1878        }
     1879       
     1880        public void UpdateHiveExperiment(HeuristicLab.Clients.Hive.HiveExperiment hiveExperimentDto)
     1881        {
     1882            base.Channel.UpdateHiveExperiment(hiveExperimentDto);
     1883        }
     1884       
     1885        public void DeleteHiveExperiment(System.Guid hiveExperimentId)
     1886        {
     1887            base.Channel.DeleteHiveExperiment(hiveExperimentId);
     1888        }
     1889       
     1890        public void Hello(HeuristicLab.Clients.Hive.Slave slave)
     1891        {
     1892            base.Channel.Hello(slave);
     1893        }
     1894       
     1895        public void GoodBye(System.Guid slaveId)
     1896        {
     1897            base.Channel.GoodBye(slaveId);
     1898        }
     1899       
     1900        public System.Collections.Generic.List<HeuristicLab.Clients.Hive.MessageContainer> Heartbeat(HeuristicLab.Clients.Hive.Heartbeat heartbeat1)
     1901        {
     1902            return base.Channel.Heartbeat(heartbeat1);
     1903        }
     1904       
     1905        public System.Guid AddPlugin(HeuristicLab.Clients.Hive.Plugin plugin, System.Collections.Generic.List<HeuristicLab.Clients.Hive.PluginData> pluginData)
     1906        {
     1907            return base.Channel.AddPlugin(plugin, pluginData);
     1908        }
     1909       
     1910        public System.Collections.Generic.List<HeuristicLab.Clients.Hive.Plugin> GetPlugins()
     1911        {
     1912            return base.Channel.GetPlugins();
     1913        }
     1914       
     1915        public System.Collections.Generic.List<HeuristicLab.Clients.Hive.PluginData> GetPluginDatas(System.Collections.Generic.List<System.Guid> pluginIds)
     1916        {
     1917            return base.Channel.GetPluginDatas(pluginIds);
     1918        }
     1919       
     1920        public System.Guid AddSlave(HeuristicLab.Clients.Hive.Slave slave)
     1921        {
     1922            return base.Channel.AddSlave(slave);
     1923        }
     1924       
     1925        public System.Guid AddSlaveGroup(HeuristicLab.Clients.Hive.SlaveGroup slaveGroup)
     1926        {
     1927            return base.Channel.AddSlaveGroup(slaveGroup);
     1928        }
     1929       
     1930        public HeuristicLab.Clients.Hive.Slave GetSlave(System.Guid slaveId)
     1931        {
     1932            return base.Channel.GetSlave(slaveId);
     1933        }
     1934       
     1935        public HeuristicLab.Clients.Hive.SlaveGroup GetSlaveGroup(System.Guid slaveGroupId)
     1936        {
     1937            return base.Channel.GetSlaveGroup(slaveGroupId);
     1938        }
     1939       
     1940        public System.Collections.Generic.List<HeuristicLab.Clients.Hive.Slave> GetSlaves()
     1941        {
     1942            return base.Channel.GetSlaves();
     1943        }
     1944       
     1945        public System.Collections.Generic.List<HeuristicLab.Clients.Hive.SlaveGroup> GetSlaveGroups()
     1946        {
     1947            return base.Channel.GetSlaveGroups();
     1948        }
     1949       
     1950        public void UpdateSlave(HeuristicLab.Clients.Hive.Slave slave)
     1951        {
     1952            base.Channel.UpdateSlave(slave);
     1953        }
     1954       
     1955        public void UpdateSlaveGroup(HeuristicLab.Clients.Hive.SlaveGroup slaveGroup)
     1956        {
     1957            base.Channel.UpdateSlaveGroup(slaveGroup);
     1958        }
     1959       
     1960        public void DeleteSlave(System.Guid slaveId)
     1961        {
     1962            base.Channel.DeleteSlave(slaveId);
     1963        }
     1964       
     1965        public void DeleteSlaveGroup(System.Guid slaveGroupId)
     1966        {
     1967            base.Channel.DeleteSlaveGroup(slaveGroupId);
     1968        }
     1969       
     1970        public void AddResourceToGroup(System.Guid slaveGroupId, System.Guid resourceId)
     1971        {
     1972            base.Channel.AddResourceToGroup(slaveGroupId, resourceId);
     1973        }
     1974       
     1975        public void RemoveResourceFromGroup(System.Guid slaveGroupId, System.Guid resourceId)
     1976        {
     1977            base.Channel.RemoveResourceFromGroup(slaveGroupId, resourceId);
     1978        }
     1979       
     1980        public System.Guid GetResourceId(string resourceName)
     1981        {
     1982            return base.Channel.GetResourceId(resourceName);
     1983        }
     1984       
     1985        public void TriggerLifecycle(bool force)
     1986        {
     1987            base.Channel.TriggerLifecycle(force);
     1988        }
     1989       
     1990        public System.Guid AddAppointment(HeuristicLab.Clients.Hive.Appointment appointment)
     1991        {
     1992            return base.Channel.AddAppointment(appointment);
     1993        }
     1994    }
    16191995}
  • branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Clients.Hive/3.4/ServiceClients/Job.cs

    r5718 r5779  
    3030    public Job() { }
    3131
    32     protected Job(Job original, Cloner cloner) {
     32    protected Job(Job original, Cloner cloner) : base(original, cloner) {
    3333      this.Priority = original.Priority;
    3434      this.CoresNeeded = original.CoresNeeded;
     
    3838      this.IsParentJob = original.IsParentJob;
    3939      this.FinishWhenChildJobsFinished = original.FinishWhenChildJobsFinished;
    40       this.ExecutionTime = original.ExecutionTime;
    41       this.ParentJobId = original.ParentJobId;
    42       this.StateLog = new List<StateLog>(original.StateLog);
    43       this.State = original.State;
    44       this.Id = original.Id;
    4540    }
    4641
     
    5045
    5146    public override string ToString() {
    52       return string.Format("State: {0}, SlaveId: {1}, DateCreated: {2}, DateCalculated: {3}, CoresNeeded: {4}, MemoryNeeded: {5}", State, CurrentStateLog.SlaveId, DateCreated.HasValue ? DateCreated.ToString() : "-", CoresNeeded, MemoryNeeded);
     47      return string.Format("State: {0}, SlaveId: {1}, DateCreated: {2}, CoresNeeded: {3}, MemoryNeeded: {4}",
     48        State,
     49        CurrentStateLog != null ? (CurrentStateLog.SlaveId.HasValue ? CurrentStateLog.SlaveId.Value.ToString() : string.Empty) : string.Empty,
     50        DateCreated.HasValue ? DateCreated.ToString() : string.Empty,
     51        CoresNeeded,
     52        MemoryNeeded);
    5353    }
    5454  }
  • branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Clients.Hive/3.4/ServiceClients/JobData.cs

    r5614 r5779  
    2929
    3030    protected JobData(JobData original, Cloner cloner) {
     31      cloner.RegisterClonedObject(original, this);
    3132      if (original.Data != null) this.Data = new byte[original.Data.Length]; Array.Copy(original.Data, this.Data, original.Data.Length);
    3233      this.LastUpdate = original.LastUpdate;
  • branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Clients.Hive/3.4/ServiceClients/LightweightJob.cs

    r5718 r5779  
    4242      this.StateLog = new List<StateLog>(job.StateLog);
    4343      this.State = job.State;
     44      this.Command = job.Command;
    4445    }
    4546
    46     protected LightweightJob(LightweightJob original, Cloner cloner) {
     47    protected LightweightJob(LightweightJob original, Cloner cloner)
     48      : base(original, cloner) {
    4749      this.ExecutionTime = original.ExecutionTime;
    4850      this.ParentJobId = original.ParentJobId;
    4951      this.StateLog = new List<StateLog>(original.StateLog);
    5052      this.State = original.State;
    51       this.Id = original.Id;
     53      this.Command = original.Command;
    5254    }
    5355    public override IDeepCloneable Clone(Cloner cloner) {
  • branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Clients.Hive/3.4/ServiceClients/Plugin.cs

    r5614 r5779  
    2020#endregion
    2121
    22 using System;
    23 using System.Runtime.Serialization;
    2422using HeuristicLab.Common;
    2523
    2624namespace HeuristicLab.Clients.Hive {
    27  
     25
    2826  public partial class Plugin : IDeepCloneable, IContent {
    2927
    3028    public Plugin() { }
    3129
    32     protected Plugin(Plugin original, Cloner cloner) {
     30    protected Plugin(Plugin original, Cloner cloner)
     31      : base(original, cloner) {
    3332      this.Version = original.Version;
    3433      this.UserId = original.UserId;
    3534      this.DateCreated = original.DateCreated;
    3635      this.IsLocal = original.IsLocal;
    37       this.Name = original.Name;
    38       this.Description = original.Description;
    39       this.Id = original.Id;
    4036    }
    4137
  • branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Clients.Hive/3.4/ServiceClients/PluginData.cs

    r5614 r5779  
    2929    public PluginData() { }
    3030
    31     protected PluginData(PluginData original, Cloner cloner) {
     31    protected PluginData(PluginData original, Cloner cloner)
     32      : base(original, cloner) {
    3233      if (original.Data != null)
    3334        this.Data = new byte[original.Data.Length];
     
    3536      this.FileName = original.FileName;
    3637      this.PluginId = original.PluginId;
    37       this.Id = original.Id;
    3838    }
    3939
  • branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Clients.Hive/3.4/ServiceClients/Resource.cs

    r5614 r5779  
    2828    public Resource() { }
    2929
    30     protected Resource(Resource original, Cloner cloner) {
     30    protected Resource(Resource original, Cloner cloner)
     31      : base(original, cloner) {
    3132      this.ParentResourceId = original.ParentResourceId;
    32       this.Name = original.Name;
    33       this.Description = original.Description;
    34       this.Id = original.Id;
    3533    }
    3634
  • branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Clients.Hive/3.4/ServiceClients/StateLog.cs

    r5634 r5779  
    2828    public StateLog() { }
    2929
    30     protected StateLog(StateLog original, Cloner cloner) {
     30    protected StateLog(StateLog original, Cloner cloner)
     31      : base(original, cloner) {
    3132      this.DateTime = original.DateTime;
    3233      this.UserId = original.UserId;
     
    3536      this.State = original.State;
    3637      this.JobId = original.JobId;
    37       this.Id = original.Id;
    3838    }
    3939
  • branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Hive 3.4.sln

    r5675 r5779  
    7878EndProject
    7979Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WindowsFormsTestProject", "WindowsFormsTestProject\WindowsFormsTestProject.csproj", "{BEB9D81C-3878-4F2E-BBAF-5B24AA90AEEE}"
     80EndProject
     81Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "HeuristicLab.Clients.Hive.Slave", "HeuristicLab.Clients.Hive.Slave", "{622F8E95-CDFC-4B4E-BBA7-3EE4E47DB52A}"
     82EndProject
     83Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "HeuristicLab.Services.Hive", "HeuristicLab.Services.Hive", "{E69A1E5F-63F7-493F-BBA2-163D6E321D44}"
     84EndProject
     85Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "HeuristicLab.Clients.Hive", "HeuristicLab.Clients.Hive", "{E46F2FC8-8C15-48E5-96DB-FF2DB36BC509}"
     86EndProject
     87Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Hive Helpers", "Hive Helpers", "{9963403B-3CB9-48E0-9FEB-B1CE12C31601}"
     88EndProject
     89Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Hive Common", "Hive Common", "{70CE526B-B92C-4750-B3D3-A38C572042A8}"
    8090EndProject
    8191Global
     
    363373    {A2061FFC-C564-4872-AA06-56B002DDEDBF} = {063D87A6-1085-49F6-A195-5D1890CBE994}
    364374    {02766ECC-D0F5-4115-9ECA-47409167B638} = {A2061FFC-C564-4872-AA06-56B002DDEDBF}
     375    {989FE92B-484E-41EE-87E2-6A24AF0381D8} = {622F8E95-CDFC-4B4E-BBA7-3EE4E47DB52A}
     376    {464D70B8-2D91-485C-B622-22E4A4891C68} = {622F8E95-CDFC-4B4E-BBA7-3EE4E47DB52A}
     377    {7C4B1DE4-FC9A-4448-BCF8-3CB3FA3CB8FA} = {622F8E95-CDFC-4B4E-BBA7-3EE4E47DB52A}
     378    {BA8001DE-E83C-4B1F-8B2E-2695C4222491} = {622F8E95-CDFC-4B4E-BBA7-3EE4E47DB52A}
     379    {C4CBD11E-1B83-464A-B0AD-0DC0FF7E57AA} = {622F8E95-CDFC-4B4E-BBA7-3EE4E47DB52A}
     380    {8C0D9F39-397F-4DBE-856F-BC4DC0FE23F8} = {622F8E95-CDFC-4B4E-BBA7-3EE4E47DB52A}
     381    {28711372-0255-4883-9BED-81E150D73880} = {622F8E95-CDFC-4B4E-BBA7-3EE4E47DB52A}
     382    {0CA6706D-A569-45DE-A85C-4158891CC1BC} = {E69A1E5F-63F7-493F-BBA2-163D6E321D44}
     383    {CF9DA321-AC1B-4FD3-9EC3-67BC6B861BDE} = {E69A1E5F-63F7-493F-BBA2-163D6E321D44}
     384    {14424A16-48D4-445E-80BF-DDF617548BBB} = {E69A1E5F-63F7-493F-BBA2-163D6E321D44}
     385    {EC2C8109-6E1E-4C88-9A2B-908CFF2EF4AC} = {E69A1E5F-63F7-493F-BBA2-163D6E321D44}
     386    {17187EAC-5D8C-4B11-9CEA-D88F71B59658} = {E69A1E5F-63F7-493F-BBA2-163D6E321D44}
     387    {B5EF1E5A-9F3D-40B9-B4B0-30AADF2E2CEB} = {E46F2FC8-8C15-48E5-96DB-FF2DB36BC509}
     388    {8D40A723-139D-40E4-8BBA-4CB309A9E4B9} = {E46F2FC8-8C15-48E5-96DB-FF2DB36BC509}
     389    {E1D6C801-892A-406A-B606-F158E36DD3C3} = {E46F2FC8-8C15-48E5-96DB-FF2DB36BC509}
     390    {A0EB9657-4D57-4CC1-A309-EC010D7F9EAB} = {9963403B-3CB9-48E0-9FEB-B1CE12C31601}
     391    {54491B6A-1EDD-4C76-90A7-338BA9C1FBF8} = {9963403B-3CB9-48E0-9FEB-B1CE12C31601}
     392    {BEB9D81C-3878-4F2E-BBAF-5B24AA90AEEE} = {9963403B-3CB9-48E0-9FEB-B1CE12C31601}
     393    {F98A1740-9AC9-4D36-A582-6A2D0D06978D} = {70CE526B-B92C-4750-B3D3-A38C572042A8}
    365394  EndGlobalSection
    366395EndGlobal
  • branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Services.Hive.Common/3.4/ApplicationConstants.cs

    r4796 r5779  
    3434
    3535    public static int HeartbeatTimeout = 120; // value in seconds
    36    
    37     public static int JobTimeToLive = 5;
    3836
    3937    /// <summary>
  • branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Services.Hive.Common/3.4/DataTransfer/JobState.cs

    r5636 r5779  
    2020#endregion
    2121
     22using System;
    2223
    2324namespace HeuristicLab.Services.Hive.Common.DataTransfer {
     25  [Serializable]
    2426  public enum JobState {
    25         /// <summary>
     27    /// <summary>
    2628    /// A job is offline as long as he is not yet submitted to the hive
    2729    /// </summary>
     
    5254    /// </summary>
    5355    Calculating,
    54    
     56
    5557    /// <summary>
    5658    /// Job is paused, will not be picked up by slaves
  • branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Services.Hive.Common/3.4/DataTransfer/LightweightJob.cs

    r5718 r5779  
    3737    [DataMember]
    3838    public JobState State { get; set; }
     39    [DataMember]
     40    public Command? Command { get; set; }
    3941
    4042    public StateLog CurrentStateLog { get { return StateLog.LastOrDefault(); } }
     
    5254      this.StateLog = new List<StateLog>(job.StateLog);
    5355      this.State = job.State;
     56      this.Command = job.Command;
    5457    }
    5558  }
  • branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Services.Hive.Common/3.4/HeuristicLab.Services.Hive.Common-3.4.csproj

    r5636 r5779  
    9797    <None Include="HeuristicLabServicesHiveCommonPlugin.cs.frame" />
    9898    <Compile Include="DataTransfer\Appointment.cs" />
     99    <Compile Include="DataTransfer\Command.cs" />
    99100    <Compile Include="DataTransfer\HiveExperimentPermission.cs" />
    100101    <Compile Include="DataTransfer\StateLog.cs" />
  • branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Services.Hive.Common/3.4/ServiceContracts/IHiveService.cs

    r5636 r5779  
    5454    [OperationContract]
    5555    void PauseJob(Guid jobId);
     56
     57    [OperationContract]
     58    void RestartJob(Guid jobId);
    5659    #endregion
    5760
  • branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Services.Hive.DataAccess/3.4/Convert.cs

    r5633 r5779  
    4242        StateLog = source.StateLogs.Select(x => Convert.ToDto(x)).OrderBy(x => x.DateTime).ToList(),
    4343        IsParentJob = source.IsParentJob,
    44         FinishWhenChildJobsFinished = source.FinishWhenChildJobsFinished
     44        FinishWhenChildJobsFinished = source.FinishWhenChildJobsFinished,
     45        Command = source.Command
    4546      };
    4647    }
     
    6465          target.StateLogs.Add(Convert.ToEntity(sl));
    6566        }
    66 
    6767        //target.StateLogs.AddRange(source.StateLog.Select(x => Convert.ToEntity(x)).OrderBy(x => x.DateTime));
    6868        target.IsParentJob = source.IsParentJob;
    6969        target.FinishWhenChildJobsFinished = source.FinishWhenChildJobsFinished;
     70        target.Command = source.Command;
    7071        // RequiredPlugins are added by Dao
    7172      }
  • branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Services.Hive.DataAccess/3.4/HiveDao.cs

    r5636 r5779  
    9898                       && (from child in db.Jobs
    9999                           where child.ParentJobId == ar.Job.JobId
    100                            select child.State == JobState.Finished).All(x => x)
     100                           select child.State == JobState.Finished
     101                               || child.State == JobState.Aborted
     102                               || child.State == JobState.Failed).All(x => x)
    101103                       && (from child in db.Jobs // avoid returning WaitForChildJobs jobs where no child-jobs exist (yet)
    102104                           where child.ParentJobId == ar.Job.JobId
  • branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Services.Hive.DataAccess/3.4/HiveDataContext.dbml

    r5593 r5779  
    6969      <Column Name="IsParentJob" Type="System.Boolean" DbType="Bit" CanBeNull="false" />
    7070      <Column Name="FinishWhenChildJobsFinished" Type="System.Boolean" DbType="Bit" CanBeNull="false" />
     71      <Column Name="Command" Type="global::HeuristicLab.Services.Hive.Common.DataTransfer.Command?" DbType="VarChar(30)" CanBeNull="true" />
    7172      <Association Name="Job_AssignedResource" Member="AssignedResources" ThisKey="JobId" OtherKey="JobId" Type="AssignedResource" />
    7273      <Association Name="Job_RequiredPlugin" Member="RequiredPlugins" ThisKey="JobId" OtherKey="JobId" Type="RequiredPlugin" />
  • branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Services.Hive.DataAccess/3.4/HiveDataContext.dbml.layout

    r5593 r5779  
    2727      </nestedChildShapes>
    2828    </classShape>
    29     <classShape Id="695bfc39-59f3-4e60-8644-f847964bf62c" absoluteBounds="6.5, 1, 2, 2.7324039713541666">
     29    <classShape Id="695bfc39-59f3-4e60-8644-f847964bf62c" absoluteBounds="6.5, 1, 2, 2.9247054036458331">
    3030      <DataClassMoniker Name="/HiveDataContext/Job" />
    3131      <nestedChildShapes>
    32         <elementListCompartment Id="a6a30e11-03d1-4869-82e6-b733f4ef9974" absoluteBounds="6.5150000000000006, 1.46, 1.9700000000000002, 2.1724039713541665" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
     32        <elementListCompartment Id="a6a30e11-03d1-4869-82e6-b733f4ef9974" absoluteBounds="6.5150000000000006, 1.46, 1.9700000000000002, 2.364705403645833" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
    3333      </nestedChildShapes>
    3434    </classShape>
     
    7676      </nodes>
    7777    </associationConnector>
    78     <associationConnector edgePoints="[(8.5 : 3.73240397135417); (8.875 : 3.875)]" fixedFrom="NotFixed" fixedTo="NotFixed">
     78    <associationConnector edgePoints="[(7.98437325 : 3.92470540364583); (7.98437325 : 4.59300017447917); (8.875 : 4.59300017447917)]" fixedFrom="Algorithm" fixedTo="Algorithm">
    7979      <AssociationMoniker Name="/HiveDataContext/Job/Job_AssignedResource" />
    8080      <nodes>
     
    8383      </nodes>
    8484    </associationConnector>
    85     <associationConnector edgePoints="[(7.4687475 : 3.73240397135417); (7.4687475 : 5.5)]" fixedFrom="NotFixed" fixedTo="NotFixed">
     85    <associationConnector edgePoints="[(7.179686625 : 3.92470540364583); (7.179686625 : 5.5)]" fixedFrom="Algorithm" fixedTo="Algorithm">
    8686      <AssociationMoniker Name="/HiveDataContext/Job/Job_RequiredPlugin" />
    8787      <nodes>
     
    104104      </nodes>
    105105    </associationConnector>
    106     <associationConnector edgePoints="[(6.5 : 3.17870198567708); (6.125 : 3.17870198567708)]" fixedFrom="NotFixed" fixedTo="NotFixed">
     106    <associationConnector edgePoints="[(6.5 : 3.27485270182292); (6.125 : 3.27485270182292)]" fixedFrom="Algorithm" fixedTo="Algorithm">
    107107      <AssociationMoniker Name="/HiveDataContext/Job/Job_HiveExperiment" />
    108108      <nodes>
     
    130130      </nodes>
    131131    </associationConnector>
    132     <associationConnector edgePoints="[(6.5 : 1.69314697265625); (6.125 : 1.69314697265625)]" fixedFrom="NotFixed" fixedTo="NotFixed">
     132    <associationConnector edgePoints="[(6.5 : 1.69314697265625); (6.125 : 1.69314697265625)]" fixedFrom="Algorithm" fixedTo="Algorithm">
    133133      <AssociationMoniker Name="/HiveDataContext/Job/Job_JobData" />
    134134      <nodes>
     
    163163      </nestedChildShapes>
    164164    </classShape>
    165     <associationConnector edgePoints="[(6.5 : 2.50564697265625); (3.75 : 2.50564697265625)]" fixedFrom="NotFixed" fixedTo="NotFixed">
     165    <associationConnector edgePoints="[(6.5 : 2.50564697265625); (3.75 : 2.50564697265625)]" fixedFrom="Algorithm" fixedTo="Algorithm">
    166166      <AssociationMoniker Name="/HiveDataContext/Job/Job_StateLog" />
    167167      <nodes>
     
    170170      </nodes>
    171171    </associationConnector>
    172     <associationConnector edgePoints="[(11.25 : 1.78929768880208); (10.9375 : 1.78929768880208); (10.9375 : 0.6875); (2.75 : 0.6875); (2.75 : 1)]" fixedFrom="NotFixed" fixedTo="NotFixed">
     172    <associationConnector edgePoints="[(11.25 : 1.78929768880208); (10.9375 : 1.78929768880208); (10.9375 : 0.6875); (2.75 : 0.6875); (2.75 : 1)]" fixedFrom="Algorithm" fixedTo="Algorithm">
    173173      <AssociationMoniker Name="/HiveDataContext/Resource/Resource_StateLog" />
    174174      <nodes>
  • branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Services.Hive.DataAccess/3.4/HiveDataContext.designer.cs

    r5593 r5779  
    14221422    private bool _FinishWhenChildJobsFinished;
    14231423   
     1424    private global::HeuristicLab.Services.Hive.Common.DataTransfer.Command? _Command;
     1425   
    14241426    private EntitySet<AssignedResource> _AssignedResources;
    14251427   
     
    14581460    partial void OnFinishWhenChildJobsFinishedChanging(bool value);
    14591461    partial void OnFinishWhenChildJobsFinishedChanged();
     1462    partial void OnCommandChanging(global::HeuristicLab.Services.Hive.Common.DataTransfer.Command? value);
     1463    partial void OnCommandChanged();
    14601464    #endregion
    14611465   
     
    16711675          this.SendPropertyChanged("FinishWhenChildJobsFinished");
    16721676          this.OnFinishWhenChildJobsFinishedChanged();
     1677        }
     1678      }
     1679    }
     1680   
     1681    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Command", DbType="VarChar(30)", CanBeNull=true)]
     1682    public global::HeuristicLab.Services.Hive.Common.DataTransfer.Command? Command
     1683    {
     1684      get
     1685      {
     1686        return this._Command;
     1687      }
     1688      set
     1689      {
     1690        if ((this._Command != value))
     1691        {
     1692          this.OnCommandChanging(value);
     1693          this.SendPropertyChanging();
     1694          this._Command = value;
     1695          this.SendPropertyChanged("Command");
     1696          this.OnCommandChanged();
    16731697        }
    16741698      }
  • branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Services.Hive.Tests/DaoTests.cs

    r5636 r5779  
    3030      job1.State = JobState.Offline;
    3131      job1.StateLog.Add(new DT.StateLog { State = JobState.Offline, DateTime = DateTime.Now });
     32      job1.Command = Command.Pause;
    3233
    3334      DT.Plugin plugin1 = new DT.Plugin();
     
    5859      Assert.IsTrue(job1.PluginsNeededIds.SequenceEqual(job1loaded.PluginsNeededIds));
    5960      Assert.AreEqual(job1.StateLog.Count, job1loaded.StateLog.Count);
     61      Assert.AreEqual(job1.Command, job1loaded.Command);
    6062      for (int i = 0; i < job1.StateLog.Count; i++) {
    6163        Assert.AreEqual(job1.Id, job1loaded.StateLog[i].JobId);
  • branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Services.Hive/3.4/HeartbeatManager.cs

    r5718 r5779  
    3939
    4040        // assign new job
    41         if (heartbeat.AssignJob && this.IsAllowedToSendJobs() && slave.IsAllowedToCalculate && heartbeat.FreeCores > 0) {
     41        if (heartbeat.AssignJob && slave.IsAllowedToCalculate && heartbeat.FreeCores > 0) {
    4242          var availableJobs = dao.GetWaitingJobs(slave, 1);
    4343          if (availableJobs.Count() > 0) {
     
    8383            curJob.LastHeartbeat = DateTime.Now;
    8484
    85             if (curJob.State == JobState.Aborted) {
    86               // a request to abort the job has been set
    87               actions.Add(new MessageContainer(MessageContainer.MessageType.AbortJob, curJob.Id));
     85            switch (curJob.Command) {
     86              case Command.Stop:
     87                actions.Add(new MessageContainer(MessageContainer.MessageType.StopJob, curJob.Id));
     88                break;
     89              case Command.Pause:
     90                actions.Add(new MessageContainer(MessageContainer.MessageType.PauseJob, curJob.Id));
     91                break;
     92              case Command.Abort:
     93                actions.Add(new MessageContainer(MessageContainer.MessageType.AbortJob, curJob.Id));
     94                break;
    8895            }
    8996            dao.UpdateJob(curJob);
     
    93100      return actions;
    94101    }
    95 
    96     /// <summary>
    97     /// Returns true if there are enough resources to send a job
    98     /// There should not be too many jobs sent simultaniously
    99     /// </summary>
    100     private bool IsAllowedToSendJobs() {
    101       return true; // JobsCurrentlyTransferring < ApplicationConstants.MaxJobTransferCount;
    102       // Todo: see if unlimited job transfer count works. if not, look into db and count jobs in state Transferring
    103     }
    104102  }
    105103}
  • branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Services.Hive/3.4/HiveService.cs

    r5708 r5779  
    139139    // [PrincipalPermission(SecurityAction.Demand, Role = HiveRoles.Slave)]
    140140    public Job UpdateJobState(Guid jobId, JobState jobState, Guid? slaveId, Guid? userId, string exception) {
    141       return trans.UseTransaction(() => dao.UpdateJobState(jobId, jobState, slaveId, userId, exception));
     141      return trans.UseTransaction(() => {
     142        Job job = dao.UpdateJobState(jobId, jobState, slaveId, userId, exception);
     143        if (job.Command.HasValue && job.Command.Value == Command.Pause && job.State == JobState.Paused) {
     144          job.Command = null;
     145        } else if (job.Command.HasValue && job.Command.Value == Command.Abort && job.State == JobState.Aborted) {
     146          job.Command = null;
     147        } else if (job.Command.HasValue && job.Command.Value == Command.Stop && job.State == JobState.Aborted) {
     148          job.Command = null;
     149        }
     150        dao.UpdateJob(job);
     151        return job;
     152      });
    142153    }
    143154    #endregion
     
    149160    public void StopJob(Guid jobId) {
    150161      trans.UseTransaction(() => {
    151         throw new NotImplementedException();
     162        //dao.UpdateJobState(jobId, JobState.Aborted, null, auth.UserId, string.Empty);
     163        var job = dao.GetJob(jobId);
     164        job.Command = Command.Stop;
     165        dao.UpdateJob(job);
    152166      });
    153167    }
     
    158172    public void PauseJob(Guid jobId) {
    159173      trans.UseTransaction(() => {
    160         throw new NotImplementedException();
     174        //dao.UpdateJobState(jobId, JobState.Paused, null, auth.UserId, string.Empty);
     175        var job = dao.GetJob(jobId);
     176        job.Command = Command.Pause;
     177        dao.UpdateJob(job);
     178      });
     179    }
     180
     181    // [PrincipalPermission(SecurityAction.Demand, Role = HiveRoles.Administrator)]
     182    // [PrincipalPermission(SecurityAction.Demand, Role = HiveRoles.Client)]
     183    // [PrincipalPermission(SecurityAction.Demand, Role = HiveRoles.Slave)]
     184    public void RestartJob(Guid jobId) {
     185      trans.UseTransaction(() => {
     186        Job job = dao.UpdateJobState(jobId, JobState.Waiting, null, auth.UserId, string.Empty);
     187        job.Command = null;
     188        dao.UpdateJob(job);
    161189      });
    162190    }
  • branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Services.Hive/3.4/LifecycleManager.cs

    r5718 r5779  
    5555      var jobs = dao.GetJobs(x => x.State == JobState.Calculating).Where(x => x.StateLog.Last().SlaveId == slaveId);
    5656      foreach (var j in jobs) {
    57         dao.UpdateJobState(j.Id, JobState.Waiting, slaveId, null, "Slave timed out");
     57        Job job = dao.UpdateJobState(j.Id, JobState.Waiting, slaveId, null, "Slave timed out");
     58        job.Command = null;
     59        dao.UpdateJob(job);
    5860      }
    5961    }
Note: See TracChangeset for help on using the changeset viewer.