Free cookie consent management tool by TermsFeed Policy Generator

Changeset 7599


Ignore:
Timestamp:
03/12/12 17:22:59 (13 years ago)
Author:
ascheibe
Message:

#1648 added first version of an user information dialog

Location:
branches/ClientUserManagement
Files:
8 added
6 edited

Legend:

Unmodified
Added
Removed
  • branches/ClientUserManagement/HeuristicLab.Clients.Access.Views/3.3/HeuristicLab.Clients.Access.Views-3.3.csproj

    r7557 r7599  
    131131    </Compile>
    132132    <Compile Include="MenuItems\ClientInfoMenuItem.cs" />
     133    <Compile Include="MenuItems\UserInfoMenuItem.cs" />
    133134    <Compile Include="Plugin.cs" />
    134135    <Compile Include="Properties\AssemblyInfo.cs" />
     
    145146      <DependentUpon>LightweightUserGroupSelectionView.cs</DependentUpon>
    146147    </Compile>
     148    <Compile Include="UserViews\LightweightUserInformationView.cs">
     149      <SubType>UserControl</SubType>
     150    </Compile>
     151    <Compile Include="UserViews\LightweightUserInformationView.Designer.cs">
     152      <DependentUpon>LightweightUserInformationView.cs</DependentUpon>
     153    </Compile>
     154    <Compile Include="UserViews\RefreshableLightweightUserInformationView.cs">
     155      <SubType>UserControl</SubType>
     156    </Compile>
     157    <Compile Include="UserViews\RefreshableLightweightUserInformationView.Designer.cs">
     158      <DependentUpon>RefreshableLightweightUserInformationView.cs</DependentUpon>
     159    </Compile>
    147160    <Compile Include="UserViews\LightweightUserView.cs">
    148161      <SubType>UserControl</SubType>
     
    163176      <DependentUpon>RefreshableView.cs</DependentUpon>
    164177    </Compile>
    165   </ItemGroup>
    166   <ItemGroup>
    167     <EmbeddedResource Include="ClientViews\ClientRegistrationDialog.resx">
    168       <DependentUpon>ClientRegistrationDialog.cs</DependentUpon>
    169     </EmbeddedResource>
     178    <Compile Include="UserViews\UserInformationDialog.cs">
     179      <SubType>Form</SubType>
     180    </Compile>
     181    <Compile Include="UserViews\UserInformationDialog.Designer.cs">
     182      <DependentUpon>UserInformationDialog.cs</DependentUpon>
     183    </Compile>
     184  </ItemGroup>
     185  <ItemGroup>
    170186    <EmbeddedResource Include="Documents\ClientRegistrationInfo.rtf" />
    171187    <None Include="HeuristicLab.snk" />
  • branches/ClientUserManagement/HeuristicLab.Clients.Access/3.3/HeuristicLab.Clients.Access-3.3.csproj

    r7555 r7599  
    101101    <Compile Include="ServiceClients\ClientGroup.cs" />
    102102    <Compile Include="ServiceClients\Client.cs" />
     103    <Compile Include="ServiceClients\Role.cs" />
    103104    <Compile Include="ServiceClients\Resource.cs" />
    104105    <Compile Include="ServiceClients\IAccessItem.cs" />
  • branches/ClientUserManagement/HeuristicLab.Clients.Access/3.3/ServiceClients/AccessServiceClient.cs

    r7536 r7599  
    99//------------------------------------------------------------------------------
    1010
    11 namespace HeuristicLab.Clients.Access {
    12 
    13 
    14   [System.Diagnostics.DebuggerStepThroughAttribute()]
    15   [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
    16   [System.Runtime.Serialization.DataContractAttribute(Name = "UserGroupBase", Namespace = "http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Access.DataTransfer" +
    17       "")]
    18   [System.SerializableAttribute()]
    19   [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Access.User))]
    20   [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Access.UserGroup))]
    21   [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Access.LightweightUser))]
    22   public partial class UserGroupBase : HeuristicLab.Clients.Access.AccessItem {
    23 
    24     [System.Runtime.Serialization.OptionalFieldAttribute()]
    25     private System.Guid IdField;
    26 
    27     [System.Runtime.Serialization.DataMemberAttribute()]
    28     public System.Guid Id {
    29       get {
    30         return this.IdField;
    31       }
    32       set {
    33         if ((this.IdField.Equals(value) != true)) {
    34           this.IdField = value;
    35           this.RaisePropertyChanged("Id");
    36         }
    37       }
    38     }
    39   }
    40 
    41   [System.Diagnostics.DebuggerStepThroughAttribute()]
    42   [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
    43   [System.Runtime.Serialization.DataContractAttribute(Name = "AccessItem", Namespace = "http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Access.DataTransfer" +
    44       "")]
    45   [System.SerializableAttribute()]
    46   [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Access.Role))]
    47   [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Access.ClientError))]
    48   [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Access.Resource))]
    49   [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Access.Client))]
    50   [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Access.ClientConfiguration))]
    51   [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Access.ClientType))]
    52   [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Access.Country))]
    53   [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Access.OperatingSystem))]
    54   [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Access.ClientGroup))]
    55   [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Access.ClientLog))]
    56   [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Access.UserGroupBase))]
    57   [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Access.User))]
    58   [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Access.UserGroup))]
    59   [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Access.LightweightUser))]
    60   public partial class AccessItem : object, System.Runtime.Serialization.IExtensibleDataObject, System.ComponentModel.INotifyPropertyChanged {
    61 
    62     [System.NonSerializedAttribute()]
    63     private System.Runtime.Serialization.ExtensionDataObject extensionDataField;
    64 
    65     public System.Runtime.Serialization.ExtensionDataObject ExtensionData {
    66       get {
    67         return this.extensionDataField;
    68       }
    69       set {
    70         this.extensionDataField = value;
    71       }
    72     }
    73 
    74     public event System.ComponentModel.PropertyChangedEventHandler PropertyChanged;
    75 
    76 
    77   }
    78 
    79   [System.Diagnostics.DebuggerStepThroughAttribute()]
    80   [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
    81   [System.Runtime.Serialization.DataContractAttribute(Name = "Role", Namespace = "http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Access.DataTransfer" +
    82       "")]
    83   [System.SerializableAttribute()]
    84   public partial class Role : HeuristicLab.Clients.Access.AccessItem {
    85 
    86     [System.Runtime.Serialization.OptionalFieldAttribute()]
    87     private string NameField;
    88 
    89     [System.Runtime.Serialization.DataMemberAttribute()]
    90     public string Name {
    91       get {
    92         return this.NameField;
    93       }
    94       set {
    95         if ((object.ReferenceEquals(this.NameField, value) != true)) {
    96           this.NameField = value;
    97           this.RaisePropertyChanged("Name");
    98         }
    99       }
    100     }
    101   }
    102 
    103   [System.Diagnostics.DebuggerStepThroughAttribute()]
    104   [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
    105   [System.Runtime.Serialization.DataContractAttribute(Name = "ClientError", Namespace = "http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Access.DataTransfer" +
    106       "")]
    107   [System.SerializableAttribute()]
    108   public partial class ClientError : HeuristicLab.Clients.Access.AccessItem {
    109 
    110     [System.Runtime.Serialization.OptionalFieldAttribute()]
    111     private System.Guid ClientIdField;
    112 
    113     [System.Runtime.Serialization.OptionalFieldAttribute()]
    114     private string ConfigDumpField;
    115 
    116     [System.Runtime.Serialization.OptionalFieldAttribute()]
    117     private string ExceptionField;
    118 
    119     [System.Runtime.Serialization.OptionalFieldAttribute()]
    120     private System.Guid IdField;
    121 
    122     [System.Runtime.Serialization.OptionalFieldAttribute()]
    123     private System.DateTime TimestampField;
    124 
    125     [System.Runtime.Serialization.OptionalFieldAttribute()]
    126     private string UserCommentField;
    127 
    128     [System.Runtime.Serialization.OptionalFieldAttribute()]
    129     private System.Guid UserIdField;
    130 
    131     [System.Runtime.Serialization.DataMemberAttribute()]
    132     public System.Guid ClientId {
    133       get {
    134         return this.ClientIdField;
    135       }
    136       set {
    137         if ((this.ClientIdField.Equals(value) != true)) {
    138           this.ClientIdField = value;
    139           this.RaisePropertyChanged("ClientId");
    140         }
    141       }
    142     }
    143 
    144     [System.Runtime.Serialization.DataMemberAttribute()]
    145     public string ConfigDump {
    146       get {
    147         return this.ConfigDumpField;
    148       }
    149       set {
    150         if ((object.ReferenceEquals(this.ConfigDumpField, value) != true)) {
    151           this.ConfigDumpField = value;
    152           this.RaisePropertyChanged("ConfigDump");
    153         }
    154       }
    155     }
    156 
    157     [System.Runtime.Serialization.DataMemberAttribute()]
    158     public string Exception {
    159       get {
    160         return this.ExceptionField;
    161       }
    162       set {
    163         if ((object.ReferenceEquals(this.ExceptionField, value) != true)) {
    164           this.ExceptionField = value;
    165           this.RaisePropertyChanged("Exception");
    166         }
    167       }
    168     }
    169 
    170     [System.Runtime.Serialization.DataMemberAttribute()]
    171     public System.Guid Id {
    172       get {
    173         return this.IdField;
    174       }
    175       set {
    176         if ((this.IdField.Equals(value) != true)) {
    177           this.IdField = value;
    178           this.RaisePropertyChanged("Id");
    179         }
    180       }
    181     }
    182 
    183     [System.Runtime.Serialization.DataMemberAttribute()]
    184     public System.DateTime Timestamp {
    185       get {
    186         return this.TimestampField;
    187       }
    188       set {
    189         if ((this.TimestampField.Equals(value) != true)) {
    190           this.TimestampField = value;
    191           this.RaisePropertyChanged("Timestamp");
    192         }
    193       }
    194     }
    195 
    196     [System.Runtime.Serialization.DataMemberAttribute()]
    197     public string UserComment {
    198       get {
    199         return this.UserCommentField;
    200       }
    201       set {
    202         if ((object.ReferenceEquals(this.UserCommentField, value) != true)) {
    203           this.UserCommentField = value;
    204           this.RaisePropertyChanged("UserComment");
    205         }
    206       }
    207     }
    208 
    209     [System.Runtime.Serialization.DataMemberAttribute()]
    210     public System.Guid UserId {
    211       get {
    212         return this.UserIdField;
    213       }
    214       set {
    215         if ((this.UserIdField.Equals(value) != true)) {
    216           this.UserIdField = value;
    217           this.RaisePropertyChanged("UserId");
    218         }
    219       }
    220     }
    221   }
    222 
    223   [System.Diagnostics.DebuggerStepThroughAttribute()]
    224   [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
    225   [System.Runtime.Serialization.DataContractAttribute(Name = "Resource", Namespace = "http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Access.DataTransfer" +
    226       "")]
    227   [System.SerializableAttribute()]
    228   [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Access.Client))]
    229   [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Access.ClientGroup))]
    230   public partial class Resource : HeuristicLab.Clients.Access.AccessItem {
    231 
    232     [System.Runtime.Serialization.OptionalFieldAttribute()]
    233     private string DescriptionField;
    234 
    235     [System.Runtime.Serialization.OptionalFieldAttribute()]
    236     private System.Guid IdField;
    237 
    238     [System.Runtime.Serialization.OptionalFieldAttribute()]
    239     private string NameField;
    240 
    241     [System.Runtime.Serialization.DataMemberAttribute()]
    242     public string Description {
    243       get {
    244         return this.DescriptionField;
    245       }
    246       set {
    247         if ((object.ReferenceEquals(this.DescriptionField, value) != true)) {
    248           this.DescriptionField = value;
    249           this.RaisePropertyChanged("Description");
    250         }
    251       }
    252     }
    253 
    254     [System.Runtime.Serialization.DataMemberAttribute()]
    255     public System.Guid Id {
    256       get {
    257         return this.IdField;
    258       }
    259       set {
    260         if ((this.IdField.Equals(value) != true)) {
    261           this.IdField = value;
    262           this.RaisePropertyChanged("Id");
    263         }
    264       }
    265     }
    266 
    267     [System.Runtime.Serialization.DataMemberAttribute()]
    268     public string Name {
    269       get {
    270         return this.NameField;
    271       }
    272       set {
    273         if ((object.ReferenceEquals(this.NameField, value) != true)) {
    274           this.NameField = value;
    275           this.RaisePropertyChanged("Name");
    276         }
    277       }
    278     }
    279   }
    280 
    281   [System.Diagnostics.DebuggerStepThroughAttribute()]
    282   [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
    283   [System.Runtime.Serialization.DataContractAttribute(Name = "Client", Namespace = "http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Access.DataTransfer" +
    284       "")]
    285   [System.SerializableAttribute()]
    286   public partial class Client : HeuristicLab.Clients.Access.Resource {
    287 
    288     [System.Runtime.Serialization.OptionalFieldAttribute()]
    289     private HeuristicLab.Clients.Access.ClientConfiguration ClientConfigurationField;
    290 
    291     [System.Runtime.Serialization.OptionalFieldAttribute()]
    292     private HeuristicLab.Clients.Access.ClientType ClientTypeField;
    293 
    294     [System.Runtime.Serialization.OptionalFieldAttribute()]
    295     private HeuristicLab.Clients.Access.Country CountryField;
    296 
    297     [System.Runtime.Serialization.OptionalFieldAttribute()]
    298     private string HeuristicLabVersionField;
    299 
    300     [System.Runtime.Serialization.OptionalFieldAttribute()]
    301     private int MemorySizeField;
    302 
    303     [System.Runtime.Serialization.OptionalFieldAttribute()]
    304     private int NumberOfCoresField;
    305 
    306     [System.Runtime.Serialization.OptionalFieldAttribute()]
    307     private HeuristicLab.Clients.Access.OperatingSystem OperatingSystemField;
    308 
    309     [System.Runtime.Serialization.OptionalFieldAttribute()]
    310     private double PerformanceValueField;
    311 
    312     [System.Runtime.Serialization.OptionalFieldAttribute()]
    313     private string ProcessorTypeField;
    314 
    315     [System.Runtime.Serialization.OptionalFieldAttribute()]
    316     private System.DateTime TimestampField;
    317 
    318     [System.Runtime.Serialization.DataMemberAttribute()]
    319     public HeuristicLab.Clients.Access.ClientConfiguration ClientConfiguration {
    320       get {
    321         return this.ClientConfigurationField;
    322       }
    323       set {
    324         if ((object.ReferenceEquals(this.ClientConfigurationField, value) != true)) {
    325           this.ClientConfigurationField = value;
    326           this.RaisePropertyChanged("ClientConfiguration");
    327         }
    328       }
    329     }
    330 
    331     [System.Runtime.Serialization.DataMemberAttribute()]
    332     public HeuristicLab.Clients.Access.ClientType ClientType {
    333       get {
    334         return this.ClientTypeField;
    335       }
    336       set {
    337         if ((object.ReferenceEquals(this.ClientTypeField, value) != true)) {
    338           this.ClientTypeField = value;
    339           this.RaisePropertyChanged("ClientType");
    340         }
    341       }
    342     }
    343 
    344     [System.Runtime.Serialization.DataMemberAttribute()]
    345     public HeuristicLab.Clients.Access.Country Country {
    346       get {
    347         return this.CountryField;
    348       }
    349       set {
    350         if ((object.ReferenceEquals(this.CountryField, value) != true)) {
    351           this.CountryField = value;
    352           this.RaisePropertyChanged("Country");
    353         }
    354       }
    355     }
    356 
    357     [System.Runtime.Serialization.DataMemberAttribute()]
    358     public string HeuristicLabVersion {
    359       get {
    360         return this.HeuristicLabVersionField;
    361       }
    362       set {
    363         if ((object.ReferenceEquals(this.HeuristicLabVersionField, value) != true)) {
    364           this.HeuristicLabVersionField = value;
    365           this.RaisePropertyChanged("HeuristicLabVersion");
    366         }
    367       }
    368     }
    369 
    370     [System.Runtime.Serialization.DataMemberAttribute()]
    371     public int MemorySize {
    372       get {
    373         return this.MemorySizeField;
    374       }
    375       set {
    376         if ((this.MemorySizeField.Equals(value) != true)) {
    377           this.MemorySizeField = value;
    378           this.RaisePropertyChanged("MemorySize");
    379         }
    380       }
    381     }
    382 
    383     [System.Runtime.Serialization.DataMemberAttribute()]
    384     public int NumberOfCores {
    385       get {
    386         return this.NumberOfCoresField;
    387       }
    388       set {
    389         if ((this.NumberOfCoresField.Equals(value) != true)) {
    390           this.NumberOfCoresField = value;
    391           this.RaisePropertyChanged("NumberOfCores");
    392         }
    393       }
    394     }
    395 
    396     [System.Runtime.Serialization.DataMemberAttribute()]
    397     public HeuristicLab.Clients.Access.OperatingSystem OperatingSystem {
    398       get {
    399         return this.OperatingSystemField;
    400       }
    401       set {
    402         if ((object.ReferenceEquals(this.OperatingSystemField, value) != true)) {
    403           this.OperatingSystemField = value;
    404           this.RaisePropertyChanged("OperatingSystem");
    405         }
    406       }
    407     }
    408 
    409     [System.Runtime.Serialization.DataMemberAttribute()]
    410     public double PerformanceValue {
    411       get {
    412         return this.PerformanceValueField;
    413       }
    414       set {
    415         if ((this.PerformanceValueField.Equals(value) != true)) {
    416           this.PerformanceValueField = value;
    417           this.RaisePropertyChanged("PerformanceValue");
    418         }
    419       }
    420     }
    421 
    422     [System.Runtime.Serialization.DataMemberAttribute()]
    423     public string ProcessorType {
    424       get {
    425         return this.ProcessorTypeField;
    426       }
    427       set {
    428         if ((object.ReferenceEquals(this.ProcessorTypeField, value) != true)) {
    429           this.ProcessorTypeField = value;
    430           this.RaisePropertyChanged("ProcessorType");
    431         }
    432       }
    433     }
    434 
    435     [System.Runtime.Serialization.DataMemberAttribute()]
    436     public System.DateTime Timestamp {
    437       get {
    438         return this.TimestampField;
    439       }
    440       set {
    441         if ((this.TimestampField.Equals(value) != true)) {
    442           this.TimestampField = value;
    443           this.RaisePropertyChanged("Timestamp");
    444         }
    445       }
    446     }
    447   }
    448 
    449   [System.Diagnostics.DebuggerStepThroughAttribute()]
    450   [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
    451   [System.Runtime.Serialization.DataContractAttribute(Name = "ClientConfiguration", Namespace = "http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Access.DataTransfer" +
    452       "")]
    453   [System.SerializableAttribute()]
    454   public partial class ClientConfiguration : HeuristicLab.Clients.Access.AccessItem {
    455 
    456     [System.Runtime.Serialization.OptionalFieldAttribute()]
    457     private string DescriptionField;
    458 
    459     [System.Runtime.Serialization.OptionalFieldAttribute()]
    460     private string HashField;
    461 
    462     [System.Runtime.Serialization.OptionalFieldAttribute()]
    463     private System.Guid IdField;
    464 
    465     [System.Runtime.Serialization.DataMemberAttribute()]
    466     public string Description {
    467       get {
    468         return this.DescriptionField;
    469       }
    470       set {
    471         if ((object.ReferenceEquals(this.DescriptionField, value) != true)) {
    472           this.DescriptionField = value;
    473           this.RaisePropertyChanged("Description");
    474         }
    475       }
    476     }
    477 
    478     [System.Runtime.Serialization.DataMemberAttribute()]
    479     public string Hash {
    480       get {
    481         return this.HashField;
    482       }
    483       set {
    484         if ((object.ReferenceEquals(this.HashField, value) != true)) {
    485           this.HashField = value;
    486           this.RaisePropertyChanged("Hash");
    487         }
    488       }
    489     }
    490 
    491     [System.Runtime.Serialization.DataMemberAttribute()]
    492     public System.Guid Id {
    493       get {
    494         return this.IdField;
    495       }
    496       set {
    497         if ((this.IdField.Equals(value) != true)) {
    498           this.IdField = value;
    499           this.RaisePropertyChanged("Id");
    500         }
    501       }
    502     }
    503   }
    504 
    505   [System.Diagnostics.DebuggerStepThroughAttribute()]
    506   [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
    507   [System.Runtime.Serialization.DataContractAttribute(Name = "ClientType", Namespace = "http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Access.DataTransfer" +
    508       "")]
    509   [System.SerializableAttribute()]
    510   public partial class ClientType : HeuristicLab.Clients.Access.AccessItem {
    511 
    512     [System.Runtime.Serialization.OptionalFieldAttribute()]
    513     private System.Guid IdField;
    514 
    515     [System.Runtime.Serialization.OptionalFieldAttribute()]
    516     private string NameField;
    517 
    518     [System.Runtime.Serialization.DataMemberAttribute()]
    519     public System.Guid Id {
    520       get {
    521         return this.IdField;
    522       }
    523       set {
    524         if ((this.IdField.Equals(value) != true)) {
    525           this.IdField = value;
    526           this.RaisePropertyChanged("Id");
    527         }
    528       }
    529     }
    530 
    531     [System.Runtime.Serialization.DataMemberAttribute()]
    532     public string Name {
    533       get {
    534         return this.NameField;
    535       }
    536       set {
    537         if ((object.ReferenceEquals(this.NameField, value) != true)) {
    538           this.NameField = value;
    539           this.RaisePropertyChanged("Name");
    540         }
    541       }
    542     }
    543   }
    544 
    545   [System.Diagnostics.DebuggerStepThroughAttribute()]
    546   [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
    547   [System.Runtime.Serialization.DataContractAttribute(Name = "Country", Namespace = "http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Access.DataTransfer" +
    548       "")]
    549   [System.SerializableAttribute()]
    550   public partial class Country : HeuristicLab.Clients.Access.AccessItem {
    551 
    552     [System.Runtime.Serialization.OptionalFieldAttribute()]
    553     private System.Guid IdField;
    554 
    555     [System.Runtime.Serialization.OptionalFieldAttribute()]
    556     private string NameField;
    557 
    558     [System.Runtime.Serialization.DataMemberAttribute()]
    559     public System.Guid Id {
    560       get {
    561         return this.IdField;
    562       }
    563       set {
    564         if ((this.IdField.Equals(value) != true)) {
    565           this.IdField = value;
    566           this.RaisePropertyChanged("Id");
    567         }
    568       }
    569     }
    570 
    571     [System.Runtime.Serialization.DataMemberAttribute()]
    572     public string Name {
    573       get {
    574         return this.NameField;
    575       }
    576       set {
    577         if ((object.ReferenceEquals(this.NameField, value) != true)) {
    578           this.NameField = value;
    579           this.RaisePropertyChanged("Name");
    580         }
    581       }
    582     }
    583   }
    584 
    585   [System.Diagnostics.DebuggerStepThroughAttribute()]
    586   [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
    587   [System.Runtime.Serialization.DataContractAttribute(Name = "OperatingSystem", Namespace = "http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Access.DataTransfer" +
    588       "")]
    589   [System.SerializableAttribute()]
    590   public partial class OperatingSystem : HeuristicLab.Clients.Access.AccessItem {
    591 
    592     [System.Runtime.Serialization.OptionalFieldAttribute()]
    593     private System.Guid IdField;
    594 
    595     [System.Runtime.Serialization.OptionalFieldAttribute()]
    596     private string NameField;
    597 
    598     [System.Runtime.Serialization.DataMemberAttribute()]
    599     public System.Guid Id {
    600       get {
    601         return this.IdField;
    602       }
    603       set {
    604         if ((this.IdField.Equals(value) != true)) {
    605           this.IdField = value;
    606           this.RaisePropertyChanged("Id");
    607         }
    608       }
    609     }
    610 
    611     [System.Runtime.Serialization.DataMemberAttribute()]
    612     public string Name {
    613       get {
    614         return this.NameField;
    615       }
    616       set {
    617         if ((object.ReferenceEquals(this.NameField, value) != true)) {
    618           this.NameField = value;
    619           this.RaisePropertyChanged("Name");
    620         }
    621       }
    622     }
    623   }
    624 
    625   [System.Diagnostics.DebuggerStepThroughAttribute()]
    626   [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
    627   [System.Runtime.Serialization.DataContractAttribute(Name = "ClientGroup", Namespace = "http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Access.DataTransfer" +
    628       "")]
    629   [System.SerializableAttribute()]
    630   public partial class ClientGroup : HeuristicLab.Clients.Access.Resource {
    631   }
    632 
    633   [System.Diagnostics.DebuggerStepThroughAttribute()]
    634   [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
    635   [System.Runtime.Serialization.DataContractAttribute(Name = "ClientLog", Namespace = "http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Access.DataTransfer" +
    636       "")]
    637   [System.SerializableAttribute()]
    638   public partial class ClientLog : HeuristicLab.Clients.Access.AccessItem {
    639 
    640     [System.Runtime.Serialization.OptionalFieldAttribute()]
    641     private string MessageField;
    642 
    643     [System.Runtime.Serialization.OptionalFieldAttribute()]
    644     private System.Guid ResourceIdField;
    645 
    646     [System.Runtime.Serialization.OptionalFieldAttribute()]
    647     private System.DateTime TimestampField;
    648 
    649     [System.Runtime.Serialization.DataMemberAttribute()]
    650     public string Message {
    651       get {
    652         return this.MessageField;
    653       }
    654       set {
    655         if ((object.ReferenceEquals(this.MessageField, value) != true)) {
    656           this.MessageField = value;
    657           this.RaisePropertyChanged("Message");
    658         }
    659       }
    660     }
    661 
    662     [System.Runtime.Serialization.DataMemberAttribute()]
    663     public System.Guid ResourceId {
    664       get {
    665         return this.ResourceIdField;
    666       }
    667       set {
    668         if ((this.ResourceIdField.Equals(value) != true)) {
    669           this.ResourceIdField = value;
    670           this.RaisePropertyChanged("ResourceId");
    671         }
    672       }
    673     }
    674 
    675     [System.Runtime.Serialization.DataMemberAttribute()]
    676     public System.DateTime Timestamp {
    677       get {
    678         return this.TimestampField;
    679       }
    680       set {
    681         if ((this.TimestampField.Equals(value) != true)) {
    682           this.TimestampField = value;
    683           this.RaisePropertyChanged("Timestamp");
    684         }
    685       }
    686     }
    687   }
    688 
    689   [System.Diagnostics.DebuggerStepThroughAttribute()]
    690   [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
    691   [System.Runtime.Serialization.DataContractAttribute(Name = "User", Namespace = "http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Access.DataTransfer" +
    692       "")]
    693   [System.SerializableAttribute()]
    694   public partial class User : HeuristicLab.Clients.Access.UserGroupBase {
    695 
    696     [System.Runtime.Serialization.OptionalFieldAttribute()]
    697     private string CommentField;
    698 
    699     [System.Runtime.Serialization.OptionalFieldAttribute()]
    700     private System.DateTime CreationDateField;
    701 
    702     [System.Runtime.Serialization.OptionalFieldAttribute()]
    703     private string EmailField;
    704 
    705     [System.Runtime.Serialization.OptionalFieldAttribute()]
    706     private string FullNameField;
    707 
    708     [System.Runtime.Serialization.OptionalFieldAttribute()]
    709     private bool IsApprovedField;
    710 
    711     [System.Runtime.Serialization.OptionalFieldAttribute()]
    712     private System.DateTime LastActivityDateField;
    713 
    714     [System.Runtime.Serialization.OptionalFieldAttribute()]
    715     private System.DateTime LastLoginDateField;
    716 
    717     [System.Runtime.Serialization.OptionalFieldAttribute()]
    718     private System.DateTime LastPasswordChangedDateField;
    719 
    720     [System.Runtime.Serialization.OptionalFieldAttribute()]
    721     private string UserNameField;
    722 
    723     [System.Runtime.Serialization.DataMemberAttribute()]
    724     public string Comment {
    725       get {
    726         return this.CommentField;
    727       }
    728       set {
    729         if ((object.ReferenceEquals(this.CommentField, value) != true)) {
    730           this.CommentField = value;
    731           this.RaisePropertyChanged("Comment");
    732         }
    733       }
    734     }
    735 
    736     [System.Runtime.Serialization.DataMemberAttribute()]
    737     public System.DateTime CreationDate {
    738       get {
    739         return this.CreationDateField;
    740       }
    741       set {
    742         if ((this.CreationDateField.Equals(value) != true)) {
    743           this.CreationDateField = value;
    744           this.RaisePropertyChanged("CreationDate");
    745         }
    746       }
    747     }
    748 
    749     [System.Runtime.Serialization.DataMemberAttribute()]
    750     public string Email {
    751       get {
    752         return this.EmailField;
    753       }
    754       set {
    755         if ((object.ReferenceEquals(this.EmailField, value) != true)) {
    756           this.EmailField = value;
    757           this.RaisePropertyChanged("Email");
    758         }
    759       }
    760     }
    761 
    762     [System.Runtime.Serialization.DataMemberAttribute()]
    763     public string FullName {
    764       get {
    765         return this.FullNameField;
    766       }
    767       set {
    768         if ((object.ReferenceEquals(this.FullNameField, value) != true)) {
    769           this.FullNameField = value;
    770           this.RaisePropertyChanged("FullName");
    771         }
    772       }
    773     }
    774 
    775     [System.Runtime.Serialization.DataMemberAttribute()]
    776     public bool IsApproved {
    777       get {
    778         return this.IsApprovedField;
    779       }
    780       set {
    781         if ((this.IsApprovedField.Equals(value) != true)) {
    782           this.IsApprovedField = value;
    783           this.RaisePropertyChanged("IsApproved");
    784         }
    785       }
    786     }
    787 
    788     [System.Runtime.Serialization.DataMemberAttribute()]
    789     public System.DateTime LastActivityDate {
    790       get {
    791         return this.LastActivityDateField;
    792       }
    793       set {
    794         if ((this.LastActivityDateField.Equals(value) != true)) {
    795           this.LastActivityDateField = value;
    796           this.RaisePropertyChanged("LastActivityDate");
    797         }
    798       }
    799     }
    800 
    801     [System.Runtime.Serialization.DataMemberAttribute()]
    802     public System.DateTime LastLoginDate {
    803       get {
    804         return this.LastLoginDateField;
    805       }
    806       set {
    807         if ((this.LastLoginDateField.Equals(value) != true)) {
    808           this.LastLoginDateField = value;
    809           this.RaisePropertyChanged("LastLoginDate");
    810         }
    811       }
    812     }
    813 
    814     [System.Runtime.Serialization.DataMemberAttribute()]
    815     public System.DateTime LastPasswordChangedDate {
    816       get {
    817         return this.LastPasswordChangedDateField;
    818       }
    819       set {
    820         if ((this.LastPasswordChangedDateField.Equals(value) != true)) {
    821           this.LastPasswordChangedDateField = value;
    822           this.RaisePropertyChanged("LastPasswordChangedDate");
    823         }
    824       }
    825     }
    826 
    827     [System.Runtime.Serialization.DataMemberAttribute()]
    828     public string UserName {
    829       get {
    830         return this.UserNameField;
    831       }
    832       set {
    833         if ((object.ReferenceEquals(this.UserNameField, value) != true)) {
    834           this.UserNameField = value;
    835           this.RaisePropertyChanged("UserName");
    836         }
    837       }
    838     }
    839   }
    840 
    841   [System.Diagnostics.DebuggerStepThroughAttribute()]
    842   [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
    843   [System.Runtime.Serialization.DataContractAttribute(Name = "UserGroup", Namespace = "http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Access.DataTransfer" +
    844       "")]
    845   [System.SerializableAttribute()]
    846   public partial class UserGroup : HeuristicLab.Clients.Access.UserGroupBase {
    847 
    848     [System.Runtime.Serialization.OptionalFieldAttribute()]
    849     private string NameField;
    850 
    851     [System.Runtime.Serialization.DataMemberAttribute()]
    852     public string Name {
    853       get {
    854         return this.NameField;
    855       }
    856       set {
    857         if ((object.ReferenceEquals(this.NameField, value) != true)) {
    858           this.NameField = value;
    859           this.RaisePropertyChanged("Name");
    860         }
    861       }
    862     }
    863   }
    864 
    865   [System.Diagnostics.DebuggerStepThroughAttribute()]
    866   [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
    867   [System.Runtime.Serialization.DataContractAttribute(Name = "LightweightUser", Namespace = "http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Access.DataTransfer" +
    868       "")]
    869   [System.SerializableAttribute()]
    870   public partial class LightweightUser : HeuristicLab.Clients.Access.UserGroupBase {
    871 
    872     [System.Runtime.Serialization.OptionalFieldAttribute()]
    873     private string FullNameField;
    874 
    875     [System.Runtime.Serialization.OptionalFieldAttribute()]
    876     private string UserNameField;
    877 
    878     [System.Runtime.Serialization.DataMemberAttribute()]
    879     public string FullName {
    880       get {
    881         return this.FullNameField;
    882       }
    883       set {
    884         if ((object.ReferenceEquals(this.FullNameField, value) != true)) {
    885           this.FullNameField = value;
    886           this.RaisePropertyChanged("FullName");
    887         }
    888       }
    889     }
    890 
    891     [System.Runtime.Serialization.DataMemberAttribute()]
    892     public string UserName {
    893       get {
    894         return this.UserNameField;
    895       }
    896       set {
    897         if ((object.ReferenceEquals(this.UserNameField, value) != true)) {
    898           this.UserNameField = value;
    899           this.RaisePropertyChanged("UserName");
    900         }
    901       }
    902     }
    903   }
    904 
    905   [System.Diagnostics.DebuggerStepThroughAttribute()]
    906   [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
    907   [System.Runtime.Serialization.DataContractAttribute(Name = "UserGroupMapping", Namespace = "http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Access.DataTransfer" +
    908       "")]
    909   [System.SerializableAttribute()]
    910   public partial class UserGroupMapping : object, System.Runtime.Serialization.IExtensibleDataObject, System.ComponentModel.INotifyPropertyChanged {
    911 
    912     [System.NonSerializedAttribute()]
    913     private System.Runtime.Serialization.ExtensionDataObject extensionDataField;
    914 
    915     [System.Runtime.Serialization.OptionalFieldAttribute()]
    916     private System.Guid ChildField;
    917 
    918     [System.Runtime.Serialization.OptionalFieldAttribute()]
    919     private System.Guid ParentField;
    920 
    921     public System.Runtime.Serialization.ExtensionDataObject ExtensionData {
    922       get {
    923         return this.extensionDataField;
    924       }
    925       set {
    926         this.extensionDataField = value;
    927       }
    928     }
    929 
    930     [System.Runtime.Serialization.DataMemberAttribute()]
    931     public System.Guid Child {
    932       get {
    933         return this.ChildField;
    934       }
    935       set {
    936         if ((this.ChildField.Equals(value) != true)) {
    937           this.ChildField = value;
    938           this.RaisePropertyChanged("Child");
    939         }
    940       }
    941     }
    942 
    943     [System.Runtime.Serialization.DataMemberAttribute()]
    944     public System.Guid Parent {
    945       get {
    946         return this.ParentField;
    947       }
    948       set {
    949         if ((this.ParentField.Equals(value) != true)) {
    950           this.ParentField = value;
    951           this.RaisePropertyChanged("Parent");
    952         }
    953       }
    954     }
    955 
    956     public event System.ComponentModel.PropertyChangedEventHandler PropertyChanged;
    957 
    958     protected void RaisePropertyChanged(string propertyName) {
    959       System.ComponentModel.PropertyChangedEventHandler propertyChanged = this.PropertyChanged;
    960       if ((propertyChanged != null)) {
    961         propertyChanged(this, new System.ComponentModel.PropertyChangedEventArgs(propertyName));
    962       }
    963     }
    964   }
    965 
    966   [System.Diagnostics.DebuggerStepThroughAttribute()]
    967   [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
    968   [System.Runtime.Serialization.DataContractAttribute(Name = "ClientGroupMapping", Namespace = "http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Access.DataTransfer" +
    969       "")]
    970   [System.SerializableAttribute()]
    971   public partial class ClientGroupMapping : object, System.Runtime.Serialization.IExtensibleDataObject, System.ComponentModel.INotifyPropertyChanged {
    972 
    973     [System.NonSerializedAttribute()]
    974     private System.Runtime.Serialization.ExtensionDataObject extensionDataField;
    975 
    976     [System.Runtime.Serialization.OptionalFieldAttribute()]
    977     private System.Guid ChildField;
    978 
    979     [System.Runtime.Serialization.OptionalFieldAttribute()]
    980     private System.Guid ParentField;
    981 
    982     public System.Runtime.Serialization.ExtensionDataObject ExtensionData {
    983       get {
    984         return this.extensionDataField;
    985       }
    986       set {
    987         this.extensionDataField = value;
    988       }
    989     }
    990 
    991     [System.Runtime.Serialization.DataMemberAttribute()]
    992     public System.Guid Child {
    993       get {
    994         return this.ChildField;
    995       }
    996       set {
    997         if ((this.ChildField.Equals(value) != true)) {
    998           this.ChildField = value;
    999           this.RaisePropertyChanged("Child");
    1000         }
    1001       }
    1002     }
    1003 
    1004     [System.Runtime.Serialization.DataMemberAttribute()]
    1005     public System.Guid Parent {
    1006       get {
    1007         return this.ParentField;
    1008       }
    1009       set {
    1010         if ((this.ParentField.Equals(value) != true)) {
    1011           this.ParentField = value;
    1012           this.RaisePropertyChanged("Parent");
    1013         }
    1014       }
    1015     }
    1016 
    1017     public event System.ComponentModel.PropertyChangedEventHandler PropertyChanged;
    1018 
    1019     protected void RaisePropertyChanged(string propertyName) {
    1020       System.ComponentModel.PropertyChangedEventHandler propertyChanged = this.PropertyChanged;
    1021       if ((propertyChanged != null)) {
    1022         propertyChanged(this, new System.ComponentModel.PropertyChangedEventArgs(propertyName));
    1023       }
    1024     }
    1025   }
    1026 
    1027   [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
    1028   [System.ServiceModel.ServiceContractAttribute(ConfigurationName = "HeuristicLab.Clients.Access.IAccessService")]
    1029   public interface IAccessService {
    1030 
    1031     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IAccessService/GetUsersAndGroups", ReplyAction = "http://tempuri.org/IAccessService/GetUsersAndGroupsResponse")]
    1032     System.Collections.Generic.List<HeuristicLab.Clients.Access.UserGroupBase> GetUsersAndGroups();
    1033 
    1034     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IAccessService/GetAllLeightweightUsersAndGroups", ReplyAction = "http://tempuri.org/IAccessService/GetAllLeightweightUsersAndGroupsResponse")]
    1035     System.Collections.Generic.List<HeuristicLab.Clients.Access.UserGroupBase> GetAllLeightweightUsersAndGroups();
    1036 
    1037     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IAccessService/GetLeightweightUsersAndGroups", ReplyAction = "http://tempuri.org/IAccessService/GetLeightweightUsersAndGroupsResponse")]
    1038     System.Collections.Generic.List<HeuristicLab.Clients.Access.UserGroupBase> GetLeightweightUsersAndGroups(System.Collections.Generic.List<System.Guid> ids);
    1039 
    1040     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IAccessService/GetUserGroupMapping", ReplyAction = "http://tempuri.org/IAccessService/GetUserGroupMappingResponse")]
    1041     System.Collections.Generic.List<HeuristicLab.Clients.Access.UserGroupMapping> GetUserGroupMapping();
    1042 
    1043     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IAccessService/GetRoles", ReplyAction = "http://tempuri.org/IAccessService/GetRolesResponse")]
    1044     System.Collections.Generic.List<HeuristicLab.Clients.Access.Role> GetRoles();
    1045 
    1046     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IAccessService/AddRole", ReplyAction = "http://tempuri.org/IAccessService/AddRoleResponse")]
    1047     HeuristicLab.Clients.Access.Role AddRole(HeuristicLab.Clients.Access.Role role);
    1048 
    1049     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IAccessService/DeleteRole", ReplyAction = "http://tempuri.org/IAccessService/DeleteRoleResponse")]
    1050     void DeleteRole(HeuristicLab.Clients.Access.Role role);
    1051 
    1052     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IAccessService/GetUserRoles", ReplyAction = "http://tempuri.org/IAccessService/GetUserRolesResponse")]
    1053     System.Collections.Generic.List<HeuristicLab.Clients.Access.Role> GetUserRoles(HeuristicLab.Clients.Access.User user);
    1054 
    1055     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IAccessService/AddRoleToGroup", ReplyAction = "http://tempuri.org/IAccessService/AddRoleToGroupResponse")]
    1056     void AddRoleToGroup(HeuristicLab.Clients.Access.UserGroup userGroup, HeuristicLab.Clients.Access.Role role);
    1057 
    1058     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IAccessService/RemoveRoleFromGroup", ReplyAction = "http://tempuri.org/IAccessService/RemoveRoleFromGroupResponse")]
    1059     void RemoveRoleFromGroup(HeuristicLab.Clients.Access.UserGroup userGroup, HeuristicLab.Clients.Access.Role role);
    1060 
    1061     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IAccessService/ReportError", ReplyAction = "http://tempuri.org/IAccessService/ReportErrorResponse")]
    1062     void ReportError(HeuristicLab.Clients.Access.ClientError error);
    1063 
    1064     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IAccessService/GetClientErrors", ReplyAction = "http://tempuri.org/IAccessService/GetClientErrorsResponse")]
    1065     System.Collections.Generic.List<HeuristicLab.Clients.Access.ClientError> GetClientErrors();
    1066 
    1067     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IAccessService/GetLastClientErrors", ReplyAction = "http://tempuri.org/IAccessService/GetLastClientErrorsResponse")]
    1068     System.Collections.Generic.List<HeuristicLab.Clients.Access.ClientError> GetLastClientErrors(System.DateTime startDate);
    1069 
    1070     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IAccessService/DeleteError", ReplyAction = "http://tempuri.org/IAccessService/DeleteErrorResponse")]
    1071     void DeleteError(HeuristicLab.Clients.Access.ClientError error);
    1072 
    1073     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IAccessService/ClientExists", ReplyAction = "http://tempuri.org/IAccessService/ClientExistsResponse")]
    1074     bool ClientExists(System.Guid id);
    1075 
    1076     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IAccessService/GetClient", ReplyAction = "http://tempuri.org/IAccessService/GetClientResponse")]
    1077     HeuristicLab.Clients.Access.Client GetClient(System.Guid id);
    1078 
    1079     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IAccessService/GetClients", ReplyAction = "http://tempuri.org/IAccessService/GetClientsResponse")]
    1080     System.Collections.Generic.List<HeuristicLab.Clients.Access.Client> GetClients(System.Collections.Generic.List<System.Guid> ids);
    1081 
    1082     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IAccessService/GetAllClients", ReplyAction = "http://tempuri.org/IAccessService/GetAllClientsResponse")]
    1083     System.Collections.Generic.List<HeuristicLab.Clients.Access.Client> GetAllClients();
    1084 
    1085     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IAccessService/AddClient", ReplyAction = "http://tempuri.org/IAccessService/AddClientResponse")]
    1086     void AddClient(HeuristicLab.Clients.Access.Client client);
    1087 
    1088     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IAccessService/UpdateClient", ReplyAction = "http://tempuri.org/IAccessService/UpdateClientResponse")]
    1089     void UpdateClient(HeuristicLab.Clients.Access.Client client);
    1090 
    1091     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IAccessService/DeleteClient", ReplyAction = "http://tempuri.org/IAccessService/DeleteClientResponse")]
    1092     void DeleteClient(HeuristicLab.Clients.Access.Client client);
    1093 
    1094     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IAccessService/GetAllClientGroups", ReplyAction = "http://tempuri.org/IAccessService/GetAllClientGroupsResponse")]
    1095     System.Collections.Generic.List<HeuristicLab.Clients.Access.ClientGroup> GetAllClientGroups();
    1096 
    1097     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IAccessService/GetClientGroups", ReplyAction = "http://tempuri.org/IAccessService/GetClientGroupsResponse")]
    1098     System.Collections.Generic.List<HeuristicLab.Clients.Access.ClientGroup> GetClientGroups(System.Collections.Generic.List<System.Guid> ids);
    1099 
    1100     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IAccessService/AddClientGroup", ReplyAction = "http://tempuri.org/IAccessService/AddClientGroupResponse")]
    1101     System.Guid AddClientGroup(HeuristicLab.Clients.Access.ClientGroup group);
    1102 
    1103     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IAccessService/UpdateClientGroup", ReplyAction = "http://tempuri.org/IAccessService/UpdateClientGroupResponse")]
    1104     void UpdateClientGroup(HeuristicLab.Clients.Access.ClientGroup group);
    1105 
    1106     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IAccessService/DeleteClientGroup", ReplyAction = "http://tempuri.org/IAccessService/DeleteClientGroupResponse")]
    1107     void DeleteClientGroup(HeuristicLab.Clients.Access.ClientGroup group);
    1108 
    1109     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IAccessService/AddResourceToGroup", ReplyAction = "http://tempuri.org/IAccessService/AddResourceToGroupResponse")]
    1110     void AddResourceToGroup(HeuristicLab.Clients.Access.Resource resource, HeuristicLab.Clients.Access.ClientGroup group);
    1111 
    1112     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IAccessService/RemoveResourceFromGroup", ReplyAction = "http://tempuri.org/IAccessService/RemoveResourceFromGroupResponse")]
    1113     void RemoveResourceFromGroup(HeuristicLab.Clients.Access.Resource resource, HeuristicLab.Clients.Access.ClientGroup group);
    1114 
    1115     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IAccessService/GetClientGroupMapping", ReplyAction = "http://tempuri.org/IAccessService/GetClientGroupMappingResponse")]
    1116     System.Collections.Generic.List<HeuristicLab.Clients.Access.ClientGroupMapping> GetClientGroupMapping();
    1117 
    1118     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IAccessService/GetResources", ReplyAction = "http://tempuri.org/IAccessService/GetResourcesResponse")]
    1119     System.Collections.Generic.List<HeuristicLab.Clients.Access.Resource> GetResources();
    1120 
    1121     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IAccessService/GetLastClientLog", ReplyAction = "http://tempuri.org/IAccessService/GetLastClientLogResponse")]
    1122     HeuristicLab.Clients.Access.ClientLog GetLastClientLog(System.Guid clientId);
    1123 
    1124     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IAccessService/GetClientLogs", ReplyAction = "http://tempuri.org/IAccessService/GetClientLogsResponse")]
    1125     System.Collections.Generic.List<HeuristicLab.Clients.Access.ClientLog> GetClientLogs(System.Guid clientId);
    1126 
    1127     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IAccessService/GetClientLogsSince", ReplyAction = "http://tempuri.org/IAccessService/GetClientLogsSinceResponse")]
    1128     System.Collections.Generic.List<HeuristicLab.Clients.Access.ClientLog> GetClientLogsSince(System.DateTime startDate);
    1129 
    1130     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IAccessService/AddClientLog", ReplyAction = "http://tempuri.org/IAccessService/AddClientLogResponse")]
    1131     void AddClientLog(HeuristicLab.Clients.Access.ClientLog log);
    1132 
    1133     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IAccessService/DeleteClientLog", ReplyAction = "http://tempuri.org/IAccessService/DeleteClientLogResponse")]
    1134     void DeleteClientLog(HeuristicLab.Clients.Access.ClientLog log);
    1135 
    1136     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IAccessService/Login", ReplyAction = "http://tempuri.org/IAccessService/LoginResponse")]
    1137     HeuristicLab.Clients.Access.LightweightUser Login();
    1138 
    1139     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IAccessService/GetGroupsOfCurrentUser", ReplyAction = "http://tempuri.org/IAccessService/GetGroupsOfCurrentUserResponse")]
    1140     System.Collections.Generic.List<HeuristicLab.Clients.Access.UserGroup> GetGroupsOfCurrentUser();
    1141 
    1142     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IAccessService/GetRolesOfCurrentUser", ReplyAction = "http://tempuri.org/IAccessService/GetRolesOfCurrentUserResponse")]
    1143     System.Collections.Generic.List<HeuristicLab.Clients.Access.Role> GetRolesOfCurrentUser();
    1144 
    1145     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IAccessService/GetAllLightweightUsers", ReplyAction = "http://tempuri.org/IAccessService/GetAllLightweightUsersResponse")]
    1146     System.Collections.Generic.List<HeuristicLab.Clients.Access.LightweightUser> GetAllLightweightUsers();
    1147 
    1148     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IAccessService/GetLightweightUsers", ReplyAction = "http://tempuri.org/IAccessService/GetLightweightUsersResponse")]
    1149     System.Collections.Generic.List<HeuristicLab.Clients.Access.LightweightUser> GetLightweightUsers(System.Collections.Generic.List<System.Guid> ids);
    1150 
    1151     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IAccessService/GetAllUsers", ReplyAction = "http://tempuri.org/IAccessService/GetAllUsersResponse")]
    1152     System.Collections.Generic.List<HeuristicLab.Clients.Access.User> GetAllUsers();
    1153 
    1154     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IAccessService/GetUsers", ReplyAction = "http://tempuri.org/IAccessService/GetUsersResponse")]
    1155     System.Collections.Generic.List<HeuristicLab.Clients.Access.User> GetUsers(System.Collections.Generic.List<System.Guid> ids);
    1156 
    1157     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IAccessService/AddUser", ReplyAction = "http://tempuri.org/IAccessService/AddUserResponse")]
    1158     HeuristicLab.Clients.Access.User AddUser(HeuristicLab.Clients.Access.User user);
    1159 
    1160     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IAccessService/DeleteUser", ReplyAction = "http://tempuri.org/IAccessService/DeleteUserResponse")]
    1161     void DeleteUser(HeuristicLab.Clients.Access.User user);
    1162 
    1163     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IAccessService/UpdateUser", ReplyAction = "http://tempuri.org/IAccessService/UpdateUserResponse")]
    1164     void UpdateUser(HeuristicLab.Clients.Access.User user);
    1165 
    1166     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IAccessService/AddUserToRole", ReplyAction = "http://tempuri.org/IAccessService/AddUserToRoleResponse")]
    1167     void AddUserToRole(HeuristicLab.Clients.Access.Role role, HeuristicLab.Clients.Access.User user);
    1168 
    1169     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IAccessService/RemoveUserFromRole", ReplyAction = "http://tempuri.org/IAccessService/RemoveUserFromRoleResponse")]
    1170     void RemoveUserFromRole(HeuristicLab.Clients.Access.Role role, HeuristicLab.Clients.Access.User user);
    1171 
    1172     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IAccessService/ResetPassword", ReplyAction = "http://tempuri.org/IAccessService/ResetPasswordResponse")]
    1173     bool ResetPassword(HeuristicLab.Clients.Access.User user, string oldPassword, string newPassword);
    1174 
    1175     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IAccessService/GetAllUserGroups", ReplyAction = "http://tempuri.org/IAccessService/GetAllUserGroupsResponse")]
    1176     System.Collections.Generic.List<HeuristicLab.Clients.Access.UserGroup> GetAllUserGroups();
    1177 
    1178     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IAccessService/GetUserGroupsOfUser", ReplyAction = "http://tempuri.org/IAccessService/GetUserGroupsOfUserResponse")]
    1179     System.Collections.Generic.List<HeuristicLab.Clients.Access.UserGroup> GetUserGroupsOfUser(System.Guid userId);
    1180 
    1181     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IAccessService/GetUserGroups", ReplyAction = "http://tempuri.org/IAccessService/GetUserGroupsResponse")]
    1182     System.Collections.Generic.List<HeuristicLab.Clients.Access.UserGroup> GetUserGroups(System.Collections.Generic.List<System.Guid> ids);
    1183 
    1184     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IAccessService/AddUserGroup", ReplyAction = "http://tempuri.org/IAccessService/AddUserGroupResponse")]
    1185     System.Guid AddUserGroup(HeuristicLab.Clients.Access.UserGroup group);
    1186 
    1187     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IAccessService/UpdateUserGroup", ReplyAction = "http://tempuri.org/IAccessService/UpdateUserGroupResponse")]
    1188     void UpdateUserGroup(HeuristicLab.Clients.Access.UserGroup group);
    1189 
    1190     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IAccessService/DeleteUserGroup", ReplyAction = "http://tempuri.org/IAccessService/DeleteUserGroupResponse")]
    1191     void DeleteUserGroup(HeuristicLab.Clients.Access.UserGroup group);
    1192 
    1193     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IAccessService/AddUserGroupBaseToGroup", ReplyAction = "http://tempuri.org/IAccessService/AddUserGroupBaseToGroupResponse")]
    1194     void AddUserGroupBaseToGroup(HeuristicLab.Clients.Access.UserGroupBase resource, HeuristicLab.Clients.Access.UserGroup group);
    1195 
    1196     [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IAccessService/RemoveUserGroupBaseFromGroup", ReplyAction = "http://tempuri.org/IAccessService/RemoveUserGroupBaseFromGroupResponse")]
    1197     void RemoveUserGroupBaseFromGroup(HeuristicLab.Clients.Access.UserGroupBase resource, HeuristicLab.Clients.Access.UserGroup group);
    1198   }
    1199 
    1200   [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
    1201   public interface IAccessServiceChannel : HeuristicLab.Clients.Access.IAccessService, System.ServiceModel.IClientChannel {
    1202   }
    1203 
    1204   [System.Diagnostics.DebuggerStepThroughAttribute()]
    1205   [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
    1206   public partial class AccessServiceClient : System.ServiceModel.ClientBase<HeuristicLab.Clients.Access.IAccessService>, HeuristicLab.Clients.Access.IAccessService {
    1207 
    1208     public AccessServiceClient() {
    1209     }
    1210 
    1211     public AccessServiceClient(string endpointConfigurationName) :
    1212       base(endpointConfigurationName) {
    1213     }
    1214 
    1215     public AccessServiceClient(string endpointConfigurationName, string remoteAddress) :
    1216       base(endpointConfigurationName, remoteAddress) {
    1217     }
    1218 
    1219     public AccessServiceClient(string endpointConfigurationName, System.ServiceModel.EndpointAddress remoteAddress) :
    1220       base(endpointConfigurationName, remoteAddress) {
    1221     }
    1222 
    1223     public AccessServiceClient(System.ServiceModel.Channels.Binding binding, System.ServiceModel.EndpointAddress remoteAddress) :
    1224       base(binding, remoteAddress) {
    1225     }
    1226 
    1227     public System.Collections.Generic.List<HeuristicLab.Clients.Access.UserGroupBase> GetUsersAndGroups() {
    1228       return base.Channel.GetUsersAndGroups();
    1229     }
    1230 
    1231     public System.Collections.Generic.List<HeuristicLab.Clients.Access.UserGroupBase> GetAllLeightweightUsersAndGroups() {
    1232       return base.Channel.GetAllLeightweightUsersAndGroups();
    1233     }
    1234 
    1235     public System.Collections.Generic.List<HeuristicLab.Clients.Access.UserGroupBase> GetLeightweightUsersAndGroups(System.Collections.Generic.List<System.Guid> ids) {
    1236       return base.Channel.GetLeightweightUsersAndGroups(ids);
    1237     }
    1238 
    1239     public System.Collections.Generic.List<HeuristicLab.Clients.Access.UserGroupMapping> GetUserGroupMapping() {
    1240       return base.Channel.GetUserGroupMapping();
    1241     }
    1242 
    1243     public System.Collections.Generic.List<HeuristicLab.Clients.Access.Role> GetRoles() {
    1244       return base.Channel.GetRoles();
    1245     }
    1246 
    1247     public HeuristicLab.Clients.Access.Role AddRole(HeuristicLab.Clients.Access.Role role) {
    1248       return base.Channel.AddRole(role);
    1249     }
    1250 
    1251     public void DeleteRole(HeuristicLab.Clients.Access.Role role) {
    1252       base.Channel.DeleteRole(role);
    1253     }
    1254 
    1255     public System.Collections.Generic.List<HeuristicLab.Clients.Access.Role> GetUserRoles(HeuristicLab.Clients.Access.User user) {
    1256       return base.Channel.GetUserRoles(user);
    1257     }
    1258 
    1259     public void AddRoleToGroup(HeuristicLab.Clients.Access.UserGroup userGroup, HeuristicLab.Clients.Access.Role role) {
    1260       base.Channel.AddRoleToGroup(userGroup, role);
    1261     }
    1262 
    1263     public void RemoveRoleFromGroup(HeuristicLab.Clients.Access.UserGroup userGroup, HeuristicLab.Clients.Access.Role role) {
    1264       base.Channel.RemoveRoleFromGroup(userGroup, role);
    1265     }
    1266 
    1267     public void ReportError(HeuristicLab.Clients.Access.ClientError error) {
    1268       base.Channel.ReportError(error);
    1269     }
    1270 
    1271     public System.Collections.Generic.List<HeuristicLab.Clients.Access.ClientError> GetClientErrors() {
    1272       return base.Channel.GetClientErrors();
    1273     }
    1274 
    1275     public System.Collections.Generic.List<HeuristicLab.Clients.Access.ClientError> GetLastClientErrors(System.DateTime startDate) {
    1276       return base.Channel.GetLastClientErrors(startDate);
    1277     }
    1278 
    1279     public void DeleteError(HeuristicLab.Clients.Access.ClientError error) {
    1280       base.Channel.DeleteError(error);
    1281     }
    1282 
    1283     public bool ClientExists(System.Guid id) {
    1284       return base.Channel.ClientExists(id);
    1285     }
    1286 
    1287     public HeuristicLab.Clients.Access.Client GetClient(System.Guid id) {
    1288       return base.Channel.GetClient(id);
    1289     }
    1290 
    1291     public System.Collections.Generic.List<HeuristicLab.Clients.Access.Client> GetClients(System.Collections.Generic.List<System.Guid> ids) {
    1292       return base.Channel.GetClients(ids);
    1293     }
    1294 
    1295     public System.Collections.Generic.List<HeuristicLab.Clients.Access.Client> GetAllClients() {
    1296       return base.Channel.GetAllClients();
    1297     }
    1298 
    1299     public void AddClient(HeuristicLab.Clients.Access.Client client) {
    1300       base.Channel.AddClient(client);
    1301     }
    1302 
    1303     public void UpdateClient(HeuristicLab.Clients.Access.Client client) {
    1304       base.Channel.UpdateClient(client);
    1305     }
    1306 
    1307     public void DeleteClient(HeuristicLab.Clients.Access.Client client) {
    1308       base.Channel.DeleteClient(client);
    1309     }
    1310 
    1311     public System.Collections.Generic.List<HeuristicLab.Clients.Access.ClientGroup> GetAllClientGroups() {
    1312       return base.Channel.GetAllClientGroups();
    1313     }
    1314 
    1315     public System.Collections.Generic.List<HeuristicLab.Clients.Access.ClientGroup> GetClientGroups(System.Collections.Generic.List<System.Guid> ids) {
    1316       return base.Channel.GetClientGroups(ids);
    1317     }
    1318 
    1319     public System.Guid AddClientGroup(HeuristicLab.Clients.Access.ClientGroup group) {
    1320       return base.Channel.AddClientGroup(group);
    1321     }
    1322 
    1323     public void UpdateClientGroup(HeuristicLab.Clients.Access.ClientGroup group) {
    1324       base.Channel.UpdateClientGroup(group);
    1325     }
    1326 
    1327     public void DeleteClientGroup(HeuristicLab.Clients.Access.ClientGroup group) {
    1328       base.Channel.DeleteClientGroup(group);
    1329     }
    1330 
    1331     public void AddResourceToGroup(HeuristicLab.Clients.Access.Resource resource, HeuristicLab.Clients.Access.ClientGroup group) {
    1332       base.Channel.AddResourceToGroup(resource, group);
    1333     }
    1334 
    1335     public void RemoveResourceFromGroup(HeuristicLab.Clients.Access.Resource resource, HeuristicLab.Clients.Access.ClientGroup group) {
    1336       base.Channel.RemoveResourceFromGroup(resource, group);
    1337     }
    1338 
    1339     public System.Collections.Generic.List<HeuristicLab.Clients.Access.ClientGroupMapping> GetClientGroupMapping() {
    1340       return base.Channel.GetClientGroupMapping();
    1341     }
    1342 
    1343     public System.Collections.Generic.List<HeuristicLab.Clients.Access.Resource> GetResources() {
    1344       return base.Channel.GetResources();
    1345     }
    1346 
    1347     public HeuristicLab.Clients.Access.ClientLog GetLastClientLog(System.Guid clientId) {
    1348       return base.Channel.GetLastClientLog(clientId);
    1349     }
    1350 
    1351     public System.Collections.Generic.List<HeuristicLab.Clients.Access.ClientLog> GetClientLogs(System.Guid clientId) {
    1352       return base.Channel.GetClientLogs(clientId);
    1353     }
    1354 
    1355     public System.Collections.Generic.List<HeuristicLab.Clients.Access.ClientLog> GetClientLogsSince(System.DateTime startDate) {
    1356       return base.Channel.GetClientLogsSince(startDate);
    1357     }
    1358 
    1359     public void AddClientLog(HeuristicLab.Clients.Access.ClientLog log) {
    1360       base.Channel.AddClientLog(log);
    1361     }
    1362 
    1363     public void DeleteClientLog(HeuristicLab.Clients.Access.ClientLog log) {
    1364       base.Channel.DeleteClientLog(log);
    1365     }
    1366 
    1367     public HeuristicLab.Clients.Access.LightweightUser Login() {
    1368       return base.Channel.Login();
    1369     }
    1370 
    1371     public System.Collections.Generic.List<HeuristicLab.Clients.Access.UserGroup> GetGroupsOfCurrentUser() {
    1372       return base.Channel.GetGroupsOfCurrentUser();
    1373     }
    1374 
    1375     public System.Collections.Generic.List<HeuristicLab.Clients.Access.Role> GetRolesOfCurrentUser() {
    1376       return base.Channel.GetRolesOfCurrentUser();
    1377     }
    1378 
    1379     public System.Collections.Generic.List<HeuristicLab.Clients.Access.LightweightUser> GetAllLightweightUsers() {
    1380       return base.Channel.GetAllLightweightUsers();
    1381     }
    1382 
    1383     public System.Collections.Generic.List<HeuristicLab.Clients.Access.LightweightUser> GetLightweightUsers(System.Collections.Generic.List<System.Guid> ids) {
    1384       return base.Channel.GetLightweightUsers(ids);
    1385     }
    1386 
    1387     public System.Collections.Generic.List<HeuristicLab.Clients.Access.User> GetAllUsers() {
    1388       return base.Channel.GetAllUsers();
    1389     }
    1390 
    1391     public System.Collections.Generic.List<HeuristicLab.Clients.Access.User> GetUsers(System.Collections.Generic.List<System.Guid> ids) {
    1392       return base.Channel.GetUsers(ids);
    1393     }
    1394 
    1395     public HeuristicLab.Clients.Access.User AddUser(HeuristicLab.Clients.Access.User user) {
    1396       return base.Channel.AddUser(user);
    1397     }
    1398 
    1399     public void DeleteUser(HeuristicLab.Clients.Access.User user) {
    1400       base.Channel.DeleteUser(user);
    1401     }
    1402 
    1403     public void UpdateUser(HeuristicLab.Clients.Access.User user) {
    1404       base.Channel.UpdateUser(user);
    1405     }
    1406 
    1407     public void AddUserToRole(HeuristicLab.Clients.Access.Role role, HeuristicLab.Clients.Access.User user) {
    1408       base.Channel.AddUserToRole(role, user);
    1409     }
    1410 
    1411     public void RemoveUserFromRole(HeuristicLab.Clients.Access.Role role, HeuristicLab.Clients.Access.User user) {
    1412       base.Channel.RemoveUserFromRole(role, user);
    1413     }
    1414 
    1415     public bool ResetPassword(HeuristicLab.Clients.Access.User user, string oldPassword, string newPassword) {
    1416       return base.Channel.ResetPassword(user, oldPassword, newPassword);
    1417     }
    1418 
    1419     public System.Collections.Generic.List<HeuristicLab.Clients.Access.UserGroup> GetAllUserGroups() {
    1420       return base.Channel.GetAllUserGroups();
    1421     }
    1422 
    1423     public System.Collections.Generic.List<HeuristicLab.Clients.Access.UserGroup> GetUserGroupsOfUser(System.Guid userId) {
    1424       return base.Channel.GetUserGroupsOfUser(userId);
    1425     }
    1426 
    1427     public System.Collections.Generic.List<HeuristicLab.Clients.Access.UserGroup> GetUserGroups(System.Collections.Generic.List<System.Guid> ids) {
    1428       return base.Channel.GetUserGroups(ids);
    1429     }
    1430 
    1431     public System.Guid AddUserGroup(HeuristicLab.Clients.Access.UserGroup group) {
    1432       return base.Channel.AddUserGroup(group);
    1433     }
    1434 
    1435     public void UpdateUserGroup(HeuristicLab.Clients.Access.UserGroup group) {
    1436       base.Channel.UpdateUserGroup(group);
    1437     }
    1438 
    1439     public void DeleteUserGroup(HeuristicLab.Clients.Access.UserGroup group) {
    1440       base.Channel.DeleteUserGroup(group);
    1441     }
    1442 
    1443     public void AddUserGroupBaseToGroup(HeuristicLab.Clients.Access.UserGroupBase resource, HeuristicLab.Clients.Access.UserGroup group) {
    1444       base.Channel.AddUserGroupBaseToGroup(resource, group);
    1445     }
    1446 
    1447     public void RemoveUserGroupBaseFromGroup(HeuristicLab.Clients.Access.UserGroupBase resource, HeuristicLab.Clients.Access.UserGroup group) {
    1448       base.Channel.RemoveUserGroupBaseFromGroup(resource, group);
    1449     }
    1450   }
     11namespace HeuristicLab.Clients.Access
     12{
     13    using System.Runtime.Serialization;
     14    using System;
     15   
     16   
     17    [System.Diagnostics.DebuggerStepThroughAttribute()]
     18    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
     19    [System.Runtime.Serialization.DataContractAttribute(Name="UserGroupBase", Namespace="http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Access.DataTransfer" +
     20        "")]
     21    [System.SerializableAttribute()]
     22    [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Access.UserGroup))]
     23    [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Access.User))]
     24    [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Access.LightweightUser))]
     25    public partial class UserGroupBase : HeuristicLab.Clients.Access.AccessItem
     26    {
     27       
     28        [System.Runtime.Serialization.OptionalFieldAttribute()]
     29        private System.Guid IdField;
     30       
     31        [System.Runtime.Serialization.DataMemberAttribute()]
     32        public System.Guid Id
     33        {
     34            get
     35            {
     36                return this.IdField;
     37            }
     38            set
     39            {
     40                if ((this.IdField.Equals(value) != true))
     41                {
     42                    this.IdField = value;
     43                    this.RaisePropertyChanged("Id");
     44                }
     45            }
     46        }
     47    }
     48   
     49    [System.Diagnostics.DebuggerStepThroughAttribute()]
     50    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
     51    [System.Runtime.Serialization.DataContractAttribute(Name="AccessItem", Namespace="http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Access.DataTransfer" +
     52        "")]
     53    [System.SerializableAttribute()]
     54    [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Access.Role))]
     55    [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Access.ClientError))]
     56    [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Access.Resource))]
     57    [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Access.Client))]
     58    [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Access.ClientConfiguration))]
     59    [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Access.ClientType))]
     60    [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Access.Country))]
     61    [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Access.OperatingSystem))]
     62    [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Access.ClientGroup))]
     63    [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Access.ClientLog))]
     64    [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Access.UserGroupBase))]
     65    [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Access.UserGroup))]
     66    [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Access.User))]
     67    [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Access.LightweightUser))]
     68    public partial class AccessItem : object, System.Runtime.Serialization.IExtensibleDataObject, System.ComponentModel.INotifyPropertyChanged
     69    {
     70       
     71        [System.NonSerializedAttribute()]
     72        private System.Runtime.Serialization.ExtensionDataObject extensionDataField;
     73       
     74        public System.Runtime.Serialization.ExtensionDataObject ExtensionData
     75        {
     76            get
     77            {
     78                return this.extensionDataField;
     79            }
     80            set
     81            {
     82                this.extensionDataField = value;
     83            }
     84        }
     85       
     86        public event System.ComponentModel.PropertyChangedEventHandler PropertyChanged;
     87       
     88    }
     89   
     90    [System.Diagnostics.DebuggerStepThroughAttribute()]
     91    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
     92    [System.Runtime.Serialization.DataContractAttribute(Name="Role", Namespace="http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Access.DataTransfer" +
     93        "")]
     94    [System.SerializableAttribute()]
     95    public partial class Role : HeuristicLab.Clients.Access.AccessItem
     96    {
     97       
     98        [System.Runtime.Serialization.OptionalFieldAttribute()]
     99        private string NameField;
     100       
     101        [System.Runtime.Serialization.DataMemberAttribute()]
     102        public string Name
     103        {
     104            get
     105            {
     106                return this.NameField;
     107            }
     108            set
     109            {
     110                if ((object.ReferenceEquals(this.NameField, value) != true))
     111                {
     112                    this.NameField = value;
     113                    this.RaisePropertyChanged("Name");
     114                }
     115            }
     116        }
     117    }
     118   
     119    [System.Diagnostics.DebuggerStepThroughAttribute()]
     120    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
     121    [System.Runtime.Serialization.DataContractAttribute(Name="ClientError", Namespace="http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Access.DataTransfer" +
     122        "")]
     123    [System.SerializableAttribute()]
     124    public partial class ClientError : HeuristicLab.Clients.Access.AccessItem
     125    {
     126       
     127        [System.Runtime.Serialization.OptionalFieldAttribute()]
     128        private System.Guid ClientIdField;
     129       
     130        [System.Runtime.Serialization.OptionalFieldAttribute()]
     131        private string ConfigDumpField;
     132       
     133        [System.Runtime.Serialization.OptionalFieldAttribute()]
     134        private string ExceptionField;
     135       
     136        [System.Runtime.Serialization.OptionalFieldAttribute()]
     137        private System.Guid IdField;
     138       
     139        [System.Runtime.Serialization.OptionalFieldAttribute()]
     140        private System.DateTime TimestampField;
     141       
     142        [System.Runtime.Serialization.OptionalFieldAttribute()]
     143        private string UserCommentField;
     144       
     145        [System.Runtime.Serialization.OptionalFieldAttribute()]
     146        private System.Guid UserIdField;
     147       
     148        [System.Runtime.Serialization.DataMemberAttribute()]
     149        public System.Guid ClientId
     150        {
     151            get
     152            {
     153                return this.ClientIdField;
     154            }
     155            set
     156            {
     157                if ((this.ClientIdField.Equals(value) != true))
     158                {
     159                    this.ClientIdField = value;
     160                    this.RaisePropertyChanged("ClientId");
     161                }
     162            }
     163        }
     164       
     165        [System.Runtime.Serialization.DataMemberAttribute()]
     166        public string ConfigDump
     167        {
     168            get
     169            {
     170                return this.ConfigDumpField;
     171            }
     172            set
     173            {
     174                if ((object.ReferenceEquals(this.ConfigDumpField, value) != true))
     175                {
     176                    this.ConfigDumpField = value;
     177                    this.RaisePropertyChanged("ConfigDump");
     178                }
     179            }
     180        }
     181       
     182        [System.Runtime.Serialization.DataMemberAttribute()]
     183        public string Exception
     184        {
     185            get
     186            {
     187                return this.ExceptionField;
     188            }
     189            set
     190            {
     191                if ((object.ReferenceEquals(this.ExceptionField, value) != true))
     192                {
     193                    this.ExceptionField = value;
     194                    this.RaisePropertyChanged("Exception");
     195                }
     196            }
     197        }
     198       
     199        [System.Runtime.Serialization.DataMemberAttribute()]
     200        public System.Guid Id
     201        {
     202            get
     203            {
     204                return this.IdField;
     205            }
     206            set
     207            {
     208                if ((this.IdField.Equals(value) != true))
     209                {
     210                    this.IdField = value;
     211                    this.RaisePropertyChanged("Id");
     212                }
     213            }
     214        }
     215       
     216        [System.Runtime.Serialization.DataMemberAttribute()]
     217        public System.DateTime Timestamp
     218        {
     219            get
     220            {
     221                return this.TimestampField;
     222            }
     223            set
     224            {
     225                if ((this.TimestampField.Equals(value) != true))
     226                {
     227                    this.TimestampField = value;
     228                    this.RaisePropertyChanged("Timestamp");
     229                }
     230            }
     231        }
     232       
     233        [System.Runtime.Serialization.DataMemberAttribute()]
     234        public string UserComment
     235        {
     236            get
     237            {
     238                return this.UserCommentField;
     239            }
     240            set
     241            {
     242                if ((object.ReferenceEquals(this.UserCommentField, value) != true))
     243                {
     244                    this.UserCommentField = value;
     245                    this.RaisePropertyChanged("UserComment");
     246                }
     247            }
     248        }
     249       
     250        [System.Runtime.Serialization.DataMemberAttribute()]
     251        public System.Guid UserId
     252        {
     253            get
     254            {
     255                return this.UserIdField;
     256            }
     257            set
     258            {
     259                if ((this.UserIdField.Equals(value) != true))
     260                {
     261                    this.UserIdField = value;
     262                    this.RaisePropertyChanged("UserId");
     263                }
     264            }
     265        }
     266    }
     267   
     268    [System.Diagnostics.DebuggerStepThroughAttribute()]
     269    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
     270    [System.Runtime.Serialization.DataContractAttribute(Name="Resource", Namespace="http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Access.DataTransfer" +
     271        "")]
     272    [System.SerializableAttribute()]
     273    [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Access.Client))]
     274    [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Clients.Access.ClientGroup))]
     275    public partial class Resource : HeuristicLab.Clients.Access.AccessItem
     276    {
     277       
     278        [System.Runtime.Serialization.OptionalFieldAttribute()]
     279        private string DescriptionField;
     280       
     281        [System.Runtime.Serialization.OptionalFieldAttribute()]
     282        private System.Guid IdField;
     283       
     284        [System.Runtime.Serialization.OptionalFieldAttribute()]
     285        private string NameField;
     286       
     287        [System.Runtime.Serialization.DataMemberAttribute()]
     288        public string Description
     289        {
     290            get
     291            {
     292                return this.DescriptionField;
     293            }
     294            set
     295            {
     296                if ((object.ReferenceEquals(this.DescriptionField, value) != true))
     297                {
     298                    this.DescriptionField = value;
     299                    this.RaisePropertyChanged("Description");
     300                }
     301            }
     302        }
     303       
     304        [System.Runtime.Serialization.DataMemberAttribute()]
     305        public System.Guid Id
     306        {
     307            get
     308            {
     309                return this.IdField;
     310            }
     311            set
     312            {
     313                if ((this.IdField.Equals(value) != true))
     314                {
     315                    this.IdField = value;
     316                    this.RaisePropertyChanged("Id");
     317                }
     318            }
     319        }
     320       
     321        [System.Runtime.Serialization.DataMemberAttribute()]
     322        public string Name
     323        {
     324            get
     325            {
     326                return this.NameField;
     327            }
     328            set
     329            {
     330                if ((object.ReferenceEquals(this.NameField, value) != true))
     331                {
     332                    this.NameField = value;
     333                    this.RaisePropertyChanged("Name");
     334                }
     335            }
     336        }
     337    }
     338   
     339    [System.Diagnostics.DebuggerStepThroughAttribute()]
     340    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
     341    [System.Runtime.Serialization.DataContractAttribute(Name="Client", Namespace="http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Access.DataTransfer" +
     342        "")]
     343    [System.SerializableAttribute()]
     344    public partial class Client : HeuristicLab.Clients.Access.Resource
     345    {
     346       
     347        [System.Runtime.Serialization.OptionalFieldAttribute()]
     348        private HeuristicLab.Clients.Access.ClientConfiguration ClientConfigurationField;
     349       
     350        [System.Runtime.Serialization.OptionalFieldAttribute()]
     351        private HeuristicLab.Clients.Access.ClientType ClientTypeField;
     352       
     353        [System.Runtime.Serialization.OptionalFieldAttribute()]
     354        private HeuristicLab.Clients.Access.Country CountryField;
     355       
     356        [System.Runtime.Serialization.OptionalFieldAttribute()]
     357        private string HeuristicLabVersionField;
     358       
     359        [System.Runtime.Serialization.OptionalFieldAttribute()]
     360        private int MemorySizeField;
     361       
     362        [System.Runtime.Serialization.OptionalFieldAttribute()]
     363        private int NumberOfCoresField;
     364       
     365        [System.Runtime.Serialization.OptionalFieldAttribute()]
     366        private HeuristicLab.Clients.Access.OperatingSystem OperatingSystemField;
     367       
     368        [System.Runtime.Serialization.OptionalFieldAttribute()]
     369        private double PerformanceValueField;
     370       
     371        [System.Runtime.Serialization.OptionalFieldAttribute()]
     372        private string ProcessorTypeField;
     373       
     374        [System.Runtime.Serialization.OptionalFieldAttribute()]
     375        private System.DateTime TimestampField;
     376       
     377        [System.Runtime.Serialization.DataMemberAttribute()]
     378        public HeuristicLab.Clients.Access.ClientConfiguration ClientConfiguration
     379        {
     380            get
     381            {
     382                return this.ClientConfigurationField;
     383            }
     384            set
     385            {
     386                if ((object.ReferenceEquals(this.ClientConfigurationField, value) != true))
     387                {
     388                    this.ClientConfigurationField = value;
     389                    this.RaisePropertyChanged("ClientConfiguration");
     390                }
     391            }
     392        }
     393       
     394        [System.Runtime.Serialization.DataMemberAttribute()]
     395        public HeuristicLab.Clients.Access.ClientType ClientType
     396        {
     397            get
     398            {
     399                return this.ClientTypeField;
     400            }
     401            set
     402            {
     403                if ((object.ReferenceEquals(this.ClientTypeField, value) != true))
     404                {
     405                    this.ClientTypeField = value;
     406                    this.RaisePropertyChanged("ClientType");
     407                }
     408            }
     409        }
     410       
     411        [System.Runtime.Serialization.DataMemberAttribute()]
     412        public HeuristicLab.Clients.Access.Country Country
     413        {
     414            get
     415            {
     416                return this.CountryField;
     417            }
     418            set
     419            {
     420                if ((object.ReferenceEquals(this.CountryField, value) != true))
     421                {
     422                    this.CountryField = value;
     423                    this.RaisePropertyChanged("Country");
     424                }
     425            }
     426        }
     427       
     428        [System.Runtime.Serialization.DataMemberAttribute()]
     429        public string HeuristicLabVersion
     430        {
     431            get
     432            {
     433                return this.HeuristicLabVersionField;
     434            }
     435            set
     436            {
     437                if ((object.ReferenceEquals(this.HeuristicLabVersionField, value) != true))
     438                {
     439                    this.HeuristicLabVersionField = value;
     440                    this.RaisePropertyChanged("HeuristicLabVersion");
     441                }
     442            }
     443        }
     444       
     445        [System.Runtime.Serialization.DataMemberAttribute()]
     446        public int MemorySize
     447        {
     448            get
     449            {
     450                return this.MemorySizeField;
     451            }
     452            set
     453            {
     454                if ((this.MemorySizeField.Equals(value) != true))
     455                {
     456                    this.MemorySizeField = value;
     457                    this.RaisePropertyChanged("MemorySize");
     458                }
     459            }
     460        }
     461       
     462        [System.Runtime.Serialization.DataMemberAttribute()]
     463        public int NumberOfCores
     464        {
     465            get
     466            {
     467                return this.NumberOfCoresField;
     468            }
     469            set
     470            {
     471                if ((this.NumberOfCoresField.Equals(value) != true))
     472                {
     473                    this.NumberOfCoresField = value;
     474                    this.RaisePropertyChanged("NumberOfCores");
     475                }
     476            }
     477        }
     478       
     479        [System.Runtime.Serialization.DataMemberAttribute()]
     480        public HeuristicLab.Clients.Access.OperatingSystem OperatingSystem
     481        {
     482            get
     483            {
     484                return this.OperatingSystemField;
     485            }
     486            set
     487            {
     488                if ((object.ReferenceEquals(this.OperatingSystemField, value) != true))
     489                {
     490                    this.OperatingSystemField = value;
     491                    this.RaisePropertyChanged("OperatingSystem");
     492                }
     493            }
     494        }
     495       
     496        [System.Runtime.Serialization.DataMemberAttribute()]
     497        public double PerformanceValue
     498        {
     499            get
     500            {
     501                return this.PerformanceValueField;
     502            }
     503            set
     504            {
     505                if ((this.PerformanceValueField.Equals(value) != true))
     506                {
     507                    this.PerformanceValueField = value;
     508                    this.RaisePropertyChanged("PerformanceValue");
     509                }
     510            }
     511        }
     512       
     513        [System.Runtime.Serialization.DataMemberAttribute()]
     514        public string ProcessorType
     515        {
     516            get
     517            {
     518                return this.ProcessorTypeField;
     519            }
     520            set
     521            {
     522                if ((object.ReferenceEquals(this.ProcessorTypeField, value) != true))
     523                {
     524                    this.ProcessorTypeField = value;
     525                    this.RaisePropertyChanged("ProcessorType");
     526                }
     527            }
     528        }
     529       
     530        [System.Runtime.Serialization.DataMemberAttribute()]
     531        public System.DateTime Timestamp
     532        {
     533            get
     534            {
     535                return this.TimestampField;
     536            }
     537            set
     538            {
     539                if ((this.TimestampField.Equals(value) != true))
     540                {
     541                    this.TimestampField = value;
     542                    this.RaisePropertyChanged("Timestamp");
     543                }
     544            }
     545        }
     546    }
     547   
     548    [System.Diagnostics.DebuggerStepThroughAttribute()]
     549    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
     550    [System.Runtime.Serialization.DataContractAttribute(Name="ClientConfiguration", Namespace="http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Access.DataTransfer" +
     551        "")]
     552    [System.SerializableAttribute()]
     553    public partial class ClientConfiguration : HeuristicLab.Clients.Access.AccessItem
     554    {
     555       
     556        [System.Runtime.Serialization.OptionalFieldAttribute()]
     557        private string DescriptionField;
     558       
     559        [System.Runtime.Serialization.OptionalFieldAttribute()]
     560        private string HashField;
     561       
     562        [System.Runtime.Serialization.OptionalFieldAttribute()]
     563        private System.Guid IdField;
     564       
     565        [System.Runtime.Serialization.DataMemberAttribute()]
     566        public string Description
     567        {
     568            get
     569            {
     570                return this.DescriptionField;
     571            }
     572            set
     573            {
     574                if ((object.ReferenceEquals(this.DescriptionField, value) != true))
     575                {
     576                    this.DescriptionField = value;
     577                    this.RaisePropertyChanged("Description");
     578                }
     579            }
     580        }
     581       
     582        [System.Runtime.Serialization.DataMemberAttribute()]
     583        public string Hash
     584        {
     585            get
     586            {
     587                return this.HashField;
     588            }
     589            set
     590            {
     591                if ((object.ReferenceEquals(this.HashField, value) != true))
     592                {
     593                    this.HashField = value;
     594                    this.RaisePropertyChanged("Hash");
     595                }
     596            }
     597        }
     598       
     599        [System.Runtime.Serialization.DataMemberAttribute()]
     600        public System.Guid Id
     601        {
     602            get
     603            {
     604                return this.IdField;
     605            }
     606            set
     607            {
     608                if ((this.IdField.Equals(value) != true))
     609                {
     610                    this.IdField = value;
     611                    this.RaisePropertyChanged("Id");
     612                }
     613            }
     614        }
     615    }
     616   
     617    [System.Diagnostics.DebuggerStepThroughAttribute()]
     618    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
     619    [System.Runtime.Serialization.DataContractAttribute(Name="ClientType", Namespace="http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Access.DataTransfer" +
     620        "")]
     621    [System.SerializableAttribute()]
     622    public partial class ClientType : HeuristicLab.Clients.Access.AccessItem
     623    {
     624       
     625        [System.Runtime.Serialization.OptionalFieldAttribute()]
     626        private System.Guid IdField;
     627       
     628        [System.Runtime.Serialization.OptionalFieldAttribute()]
     629        private string NameField;
     630       
     631        [System.Runtime.Serialization.DataMemberAttribute()]
     632        public System.Guid Id
     633        {
     634            get
     635            {
     636                return this.IdField;
     637            }
     638            set
     639            {
     640                if ((this.IdField.Equals(value) != true))
     641                {
     642                    this.IdField = value;
     643                    this.RaisePropertyChanged("Id");
     644                }
     645            }
     646        }
     647       
     648        [System.Runtime.Serialization.DataMemberAttribute()]
     649        public string Name
     650        {
     651            get
     652            {
     653                return this.NameField;
     654            }
     655            set
     656            {
     657                if ((object.ReferenceEquals(this.NameField, value) != true))
     658                {
     659                    this.NameField = value;
     660                    this.RaisePropertyChanged("Name");
     661                }
     662            }
     663        }
     664    }
     665   
     666    [System.Diagnostics.DebuggerStepThroughAttribute()]
     667    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
     668    [System.Runtime.Serialization.DataContractAttribute(Name="Country", Namespace="http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Access.DataTransfer" +
     669        "")]
     670    [System.SerializableAttribute()]
     671    public partial class Country : HeuristicLab.Clients.Access.AccessItem
     672    {
     673       
     674        [System.Runtime.Serialization.OptionalFieldAttribute()]
     675        private System.Guid IdField;
     676       
     677        [System.Runtime.Serialization.OptionalFieldAttribute()]
     678        private string NameField;
     679       
     680        [System.Runtime.Serialization.DataMemberAttribute()]
     681        public System.Guid Id
     682        {
     683            get
     684            {
     685                return this.IdField;
     686            }
     687            set
     688            {
     689                if ((this.IdField.Equals(value) != true))
     690                {
     691                    this.IdField = value;
     692                    this.RaisePropertyChanged("Id");
     693                }
     694            }
     695        }
     696       
     697        [System.Runtime.Serialization.DataMemberAttribute()]
     698        public string Name
     699        {
     700            get
     701            {
     702                return this.NameField;
     703            }
     704            set
     705            {
     706                if ((object.ReferenceEquals(this.NameField, value) != true))
     707                {
     708                    this.NameField = value;
     709                    this.RaisePropertyChanged("Name");
     710                }
     711            }
     712        }
     713    }
     714   
     715    [System.Diagnostics.DebuggerStepThroughAttribute()]
     716    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
     717    [System.Runtime.Serialization.DataContractAttribute(Name="OperatingSystem", Namespace="http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Access.DataTransfer" +
     718        "")]
     719    [System.SerializableAttribute()]
     720    public partial class OperatingSystem : HeuristicLab.Clients.Access.AccessItem
     721    {
     722       
     723        [System.Runtime.Serialization.OptionalFieldAttribute()]
     724        private System.Guid IdField;
     725       
     726        [System.Runtime.Serialization.OptionalFieldAttribute()]
     727        private string NameField;
     728       
     729        [System.Runtime.Serialization.DataMemberAttribute()]
     730        public System.Guid Id
     731        {
     732            get
     733            {
     734                return this.IdField;
     735            }
     736            set
     737            {
     738                if ((this.IdField.Equals(value) != true))
     739                {
     740                    this.IdField = value;
     741                    this.RaisePropertyChanged("Id");
     742                }
     743            }
     744        }
     745       
     746        [System.Runtime.Serialization.DataMemberAttribute()]
     747        public string Name
     748        {
     749            get
     750            {
     751                return this.NameField;
     752            }
     753            set
     754            {
     755                if ((object.ReferenceEquals(this.NameField, value) != true))
     756                {
     757                    this.NameField = value;
     758                    this.RaisePropertyChanged("Name");
     759                }
     760            }
     761        }
     762    }
     763   
     764    [System.Diagnostics.DebuggerStepThroughAttribute()]
     765    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
     766    [System.Runtime.Serialization.DataContractAttribute(Name="ClientGroup", Namespace="http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Access.DataTransfer" +
     767        "")]
     768    [System.SerializableAttribute()]
     769    public partial class ClientGroup : HeuristicLab.Clients.Access.Resource
     770    {
     771    }
     772   
     773    [System.Diagnostics.DebuggerStepThroughAttribute()]
     774    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
     775    [System.Runtime.Serialization.DataContractAttribute(Name="ClientLog", Namespace="http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Access.DataTransfer" +
     776        "")]
     777    [System.SerializableAttribute()]
     778    public partial class ClientLog : HeuristicLab.Clients.Access.AccessItem
     779    {
     780       
     781        [System.Runtime.Serialization.OptionalFieldAttribute()]
     782        private string MessageField;
     783       
     784        [System.Runtime.Serialization.OptionalFieldAttribute()]
     785        private System.Guid ResourceIdField;
     786       
     787        [System.Runtime.Serialization.OptionalFieldAttribute()]
     788        private System.DateTime TimestampField;
     789       
     790        [System.Runtime.Serialization.DataMemberAttribute()]
     791        public string Message
     792        {
     793            get
     794            {
     795                return this.MessageField;
     796            }
     797            set
     798            {
     799                if ((object.ReferenceEquals(this.MessageField, value) != true))
     800                {
     801                    this.MessageField = value;
     802                    this.RaisePropertyChanged("Message");
     803                }
     804            }
     805        }
     806       
     807        [System.Runtime.Serialization.DataMemberAttribute()]
     808        public System.Guid ResourceId
     809        {
     810            get
     811            {
     812                return this.ResourceIdField;
     813            }
     814            set
     815            {
     816                if ((this.ResourceIdField.Equals(value) != true))
     817                {
     818                    this.ResourceIdField = value;
     819                    this.RaisePropertyChanged("ResourceId");
     820                }
     821            }
     822        }
     823       
     824        [System.Runtime.Serialization.DataMemberAttribute()]
     825        public System.DateTime Timestamp
     826        {
     827            get
     828            {
     829                return this.TimestampField;
     830            }
     831            set
     832            {
     833                if ((this.TimestampField.Equals(value) != true))
     834                {
     835                    this.TimestampField = value;
     836                    this.RaisePropertyChanged("Timestamp");
     837                }
     838            }
     839        }
     840    }
     841   
     842    [System.Diagnostics.DebuggerStepThroughAttribute()]
     843    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
     844    [System.Runtime.Serialization.DataContractAttribute(Name="UserGroup", Namespace="http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Access.DataTransfer" +
     845        "")]
     846    [System.SerializableAttribute()]
     847    public partial class UserGroup : HeuristicLab.Clients.Access.UserGroupBase
     848    {
     849       
     850        [System.Runtime.Serialization.OptionalFieldAttribute()]
     851        private string NameField;
     852       
     853        [System.Runtime.Serialization.DataMemberAttribute()]
     854        public string Name
     855        {
     856            get
     857            {
     858                return this.NameField;
     859            }
     860            set
     861            {
     862                if ((object.ReferenceEquals(this.NameField, value) != true))
     863                {
     864                    this.NameField = value;
     865                    this.RaisePropertyChanged("Name");
     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="User", Namespace="http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Access.DataTransfer" +
     874        "")]
     875    [System.SerializableAttribute()]
     876    public partial class User : HeuristicLab.Clients.Access.UserGroupBase
     877    {
     878       
     879        [System.Runtime.Serialization.OptionalFieldAttribute()]
     880        private string CommentField;
     881       
     882        [System.Runtime.Serialization.OptionalFieldAttribute()]
     883        private System.DateTime CreationDateField;
     884       
     885        [System.Runtime.Serialization.OptionalFieldAttribute()]
     886        private string EmailField;
     887       
     888        [System.Runtime.Serialization.OptionalFieldAttribute()]
     889        private string FullNameField;
     890       
     891        [System.Runtime.Serialization.OptionalFieldAttribute()]
     892        private bool IsApprovedField;
     893       
     894        [System.Runtime.Serialization.OptionalFieldAttribute()]
     895        private System.DateTime LastActivityDateField;
     896       
     897        [System.Runtime.Serialization.OptionalFieldAttribute()]
     898        private System.DateTime LastLoginDateField;
     899       
     900        [System.Runtime.Serialization.OptionalFieldAttribute()]
     901        private System.DateTime LastPasswordChangedDateField;
     902       
     903        [System.Runtime.Serialization.OptionalFieldAttribute()]
     904        private string UserNameField;
     905       
     906        [System.Runtime.Serialization.DataMemberAttribute()]
     907        public string Comment
     908        {
     909            get
     910            {
     911                return this.CommentField;
     912            }
     913            set
     914            {
     915                if ((object.ReferenceEquals(this.CommentField, value) != true))
     916                {
     917                    this.CommentField = value;
     918                    this.RaisePropertyChanged("Comment");
     919                }
     920            }
     921        }
     922       
     923        [System.Runtime.Serialization.DataMemberAttribute()]
     924        public System.DateTime CreationDate
     925        {
     926            get
     927            {
     928                return this.CreationDateField;
     929            }
     930            set
     931            {
     932                if ((this.CreationDateField.Equals(value) != true))
     933                {
     934                    this.CreationDateField = value;
     935                    this.RaisePropertyChanged("CreationDate");
     936                }
     937            }
     938        }
     939       
     940        [System.Runtime.Serialization.DataMemberAttribute()]
     941        public string Email
     942        {
     943            get
     944            {
     945                return this.EmailField;
     946            }
     947            set
     948            {
     949                if ((object.ReferenceEquals(this.EmailField, value) != true))
     950                {
     951                    this.EmailField = value;
     952                    this.RaisePropertyChanged("Email");
     953                }
     954            }
     955        }
     956       
     957        [System.Runtime.Serialization.DataMemberAttribute()]
     958        public string FullName
     959        {
     960            get
     961            {
     962                return this.FullNameField;
     963            }
     964            set
     965            {
     966                if ((object.ReferenceEquals(this.FullNameField, value) != true))
     967                {
     968                    this.FullNameField = value;
     969                    this.RaisePropertyChanged("FullName");
     970                }
     971            }
     972        }
     973       
     974        [System.Runtime.Serialization.DataMemberAttribute()]
     975        public bool IsApproved
     976        {
     977            get
     978            {
     979                return this.IsApprovedField;
     980            }
     981            set
     982            {
     983                if ((this.IsApprovedField.Equals(value) != true))
     984                {
     985                    this.IsApprovedField = value;
     986                    this.RaisePropertyChanged("IsApproved");
     987                }
     988            }
     989        }
     990       
     991        [System.Runtime.Serialization.DataMemberAttribute()]
     992        public System.DateTime LastActivityDate
     993        {
     994            get
     995            {
     996                return this.LastActivityDateField;
     997            }
     998            set
     999            {
     1000                if ((this.LastActivityDateField.Equals(value) != true))
     1001                {
     1002                    this.LastActivityDateField = value;
     1003                    this.RaisePropertyChanged("LastActivityDate");
     1004                }
     1005            }
     1006        }
     1007       
     1008        [System.Runtime.Serialization.DataMemberAttribute()]
     1009        public System.DateTime LastLoginDate
     1010        {
     1011            get
     1012            {
     1013                return this.LastLoginDateField;
     1014            }
     1015            set
     1016            {
     1017                if ((this.LastLoginDateField.Equals(value) != true))
     1018                {
     1019                    this.LastLoginDateField = value;
     1020                    this.RaisePropertyChanged("LastLoginDate");
     1021                }
     1022            }
     1023        }
     1024       
     1025        [System.Runtime.Serialization.DataMemberAttribute()]
     1026        public System.DateTime LastPasswordChangedDate
     1027        {
     1028            get
     1029            {
     1030                return this.LastPasswordChangedDateField;
     1031            }
     1032            set
     1033            {
     1034                if ((this.LastPasswordChangedDateField.Equals(value) != true))
     1035                {
     1036                    this.LastPasswordChangedDateField = value;
     1037                    this.RaisePropertyChanged("LastPasswordChangedDate");
     1038                }
     1039            }
     1040        }
     1041       
     1042        [System.Runtime.Serialization.DataMemberAttribute()]
     1043        public string UserName
     1044        {
     1045            get
     1046            {
     1047                return this.UserNameField;
     1048            }
     1049            set
     1050            {
     1051                if ((object.ReferenceEquals(this.UserNameField, value) != true))
     1052                {
     1053                    this.UserNameField = value;
     1054                    this.RaisePropertyChanged("UserName");
     1055                }
     1056            }
     1057        }
     1058    }
     1059   
     1060    [System.Diagnostics.DebuggerStepThroughAttribute()]
     1061    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
     1062    [System.Runtime.Serialization.DataContractAttribute(Name="LightweightUser", Namespace="http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Access.DataTransfer" +
     1063        "")]
     1064    [System.SerializableAttribute()]
     1065    public partial class LightweightUser : HeuristicLab.Clients.Access.UserGroupBase
     1066    {
     1067       
     1068        [System.Runtime.Serialization.OptionalFieldAttribute()]
     1069        private string FullNameField;
     1070       
     1071        [System.Runtime.Serialization.OptionalFieldAttribute()]
     1072        private System.Collections.Generic.List<HeuristicLab.Clients.Access.UserGroup> GroupsField;
     1073       
     1074        [System.Runtime.Serialization.OptionalFieldAttribute()]
     1075        private System.Collections.Generic.List<HeuristicLab.Clients.Access.Role> RolesField;
     1076       
     1077        [System.Runtime.Serialization.OptionalFieldAttribute()]
     1078        private string UserNameField;
     1079       
     1080        [System.Runtime.Serialization.DataMemberAttribute()]
     1081        public string FullName
     1082        {
     1083            get
     1084            {
     1085                return this.FullNameField;
     1086            }
     1087            set
     1088            {
     1089                if ((object.ReferenceEquals(this.FullNameField, value) != true))
     1090                {
     1091                    this.FullNameField = value;
     1092                    this.RaisePropertyChanged("FullName");
     1093                }
     1094            }
     1095        }
     1096       
     1097        [System.Runtime.Serialization.DataMemberAttribute()]
     1098        public System.Collections.Generic.List<HeuristicLab.Clients.Access.UserGroup> Groups
     1099        {
     1100            get
     1101            {
     1102                return this.GroupsField;
     1103            }
     1104            set
     1105            {
     1106                if ((object.ReferenceEquals(this.GroupsField, value) != true))
     1107                {
     1108                    this.GroupsField = value;
     1109                    this.RaisePropertyChanged("Groups");
     1110                }
     1111            }
     1112        }
     1113       
     1114        [System.Runtime.Serialization.DataMemberAttribute()]
     1115        public System.Collections.Generic.List<HeuristicLab.Clients.Access.Role> Roles
     1116        {
     1117            get
     1118            {
     1119                return this.RolesField;
     1120            }
     1121            set
     1122            {
     1123                if ((object.ReferenceEquals(this.RolesField, value) != true))
     1124                {
     1125                    this.RolesField = value;
     1126                    this.RaisePropertyChanged("Roles");
     1127                }
     1128            }
     1129        }
     1130       
     1131        [System.Runtime.Serialization.DataMemberAttribute()]
     1132        public string UserName
     1133        {
     1134            get
     1135            {
     1136                return this.UserNameField;
     1137            }
     1138            set
     1139            {
     1140                if ((object.ReferenceEquals(this.UserNameField, value) != true))
     1141                {
     1142                    this.UserNameField = value;
     1143                    this.RaisePropertyChanged("UserName");
     1144                }
     1145            }
     1146        }
     1147    }
     1148   
     1149    [System.Diagnostics.DebuggerStepThroughAttribute()]
     1150    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
     1151    [System.Runtime.Serialization.DataContractAttribute(Name="UserGroupMapping", Namespace="http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Access.DataTransfer" +
     1152        "")]
     1153    [System.SerializableAttribute()]
     1154    public partial class UserGroupMapping : object, System.Runtime.Serialization.IExtensibleDataObject, System.ComponentModel.INotifyPropertyChanged
     1155    {
     1156       
     1157        [System.NonSerializedAttribute()]
     1158        private System.Runtime.Serialization.ExtensionDataObject extensionDataField;
     1159       
     1160        [System.Runtime.Serialization.OptionalFieldAttribute()]
     1161        private System.Guid ChildField;
     1162       
     1163        [System.Runtime.Serialization.OptionalFieldAttribute()]
     1164        private System.Guid ParentField;
     1165       
     1166        public System.Runtime.Serialization.ExtensionDataObject ExtensionData
     1167        {
     1168            get
     1169            {
     1170                return this.extensionDataField;
     1171            }
     1172            set
     1173            {
     1174                this.extensionDataField = value;
     1175            }
     1176        }
     1177       
     1178        [System.Runtime.Serialization.DataMemberAttribute()]
     1179        public System.Guid Child
     1180        {
     1181            get
     1182            {
     1183                return this.ChildField;
     1184            }
     1185            set
     1186            {
     1187                if ((this.ChildField.Equals(value) != true))
     1188                {
     1189                    this.ChildField = value;
     1190                    this.RaisePropertyChanged("Child");
     1191                }
     1192            }
     1193        }
     1194       
     1195        [System.Runtime.Serialization.DataMemberAttribute()]
     1196        public System.Guid Parent
     1197        {
     1198            get
     1199            {
     1200                return this.ParentField;
     1201            }
     1202            set
     1203            {
     1204                if ((this.ParentField.Equals(value) != true))
     1205                {
     1206                    this.ParentField = value;
     1207                    this.RaisePropertyChanged("Parent");
     1208                }
     1209            }
     1210        }
     1211       
     1212        public event System.ComponentModel.PropertyChangedEventHandler PropertyChanged;
     1213       
     1214        protected void RaisePropertyChanged(string propertyName)
     1215        {
     1216            System.ComponentModel.PropertyChangedEventHandler propertyChanged = this.PropertyChanged;
     1217            if ((propertyChanged != null))
     1218            {
     1219                propertyChanged(this, new System.ComponentModel.PropertyChangedEventArgs(propertyName));
     1220            }
     1221        }
     1222    }
     1223   
     1224    [System.Diagnostics.DebuggerStepThroughAttribute()]
     1225    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
     1226    [System.Runtime.Serialization.DataContractAttribute(Name="ClientGroupMapping", Namespace="http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Access.DataTransfer" +
     1227        "")]
     1228    [System.SerializableAttribute()]
     1229    public partial class ClientGroupMapping : object, System.Runtime.Serialization.IExtensibleDataObject, System.ComponentModel.INotifyPropertyChanged
     1230    {
     1231       
     1232        [System.NonSerializedAttribute()]
     1233        private System.Runtime.Serialization.ExtensionDataObject extensionDataField;
     1234       
     1235        [System.Runtime.Serialization.OptionalFieldAttribute()]
     1236        private System.Guid ChildField;
     1237       
     1238        [System.Runtime.Serialization.OptionalFieldAttribute()]
     1239        private System.Guid ParentField;
     1240       
     1241        public System.Runtime.Serialization.ExtensionDataObject ExtensionData
     1242        {
     1243            get
     1244            {
     1245                return this.extensionDataField;
     1246            }
     1247            set
     1248            {
     1249                this.extensionDataField = value;
     1250            }
     1251        }
     1252       
     1253        [System.Runtime.Serialization.DataMemberAttribute()]
     1254        public System.Guid Child
     1255        {
     1256            get
     1257            {
     1258                return this.ChildField;
     1259            }
     1260            set
     1261            {
     1262                if ((this.ChildField.Equals(value) != true))
     1263                {
     1264                    this.ChildField = value;
     1265                    this.RaisePropertyChanged("Child");
     1266                }
     1267            }
     1268        }
     1269       
     1270        [System.Runtime.Serialization.DataMemberAttribute()]
     1271        public System.Guid Parent
     1272        {
     1273            get
     1274            {
     1275                return this.ParentField;
     1276            }
     1277            set
     1278            {
     1279                if ((this.ParentField.Equals(value) != true))
     1280                {
     1281                    this.ParentField = value;
     1282                    this.RaisePropertyChanged("Parent");
     1283                }
     1284            }
     1285        }
     1286       
     1287        public event System.ComponentModel.PropertyChangedEventHandler PropertyChanged;
     1288       
     1289        protected void RaisePropertyChanged(string propertyName)
     1290        {
     1291            System.ComponentModel.PropertyChangedEventHandler propertyChanged = this.PropertyChanged;
     1292            if ((propertyChanged != null))
     1293            {
     1294                propertyChanged(this, new System.ComponentModel.PropertyChangedEventArgs(propertyName));
     1295            }
     1296        }
     1297    }
     1298   
     1299    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
     1300    [System.ServiceModel.ServiceContractAttribute(ConfigurationName="HeuristicLab.Clients.Access.IAccessService")]
     1301    public interface IAccessService
     1302    {
     1303       
     1304        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAccessService/GetUsersAndGroups", ReplyAction="http://tempuri.org/IAccessService/GetUsersAndGroupsResponse")]
     1305        System.Collections.Generic.List<HeuristicLab.Clients.Access.UserGroupBase> GetUsersAndGroups();
     1306       
     1307        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAccessService/GetAllLeightweightUsersAndGroups", ReplyAction="http://tempuri.org/IAccessService/GetAllLeightweightUsersAndGroupsResponse")]
     1308        System.Collections.Generic.List<HeuristicLab.Clients.Access.UserGroupBase> GetAllLeightweightUsersAndGroups();
     1309       
     1310        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAccessService/GetLeightweightUsersAndGroups", ReplyAction="http://tempuri.org/IAccessService/GetLeightweightUsersAndGroupsResponse")]
     1311        System.Collections.Generic.List<HeuristicLab.Clients.Access.UserGroupBase> GetLeightweightUsersAndGroups(System.Collections.Generic.List<System.Guid> ids);
     1312       
     1313        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAccessService/GetUserGroupMapping", ReplyAction="http://tempuri.org/IAccessService/GetUserGroupMappingResponse")]
     1314        System.Collections.Generic.List<HeuristicLab.Clients.Access.UserGroupMapping> GetUserGroupMapping();
     1315       
     1316        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAccessService/GetRoles", ReplyAction="http://tempuri.org/IAccessService/GetRolesResponse")]
     1317        System.Collections.Generic.List<HeuristicLab.Clients.Access.Role> GetRoles();
     1318       
     1319        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAccessService/AddRole", ReplyAction="http://tempuri.org/IAccessService/AddRoleResponse")]
     1320        HeuristicLab.Clients.Access.Role AddRole(HeuristicLab.Clients.Access.Role role);
     1321       
     1322        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAccessService/DeleteRole", ReplyAction="http://tempuri.org/IAccessService/DeleteRoleResponse")]
     1323        void DeleteRole(HeuristicLab.Clients.Access.Role role);
     1324       
     1325        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAccessService/GetUserRoles", ReplyAction="http://tempuri.org/IAccessService/GetUserRolesResponse")]
     1326        System.Collections.Generic.List<HeuristicLab.Clients.Access.Role> GetUserRoles(HeuristicLab.Clients.Access.User user);
     1327       
     1328        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAccessService/AddRoleToGroup", ReplyAction="http://tempuri.org/IAccessService/AddRoleToGroupResponse")]
     1329        void AddRoleToGroup(HeuristicLab.Clients.Access.UserGroup userGroup, HeuristicLab.Clients.Access.Role role);
     1330       
     1331        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAccessService/RemoveRoleFromGroup", ReplyAction="http://tempuri.org/IAccessService/RemoveRoleFromGroupResponse")]
     1332        void RemoveRoleFromGroup(HeuristicLab.Clients.Access.UserGroup userGroup, HeuristicLab.Clients.Access.Role role);
     1333       
     1334        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAccessService/ReportError", ReplyAction="http://tempuri.org/IAccessService/ReportErrorResponse")]
     1335        void ReportError(HeuristicLab.Clients.Access.ClientError error);
     1336       
     1337        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAccessService/GetClientErrors", ReplyAction="http://tempuri.org/IAccessService/GetClientErrorsResponse")]
     1338        System.Collections.Generic.List<HeuristicLab.Clients.Access.ClientError> GetClientErrors();
     1339       
     1340        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAccessService/GetLastClientErrors", ReplyAction="http://tempuri.org/IAccessService/GetLastClientErrorsResponse")]
     1341        System.Collections.Generic.List<HeuristicLab.Clients.Access.ClientError> GetLastClientErrors(System.DateTime startDate);
     1342       
     1343        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAccessService/DeleteError", ReplyAction="http://tempuri.org/IAccessService/DeleteErrorResponse")]
     1344        void DeleteError(HeuristicLab.Clients.Access.ClientError error);
     1345       
     1346        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAccessService/ClientExists", ReplyAction="http://tempuri.org/IAccessService/ClientExistsResponse")]
     1347        bool ClientExists(System.Guid id);
     1348       
     1349        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAccessService/GetClient", ReplyAction="http://tempuri.org/IAccessService/GetClientResponse")]
     1350        HeuristicLab.Clients.Access.Client GetClient(System.Guid id);
     1351       
     1352        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAccessService/GetClients", ReplyAction="http://tempuri.org/IAccessService/GetClientsResponse")]
     1353        System.Collections.Generic.List<HeuristicLab.Clients.Access.Client> GetClients(System.Collections.Generic.List<System.Guid> ids);
     1354       
     1355        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAccessService/GetAllClients", ReplyAction="http://tempuri.org/IAccessService/GetAllClientsResponse")]
     1356        System.Collections.Generic.List<HeuristicLab.Clients.Access.Client> GetAllClients();
     1357       
     1358        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAccessService/AddClient", ReplyAction="http://tempuri.org/IAccessService/AddClientResponse")]
     1359        void AddClient(HeuristicLab.Clients.Access.Client client);
     1360       
     1361        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAccessService/UpdateClient", ReplyAction="http://tempuri.org/IAccessService/UpdateClientResponse")]
     1362        void UpdateClient(HeuristicLab.Clients.Access.Client client);
     1363       
     1364        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAccessService/DeleteClient", ReplyAction="http://tempuri.org/IAccessService/DeleteClientResponse")]
     1365        void DeleteClient(HeuristicLab.Clients.Access.Client client);
     1366       
     1367        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAccessService/GetAllClientGroups", ReplyAction="http://tempuri.org/IAccessService/GetAllClientGroupsResponse")]
     1368        System.Collections.Generic.List<HeuristicLab.Clients.Access.ClientGroup> GetAllClientGroups();
     1369       
     1370        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAccessService/GetClientGroups", ReplyAction="http://tempuri.org/IAccessService/GetClientGroupsResponse")]
     1371        System.Collections.Generic.List<HeuristicLab.Clients.Access.ClientGroup> GetClientGroups(System.Collections.Generic.List<System.Guid> ids);
     1372       
     1373        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAccessService/AddClientGroup", ReplyAction="http://tempuri.org/IAccessService/AddClientGroupResponse")]
     1374        System.Guid AddClientGroup(HeuristicLab.Clients.Access.ClientGroup group);
     1375       
     1376        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAccessService/UpdateClientGroup", ReplyAction="http://tempuri.org/IAccessService/UpdateClientGroupResponse")]
     1377        void UpdateClientGroup(HeuristicLab.Clients.Access.ClientGroup group);
     1378       
     1379        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAccessService/DeleteClientGroup", ReplyAction="http://tempuri.org/IAccessService/DeleteClientGroupResponse")]
     1380        void DeleteClientGroup(HeuristicLab.Clients.Access.ClientGroup group);
     1381       
     1382        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAccessService/AddResourceToGroup", ReplyAction="http://tempuri.org/IAccessService/AddResourceToGroupResponse")]
     1383        void AddResourceToGroup(HeuristicLab.Clients.Access.Resource resource, HeuristicLab.Clients.Access.ClientGroup group);
     1384       
     1385        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAccessService/RemoveResourceFromGroup", ReplyAction="http://tempuri.org/IAccessService/RemoveResourceFromGroupResponse")]
     1386        void RemoveResourceFromGroup(HeuristicLab.Clients.Access.Resource resource, HeuristicLab.Clients.Access.ClientGroup group);
     1387       
     1388        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAccessService/GetClientGroupMapping", ReplyAction="http://tempuri.org/IAccessService/GetClientGroupMappingResponse")]
     1389        System.Collections.Generic.List<HeuristicLab.Clients.Access.ClientGroupMapping> GetClientGroupMapping();
     1390       
     1391        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAccessService/GetResources", ReplyAction="http://tempuri.org/IAccessService/GetResourcesResponse")]
     1392        System.Collections.Generic.List<HeuristicLab.Clients.Access.Resource> GetResources();
     1393       
     1394        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAccessService/GetLastClientLog", ReplyAction="http://tempuri.org/IAccessService/GetLastClientLogResponse")]
     1395        HeuristicLab.Clients.Access.ClientLog GetLastClientLog(System.Guid clientId);
     1396       
     1397        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAccessService/GetClientLogs", ReplyAction="http://tempuri.org/IAccessService/GetClientLogsResponse")]
     1398        System.Collections.Generic.List<HeuristicLab.Clients.Access.ClientLog> GetClientLogs(System.Guid clientId);
     1399       
     1400        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAccessService/GetClientLogsSince", ReplyAction="http://tempuri.org/IAccessService/GetClientLogsSinceResponse")]
     1401        System.Collections.Generic.List<HeuristicLab.Clients.Access.ClientLog> GetClientLogsSince(System.DateTime startDate);
     1402       
     1403        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAccessService/AddClientLog", ReplyAction="http://tempuri.org/IAccessService/AddClientLogResponse")]
     1404        void AddClientLog(HeuristicLab.Clients.Access.ClientLog log);
     1405       
     1406        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAccessService/DeleteClientLog", ReplyAction="http://tempuri.org/IAccessService/DeleteClientLogResponse")]
     1407        void DeleteClientLog(HeuristicLab.Clients.Access.ClientLog log);
     1408       
     1409        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAccessService/Login", ReplyAction="http://tempuri.org/IAccessService/LoginResponse")]
     1410        HeuristicLab.Clients.Access.LightweightUser Login();
     1411       
     1412        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAccessService/GetGroupsOfCurrentUser", ReplyAction="http://tempuri.org/IAccessService/GetGroupsOfCurrentUserResponse")]
     1413        System.Collections.Generic.List<HeuristicLab.Clients.Access.UserGroup> GetGroupsOfCurrentUser();
     1414       
     1415        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAccessService/GetRolesOfCurrentUser", ReplyAction="http://tempuri.org/IAccessService/GetRolesOfCurrentUserResponse")]
     1416        System.Collections.Generic.List<HeuristicLab.Clients.Access.Role> GetRolesOfCurrentUser();
     1417       
     1418        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAccessService/GetAllLightweightUsers", ReplyAction="http://tempuri.org/IAccessService/GetAllLightweightUsersResponse")]
     1419        System.Collections.Generic.List<HeuristicLab.Clients.Access.LightweightUser> GetAllLightweightUsers();
     1420       
     1421        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAccessService/GetLightweightUsers", ReplyAction="http://tempuri.org/IAccessService/GetLightweightUsersResponse")]
     1422        System.Collections.Generic.List<HeuristicLab.Clients.Access.LightweightUser> GetLightweightUsers(System.Collections.Generic.List<System.Guid> ids);
     1423       
     1424        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAccessService/GetAllUsers", ReplyAction="http://tempuri.org/IAccessService/GetAllUsersResponse")]
     1425        System.Collections.Generic.List<HeuristicLab.Clients.Access.User> GetAllUsers();
     1426       
     1427        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAccessService/GetUsers", ReplyAction="http://tempuri.org/IAccessService/GetUsersResponse")]
     1428        System.Collections.Generic.List<HeuristicLab.Clients.Access.User> GetUsers(System.Collections.Generic.List<System.Guid> ids);
     1429       
     1430        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAccessService/AddUser", ReplyAction="http://tempuri.org/IAccessService/AddUserResponse")]
     1431        HeuristicLab.Clients.Access.User AddUser(HeuristicLab.Clients.Access.User user);
     1432       
     1433        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAccessService/DeleteUser", ReplyAction="http://tempuri.org/IAccessService/DeleteUserResponse")]
     1434        void DeleteUser(HeuristicLab.Clients.Access.User user);
     1435       
     1436        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAccessService/UpdateUser", ReplyAction="http://tempuri.org/IAccessService/UpdateUserResponse")]
     1437        void UpdateUser(HeuristicLab.Clients.Access.User user);
     1438       
     1439        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAccessService/AddUserToRole", ReplyAction="http://tempuri.org/IAccessService/AddUserToRoleResponse")]
     1440        void AddUserToRole(HeuristicLab.Clients.Access.Role role, HeuristicLab.Clients.Access.User user);
     1441       
     1442        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAccessService/RemoveUserFromRole", ReplyAction="http://tempuri.org/IAccessService/RemoveUserFromRoleResponse")]
     1443        void RemoveUserFromRole(HeuristicLab.Clients.Access.Role role, HeuristicLab.Clients.Access.User user);
     1444       
     1445        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAccessService/ResetPassword", ReplyAction="http://tempuri.org/IAccessService/ResetPasswordResponse")]
     1446        bool ResetPassword(HeuristicLab.Clients.Access.User user, string oldPassword, string newPassword);
     1447       
     1448        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAccessService/GetAllUserGroups", ReplyAction="http://tempuri.org/IAccessService/GetAllUserGroupsResponse")]
     1449        System.Collections.Generic.List<HeuristicLab.Clients.Access.UserGroup> GetAllUserGroups();
     1450       
     1451        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAccessService/GetUserGroupsOfUser", ReplyAction="http://tempuri.org/IAccessService/GetUserGroupsOfUserResponse")]
     1452        System.Collections.Generic.List<HeuristicLab.Clients.Access.UserGroup> GetUserGroupsOfUser(System.Guid userId);
     1453       
     1454        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAccessService/GetUserGroups", ReplyAction="http://tempuri.org/IAccessService/GetUserGroupsResponse")]
     1455        System.Collections.Generic.List<HeuristicLab.Clients.Access.UserGroup> GetUserGroups(System.Collections.Generic.List<System.Guid> ids);
     1456       
     1457        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAccessService/AddUserGroup", ReplyAction="http://tempuri.org/IAccessService/AddUserGroupResponse")]
     1458        System.Guid AddUserGroup(HeuristicLab.Clients.Access.UserGroup group);
     1459       
     1460        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAccessService/UpdateUserGroup", ReplyAction="http://tempuri.org/IAccessService/UpdateUserGroupResponse")]
     1461        void UpdateUserGroup(HeuristicLab.Clients.Access.UserGroup group);
     1462       
     1463        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAccessService/DeleteUserGroup", ReplyAction="http://tempuri.org/IAccessService/DeleteUserGroupResponse")]
     1464        void DeleteUserGroup(HeuristicLab.Clients.Access.UserGroup group);
     1465       
     1466        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAccessService/AddUserGroupBaseToGroup", ReplyAction="http://tempuri.org/IAccessService/AddUserGroupBaseToGroupResponse")]
     1467        void AddUserGroupBaseToGroup(HeuristicLab.Clients.Access.UserGroupBase resource, HeuristicLab.Clients.Access.UserGroup group);
     1468       
     1469        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAccessService/RemoveUserGroupBaseFromGroup", ReplyAction="http://tempuri.org/IAccessService/RemoveUserGroupBaseFromGroupResponse")]
     1470        void RemoveUserGroupBaseFromGroup(HeuristicLab.Clients.Access.UserGroupBase resource, HeuristicLab.Clients.Access.UserGroup group);
     1471    }
     1472   
     1473    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
     1474    public interface IAccessServiceChannel : HeuristicLab.Clients.Access.IAccessService, System.ServiceModel.IClientChannel
     1475    {
     1476    }
     1477   
     1478    [System.Diagnostics.DebuggerStepThroughAttribute()]
     1479    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
     1480    public partial class AccessServiceClient : System.ServiceModel.ClientBase<HeuristicLab.Clients.Access.IAccessService>, HeuristicLab.Clients.Access.IAccessService
     1481    {
     1482       
     1483        public AccessServiceClient()
     1484        {
     1485        }
     1486       
     1487        public AccessServiceClient(string endpointConfigurationName) :
     1488                base(endpointConfigurationName)
     1489        {
     1490        }
     1491       
     1492        public AccessServiceClient(string endpointConfigurationName, string remoteAddress) :
     1493                base(endpointConfigurationName, remoteAddress)
     1494        {
     1495        }
     1496       
     1497        public AccessServiceClient(string endpointConfigurationName, System.ServiceModel.EndpointAddress remoteAddress) :
     1498                base(endpointConfigurationName, remoteAddress)
     1499        {
     1500        }
     1501       
     1502        public AccessServiceClient(System.ServiceModel.Channels.Binding binding, System.ServiceModel.EndpointAddress remoteAddress) :
     1503                base(binding, remoteAddress)
     1504        {
     1505        }
     1506       
     1507        public System.Collections.Generic.List<HeuristicLab.Clients.Access.UserGroupBase> GetUsersAndGroups()
     1508        {
     1509            return base.Channel.GetUsersAndGroups();
     1510        }
     1511       
     1512        public System.Collections.Generic.List<HeuristicLab.Clients.Access.UserGroupBase> GetAllLeightweightUsersAndGroups()
     1513        {
     1514            return base.Channel.GetAllLeightweightUsersAndGroups();
     1515        }
     1516       
     1517        public System.Collections.Generic.List<HeuristicLab.Clients.Access.UserGroupBase> GetLeightweightUsersAndGroups(System.Collections.Generic.List<System.Guid> ids)
     1518        {
     1519            return base.Channel.GetLeightweightUsersAndGroups(ids);
     1520        }
     1521       
     1522        public System.Collections.Generic.List<HeuristicLab.Clients.Access.UserGroupMapping> GetUserGroupMapping()
     1523        {
     1524            return base.Channel.GetUserGroupMapping();
     1525        }
     1526       
     1527        public System.Collections.Generic.List<HeuristicLab.Clients.Access.Role> GetRoles()
     1528        {
     1529            return base.Channel.GetRoles();
     1530        }
     1531       
     1532        public HeuristicLab.Clients.Access.Role AddRole(HeuristicLab.Clients.Access.Role role)
     1533        {
     1534            return base.Channel.AddRole(role);
     1535        }
     1536       
     1537        public void DeleteRole(HeuristicLab.Clients.Access.Role role)
     1538        {
     1539            base.Channel.DeleteRole(role);
     1540        }
     1541       
     1542        public System.Collections.Generic.List<HeuristicLab.Clients.Access.Role> GetUserRoles(HeuristicLab.Clients.Access.User user)
     1543        {
     1544            return base.Channel.GetUserRoles(user);
     1545        }
     1546       
     1547        public void AddRoleToGroup(HeuristicLab.Clients.Access.UserGroup userGroup, HeuristicLab.Clients.Access.Role role)
     1548        {
     1549            base.Channel.AddRoleToGroup(userGroup, role);
     1550        }
     1551       
     1552        public void RemoveRoleFromGroup(HeuristicLab.Clients.Access.UserGroup userGroup, HeuristicLab.Clients.Access.Role role)
     1553        {
     1554            base.Channel.RemoveRoleFromGroup(userGroup, role);
     1555        }
     1556       
     1557        public void ReportError(HeuristicLab.Clients.Access.ClientError error)
     1558        {
     1559            base.Channel.ReportError(error);
     1560        }
     1561       
     1562        public System.Collections.Generic.List<HeuristicLab.Clients.Access.ClientError> GetClientErrors()
     1563        {
     1564            return base.Channel.GetClientErrors();
     1565        }
     1566       
     1567        public System.Collections.Generic.List<HeuristicLab.Clients.Access.ClientError> GetLastClientErrors(System.DateTime startDate)
     1568        {
     1569            return base.Channel.GetLastClientErrors(startDate);
     1570        }
     1571       
     1572        public void DeleteError(HeuristicLab.Clients.Access.ClientError error)
     1573        {
     1574            base.Channel.DeleteError(error);
     1575        }
     1576       
     1577        public bool ClientExists(System.Guid id)
     1578        {
     1579            return base.Channel.ClientExists(id);
     1580        }
     1581       
     1582        public HeuristicLab.Clients.Access.Client GetClient(System.Guid id)
     1583        {
     1584            return base.Channel.GetClient(id);
     1585        }
     1586       
     1587        public System.Collections.Generic.List<HeuristicLab.Clients.Access.Client> GetClients(System.Collections.Generic.List<System.Guid> ids)
     1588        {
     1589            return base.Channel.GetClients(ids);
     1590        }
     1591       
     1592        public System.Collections.Generic.List<HeuristicLab.Clients.Access.Client> GetAllClients()
     1593        {
     1594            return base.Channel.GetAllClients();
     1595        }
     1596       
     1597        public void AddClient(HeuristicLab.Clients.Access.Client client)
     1598        {
     1599            base.Channel.AddClient(client);
     1600        }
     1601       
     1602        public void UpdateClient(HeuristicLab.Clients.Access.Client client)
     1603        {
     1604            base.Channel.UpdateClient(client);
     1605        }
     1606       
     1607        public void DeleteClient(HeuristicLab.Clients.Access.Client client)
     1608        {
     1609            base.Channel.DeleteClient(client);
     1610        }
     1611       
     1612        public System.Collections.Generic.List<HeuristicLab.Clients.Access.ClientGroup> GetAllClientGroups()
     1613        {
     1614            return base.Channel.GetAllClientGroups();
     1615        }
     1616       
     1617        public System.Collections.Generic.List<HeuristicLab.Clients.Access.ClientGroup> GetClientGroups(System.Collections.Generic.List<System.Guid> ids)
     1618        {
     1619            return base.Channel.GetClientGroups(ids);
     1620        }
     1621       
     1622        public System.Guid AddClientGroup(HeuristicLab.Clients.Access.ClientGroup group)
     1623        {
     1624            return base.Channel.AddClientGroup(group);
     1625        }
     1626       
     1627        public void UpdateClientGroup(HeuristicLab.Clients.Access.ClientGroup group)
     1628        {
     1629            base.Channel.UpdateClientGroup(group);
     1630        }
     1631       
     1632        public void DeleteClientGroup(HeuristicLab.Clients.Access.ClientGroup group)
     1633        {
     1634            base.Channel.DeleteClientGroup(group);
     1635        }
     1636       
     1637        public void AddResourceToGroup(HeuristicLab.Clients.Access.Resource resource, HeuristicLab.Clients.Access.ClientGroup group)
     1638        {
     1639            base.Channel.AddResourceToGroup(resource, group);
     1640        }
     1641       
     1642        public void RemoveResourceFromGroup(HeuristicLab.Clients.Access.Resource resource, HeuristicLab.Clients.Access.ClientGroup group)
     1643        {
     1644            base.Channel.RemoveResourceFromGroup(resource, group);
     1645        }
     1646       
     1647        public System.Collections.Generic.List<HeuristicLab.Clients.Access.ClientGroupMapping> GetClientGroupMapping()
     1648        {
     1649            return base.Channel.GetClientGroupMapping();
     1650        }
     1651       
     1652        public System.Collections.Generic.List<HeuristicLab.Clients.Access.Resource> GetResources()
     1653        {
     1654            return base.Channel.GetResources();
     1655        }
     1656       
     1657        public HeuristicLab.Clients.Access.ClientLog GetLastClientLog(System.Guid clientId)
     1658        {
     1659            return base.Channel.GetLastClientLog(clientId);
     1660        }
     1661       
     1662        public System.Collections.Generic.List<HeuristicLab.Clients.Access.ClientLog> GetClientLogs(System.Guid clientId)
     1663        {
     1664            return base.Channel.GetClientLogs(clientId);
     1665        }
     1666       
     1667        public System.Collections.Generic.List<HeuristicLab.Clients.Access.ClientLog> GetClientLogsSince(System.DateTime startDate)
     1668        {
     1669            return base.Channel.GetClientLogsSince(startDate);
     1670        }
     1671       
     1672        public void AddClientLog(HeuristicLab.Clients.Access.ClientLog log)
     1673        {
     1674            base.Channel.AddClientLog(log);
     1675        }
     1676       
     1677        public void DeleteClientLog(HeuristicLab.Clients.Access.ClientLog log)
     1678        {
     1679            base.Channel.DeleteClientLog(log);
     1680        }
     1681       
     1682        public HeuristicLab.Clients.Access.LightweightUser Login()
     1683        {
     1684            return base.Channel.Login();
     1685        }
     1686       
     1687        public System.Collections.Generic.List<HeuristicLab.Clients.Access.UserGroup> GetGroupsOfCurrentUser()
     1688        {
     1689            return base.Channel.GetGroupsOfCurrentUser();
     1690        }
     1691       
     1692        public System.Collections.Generic.List<HeuristicLab.Clients.Access.Role> GetRolesOfCurrentUser()
     1693        {
     1694            return base.Channel.GetRolesOfCurrentUser();
     1695        }
     1696       
     1697        public System.Collections.Generic.List<HeuristicLab.Clients.Access.LightweightUser> GetAllLightweightUsers()
     1698        {
     1699            return base.Channel.GetAllLightweightUsers();
     1700        }
     1701       
     1702        public System.Collections.Generic.List<HeuristicLab.Clients.Access.LightweightUser> GetLightweightUsers(System.Collections.Generic.List<System.Guid> ids)
     1703        {
     1704            return base.Channel.GetLightweightUsers(ids);
     1705        }
     1706       
     1707        public System.Collections.Generic.List<HeuristicLab.Clients.Access.User> GetAllUsers()
     1708        {
     1709            return base.Channel.GetAllUsers();
     1710        }
     1711       
     1712        public System.Collections.Generic.List<HeuristicLab.Clients.Access.User> GetUsers(System.Collections.Generic.List<System.Guid> ids)
     1713        {
     1714            return base.Channel.GetUsers(ids);
     1715        }
     1716       
     1717        public HeuristicLab.Clients.Access.User AddUser(HeuristicLab.Clients.Access.User user)
     1718        {
     1719            return base.Channel.AddUser(user);
     1720        }
     1721       
     1722        public void DeleteUser(HeuristicLab.Clients.Access.User user)
     1723        {
     1724            base.Channel.DeleteUser(user);
     1725        }
     1726       
     1727        public void UpdateUser(HeuristicLab.Clients.Access.User user)
     1728        {
     1729            base.Channel.UpdateUser(user);
     1730        }
     1731       
     1732        public void AddUserToRole(HeuristicLab.Clients.Access.Role role, HeuristicLab.Clients.Access.User user)
     1733        {
     1734            base.Channel.AddUserToRole(role, user);
     1735        }
     1736       
     1737        public void RemoveUserFromRole(HeuristicLab.Clients.Access.Role role, HeuristicLab.Clients.Access.User user)
     1738        {
     1739            base.Channel.RemoveUserFromRole(role, user);
     1740        }
     1741       
     1742        public bool ResetPassword(HeuristicLab.Clients.Access.User user, string oldPassword, string newPassword)
     1743        {
     1744            return base.Channel.ResetPassword(user, oldPassword, newPassword);
     1745        }
     1746       
     1747        public System.Collections.Generic.List<HeuristicLab.Clients.Access.UserGroup> GetAllUserGroups()
     1748        {
     1749            return base.Channel.GetAllUserGroups();
     1750        }
     1751       
     1752        public System.Collections.Generic.List<HeuristicLab.Clients.Access.UserGroup> GetUserGroupsOfUser(System.Guid userId)
     1753        {
     1754            return base.Channel.GetUserGroupsOfUser(userId);
     1755        }
     1756       
     1757        public System.Collections.Generic.List<HeuristicLab.Clients.Access.UserGroup> GetUserGroups(System.Collections.Generic.List<System.Guid> ids)
     1758        {
     1759            return base.Channel.GetUserGroups(ids);
     1760        }
     1761       
     1762        public System.Guid AddUserGroup(HeuristicLab.Clients.Access.UserGroup group)
     1763        {
     1764            return base.Channel.AddUserGroup(group);
     1765        }
     1766       
     1767        public void UpdateUserGroup(HeuristicLab.Clients.Access.UserGroup group)
     1768        {
     1769            base.Channel.UpdateUserGroup(group);
     1770        }
     1771       
     1772        public void DeleteUserGroup(HeuristicLab.Clients.Access.UserGroup group)
     1773        {
     1774            base.Channel.DeleteUserGroup(group);
     1775        }
     1776       
     1777        public void AddUserGroupBaseToGroup(HeuristicLab.Clients.Access.UserGroupBase resource, HeuristicLab.Clients.Access.UserGroup group)
     1778        {
     1779            base.Channel.AddUserGroupBaseToGroup(resource, group);
     1780        }
     1781       
     1782        public void RemoveUserGroupBaseFromGroup(HeuristicLab.Clients.Access.UserGroupBase resource, HeuristicLab.Clients.Access.UserGroup group)
     1783        {
     1784            base.Channel.RemoveUserGroupBaseFromGroup(resource, group);
     1785        }
     1786    }
    14511787}
  • branches/ClientUserManagement/HeuristicLab.Services.Access/3.3/AccessService.cs

    r7553 r7599  
    347347      DA.aspnet_User aspUser = null;
    348348      DA.User accessUser = null;
     349      List<DA.aspnet_Role> roles = new List<DA.aspnet_Role>();
     350      List<DA.UserGroup> groups = new List<DA.UserGroup>();
     351
    349352
    350353      using (DA.ASPNETAuthenticationDataContext context = new DA.ASPNETAuthenticationDataContext()) {
     
    354357        if (userQuery.Count() == 1) {
    355358          aspUser = userQuery.First();
     359          roles = (from ur in context.aspnet_UsersInRoles
     360                   where ur.UserId == aspUser.UserId
     361                   join r in context.aspnet_Roles on ur.RoleId equals r.RoleId
     362                   select r).ToList();
    356363        }
    357364      }
     
    364371          if (query.Count() == 1) {
    365372            accessUser = query.First();
     373            groups = (from ug in context.UserGroupUserGroups
     374                      where ug.UserGroupUserGroupId == accessUser.Id
     375                      join g in context.UserGroupBases.OfType<DA.UserGroup>() on ug.UserGroupId equals g.Id
     376                      select g).ToList();
    366377          } else {
    367378            //if the user is not in the access db add it (this makes it easy to upgrade with an existing asp.net authentication db)
     
    379390        throw new Exception("User with id " + userId + " not found.");
    380391      } else {
    381         return Convert.ToDto(accessUser, aspUser);
     392        return Convert.ToDto(accessUser, aspUser, roles, groups);
    382393      }
    383394    }
  • branches/ClientUserManagement/HeuristicLab.Services.Access/3.3/Convert.cs

    r7534 r7599  
    2121
    2222using System;
     23using System.Collections.Generic;
    2324using System.Linq;
    2425using DA = HeuristicLab.Services.Access.DataAccess;
     
    286287    #region User
    287288
    288     public static DT.LightweightUser ToDto(DA.User source, DA.aspnet_User aspUserSource) {
     289    public static DT.LightweightUser ToDto(DA.User source, DA.aspnet_User aspUserSource, List<DA.aspnet_Role> roles, List<DA.UserGroup> groups) {
    289290      return new DT.LightweightUser() {
    290291        Id = source.Id,
    291292        FullName = source.FullName,
    292         UserName = aspUserSource.UserName
     293        UserName = aspUserSource.UserName,
     294        Roles = roles.Select(x => Convert.ToDto(x)).ToArray(),
     295        Groups = groups.Select(x => Convert.ToDto(x)).ToArray()
    293296      };
    294297    }
  • branches/ClientUserManagement/HeuristicLab.Services.Access/3.3/DataTransfer/LightweightUser.cs

    r7367 r7599  
    2020#endregion
    2121
     22using System.Collections.Generic;
    2223using System.Runtime.Serialization;
    2324
     
    2930    [DataMember]
    3031    public string FullName { get; set; }
     32    [DataMember]
     33    public IEnumerable<DataTransfer.Role> Roles { get; set; }
     34    [DataMember]
     35    public IEnumerable<DataTransfer.UserGroup> Groups { get; set; }
    3136  }
    3237}
Note: See TracChangeset for help on using the changeset viewer.