Index: branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Clients.Hive/3.3/ServiceClients/HiveServiceClient.cs
===================================================================
--- branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Clients.Hive/3.3/ServiceClients/HiveServiceClient.cs	(revision 6768)
+++ branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Clients.Hive/3.3/ServiceClients/HiveServiceClient.cs	(revision 6893)
@@ -2,5 +2,5 @@
 // <auto-generated>
 //     This code was generated by a tool.
-//     Runtime Version:4.0.30319.235
+//     Runtime Version:4.0.30319.237
 //
 //     Changes to this file may cause incorrect behavior and will be lost if
@@ -14,6 +14,248 @@
   [System.Diagnostics.DebuggerStepThroughAttribute()]
   [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
+  [System.Runtime.Serialization.DataContractAttribute(Name = "Heartbeat", Namespace = "http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Hive.DataTransfer")]
+  [System.SerializableAttribute()]
+  public partial class Heartbeat : object, System.Runtime.Serialization.IExtensibleDataObject, System.ComponentModel.INotifyPropertyChanged {
+
+    [System.NonSerializedAttribute()]
+    private System.Runtime.Serialization.ExtensionDataObject extensionDataField;
+
+    [System.Runtime.Serialization.OptionalFieldAttribute()]
+    private bool AssignJobField;
+
+    [System.Runtime.Serialization.OptionalFieldAttribute()]
+    private float CpuUtilizationField;
+
+    [System.Runtime.Serialization.OptionalFieldAttribute()]
+    private int FreeCoresField;
+
+    [System.Runtime.Serialization.OptionalFieldAttribute()]
+    private int FreeMemoryField;
+
+    [System.Runtime.Serialization.OptionalFieldAttribute()]
+    private int HbIntervalField;
+
+    [System.Runtime.Serialization.OptionalFieldAttribute()]
+    private System.Collections.Generic.Dictionary<System.Guid, System.TimeSpan> JobProgressField;
+
+    [System.Runtime.Serialization.OptionalFieldAttribute()]
+    private System.Guid SlaveIdField;
+
+    public System.Runtime.Serialization.ExtensionDataObject ExtensionData {
+      get {
+        return this.extensionDataField;
+      }
+      set {
+        this.extensionDataField = value;
+      }
+    }
+
+    [System.Runtime.Serialization.DataMemberAttribute()]
+    public bool AssignJob {
+      get {
+        return this.AssignJobField;
+      }
+      set {
+        if ((this.AssignJobField.Equals(value) != true)) {
+          this.AssignJobField = value;
+          this.RaisePropertyChanged("AssignJob");
+        }
+      }
+    }
+
+    [System.Runtime.Serialization.DataMemberAttribute()]
+    public float CpuUtilization {
+      get {
+        return this.CpuUtilizationField;
+      }
+      set {
+        if ((this.CpuUtilizationField.Equals(value) != true)) {
+          this.CpuUtilizationField = value;
+          this.RaisePropertyChanged("CpuUtilization");
+        }
+      }
+    }
+
+    [System.Runtime.Serialization.DataMemberAttribute()]
+    public int FreeCores {
+      get {
+        return this.FreeCoresField;
+      }
+      set {
+        if ((this.FreeCoresField.Equals(value) != true)) {
+          this.FreeCoresField = value;
+          this.RaisePropertyChanged("FreeCores");
+        }
+      }
+    }
+
+    [System.Runtime.Serialization.DataMemberAttribute()]
+    public int FreeMemory {
+      get {
+        return this.FreeMemoryField;
+      }
+      set {
+        if ((this.FreeMemoryField.Equals(value) != true)) {
+          this.FreeMemoryField = value;
+          this.RaisePropertyChanged("FreeMemory");
+        }
+      }
+    }
+
+    [System.Runtime.Serialization.DataMemberAttribute()]
+    public int HbInterval {
+      get {
+        return this.HbIntervalField;
+      }
+      set {
+        if ((this.HbIntervalField.Equals(value) != true)) {
+          this.HbIntervalField = value;
+          this.RaisePropertyChanged("HbInterval");
+        }
+      }
+    }
+
+    [System.Runtime.Serialization.DataMemberAttribute()]
+    public System.Collections.Generic.Dictionary<System.Guid, System.TimeSpan> JobProgress {
+      get {
+        return this.JobProgressField;
+      }
+      set {
+        if ((object.ReferenceEquals(this.JobProgressField, value) != true)) {
+          this.JobProgressField = value;
+          this.RaisePropertyChanged("JobProgress");
+        }
+      }
+    }
+
+    [System.Runtime.Serialization.DataMemberAttribute()]
+    public System.Guid SlaveId {
+      get {
+        return this.SlaveIdField;
+      }
+      set {
+        if ((this.SlaveIdField.Equals(value) != true)) {
+          this.SlaveIdField = value;
+          this.RaisePropertyChanged("SlaveId");
+        }
+      }
+    }
+
+    public event System.ComponentModel.PropertyChangedEventHandler PropertyChanged;
+
+    protected void RaisePropertyChanged(string propertyName) {
+      System.ComponentModel.PropertyChangedEventHandler propertyChanged = this.PropertyChanged;
+      if ((propertyChanged != null)) {
+        propertyChanged(this, new System.ComponentModel.PropertyChangedEventArgs(propertyName));
+      }
+    }
+  }
+
+  [System.Diagnostics.DebuggerStepThroughAttribute()]
+  [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
+  [System.Runtime.Serialization.DataContractAttribute(Name = "MessageContainer", Namespace = "http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Hive")]
+  [System.SerializableAttribute()]
+  public partial class MessageContainer : object, System.Runtime.Serialization.IExtensibleDataObject, System.ComponentModel.INotifyPropertyChanged {
+
+    [System.NonSerializedAttribute()]
+    private System.Runtime.Serialization.ExtensionDataObject extensionDataField;
+
+    [System.Runtime.Serialization.OptionalFieldAttribute()]
+    private HeuristicLab.Clients.Hive.MessageContainer.MessageType MessageField;
+
+    [System.Runtime.Serialization.OptionalFieldAttribute()]
+    private System.Guid TaskIdField;
+
+    public System.Runtime.Serialization.ExtensionDataObject ExtensionData {
+      get {
+        return this.extensionDataField;
+      }
+      set {
+        this.extensionDataField = value;
+      }
+    }
+
+    [System.Runtime.Serialization.DataMemberAttribute()]
+    public HeuristicLab.Clients.Hive.MessageContainer.MessageType Message {
+      get {
+        return this.MessageField;
+      }
+      set {
+        if ((this.MessageField.Equals(value) != true)) {
+          this.MessageField = value;
+          this.RaisePropertyChanged("Message");
+        }
+      }
+    }
+
+    [System.Runtime.Serialization.DataMemberAttribute()]
+    public System.Guid TaskId {
+      get {
+        return this.TaskIdField;
+      }
+      set {
+        if ((this.TaskIdField.Equals(value) != true)) {
+          this.TaskIdField = value;
+          this.RaisePropertyChanged("TaskId");
+        }
+      }
+    }
+
+    public event System.ComponentModel.PropertyChangedEventHandler PropertyChanged;
+
+    protected void RaisePropertyChanged(string propertyName) {
+      System.ComponentModel.PropertyChangedEventHandler propertyChanged = this.PropertyChanged;
+      if ((propertyChanged != null)) {
+        propertyChanged(this, new System.ComponentModel.PropertyChangedEventArgs(propertyName));
+      }
+    }
+
+    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
+    [System.Runtime.Serialization.DataContractAttribute(Name = "MessageContainer.MessageType", Namespace = "http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Hive")]
+    public enum MessageType : int {
+
+      [System.Runtime.Serialization.EnumMemberAttribute()]
+      CalculateTask = 0,
+
+      [System.Runtime.Serialization.EnumMemberAttribute()]
+      StopTask = 1,
+
+      [System.Runtime.Serialization.EnumMemberAttribute()]
+      StopAll = 2,
+
+      [System.Runtime.Serialization.EnumMemberAttribute()]
+      AbortTask = 3,
+
+      [System.Runtime.Serialization.EnumMemberAttribute()]
+      AbortAll = 4,
+
+      [System.Runtime.Serialization.EnumMemberAttribute()]
+      PauseTask = 5,
+
+      [System.Runtime.Serialization.EnumMemberAttribute()]
+      PauseAll = 6,
+
+      [System.Runtime.Serialization.EnumMemberAttribute()]
+      Restart = 7,
+
+      [System.Runtime.Serialization.EnumMemberAttribute()]
+      Sleep = 8,
+
+      [System.Runtime.Serialization.EnumMemberAttribute()]
+      ShutdownSlave = 9,
+
+      [System.Runtime.Serialization.EnumMemberAttribute()]
+      SayHello = 10,
+
+      [System.Runtime.Serialization.EnumMemberAttribute()]
+      NewHBInterval = 11,
+    }
+  }
+
+  [System.Diagnostics.DebuggerStepThroughAttribute()]
+  [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
   [System.Runtime.Serialization.DataContractAttribute(Name = "HiveItem", Namespace = "http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Hive.DataTransfer")]
   [System.SerializableAttribute()]
+  [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Hive.PluginData))]
   [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Hive.LightweightTask))]
   [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Hive.StateLog))]
@@ -21,11 +263,10 @@
   [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Hive.Downtime))]
   [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Hive.JobPermission))]
-  [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Hive.PluginData))]
   [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Hive.NamedHiveItem))]
-  [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Hive.Job))]
-  [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Hive.Plugin))]
   [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Hive.Resource))]
   [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Hive.Slave))]
   [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Hive.SlaveGroup))]
+  [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Hive.Job))]
+  [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Hive.Plugin))]
   public partial class HiveItem : object, System.Runtime.Serialization.IExtensibleDataObject, System.ComponentModel.INotifyPropertyChanged {
 
@@ -59,5 +300,59 @@
 
     public event System.ComponentModel.PropertyChangedEventHandler PropertyChanged;
-
+  }
+
+  [System.Diagnostics.DebuggerStepThroughAttribute()]
+  [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
+  [System.Runtime.Serialization.DataContractAttribute(Name = "PluginData", Namespace = "http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Hive.DataTransfer")]
+  [System.SerializableAttribute()]
+  public partial class PluginData : HeuristicLab.Clients.Hive.HiveItem {
+
+    [System.Runtime.Serialization.OptionalFieldAttribute()]
+    private byte[] DataField;
+
+    [System.Runtime.Serialization.OptionalFieldAttribute()]
+    private string FileNameField;
+
+    [System.Runtime.Serialization.OptionalFieldAttribute()]
+    private System.Guid PluginIdField;
+
+    [System.Runtime.Serialization.DataMemberAttribute()]
+    public byte[] Data {
+      get {
+        return this.DataField;
+      }
+      set {
+        if ((object.ReferenceEquals(this.DataField, value) != true)) {
+          this.DataField = value;
+          this.RaisePropertyChanged("Data");
+        }
+      }
+    }
+
+    [System.Runtime.Serialization.DataMemberAttribute()]
+    public string FileName {
+      get {
+        return this.FileNameField;
+      }
+      set {
+        if ((object.ReferenceEquals(this.FileNameField, value) != true)) {
+          this.FileNameField = value;
+          this.RaisePropertyChanged("FileName");
+        }
+      }
+    }
+
+    [System.Runtime.Serialization.DataMemberAttribute()]
+    public System.Guid PluginId {
+      get {
+        return this.PluginIdField;
+      }
+      set {
+        if ((this.PluginIdField.Equals(value) != true)) {
+          this.PluginIdField = value;
+          this.RaisePropertyChanged("PluginId");
+        }
+      }
+    }
   }
 
@@ -596,66 +891,11 @@
   [System.Diagnostics.DebuggerStepThroughAttribute()]
   [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
-  [System.Runtime.Serialization.DataContractAttribute(Name = "PluginData", Namespace = "http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Hive.DataTransfer")]
-  [System.SerializableAttribute()]
-  public partial class PluginData : HeuristicLab.Clients.Hive.HiveItem {
-
-    [System.Runtime.Serialization.OptionalFieldAttribute()]
-    private byte[] DataField;
-
-    [System.Runtime.Serialization.OptionalFieldAttribute()]
-    private string FileNameField;
-
-    [System.Runtime.Serialization.OptionalFieldAttribute()]
-    private System.Guid PluginIdField;
-
-    [System.Runtime.Serialization.DataMemberAttribute()]
-    public byte[] Data {
-      get {
-        return this.DataField;
-      }
-      set {
-        if ((object.ReferenceEquals(this.DataField, value) != true)) {
-          this.DataField = value;
-          this.RaisePropertyChanged("Data");
-        }
-      }
-    }
-
-    [System.Runtime.Serialization.DataMemberAttribute()]
-    public string FileName {
-      get {
-        return this.FileNameField;
-      }
-      set {
-        if ((object.ReferenceEquals(this.FileNameField, value) != true)) {
-          this.FileNameField = value;
-          this.RaisePropertyChanged("FileName");
-        }
-      }
-    }
-
-    [System.Runtime.Serialization.DataMemberAttribute()]
-    public System.Guid PluginId {
-      get {
-        return this.PluginIdField;
-      }
-      set {
-        if ((this.PluginIdField.Equals(value) != true)) {
-          this.PluginIdField = value;
-          this.RaisePropertyChanged("PluginId");
-        }
-      }
-    }
-  }
-
-  [System.Diagnostics.DebuggerStepThroughAttribute()]
-  [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
   [System.Runtime.Serialization.DataContractAttribute(Name = "NamedHiveItem", Namespace = "http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Hive.DataTransfer")]
   [System.SerializableAttribute()]
-  [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Hive.Job))]
-  [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Hive.Plugin))]
   [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Hive.Resource))]
   [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Hive.Slave))]
   [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Hive.SlaveGroup))]
+  [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Hive.Job))]
+  [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Hive.Plugin))]
   public partial class NamedHiveItem : HeuristicLab.Clients.Hive.HiveItem {
 
@@ -688,210 +928,4 @@
           this.NameField = value;
           this.RaisePropertyChanged("Name");
-        }
-      }
-    }
-  }
-
-  [System.Diagnostics.DebuggerStepThroughAttribute()]
-  [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
-  [System.Runtime.Serialization.DataContractAttribute(Name = "Job", Namespace = "http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Hive.DataTransfer")]
-  [System.SerializableAttribute()]
-  public partial class Job : HeuristicLab.Clients.Hive.NamedHiveItem {
-
-    [System.Runtime.Serialization.OptionalFieldAttribute()]
-    private int CalculatingCountField;
-
-    [System.Runtime.Serialization.OptionalFieldAttribute()]
-    private System.DateTime DateCreatedField;
-
-    [System.Runtime.Serialization.OptionalFieldAttribute()]
-    private int FinishedCountField;
-
-    [System.Runtime.Serialization.OptionalFieldAttribute()]
-    private int JobCountField;
-
-    [System.Runtime.Serialization.OptionalFieldAttribute()]
-    private System.Guid OwnerUserIdField;
-
-    [System.Runtime.Serialization.OptionalFieldAttribute()]
-    private string OwnerUsernameField;
-
-    [System.Runtime.Serialization.OptionalFieldAttribute()]
-    private HeuristicLab.Clients.Hive.Permission PermissionField;
-
-    [System.Runtime.Serialization.OptionalFieldAttribute()]
-    private string ResourceNamesField;
-
-    [System.Runtime.Serialization.DataMemberAttribute()]
-    public int CalculatingCount {
-      get {
-        return this.CalculatingCountField;
-      }
-      set {
-        if ((this.CalculatingCountField.Equals(value) != true)) {
-          this.CalculatingCountField = value;
-          this.RaisePropertyChanged("CalculatingCount");
-        }
-      }
-    }
-
-    [System.Runtime.Serialization.DataMemberAttribute()]
-    public System.DateTime DateCreated {
-      get {
-        return this.DateCreatedField;
-      }
-      set {
-        if ((this.DateCreatedField.Equals(value) != true)) {
-          this.DateCreatedField = value;
-          this.RaisePropertyChanged("DateCreated");
-        }
-      }
-    }
-
-    [System.Runtime.Serialization.DataMemberAttribute()]
-    public int FinishedCount {
-      get {
-        return this.FinishedCountField;
-      }
-      set {
-        if ((this.FinishedCountField.Equals(value) != true)) {
-          this.FinishedCountField = value;
-          this.RaisePropertyChanged("FinishedCount");
-        }
-      }
-    }
-
-    [System.Runtime.Serialization.DataMemberAttribute()]
-    public int JobCount {
-      get {
-        return this.JobCountField;
-      }
-      set {
-        if ((this.JobCountField.Equals(value) != true)) {
-          this.JobCountField = value;
-          this.RaisePropertyChanged("JobCount");
-        }
-      }
-    }
-
-    [System.Runtime.Serialization.DataMemberAttribute()]
-    public System.Guid OwnerUserId {
-      get {
-        return this.OwnerUserIdField;
-      }
-      set {
-        if ((this.OwnerUserIdField.Equals(value) != true)) {
-          this.OwnerUserIdField = value;
-          this.RaisePropertyChanged("OwnerUserId");
-        }
-      }
-    }
-
-    [System.Runtime.Serialization.DataMemberAttribute()]
-    public string OwnerUsername {
-      get {
-        return this.OwnerUsernameField;
-      }
-      set {
-        if ((object.ReferenceEquals(this.OwnerUsernameField, value) != true)) {
-          this.OwnerUsernameField = value;
-          this.RaisePropertyChanged("OwnerUsername");
-        }
-      }
-    }
-
-    [System.Runtime.Serialization.DataMemberAttribute()]
-    public HeuristicLab.Clients.Hive.Permission Permission {
-      get {
-        return this.PermissionField;
-      }
-      set {
-        if ((this.PermissionField.Equals(value) != true)) {
-          this.PermissionField = value;
-          this.RaisePropertyChanged("Permission");
-        }
-      }
-    }
-
-    [System.Runtime.Serialization.DataMemberAttribute()]
-    public string ResourceNames {
-      get {
-        return this.ResourceNamesField;
-      }
-      set {
-        if ((object.ReferenceEquals(this.ResourceNamesField, value) != true)) {
-          this.ResourceNamesField = value;
-          this.RaisePropertyChanged("ResourceNames");
-        }
-      }
-    }
-  }
-
-  [System.Diagnostics.DebuggerStepThroughAttribute()]
-  [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
-  [System.Runtime.Serialization.DataContractAttribute(Name = "Plugin", Namespace = "http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Hive.DataTransfer")]
-  [System.SerializableAttribute()]
-  public partial class Plugin : HeuristicLab.Clients.Hive.NamedHiveItem {
-
-    [System.Runtime.Serialization.OptionalFieldAttribute()]
-    private System.DateTime DateCreatedField;
-
-    [System.Runtime.Serialization.OptionalFieldAttribute()]
-    private byte[] HashField;
-
-    [System.Runtime.Serialization.OptionalFieldAttribute()]
-    private System.Guid UserIdField;
-
-    [System.Runtime.Serialization.OptionalFieldAttribute()]
-    private System.Version VersionField;
-
-    [System.Runtime.Serialization.DataMemberAttribute()]
-    public System.DateTime DateCreated {
-      get {
-        return this.DateCreatedField;
-      }
-      set {
-        if ((this.DateCreatedField.Equals(value) != true)) {
-          this.DateCreatedField = value;
-          this.RaisePropertyChanged("DateCreated");
-        }
-      }
-    }
-
-    [System.Runtime.Serialization.DataMemberAttribute()]
-    public byte[] Hash {
-      get {
-        return this.HashField;
-      }
-      set {
-        if ((object.ReferenceEquals(this.HashField, value) != true)) {
-          this.HashField = value;
-          this.RaisePropertyChanged("Hash");
-        }
-      }
-    }
-
-    [System.Runtime.Serialization.DataMemberAttribute()]
-    public System.Guid UserId {
-      get {
-        return this.UserIdField;
-      }
-      set {
-        if ((this.UserIdField.Equals(value) != true)) {
-          this.UserIdField = value;
-          this.RaisePropertyChanged("UserId");
-        }
-      }
-    }
-
-    [System.Runtime.Serialization.DataMemberAttribute()]
-    public System.Version Version {
-      get {
-        return this.VersionField;
-      }
-      set {
-        if ((object.ReferenceEquals(this.VersionField, value) != true)) {
-          this.VersionField = value;
-          this.RaisePropertyChanged("Version");
         }
       }
@@ -908,5 +942,21 @@
 
     [System.Runtime.Serialization.OptionalFieldAttribute()]
+    private int HbIntervalField;
+
+    [System.Runtime.Serialization.OptionalFieldAttribute()]
     private System.Nullable<System.Guid> ParentResourceIdField;
+
+    [System.Runtime.Serialization.DataMemberAttribute()]
+    public int HbInterval {
+      get {
+        return this.HbIntervalField;
+      }
+      set {
+        if ((this.HbIntervalField.Equals(value) != true)) {
+          this.HbIntervalField = value;
+          this.RaisePropertyChanged("HbInterval");
+        }
+      }
+    }
 
     [System.Runtime.Serialization.DataMemberAttribute()]
@@ -1112,4 +1162,210 @@
   [System.SerializableAttribute()]
   public partial class SlaveGroup : HeuristicLab.Clients.Hive.Resource {
+  }
+
+  [System.Diagnostics.DebuggerStepThroughAttribute()]
+  [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
+  [System.Runtime.Serialization.DataContractAttribute(Name = "Job", Namespace = "http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Hive.DataTransfer")]
+  [System.SerializableAttribute()]
+  public partial class Job : HeuristicLab.Clients.Hive.NamedHiveItem {
+
+    [System.Runtime.Serialization.OptionalFieldAttribute()]
+    private int CalculatingCountField;
+
+    [System.Runtime.Serialization.OptionalFieldAttribute()]
+    private System.DateTime DateCreatedField;
+
+    [System.Runtime.Serialization.OptionalFieldAttribute()]
+    private int FinishedCountField;
+
+    [System.Runtime.Serialization.OptionalFieldAttribute()]
+    private int JobCountField;
+
+    [System.Runtime.Serialization.OptionalFieldAttribute()]
+    private System.Guid OwnerUserIdField;
+
+    [System.Runtime.Serialization.OptionalFieldAttribute()]
+    private string OwnerUsernameField;
+
+    [System.Runtime.Serialization.OptionalFieldAttribute()]
+    private HeuristicLab.Clients.Hive.Permission PermissionField;
+
+    [System.Runtime.Serialization.OptionalFieldAttribute()]
+    private string ResourceNamesField;
+
+    [System.Runtime.Serialization.DataMemberAttribute()]
+    public int CalculatingCount {
+      get {
+        return this.CalculatingCountField;
+      }
+      set {
+        if ((this.CalculatingCountField.Equals(value) != true)) {
+          this.CalculatingCountField = value;
+          this.RaisePropertyChanged("CalculatingCount");
+        }
+      }
+    }
+
+    [System.Runtime.Serialization.DataMemberAttribute()]
+    public System.DateTime DateCreated {
+      get {
+        return this.DateCreatedField;
+      }
+      set {
+        if ((this.DateCreatedField.Equals(value) != true)) {
+          this.DateCreatedField = value;
+          this.RaisePropertyChanged("DateCreated");
+        }
+      }
+    }
+
+    [System.Runtime.Serialization.DataMemberAttribute()]
+    public int FinishedCount {
+      get {
+        return this.FinishedCountField;
+      }
+      set {
+        if ((this.FinishedCountField.Equals(value) != true)) {
+          this.FinishedCountField = value;
+          this.RaisePropertyChanged("FinishedCount");
+        }
+      }
+    }
+
+    [System.Runtime.Serialization.DataMemberAttribute()]
+    public int JobCount {
+      get {
+        return this.JobCountField;
+      }
+      set {
+        if ((this.JobCountField.Equals(value) != true)) {
+          this.JobCountField = value;
+          this.RaisePropertyChanged("JobCount");
+        }
+      }
+    }
+
+    [System.Runtime.Serialization.DataMemberAttribute()]
+    public System.Guid OwnerUserId {
+      get {
+        return this.OwnerUserIdField;
+      }
+      set {
+        if ((this.OwnerUserIdField.Equals(value) != true)) {
+          this.OwnerUserIdField = value;
+          this.RaisePropertyChanged("OwnerUserId");
+        }
+      }
+    }
+
+    [System.Runtime.Serialization.DataMemberAttribute()]
+    public string OwnerUsername {
+      get {
+        return this.OwnerUsernameField;
+      }
+      set {
+        if ((object.ReferenceEquals(this.OwnerUsernameField, value) != true)) {
+          this.OwnerUsernameField = value;
+          this.RaisePropertyChanged("OwnerUsername");
+        }
+      }
+    }
+
+    [System.Runtime.Serialization.DataMemberAttribute()]
+    public HeuristicLab.Clients.Hive.Permission Permission {
+      get {
+        return this.PermissionField;
+      }
+      set {
+        if ((this.PermissionField.Equals(value) != true)) {
+          this.PermissionField = value;
+          this.RaisePropertyChanged("Permission");
+        }
+      }
+    }
+
+    [System.Runtime.Serialization.DataMemberAttribute()]
+    public string ResourceNames {
+      get {
+        return this.ResourceNamesField;
+      }
+      set {
+        if ((object.ReferenceEquals(this.ResourceNamesField, value) != true)) {
+          this.ResourceNamesField = value;
+          this.RaisePropertyChanged("ResourceNames");
+        }
+      }
+    }
+  }
+
+  [System.Diagnostics.DebuggerStepThroughAttribute()]
+  [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
+  [System.Runtime.Serialization.DataContractAttribute(Name = "Plugin", Namespace = "http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Hive.DataTransfer")]
+  [System.SerializableAttribute()]
+  public partial class Plugin : HeuristicLab.Clients.Hive.NamedHiveItem {
+
+    [System.Runtime.Serialization.OptionalFieldAttribute()]
+    private System.DateTime DateCreatedField;
+
+    [System.Runtime.Serialization.OptionalFieldAttribute()]
+    private byte[] HashField;
+
+    [System.Runtime.Serialization.OptionalFieldAttribute()]
+    private System.Guid UserIdField;
+
+    [System.Runtime.Serialization.OptionalFieldAttribute()]
+    private System.Version VersionField;
+
+    [System.Runtime.Serialization.DataMemberAttribute()]
+    public System.DateTime DateCreated {
+      get {
+        return this.DateCreatedField;
+      }
+      set {
+        if ((this.DateCreatedField.Equals(value) != true)) {
+          this.DateCreatedField = value;
+          this.RaisePropertyChanged("DateCreated");
+        }
+      }
+    }
+
+    [System.Runtime.Serialization.DataMemberAttribute()]
+    public byte[] Hash {
+      get {
+        return this.HashField;
+      }
+      set {
+        if ((object.ReferenceEquals(this.HashField, value) != true)) {
+          this.HashField = value;
+          this.RaisePropertyChanged("Hash");
+        }
+      }
+    }
+
+    [System.Runtime.Serialization.DataMemberAttribute()]
+    public System.Guid UserId {
+      get {
+        return this.UserIdField;
+      }
+      set {
+        if ((this.UserIdField.Equals(value) != true)) {
+          this.UserIdField = value;
+          this.RaisePropertyChanged("UserId");
+        }
+      }
+    }
+
+    [System.Runtime.Serialization.DataMemberAttribute()]
+    public System.Version Version {
+      get {
+        return this.VersionField;
+      }
+      set {
+        if ((object.ReferenceEquals(this.VersionField, value) != true)) {
+          this.VersionField = value;
+          this.RaisePropertyChanged("Version");
+        }
+      }
+    }
   }
 
@@ -1274,7 +1530,7 @@
   [System.Diagnostics.DebuggerStepThroughAttribute()]
   [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
-  [System.Runtime.Serialization.DataContractAttribute(Name = "Heartbeat", Namespace = "http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Hive.DataTransfer")]
+  [System.Runtime.Serialization.DataContractAttribute(Name = "PluginAlreadyExistsFault", Namespace = "http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Hive")]
   [System.SerializableAttribute()]
-  public partial class Heartbeat : object, System.Runtime.Serialization.IExtensibleDataObject, System.ComponentModel.INotifyPropertyChanged {
+  public partial class PluginAlreadyExistsFault : object, System.Runtime.Serialization.IExtensibleDataObject, System.ComponentModel.INotifyPropertyChanged {
 
     [System.NonSerializedAttribute()]
@@ -1282,20 +1538,5 @@
 
     [System.Runtime.Serialization.OptionalFieldAttribute()]
-    private bool AssignJobField;
-
-    [System.Runtime.Serialization.OptionalFieldAttribute()]
-    private float CpuUtilizationField;
-
-    [System.Runtime.Serialization.OptionalFieldAttribute()]
-    private int FreeCoresField;
-
-    [System.Runtime.Serialization.OptionalFieldAttribute()]
-    private int FreeMemoryField;
-
-    [System.Runtime.Serialization.OptionalFieldAttribute()]
-    private System.Collections.Generic.Dictionary<System.Guid, System.TimeSpan> JobProgressField;
-
-    [System.Runtime.Serialization.OptionalFieldAttribute()]
-    private System.Guid SlaveIdField;
+    private System.Guid IdField;
 
     public System.Runtime.Serialization.ExtensionDataObject ExtensionData {
@@ -1309,77 +1550,12 @@
 
     [System.Runtime.Serialization.DataMemberAttribute()]
-    public bool AssignJob {
-      get {
-        return this.AssignJobField;
-      }
-      set {
-        if ((this.AssignJobField.Equals(value) != true)) {
-          this.AssignJobField = value;
-          this.RaisePropertyChanged("AssignJob");
-        }
-      }
-    }
-
-    [System.Runtime.Serialization.DataMemberAttribute()]
-    public float CpuUtilization {
-      get {
-        return this.CpuUtilizationField;
-      }
-      set {
-        if ((this.CpuUtilizationField.Equals(value) != true)) {
-          this.CpuUtilizationField = value;
-          this.RaisePropertyChanged("CpuUtilization");
-        }
-      }
-    }
-
-    [System.Runtime.Serialization.DataMemberAttribute()]
-    public int FreeCores {
-      get {
-        return this.FreeCoresField;
-      }
-      set {
-        if ((this.FreeCoresField.Equals(value) != true)) {
-          this.FreeCoresField = value;
-          this.RaisePropertyChanged("FreeCores");
-        }
-      }
-    }
-
-    [System.Runtime.Serialization.DataMemberAttribute()]
-    public int FreeMemory {
-      get {
-        return this.FreeMemoryField;
-      }
-      set {
-        if ((this.FreeMemoryField.Equals(value) != true)) {
-          this.FreeMemoryField = value;
-          this.RaisePropertyChanged("FreeMemory");
-        }
-      }
-    }
-
-    [System.Runtime.Serialization.DataMemberAttribute()]
-    public System.Collections.Generic.Dictionary<System.Guid, System.TimeSpan> JobProgress {
-      get {
-        return this.JobProgressField;
-      }
-      set {
-        if ((object.ReferenceEquals(this.JobProgressField, value) != true)) {
-          this.JobProgressField = value;
-          this.RaisePropertyChanged("JobProgress");
-        }
-      }
-    }
-
-    [System.Runtime.Serialization.DataMemberAttribute()]
-    public System.Guid SlaveId {
-      get {
-        return this.SlaveIdField;
-      }
-      set {
-        if ((this.SlaveIdField.Equals(value) != true)) {
-          this.SlaveIdField = value;
-          this.RaisePropertyChanged("SlaveId");
+    public System.Guid Id {
+      get {
+        return this.IdField;
+      }
+      set {
+        if ((this.IdField.Equals(value) != true)) {
+          this.IdField = value;
+          this.RaisePropertyChanged("Id");
         }
       }
@@ -1396,275 +1572,10 @@
   }
 
-  [System.Diagnostics.DebuggerStepThroughAttribute()]
-  [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
-  [System.Runtime.Serialization.DataContractAttribute(Name = "MessageContainer", Namespace = "http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Hive")]
-  [System.SerializableAttribute()]
-  public partial class MessageContainer : object, System.Runtime.Serialization.IExtensibleDataObject, System.ComponentModel.INotifyPropertyChanged {
-
-    [System.NonSerializedAttribute()]
-    private System.Runtime.Serialization.ExtensionDataObject extensionDataField;
-
-    [System.Runtime.Serialization.OptionalFieldAttribute()]
-    private HeuristicLab.Clients.Hive.MessageContainer.MessageType MessageField;
-
-    [System.Runtime.Serialization.OptionalFieldAttribute()]
-    private System.Guid TaskIdField;
-
-    public System.Runtime.Serialization.ExtensionDataObject ExtensionData {
-      get {
-        return this.extensionDataField;
-      }
-      set {
-        this.extensionDataField = value;
-      }
-    }
-
-    [System.Runtime.Serialization.DataMemberAttribute()]
-    public HeuristicLab.Clients.Hive.MessageContainer.MessageType Message {
-      get {
-        return this.MessageField;
-      }
-      set {
-        if ((this.MessageField.Equals(value) != true)) {
-          this.MessageField = value;
-          this.RaisePropertyChanged("Message");
-        }
-      }
-    }
-
-    [System.Runtime.Serialization.DataMemberAttribute()]
-    public System.Guid TaskId {
-      get {
-        return this.TaskIdField;
-      }
-      set {
-        if ((this.TaskIdField.Equals(value) != true)) {
-          this.TaskIdField = value;
-          this.RaisePropertyChanged("TaskId");
-        }
-      }
-    }
-
-    public event System.ComponentModel.PropertyChangedEventHandler PropertyChanged;
-
-    protected void RaisePropertyChanged(string propertyName) {
-      System.ComponentModel.PropertyChangedEventHandler propertyChanged = this.PropertyChanged;
-      if ((propertyChanged != null)) {
-        propertyChanged(this, new System.ComponentModel.PropertyChangedEventArgs(propertyName));
-      }
-    }
-
-    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
-    [System.Runtime.Serialization.DataContractAttribute(Name = "MessageContainer.MessageType", Namespace = "http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Hive")]
-    public enum MessageType : int {
-
-      [System.Runtime.Serialization.EnumMemberAttribute()]
-      CalculateTask = 0,
-
-      [System.Runtime.Serialization.EnumMemberAttribute()]
-      StopTask = 1,
-
-      [System.Runtime.Serialization.EnumMemberAttribute()]
-      StopAll = 2,
-
-      [System.Runtime.Serialization.EnumMemberAttribute()]
-      AbortTask = 3,
-
-      [System.Runtime.Serialization.EnumMemberAttribute()]
-      AbortAll = 4,
-
-      [System.Runtime.Serialization.EnumMemberAttribute()]
-      PauseTask = 5,
-
-      [System.Runtime.Serialization.EnumMemberAttribute()]
-      PauseAll = 6,
-
-      [System.Runtime.Serialization.EnumMemberAttribute()]
-      Restart = 7,
-
-      [System.Runtime.Serialization.EnumMemberAttribute()]
-      Sleep = 8,
-
-      [System.Runtime.Serialization.EnumMemberAttribute()]
-      ShutdownSlave = 9,
-
-      [System.Runtime.Serialization.EnumMemberAttribute()]
-      SayHello = 10,
-    }
-  }
-
-  [System.Diagnostics.DebuggerStepThroughAttribute()]
-  [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
-  [System.Runtime.Serialization.DataContractAttribute(Name = "PluginAlreadyExistsFault", Namespace = "http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Hive")]
-  [System.SerializableAttribute()]
-  public partial class PluginAlreadyExistsFault : object, System.Runtime.Serialization.IExtensibleDataObject, System.ComponentModel.INotifyPropertyChanged {
-
-    [System.NonSerializedAttribute()]
-    private System.Runtime.Serialization.ExtensionDataObject extensionDataField;
-
-    [System.Runtime.Serialization.OptionalFieldAttribute()]
-    private System.Guid IdField;
-
-    public System.Runtime.Serialization.ExtensionDataObject ExtensionData {
-      get {
-        return this.extensionDataField;
-      }
-      set {
-        this.extensionDataField = value;
-      }
-    }
-
-    [System.Runtime.Serialization.DataMemberAttribute()]
-    public System.Guid Id {
-      get {
-        return this.IdField;
-      }
-      set {
-        if ((this.IdField.Equals(value) != true)) {
-          this.IdField = value;
-          this.RaisePropertyChanged("Id");
-        }
-      }
-    }
-
-    public event System.ComponentModel.PropertyChangedEventHandler PropertyChanged;
-
-    protected void RaisePropertyChanged(string propertyName) {
-      System.ComponentModel.PropertyChangedEventHandler propertyChanged = this.PropertyChanged;
-      if ((propertyChanged != null)) {
-        propertyChanged(this, new System.ComponentModel.PropertyChangedEventArgs(propertyName));
-      }
-    }
-  }
-
   [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
   [System.ServiceModel.ServiceContractAttribute(ConfigurationName = "HeuristicLab.Clients.Hive.IHiveService")]
   public interface IHiveService {
 
-    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/UpdateSlaveGroup", ReplyAction = "http://tempuri.org/IHiveService/UpdateSlaveGroupResponse")]
-    void UpdateSlaveGroup(HeuristicLab.Clients.Hive.SlaveGroup slaveGroup);
-
-    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/DeleteSlave", ReplyAction = "http://tempuri.org/IHiveService/DeleteSlaveResponse")]
-    void DeleteSlave(System.Guid slaveId);
-
-    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/DeleteSlaveGroup", ReplyAction = "http://tempuri.org/IHiveService/DeleteSlaveGroupResponse")]
-    void DeleteSlaveGroup(System.Guid slaveGroupId);
-
-    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/AddResourceToGroup", ReplyAction = "http://tempuri.org/IHiveService/AddResourceToGroupResponse")]
-    void AddResourceToGroup(System.Guid slaveGroupId, System.Guid resourceId);
-
-    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/RemoveResourceFromGroup", ReplyAction = "http://tempuri.org/IHiveService/RemoveResourceFromGroupResponse")]
-    void RemoveResourceFromGroup(System.Guid slaveGroupId, System.Guid resourceId);
-
-    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/GetResourceId", ReplyAction = "http://tempuri.org/IHiveService/GetResourceIdResponse")]
-    System.Guid GetResourceId(string resourceName);
-
-    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/GetTasksByResourceId", ReplyAction = "http://tempuri.org/IHiveService/GetTasksByResourceIdResponse")]
-    System.Collections.Generic.List<HeuristicLab.Clients.Hive.Task> GetTasksByResourceId(System.Guid resourceId);
-
-    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/TriggerEventManager", ReplyAction = "http://tempuri.org/IHiveService/TriggerEventManagerResponse")]
-    void TriggerEventManager(bool force);
-
-    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/AddDowntime", ReplyAction = "http://tempuri.org/IHiveService/AddDowntimeResponse")]
-    System.Guid AddDowntime(HeuristicLab.Clients.Hive.Downtime downtime);
-
-    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/DeleteDowntime", ReplyAction = "http://tempuri.org/IHiveService/DeleteDowntimeResponse")]
-    void DeleteDowntime(System.Guid downtimeId);
-
-    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/UpdateDowntime", ReplyAction = "http://tempuri.org/IHiveService/UpdateDowntimeResponse")]
-    void UpdateDowntime(HeuristicLab.Clients.Hive.Downtime downtime);
-
-    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/GetDowntimesForResource", ReplyAction = "http://tempuri.org/IHiveService/GetDowntimesForResourceResponse")]
-    System.Collections.Generic.List<HeuristicLab.Clients.Hive.Downtime> GetDowntimesForResource(System.Guid resourceId);
-
-    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/GetUsernameByUserId", ReplyAction = "http://tempuri.org/IHiveService/GetUsernameByUserIdResponse")]
-    string GetUsernameByUserId(System.Guid userId);
-
     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/GetUserIdByUsername", ReplyAction = "http://tempuri.org/IHiveService/GetUserIdByUsernameResponse")]
     System.Guid GetUserIdByUsername(string username);
-
-    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/AddTask", ReplyAction = "http://tempuri.org/IHiveService/AddTaskResponse")]
-    System.Guid AddTask(HeuristicLab.Clients.Hive.Task task, HeuristicLab.Clients.Hive.TaskData taskData, System.Collections.Generic.List<System.Guid> resourceIds);
-
-    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/AddChildTask", ReplyAction = "http://tempuri.org/IHiveService/AddChildTaskResponse")]
-    System.Guid AddChildTask(System.Guid parentTaskId, HeuristicLab.Clients.Hive.Task task, HeuristicLab.Clients.Hive.TaskData taskData);
-
-    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/GetTask", ReplyAction = "http://tempuri.org/IHiveService/GetTaskResponse")]
-    HeuristicLab.Clients.Hive.Task GetTask(System.Guid taskId);
-
-    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/GetTasks", ReplyAction = "http://tempuri.org/IHiveService/GetTasksResponse")]
-    System.Collections.Generic.List<HeuristicLab.Clients.Hive.Task> GetTasks();
-
-    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/GetLightweightTasks", ReplyAction = "http://tempuri.org/IHiveService/GetLightweightTasksResponse")]
-    System.Collections.Generic.List<HeuristicLab.Clients.Hive.LightweightTask> GetLightweightTasks(System.Collections.Generic.List<System.Guid> taskIds);
-
-    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/GetLightweightChildTasks", ReplyAction = "http://tempuri.org/IHiveService/GetLightweightChildTasksResponse")]
-    System.Collections.Generic.List<HeuristicLab.Clients.Hive.LightweightTask> GetLightweightChildTasks(System.Nullable<System.Guid> parentTaskId, bool recursive, bool includeParent);
-
-    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/GetLightweightJobTasks", ReplyAction = "http://tempuri.org/IHiveService/GetLightweightJobTasksResponse")]
-    System.Collections.Generic.List<HeuristicLab.Clients.Hive.LightweightTask> GetLightweightJobTasks(System.Guid jobId);
-
-    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/GetTaskData", ReplyAction = "http://tempuri.org/IHiveService/GetTaskDataResponse")]
-    HeuristicLab.Clients.Hive.TaskData GetTaskData(System.Guid taskId);
-
-    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/UpdateTask", ReplyAction = "http://tempuri.org/IHiveService/UpdateTaskResponse")]
-    void UpdateTask(HeuristicLab.Clients.Hive.Task taskDto);
-
-    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/UpdateTaskData", ReplyAction = "http://tempuri.org/IHiveService/UpdateTaskDataResponse")]
-    void UpdateTaskData(HeuristicLab.Clients.Hive.Task taskDto, HeuristicLab.Clients.Hive.TaskData taskDataDto);
-
-    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/DeleteTask", ReplyAction = "http://tempuri.org/IHiveService/DeleteTaskResponse")]
-    void DeleteTask(System.Guid taskId);
-
-    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/DeleteChildTasks", ReplyAction = "http://tempuri.org/IHiveService/DeleteChildTasksResponse")]
-    void DeleteChildTasks(System.Guid parentTaskId);
-
-    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/UpdateTaskState", ReplyAction = "http://tempuri.org/IHiveService/UpdateTaskStateResponse")]
-    HeuristicLab.Clients.Hive.Task UpdateTaskState(System.Guid taskId, HeuristicLab.Clients.Hive.TaskState taskState, System.Nullable<System.Guid> slaveId, System.Nullable<System.Guid> userId, string exception);
-
-    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/StopTask", ReplyAction = "http://tempuri.org/IHiveService/StopTaskResponse")]
-    void StopTask(System.Guid taskId);
-
-    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/PauseTask", ReplyAction = "http://tempuri.org/IHiveService/PauseTaskResponse")]
-    void PauseTask(System.Guid taskId);
-
-    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/RestartTask", ReplyAction = "http://tempuri.org/IHiveService/RestartTaskResponse")]
-    void RestartTask(System.Guid taskId);
-
-    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/GetJob", ReplyAction = "http://tempuri.org/IHiveService/GetJobResponse")]
-    HeuristicLab.Clients.Hive.Job GetJob(System.Guid id);
-
-    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/GetJobs", ReplyAction = "http://tempuri.org/IHiveService/GetJobsResponse")]
-    System.Collections.Generic.List<HeuristicLab.Clients.Hive.Job> GetJobs();
-
-    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/GetAllJobs", ReplyAction = "http://tempuri.org/IHiveService/GetAllJobsResponse")]
-    System.Collections.Generic.List<HeuristicLab.Clients.Hive.Job> GetAllJobs();
-
-    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/AddJob", ReplyAction = "http://tempuri.org/IHiveService/AddJobResponse")]
-    System.Guid AddJob(HeuristicLab.Clients.Hive.Job jobDto);
-
-    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/UpdateJob", ReplyAction = "http://tempuri.org/IHiveService/UpdateJobResponse")]
-    void UpdateJob(HeuristicLab.Clients.Hive.Job jobDto);
-
-    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/DeleteJob", ReplyAction = "http://tempuri.org/IHiveService/DeleteJobResponse")]
-    void DeleteJob(System.Guid JobId);
-
-    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/GrantPermission", ReplyAction = "http://tempuri.org/IHiveService/GrantPermissionResponse")]
-    void GrantPermission(System.Guid jobId, System.Guid grantedUserId, HeuristicLab.Clients.Hive.Permission permission);
-
-    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/RevokePermission", ReplyAction = "http://tempuri.org/IHiveService/RevokePermissionResponse")]
-    void RevokePermission(System.Guid hiveExperimentId, System.Guid grantedUserId);
-
-    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/GetJobPermissions", ReplyAction = "http://tempuri.org/IHiveService/GetJobPermissionsResponse")]
-    System.Collections.Generic.List<HeuristicLab.Clients.Hive.JobPermission> GetJobPermissions(System.Guid jobId);
-
-    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/IsAllowedPrivileged", ReplyAction = "http://tempuri.org/IHiveService/IsAllowedPrivilegedResponse")]
-    bool IsAllowedPrivileged();
-
-    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/Hello", ReplyAction = "http://tempuri.org/IHiveService/HelloResponse")]
-    void Hello(HeuristicLab.Clients.Hive.Slave slave);
-
-    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/GoodBye", ReplyAction = "http://tempuri.org/IHiveService/GoodByeResponse")]
-    void GoodBye(System.Guid slaveId);
 
     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/Heartbeat", ReplyAction = "http://tempuri.org/IHiveService/HeartbeatResponse")]
@@ -1710,4 +1621,130 @@
     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/UpdateSlave", ReplyAction = "http://tempuri.org/IHiveService/UpdateSlaveResponse")]
     void UpdateSlave(HeuristicLab.Clients.Hive.Slave slave);
+
+    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/UpdateSlaveGroup", ReplyAction = "http://tempuri.org/IHiveService/UpdateSlaveGroupResponse")]
+    void UpdateSlaveGroup(HeuristicLab.Clients.Hive.SlaveGroup slaveGroup);
+
+    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/DeleteSlave", ReplyAction = "http://tempuri.org/IHiveService/DeleteSlaveResponse")]
+    void DeleteSlave(System.Guid slaveId);
+
+    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/DeleteSlaveGroup", ReplyAction = "http://tempuri.org/IHiveService/DeleteSlaveGroupResponse")]
+    void DeleteSlaveGroup(System.Guid slaveGroupId);
+
+    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/AddResourceToGroup", ReplyAction = "http://tempuri.org/IHiveService/AddResourceToGroupResponse")]
+    void AddResourceToGroup(System.Guid slaveGroupId, System.Guid resourceId);
+
+    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/RemoveResourceFromGroup", ReplyAction = "http://tempuri.org/IHiveService/RemoveResourceFromGroupResponse")]
+    void RemoveResourceFromGroup(System.Guid slaveGroupId, System.Guid resourceId);
+
+    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/GetResourceId", ReplyAction = "http://tempuri.org/IHiveService/GetResourceIdResponse")]
+    System.Guid GetResourceId(string resourceName);
+
+    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/GetTasksByResourceId", ReplyAction = "http://tempuri.org/IHiveService/GetTasksByResourceIdResponse")]
+    System.Collections.Generic.List<HeuristicLab.Clients.Hive.Task> GetTasksByResourceId(System.Guid resourceId);
+
+    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/TriggerEventManager", ReplyAction = "http://tempuri.org/IHiveService/TriggerEventManagerResponse")]
+    void TriggerEventManager(bool force);
+
+    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/GetNewHeartbeatInterval", ReplyAction = "http://tempuri.org/IHiveService/GetNewHeartbeatIntervalResponse")]
+    int GetNewHeartbeatInterval(System.Guid slaveId);
+
+    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/AddDowntime", ReplyAction = "http://tempuri.org/IHiveService/AddDowntimeResponse")]
+    System.Guid AddDowntime(HeuristicLab.Clients.Hive.Downtime downtime);
+
+    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/DeleteDowntime", ReplyAction = "http://tempuri.org/IHiveService/DeleteDowntimeResponse")]
+    void DeleteDowntime(System.Guid downtimeId);
+
+    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/UpdateDowntime", ReplyAction = "http://tempuri.org/IHiveService/UpdateDowntimeResponse")]
+    void UpdateDowntime(HeuristicLab.Clients.Hive.Downtime downtime);
+
+    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/GetDowntimesForResource", ReplyAction = "http://tempuri.org/IHiveService/GetDowntimesForResourceResponse")]
+    System.Collections.Generic.List<HeuristicLab.Clients.Hive.Downtime> GetDowntimesForResource(System.Guid resourceId);
+
+    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/GetUsernameByUserId", ReplyAction = "http://tempuri.org/IHiveService/GetUsernameByUserIdResponse")]
+    string GetUsernameByUserId(System.Guid userId);
+
+    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/AddTask", ReplyAction = "http://tempuri.org/IHiveService/AddTaskResponse")]
+    System.Guid AddTask(HeuristicLab.Clients.Hive.Task task, HeuristicLab.Clients.Hive.TaskData taskData, System.Collections.Generic.List<System.Guid> resourceIds);
+
+    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/AddChildTask", ReplyAction = "http://tempuri.org/IHiveService/AddChildTaskResponse")]
+    System.Guid AddChildTask(System.Guid parentTaskId, HeuristicLab.Clients.Hive.Task task, HeuristicLab.Clients.Hive.TaskData taskData);
+
+    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/GetTask", ReplyAction = "http://tempuri.org/IHiveService/GetTaskResponse")]
+    HeuristicLab.Clients.Hive.Task GetTask(System.Guid taskId);
+
+    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/GetTasks", ReplyAction = "http://tempuri.org/IHiveService/GetTasksResponse")]
+    System.Collections.Generic.List<HeuristicLab.Clients.Hive.Task> GetTasks();
+
+    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/GetLightweightTasks", ReplyAction = "http://tempuri.org/IHiveService/GetLightweightTasksResponse")]
+    System.Collections.Generic.List<HeuristicLab.Clients.Hive.LightweightTask> GetLightweightTasks(System.Collections.Generic.List<System.Guid> taskIds);
+
+    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/GetLightweightChildTasks", ReplyAction = "http://tempuri.org/IHiveService/GetLightweightChildTasksResponse")]
+    System.Collections.Generic.List<HeuristicLab.Clients.Hive.LightweightTask> GetLightweightChildTasks(System.Nullable<System.Guid> parentTaskId, bool recursive, bool includeParent);
+
+    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/GetLightweightJobTasks", ReplyAction = "http://tempuri.org/IHiveService/GetLightweightJobTasksResponse")]
+    System.Collections.Generic.List<HeuristicLab.Clients.Hive.LightweightTask> GetLightweightJobTasks(System.Guid jobId);
+
+    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/GetTaskData", ReplyAction = "http://tempuri.org/IHiveService/GetTaskDataResponse")]
+    HeuristicLab.Clients.Hive.TaskData GetTaskData(System.Guid taskId);
+
+    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/UpdateTask", ReplyAction = "http://tempuri.org/IHiveService/UpdateTaskResponse")]
+    void UpdateTask(HeuristicLab.Clients.Hive.Task taskDto);
+
+    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/UpdateTaskData", ReplyAction = "http://tempuri.org/IHiveService/UpdateTaskDataResponse")]
+    void UpdateTaskData(HeuristicLab.Clients.Hive.Task taskDto, HeuristicLab.Clients.Hive.TaskData taskDataDto);
+
+    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/DeleteTask", ReplyAction = "http://tempuri.org/IHiveService/DeleteTaskResponse")]
+    void DeleteTask(System.Guid taskId);
+
+    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/DeleteChildTasks", ReplyAction = "http://tempuri.org/IHiveService/DeleteChildTasksResponse")]
+    void DeleteChildTasks(System.Guid parentTaskId);
+
+    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/UpdateTaskState", ReplyAction = "http://tempuri.org/IHiveService/UpdateTaskStateResponse")]
+    HeuristicLab.Clients.Hive.Task UpdateTaskState(System.Guid taskId, HeuristicLab.Clients.Hive.TaskState taskState, System.Nullable<System.Guid> slaveId, System.Nullable<System.Guid> userId, string exception);
+
+    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/StopTask", ReplyAction = "http://tempuri.org/IHiveService/StopTaskResponse")]
+    void StopTask(System.Guid taskId);
+
+    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/PauseTask", ReplyAction = "http://tempuri.org/IHiveService/PauseTaskResponse")]
+    void PauseTask(System.Guid taskId);
+
+    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/RestartTask", ReplyAction = "http://tempuri.org/IHiveService/RestartTaskResponse")]
+    void RestartTask(System.Guid taskId);
+
+    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/GetJob", ReplyAction = "http://tempuri.org/IHiveService/GetJobResponse")]
+    HeuristicLab.Clients.Hive.Job GetJob(System.Guid id);
+
+    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/GetJobs", ReplyAction = "http://tempuri.org/IHiveService/GetJobsResponse")]
+    System.Collections.Generic.List<HeuristicLab.Clients.Hive.Job> GetJobs();
+
+    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/GetAllJobs", ReplyAction = "http://tempuri.org/IHiveService/GetAllJobsResponse")]
+    System.Collections.Generic.List<HeuristicLab.Clients.Hive.Job> GetAllJobs();
+
+    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/AddJob", ReplyAction = "http://tempuri.org/IHiveService/AddJobResponse")]
+    System.Guid AddJob(HeuristicLab.Clients.Hive.Job jobDto);
+
+    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/UpdateJob", ReplyAction = "http://tempuri.org/IHiveService/UpdateJobResponse")]
+    void UpdateJob(HeuristicLab.Clients.Hive.Job jobDto);
+
+    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/DeleteJob", ReplyAction = "http://tempuri.org/IHiveService/DeleteJobResponse")]
+    void DeleteJob(System.Guid JobId);
+
+    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/GrantPermission", ReplyAction = "http://tempuri.org/IHiveService/GrantPermissionResponse")]
+    void GrantPermission(System.Guid jobId, System.Guid grantedUserId, HeuristicLab.Clients.Hive.Permission permission);
+
+    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/RevokePermission", ReplyAction = "http://tempuri.org/IHiveService/RevokePermissionResponse")]
+    void RevokePermission(System.Guid hiveExperimentId, System.Guid grantedUserId);
+
+    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/GetJobPermissions", ReplyAction = "http://tempuri.org/IHiveService/GetJobPermissionsResponse")]
+    System.Collections.Generic.List<HeuristicLab.Clients.Hive.JobPermission> GetJobPermissions(System.Guid jobId);
+
+    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/IsAllowedPrivileged", ReplyAction = "http://tempuri.org/IHiveService/IsAllowedPrivilegedResponse")]
+    bool IsAllowedPrivileged();
+
+    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/Hello", ReplyAction = "http://tempuri.org/IHiveService/HelloResponse")]
+    void Hello(HeuristicLab.Clients.Hive.Slave slave);
+
+    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/GoodBye", ReplyAction = "http://tempuri.org/IHiveService/GoodByeResponse")]
+    void GoodBye(System.Guid slaveId);
   }
 
@@ -1739,4 +1776,64 @@
     }
 
+    public System.Guid GetUserIdByUsername(string username) {
+      return base.Channel.GetUserIdByUsername(username);
+    }
+
+    public System.Collections.Generic.List<HeuristicLab.Clients.Hive.MessageContainer> Heartbeat(HeuristicLab.Clients.Hive.Heartbeat heartbeat1) {
+      return base.Channel.Heartbeat(heartbeat1);
+    }
+
+    public HeuristicLab.Clients.Hive.Plugin GetPlugin(System.Guid pluginId) {
+      return base.Channel.GetPlugin(pluginId);
+    }
+
+    public HeuristicLab.Clients.Hive.Plugin GetPluginByHash(byte[] hash) {
+      return base.Channel.GetPluginByHash(hash);
+    }
+
+    public System.Guid AddPlugin(HeuristicLab.Clients.Hive.Plugin plugin, System.Collections.Generic.List<HeuristicLab.Clients.Hive.PluginData> pluginData) {
+      return base.Channel.AddPlugin(plugin, pluginData);
+    }
+
+    public System.Collections.Generic.List<HeuristicLab.Clients.Hive.Plugin> GetPlugins() {
+      return base.Channel.GetPlugins();
+    }
+
+    public System.Collections.Generic.List<HeuristicLab.Clients.Hive.PluginData> GetPluginDatas(System.Collections.Generic.List<System.Guid> pluginIds) {
+      return base.Channel.GetPluginDatas(pluginIds);
+    }
+
+    public void DeletePlugin(System.Guid pluginId) {
+      base.Channel.DeletePlugin(pluginId);
+    }
+
+    public System.Guid AddSlave(HeuristicLab.Clients.Hive.Slave slave) {
+      return base.Channel.AddSlave(slave);
+    }
+
+    public System.Guid AddSlaveGroup(HeuristicLab.Clients.Hive.SlaveGroup slaveGroup) {
+      return base.Channel.AddSlaveGroup(slaveGroup);
+    }
+
+    public HeuristicLab.Clients.Hive.Slave GetSlave(System.Guid slaveId) {
+      return base.Channel.GetSlave(slaveId);
+    }
+
+    public HeuristicLab.Clients.Hive.SlaveGroup GetSlaveGroup(System.Guid slaveGroupId) {
+      return base.Channel.GetSlaveGroup(slaveGroupId);
+    }
+
+    public System.Collections.Generic.List<HeuristicLab.Clients.Hive.Slave> GetSlaves() {
+      return base.Channel.GetSlaves();
+    }
+
+    public System.Collections.Generic.List<HeuristicLab.Clients.Hive.SlaveGroup> GetSlaveGroups() {
+      return base.Channel.GetSlaveGroups();
+    }
+
+    public void UpdateSlave(HeuristicLab.Clients.Hive.Slave slave) {
+      base.Channel.UpdateSlave(slave);
+    }
+
     public void UpdateSlaveGroup(HeuristicLab.Clients.Hive.SlaveGroup slaveGroup) {
       base.Channel.UpdateSlaveGroup(slaveGroup);
@@ -1771,4 +1868,8 @@
     }
 
+    public int GetNewHeartbeatInterval(System.Guid slaveId) {
+      return base.Channel.GetNewHeartbeatInterval(slaveId);
+    }
+
     public System.Guid AddDowntime(HeuristicLab.Clients.Hive.Downtime downtime) {
       return base.Channel.AddDowntime(downtime);
@@ -1791,8 +1892,4 @@
     }
 
-    public System.Guid GetUserIdByUsername(string username) {
-      return base.Channel.GetUserIdByUsername(username);
-    }
-
     public System.Guid AddTask(HeuristicLab.Clients.Hive.Task task, HeuristicLab.Clients.Hive.TaskData taskData, System.Collections.Generic.List<System.Guid> resourceIds) {
       return base.Channel.AddTask(task, taskData, resourceIds);
@@ -1906,60 +2003,4 @@
       base.Channel.GoodBye(slaveId);
     }
-
-    public System.Collections.Generic.List<HeuristicLab.Clients.Hive.MessageContainer> Heartbeat(HeuristicLab.Clients.Hive.Heartbeat heartbeat1) {
-      return base.Channel.Heartbeat(heartbeat1);
-    }
-
-    public HeuristicLab.Clients.Hive.Plugin GetPlugin(System.Guid pluginId) {
-      return base.Channel.GetPlugin(pluginId);
-    }
-
-    public HeuristicLab.Clients.Hive.Plugin GetPluginByHash(byte[] hash) {
-      return base.Channel.GetPluginByHash(hash);
-    }
-
-    public System.Guid AddPlugin(HeuristicLab.Clients.Hive.Plugin plugin, System.Collections.Generic.List<HeuristicLab.Clients.Hive.PluginData> pluginData) {
-      return base.Channel.AddPlugin(plugin, pluginData);
-    }
-
-    public System.Collections.Generic.List<HeuristicLab.Clients.Hive.Plugin> GetPlugins() {
-      return base.Channel.GetPlugins();
-    }
-
-    public System.Collections.Generic.List<HeuristicLab.Clients.Hive.PluginData> GetPluginDatas(System.Collections.Generic.List<System.Guid> pluginIds) {
-      return base.Channel.GetPluginDatas(pluginIds);
-    }
-
-    public void DeletePlugin(System.Guid pluginId) {
-      base.Channel.DeletePlugin(pluginId);
-    }
-
-    public System.Guid AddSlave(HeuristicLab.Clients.Hive.Slave slave) {
-      return base.Channel.AddSlave(slave);
-    }
-
-    public System.Guid AddSlaveGroup(HeuristicLab.Clients.Hive.SlaveGroup slaveGroup) {
-      return base.Channel.AddSlaveGroup(slaveGroup);
-    }
-
-    public HeuristicLab.Clients.Hive.Slave GetSlave(System.Guid slaveId) {
-      return base.Channel.GetSlave(slaveId);
-    }
-
-    public HeuristicLab.Clients.Hive.SlaveGroup GetSlaveGroup(System.Guid slaveGroupId) {
-      return base.Channel.GetSlaveGroup(slaveGroupId);
-    }
-
-    public System.Collections.Generic.List<HeuristicLab.Clients.Hive.Slave> GetSlaves() {
-      return base.Channel.GetSlaves();
-    }
-
-    public System.Collections.Generic.List<HeuristicLab.Clients.Hive.SlaveGroup> GetSlaveGroups() {
-      return base.Channel.GetSlaveGroups();
-    }
-
-    public void UpdateSlave(HeuristicLab.Clients.Hive.Slave slave) {
-      base.Channel.UpdateSlave(slave);
-    }
   }
 }
