Index: branches/HiveResourcePermissionManagement (trunk integration)/HeuristicLab.Clients.Hive/3.3/ServiceClients/HiveServiceClient.cs
===================================================================
--- branches/HiveResourcePermissionManagement (trunk integration)/HeuristicLab.Clients.Hive/3.3/ServiceClients/HiveServiceClient.cs	(revision 7924)
+++ branches/HiveResourcePermissionManagement (trunk integration)/HeuristicLab.Clients.Hive/3.3/ServiceClients/HiveServiceClient.cs	(revision 7951)
@@ -2,5 +2,5 @@
 // <auto-generated>
 //     This code was generated by a tool.
-//     Runtime Version:4.0.30319.269
+//     Runtime Version:4.0.30319.17379
 //
 //     Changes to this file may cause incorrect behavior and will be lost if
@@ -422,4 +422,233 @@
   [System.Diagnostics.DebuggerStepThroughAttribute()]
   [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
+  [System.Runtime.Serialization.DataContractAttribute(Name = "Downtime", Namespace = "http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Hive.DataTransfer")]
+  [System.SerializableAttribute()]
+  public partial class Downtime : HeuristicLab.Clients.Hive.HiveItem {
+
+    [System.Runtime.Serialization.OptionalFieldAttribute()]
+    private bool AllDayEventField;
+
+    [System.Runtime.Serialization.OptionalFieldAttribute()]
+    private System.DateTime EndDateField;
+
+    [System.Runtime.Serialization.OptionalFieldAttribute()]
+    private bool RecurringField;
+
+    [System.Runtime.Serialization.OptionalFieldAttribute()]
+    private System.Guid RecurringIdField;
+
+    [System.Runtime.Serialization.OptionalFieldAttribute()]
+    private System.Guid ResourceIdField;
+
+    [System.Runtime.Serialization.OptionalFieldAttribute()]
+    private System.DateTime StartDateField;
+
+    [System.Runtime.Serialization.DataMemberAttribute()]
+    public bool AllDayEvent {
+      get {
+        return this.AllDayEventField;
+      }
+      set {
+        if ((this.AllDayEventField.Equals(value) != true)) {
+          this.AllDayEventField = value;
+          this.RaisePropertyChanged("AllDayEvent");
+        }
+      }
+    }
+
+    [System.Runtime.Serialization.DataMemberAttribute()]
+    public System.DateTime EndDate {
+      get {
+        return this.EndDateField;
+      }
+      set {
+        if ((this.EndDateField.Equals(value) != true)) {
+          this.EndDateField = value;
+          this.RaisePropertyChanged("EndDate");
+        }
+      }
+    }
+
+    [System.Runtime.Serialization.DataMemberAttribute()]
+    public bool Recurring {
+      get {
+        return this.RecurringField;
+      }
+      set {
+        if ((this.RecurringField.Equals(value) != true)) {
+          this.RecurringField = value;
+          this.RaisePropertyChanged("Recurring");
+        }
+      }
+    }
+
+    [System.Runtime.Serialization.DataMemberAttribute()]
+    public System.Guid RecurringId {
+      get {
+        return this.RecurringIdField;
+      }
+      set {
+        if ((this.RecurringIdField.Equals(value) != true)) {
+          this.RecurringIdField = value;
+          this.RaisePropertyChanged("RecurringId");
+        }
+      }
+    }
+
+    [System.Runtime.Serialization.DataMemberAttribute()]
+    public System.Guid ResourceId {
+      get {
+        return this.ResourceIdField;
+      }
+      set {
+        if ((this.ResourceIdField.Equals(value) != true)) {
+          this.ResourceIdField = value;
+          this.RaisePropertyChanged("ResourceId");
+        }
+      }
+    }
+
+    [System.Runtime.Serialization.DataMemberAttribute()]
+    public System.DateTime StartDate {
+      get {
+        return this.StartDateField;
+      }
+      set {
+        if ((this.StartDateField.Equals(value) != true)) {
+          this.StartDateField = value;
+          this.RaisePropertyChanged("StartDate");
+        }
+      }
+    }
+  }
+
+  [System.Diagnostics.DebuggerStepThroughAttribute()]
+  [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
+  [System.Runtime.Serialization.DataContractAttribute(Name = "JobPermission", Namespace = "http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Hive.DataTransfer")]
+  [System.SerializableAttribute()]
+  public partial class JobPermission : HeuristicLab.Clients.Hive.HiveItem {
+
+    [System.Runtime.Serialization.OptionalFieldAttribute()]
+    private System.Guid GrantedByUserIdField;
+
+    [System.Runtime.Serialization.OptionalFieldAttribute()]
+    private System.Guid GrantedUserIdField;
+
+    [System.Runtime.Serialization.OptionalFieldAttribute()]
+    private System.Guid JobIdField;
+
+    [System.Runtime.Serialization.OptionalFieldAttribute()]
+    private HeuristicLab.Clients.Hive.Permission PermissionField;
+
+    [System.Runtime.Serialization.DataMemberAttribute()]
+    public System.Guid GrantedByUserId {
+      get {
+        return this.GrantedByUserIdField;
+      }
+      set {
+        if ((this.GrantedByUserIdField.Equals(value) != true)) {
+          this.GrantedByUserIdField = value;
+          this.RaisePropertyChanged("GrantedByUserId");
+        }
+      }
+    }
+
+    [System.Runtime.Serialization.DataMemberAttribute()]
+    public System.Guid GrantedUserId {
+      get {
+        return this.GrantedUserIdField;
+      }
+      set {
+        if ((this.GrantedUserIdField.Equals(value) != true)) {
+          this.GrantedUserIdField = value;
+          this.RaisePropertyChanged("GrantedUserId");
+        }
+      }
+    }
+
+    [System.Runtime.Serialization.DataMemberAttribute()]
+    public System.Guid JobId {
+      get {
+        return this.JobIdField;
+      }
+      set {
+        if ((this.JobIdField.Equals(value) != true)) {
+          this.JobIdField = value;
+          this.RaisePropertyChanged("JobId");
+        }
+      }
+    }
+
+    [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.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 = "ResourcePermission", Namespace = "http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Hive.DataTransfer")]
   [System.SerializableAttribute()]
@@ -470,233 +699,4 @@
           this.ResourceIdField = value;
           this.RaisePropertyChanged("ResourceId");
-        }
-      }
-    }
-  }
-
-  [System.Diagnostics.DebuggerStepThroughAttribute()]
-  [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
-  [System.Runtime.Serialization.DataContractAttribute(Name = "Downtime", Namespace = "http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Hive.DataTransfer")]
-  [System.SerializableAttribute()]
-  public partial class Downtime : HeuristicLab.Clients.Hive.HiveItem {
-
-    [System.Runtime.Serialization.OptionalFieldAttribute()]
-    private bool AllDayEventField;
-
-    [System.Runtime.Serialization.OptionalFieldAttribute()]
-    private System.DateTime EndDateField;
-
-    [System.Runtime.Serialization.OptionalFieldAttribute()]
-    private bool RecurringField;
-
-    [System.Runtime.Serialization.OptionalFieldAttribute()]
-    private System.Guid RecurringIdField;
-
-    [System.Runtime.Serialization.OptionalFieldAttribute()]
-    private System.Guid ResourceIdField;
-
-    [System.Runtime.Serialization.OptionalFieldAttribute()]
-    private System.DateTime StartDateField;
-
-    [System.Runtime.Serialization.DataMemberAttribute()]
-    public bool AllDayEvent {
-      get {
-        return this.AllDayEventField;
-      }
-      set {
-        if ((this.AllDayEventField.Equals(value) != true)) {
-          this.AllDayEventField = value;
-          this.RaisePropertyChanged("AllDayEvent");
-        }
-      }
-    }
-
-    [System.Runtime.Serialization.DataMemberAttribute()]
-    public System.DateTime EndDate {
-      get {
-        return this.EndDateField;
-      }
-      set {
-        if ((this.EndDateField.Equals(value) != true)) {
-          this.EndDateField = value;
-          this.RaisePropertyChanged("EndDate");
-        }
-      }
-    }
-
-    [System.Runtime.Serialization.DataMemberAttribute()]
-    public bool Recurring {
-      get {
-        return this.RecurringField;
-      }
-      set {
-        if ((this.RecurringField.Equals(value) != true)) {
-          this.RecurringField = value;
-          this.RaisePropertyChanged("Recurring");
-        }
-      }
-    }
-
-    [System.Runtime.Serialization.DataMemberAttribute()]
-    public System.Guid RecurringId {
-      get {
-        return this.RecurringIdField;
-      }
-      set {
-        if ((this.RecurringIdField.Equals(value) != true)) {
-          this.RecurringIdField = value;
-          this.RaisePropertyChanged("RecurringId");
-        }
-      }
-    }
-
-    [System.Runtime.Serialization.DataMemberAttribute()]
-    public System.Guid ResourceId {
-      get {
-        return this.ResourceIdField;
-      }
-      set {
-        if ((this.ResourceIdField.Equals(value) != true)) {
-          this.ResourceIdField = value;
-          this.RaisePropertyChanged("ResourceId");
-        }
-      }
-    }
-
-    [System.Runtime.Serialization.DataMemberAttribute()]
-    public System.DateTime StartDate {
-      get {
-        return this.StartDateField;
-      }
-      set {
-        if ((this.StartDateField.Equals(value) != true)) {
-          this.StartDateField = value;
-          this.RaisePropertyChanged("StartDate");
-        }
-      }
-    }
-  }
-
-  [System.Diagnostics.DebuggerStepThroughAttribute()]
-  [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
-  [System.Runtime.Serialization.DataContractAttribute(Name = "JobPermission", Namespace = "http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Hive.DataTransfer")]
-  [System.SerializableAttribute()]
-  public partial class JobPermission : HeuristicLab.Clients.Hive.HiveItem {
-
-    [System.Runtime.Serialization.OptionalFieldAttribute()]
-    private System.Guid GrantedByUserIdField;
-
-    [System.Runtime.Serialization.OptionalFieldAttribute()]
-    private System.Guid GrantedUserIdField;
-
-    [System.Runtime.Serialization.OptionalFieldAttribute()]
-    private System.Guid JobIdField;
-
-    [System.Runtime.Serialization.OptionalFieldAttribute()]
-    private HeuristicLab.Clients.Hive.Permission PermissionField;
-
-    [System.Runtime.Serialization.DataMemberAttribute()]
-    public System.Guid GrantedByUserId {
-      get {
-        return this.GrantedByUserIdField;
-      }
-      set {
-        if ((this.GrantedByUserIdField.Equals(value) != true)) {
-          this.GrantedByUserIdField = value;
-          this.RaisePropertyChanged("GrantedByUserId");
-        }
-      }
-    }
-
-    [System.Runtime.Serialization.DataMemberAttribute()]
-    public System.Guid GrantedUserId {
-      get {
-        return this.GrantedUserIdField;
-      }
-      set {
-        if ((this.GrantedUserIdField.Equals(value) != true)) {
-          this.GrantedUserIdField = value;
-          this.RaisePropertyChanged("GrantedUserId");
-        }
-      }
-    }
-
-    [System.Runtime.Serialization.DataMemberAttribute()]
-    public System.Guid JobId {
-      get {
-        return this.JobIdField;
-      }
-      set {
-        if ((this.JobIdField.Equals(value) != true)) {
-          this.JobIdField = value;
-          this.RaisePropertyChanged("JobId");
-        }
-      }
-    }
-
-    [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.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");
         }
       }
@@ -1664,4 +1664,16 @@
   public interface IHiveService {
 
+    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/GetSlaveGroup", ReplyAction = "http://tempuri.org/IHiveService/GetSlaveGroupResponse")]
+    HeuristicLab.Clients.Hive.SlaveGroup GetSlaveGroup(System.Guid slaveGroupId);
+
+    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/GetSlaves", ReplyAction = "http://tempuri.org/IHiveService/GetSlavesResponse")]
+    System.Collections.Generic.List<HeuristicLab.Clients.Hive.Slave> GetSlaves();
+
+    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/GetSlaveGroups", ReplyAction = "http://tempuri.org/IHiveService/GetSlaveGroupsResponse")]
+    System.Collections.Generic.List<HeuristicLab.Clients.Hive.SlaveGroup> GetSlaveGroups();
+
+    [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);
@@ -1691,13 +1703,4 @@
     int GetNewHeartbeatInterval(System.Guid slaveId);
 
-    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/GrantResourcePermission", ReplyAction = "http://tempuri.org/IHiveService/GrantResourcePermissionResponse")]
-    void GrantResourcePermission(System.Guid slaveId, System.Guid grantedUserId);
-
-    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/RevokeResourcePermission", ReplyAction = "http://tempuri.org/IHiveService/RevokeResourcePermissionResponse")]
-    void RevokeResourcePermission(System.Guid slaveId, System.Guid grantedUserId);
-
-    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/GetSlavePermissions", ReplyAction = "http://tempuri.org/IHiveService/GetSlavePermissionsResponse")]
-    System.Collections.Generic.List<HeuristicLab.Clients.Hive.ResourcePermission> GetSlavePermissions(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);
@@ -1717,4 +1720,7 @@
     [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/AuthorizesForResourceAdministration", ReplyAction = "http://tempuri.org/IHiveService/AuthorizesForResourceAdministrationResponse")]
+    bool AuthorizesForResourceAdministration(System.Guid resourceId);
 
     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/AddTask", ReplyAction = "http://tempuri.org/IHiveService/AddTaskResponse")]
@@ -1824,4 +1830,13 @@
     void DeletePlugin(System.Guid pluginId);
 
+    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/GrantResourcePermissions", ReplyAction = "http://tempuri.org/IHiveService/GrantResourcePermissionsResponse")]
+    void GrantResourcePermissions(System.Guid resourceId, System.Collections.Generic.List<System.Guid> grantedUserIds);
+
+    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/RevokeResourcePermissions", ReplyAction = "http://tempuri.org/IHiveService/RevokeResourcePermissionsResponse")]
+    void RevokeResourcePermissions(System.Guid resourceId, System.Collections.Generic.List<System.Guid> grantedUserIds);
+
+    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/GetResourcePermissions", ReplyAction = "http://tempuri.org/IHiveService/GetResourcePermissionsResponse")]
+    System.Collections.Generic.List<HeuristicLab.Clients.Hive.ResourcePermission> GetResourcePermissions(System.Guid resourceId);
+
     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/AddSlave", ReplyAction = "http://tempuri.org/IHiveService/AddSlaveResponse")]
     System.Guid AddSlave(HeuristicLab.Clients.Hive.Slave slave);
@@ -1832,16 +1847,4 @@
     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/GetSlave", ReplyAction = "http://tempuri.org/IHiveService/GetSlaveResponse")]
     HeuristicLab.Clients.Hive.Slave GetSlave(System.Guid slaveId);
-
-    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/GetSlaveGroup", ReplyAction = "http://tempuri.org/IHiveService/GetSlaveGroupResponse")]
-    HeuristicLab.Clients.Hive.SlaveGroup GetSlaveGroup(System.Guid slaveGroupId);
-
-    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/GetSlaves", ReplyAction = "http://tempuri.org/IHiveService/GetSlavesResponse")]
-    System.Collections.Generic.List<HeuristicLab.Clients.Hive.Slave> GetSlaves();
-
-    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/GetSlaveGroups", ReplyAction = "http://tempuri.org/IHiveService/GetSlaveGroupsResponse")]
-    System.Collections.Generic.List<HeuristicLab.Clients.Hive.SlaveGroup> GetSlaveGroups();
-
-    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IHiveService/UpdateSlave", ReplyAction = "http://tempuri.org/IHiveService/UpdateSlaveResponse")]
-    void UpdateSlave(HeuristicLab.Clients.Hive.Slave slave);
   }
 
@@ -1873,4 +1876,20 @@
     }
 
+    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);
@@ -1909,16 +1928,4 @@
     }
 
-    public void GrantResourcePermission(System.Guid slaveId, System.Guid grantedUserId) {
-      base.Channel.GrantResourcePermission(slaveId, grantedUserId);
-    }
-
-    public void RevokeResourcePermission(System.Guid slaveId, System.Guid grantedUserId) {
-      base.Channel.RevokeResourcePermission(slaveId, grantedUserId);
-    }
-
-    public System.Collections.Generic.List<HeuristicLab.Clients.Hive.ResourcePermission> GetSlavePermissions(System.Guid slaveId) {
-      return base.Channel.GetSlavePermissions(slaveId);
-    }
-
     public System.Guid AddDowntime(HeuristicLab.Clients.Hive.Downtime downtime) {
       return base.Channel.AddDowntime(downtime);
@@ -1945,4 +1952,8 @@
     }
 
+    public bool AuthorizesForResourceAdministration(System.Guid resourceId) {
+      return base.Channel.AuthorizesForResourceAdministration(resourceId);
+    }
+
     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);
@@ -2085,4 +2096,16 @@
     }
 
+    public void GrantResourcePermissions(System.Guid resourceId, System.Collections.Generic.List<System.Guid> grantedUserIds) {
+      base.Channel.GrantResourcePermissions(resourceId, grantedUserIds);
+    }
+
+    public void RevokeResourcePermissions(System.Guid resourceId, System.Collections.Generic.List<System.Guid> grantedUserIds) {
+      base.Channel.RevokeResourcePermissions(resourceId, grantedUserIds);
+    }
+
+    public System.Collections.Generic.List<HeuristicLab.Clients.Hive.ResourcePermission> GetResourcePermissions(System.Guid resourceId) {
+      return base.Channel.GetResourcePermissions(resourceId);
+    }
+
     public System.Guid AddSlave(HeuristicLab.Clients.Hive.Slave slave) {
       return base.Channel.AddSlave(slave);
@@ -2096,20 +2119,4 @@
       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);
-    }
   }
 }
