Index: /trunk/sources/HeuristicLab.Hive.Client.Communication/3.2/HeuristicLab.Hive.Client.Communication-3.2.csproj
===================================================================
--- /trunk/sources/HeuristicLab.Hive.Client.Communication/3.2/HeuristicLab.Hive.Client.Communication-3.2.csproj	(revision 1634)
+++ /trunk/sources/HeuristicLab.Hive.Client.Communication/3.2/HeuristicLab.Hive.Client.Communication-3.2.csproj	(revision 1635)
@@ -141,8 +141,8 @@
     <None Include="Properties\DataSources\HeuristicLab.Hive.Contracts.ResponseResultReceived.datasource" />
     <None Include="Service References\ServerService\Arrays1.xsd" />
-    <None Include="Service References\ServerService\HeuristicLab.DataAccess.xsd" />
+    <None Include="Service References\ServerService\HeuristicLab.DataAccess1.xsd" />
     <None Include="Service References\ServerService\HeuristicLab.Hive.Contracts.BusinessObjects1.xsd" />
     <None Include="Service References\ServerService\HeuristicLab.Hive.Contracts1.xsd" />
-    <None Include="Service References\ServerService\HeuristicLab.PluginInfrastructure1.xsd" />
+    <None Include="Service References\ServerService\HeuristicLab.PluginInfrastructure.xsd" />
     <None Include="Service References\ServerService\Reference.svcmap">
       <Generator>WCF Proxy Generator</Generator>
Index: /trunk/sources/HeuristicLab.Hive.Client.Communication/3.2/Service References/ServerService/HeuristicLab.DataAccess1.xsd
===================================================================
--- /trunk/sources/HeuristicLab.Hive.Client.Communication/3.2/Service References/ServerService/HeuristicLab.DataAccess1.xsd	(revision 1635)
+++ /trunk/sources/HeuristicLab.Hive.Client.Communication/3.2/Service References/ServerService/HeuristicLab.DataAccess1.xsd	(revision 1635)
@@ -0,0 +1,10 @@
+﻿<?xml version="1.0" encoding="utf-8"?>
+<xs:schema xmlns:tns="http://schemas.datacontract.org/2004/07/HeuristicLab.DataAccess" xmlns:ser="http://schemas.microsoft.com/2003/10/Serialization/" elementFormDefault="qualified" targetNamespace="http://schemas.datacontract.org/2004/07/HeuristicLab.DataAccess" xmlns:xs="http://www.w3.org/2001/XMLSchema">
+  <xs:import namespace="http://schemas.microsoft.com/2003/10/Serialization/" />
+  <xs:complexType name="PersistableObject">
+    <xs:sequence>
+      <xs:element minOccurs="0" name="Id" type="ser:guid" />
+    </xs:sequence>
+  </xs:complexType>
+  <xs:element name="PersistableObject" nillable="true" type="tns:PersistableObject" />
+</xs:schema>
Index: /trunk/sources/HeuristicLab.Hive.Client.Communication/3.2/Service References/ServerService/HeuristicLab.PluginInfrastructure.xsd
===================================================================
--- /trunk/sources/HeuristicLab.Hive.Client.Communication/3.2/Service References/ServerService/HeuristicLab.PluginInfrastructure.xsd	(revision 1635)
+++ /trunk/sources/HeuristicLab.Hive.Client.Communication/3.2/Service References/ServerService/HeuristicLab.PluginInfrastructure.xsd	(revision 1635)
@@ -0,0 +1,21 @@
+﻿<?xml version="1.0" encoding="utf-8"?>
+<xs:schema xmlns:tns="http://schemas.datacontract.org/2004/07/HeuristicLab.PluginInfrastructure" elementFormDefault="qualified" targetNamespace="http://schemas.datacontract.org/2004/07/HeuristicLab.PluginInfrastructure" xmlns:xs="http://www.w3.org/2001/XMLSchema">
+  <xs:import namespace="http://schemas.microsoft.com/2003/10/Serialization/Arrays" />
+  <xs:import namespace="http://schemas.datacontract.org/2004/07/HeuristicLab.Hive.Contracts.BusinessObjects" />
+  <xs:complexType name="ArrayOfCachedHivePluginInfo">
+    <xs:sequence>
+      <xs:element minOccurs="0" maxOccurs="unbounded" name="CachedHivePluginInfo" nillable="true" type="tns:CachedHivePluginInfo" />
+    </xs:sequence>
+  </xs:complexType>
+  <xs:element name="ArrayOfCachedHivePluginInfo" nillable="true" type="tns:ArrayOfCachedHivePluginInfo" />
+  <xs:complexType name="CachedHivePluginInfo">
+    <xs:complexContent mixed="false">
+      <xs:extension xmlns:q1="http://schemas.datacontract.org/2004/07/HeuristicLab.Hive.Contracts.BusinessObjects" base="q1:HivePluginInfo">
+        <xs:sequence>
+          <xs:element xmlns:q2="http://schemas.microsoft.com/2003/10/Serialization/Arrays" minOccurs="0" name="PluginFiles" nillable="true" type="q2:ArrayOfbase64Binary" />
+        </xs:sequence>
+      </xs:extension>
+    </xs:complexContent>
+  </xs:complexType>
+  <xs:element name="CachedHivePluginInfo" nillable="true" type="tns:CachedHivePluginInfo" />
+</xs:schema>
Index: /trunk/sources/HeuristicLab.Hive.Client.Communication/3.2/Service References/ServerService/Reference.svcmap
===================================================================
--- /trunk/sources/HeuristicLab.Hive.Client.Communication/3.2/Service References/ServerService/Reference.svcmap	(revision 1634)
+++ /trunk/sources/HeuristicLab.Hive.Client.Communication/3.2/Service References/ServerService/Reference.svcmap	(revision 1635)
@@ -18,16 +18,16 @@
   </ClientOptions>
   <MetadataSources>
-    <MetadataSource Address="net.tcp://10.20.53.2:9000/HiveServer/mex" Protocol="mex" SourceId="1" />
+    <MetadataSource Address="net.tcp://10.20.53.1:9000/HiveServer/mex" Protocol="mex" SourceId="1" />
   </MetadataSources>
   <Metadata>
-    <MetadataFile FileName="service1.wsdl" MetadataType="Wsdl" ID="3e312443-dbf2-4fea-83bf-061680f77672" SourceId="1" SourceUrl="net.tcp://10.20.53.2:9000/HiveServer/mex" />
-    <MetadataFile FileName="service2.xsd" MetadataType="Schema" ID="a779c2ad-9688-4d69-b8d9-4646934978f7" SourceId="1" SourceUrl="net.tcp://10.20.53.2:9000/HiveServer/mex" />
-    <MetadataFile FileName="service3.xsd" MetadataType="Schema" ID="beb401a3-0cfd-425e-a988-929712770fe6" SourceId="1" SourceUrl="net.tcp://10.20.53.2:9000/HiveServer/mex" />
-    <MetadataFile FileName="HeuristicLab.Hive.Contracts.BusinessObjects1.xsd" MetadataType="Schema" ID="ca6a32ca-2685-4840-8a21-27071617387b" SourceId="1" SourceUrl="net.tcp://10.20.53.2:9000/HiveServer/mex" />
-    <MetadataFile FileName="HeuristicLab.DataAccess.xsd" MetadataType="Schema" ID="b525b917-9b1e-4fa9-bbae-860f5bfcdaed" SourceId="1" SourceUrl="net.tcp://10.20.53.2:9000/HiveServer/mex" />
-    <MetadataFile FileName="HeuristicLab.Hive.Contracts1.xsd" MetadataType="Schema" ID="5daa43c0-3c44-4734-ab5d-dcdf89126c13" SourceId="1" SourceUrl="net.tcp://10.20.53.2:9000/HiveServer/mex" />
-    <MetadataFile FileName="Arrays1.xsd" MetadataType="Schema" ID="c0bbfc71-65d9-470c-9350-c588b628c1cf" SourceId="1" SourceUrl="net.tcp://10.20.53.2:9000/HiveServer/mex" />
-    <MetadataFile FileName="System1.xsd" MetadataType="Schema" ID="13a2f08c-6842-4409-894d-0a86add68173" SourceId="1" SourceUrl="net.tcp://10.20.53.2:9000/HiveServer/mex" />
-    <MetadataFile FileName="HeuristicLab.PluginInfrastructure1.xsd" MetadataType="Schema" ID="3b1f3008-1103-4efe-9d56-dc8d55109c87" SourceId="1" SourceUrl="net.tcp://10.20.53.2:9000/HiveServer/mex" />
+    <MetadataFile FileName="service1.wsdl" MetadataType="Wsdl" ID="008f07c5-6214-48b2-be81-56a008f61361" SourceId="1" SourceUrl="net.tcp://10.20.53.1:9000/HiveServer/mex" />
+    <MetadataFile FileName="service2.xsd" MetadataType="Schema" ID="d50f72bd-5f1f-467b-a33c-cada777612ad" SourceId="1" SourceUrl="net.tcp://10.20.53.1:9000/HiveServer/mex" />
+    <MetadataFile FileName="service3.xsd" MetadataType="Schema" ID="f8645317-b60d-447b-b3be-dd9d61f39339" SourceId="1" SourceUrl="net.tcp://10.20.53.1:9000/HiveServer/mex" />
+    <MetadataFile FileName="HeuristicLab.Hive.Contracts.BusinessObjects1.xsd" MetadataType="Schema" ID="37e6fe8a-479c-4357-83c5-e953e5e9cf5d" SourceId="1" SourceUrl="net.tcp://10.20.53.1:9000/HiveServer/mex" />
+    <MetadataFile FileName="HeuristicLab.DataAccess1.xsd" MetadataType="Schema" ID="09df29d2-ed89-4555-9cc8-bc3096dbf165" SourceId="1" SourceUrl="net.tcp://10.20.53.1:9000/HiveServer/mex" />
+    <MetadataFile FileName="HeuristicLab.Hive.Contracts1.xsd" MetadataType="Schema" ID="4da8b2ab-d9e8-4a0d-8fb5-34b9c764e8d8" SourceId="1" SourceUrl="net.tcp://10.20.53.1:9000/HiveServer/mex" />
+    <MetadataFile FileName="Arrays1.xsd" MetadataType="Schema" ID="16f9cb76-243c-466b-ad58-cdde73fb3174" SourceId="1" SourceUrl="net.tcp://10.20.53.1:9000/HiveServer/mex" />
+    <MetadataFile FileName="System1.xsd" MetadataType="Schema" ID="917b5c33-2ff0-4d42-8a17-3cbe66a47f61" SourceId="1" SourceUrl="net.tcp://10.20.53.1:9000/HiveServer/mex" />
+    <MetadataFile FileName="HeuristicLab.PluginInfrastructure.xsd" MetadataType="Schema" ID="a4d05bc1-9273-40e8-8a04-a090c796d546" SourceId="1" SourceUrl="net.tcp://10.20.53.1:9000/HiveServer/mex" />
   </Metadata>
   <Extensions>
Index: /trunk/sources/HeuristicLab.Hive.Client.Communication/3.2/Service References/ServerService/configuration.svcinfo
===================================================================
--- /trunk/sources/HeuristicLab.Hive.Client.Communication/3.2/Service References/ServerService/configuration.svcinfo	(revision 1634)
+++ /trunk/sources/HeuristicLab.Hive.Client.Communication/3.2/Service References/ServerService/configuration.svcinfo	(revision 1635)
@@ -6,5 +6,5 @@
   </bindings>
   <endpoints>
-    <endpoint normalizedDigest="&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-16&quot;?&gt;&lt;Data address=&quot;net.tcp://10.20.53.2:9000/HiveServer/ClientCommunicator&quot; binding=&quot;netTcpBinding&quot; bindingConfiguration=&quot;NetTcpBinding_IClientCommunicator&quot; contract=&quot;ServerService.IClientCommunicator&quot; name=&quot;NetTcpBinding_IClientCommunicator&quot;&gt;&lt;identity&gt;&lt;userPrincipalName value=&quot;mse08023@fhs-hagenberg.ac.at&quot; /&gt;&lt;/identity&gt;&lt;/Data&gt;" digest="&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-16&quot;?&gt;&lt;Data address=&quot;net.tcp://10.20.53.2:9000/HiveServer/ClientCommunicator&quot; binding=&quot;netTcpBinding&quot; bindingConfiguration=&quot;NetTcpBinding_IClientCommunicator&quot; contract=&quot;ServerService.IClientCommunicator&quot; name=&quot;NetTcpBinding_IClientCommunicator&quot;&gt;&lt;identity&gt;&lt;userPrincipalName value=&quot;mse08023@fhs-hagenberg.ac.at&quot; /&gt;&lt;/identity&gt;&lt;/Data&gt;" contractName="ServerService.IClientCommunicator" name="NetTcpBinding_IClientCommunicator" />
+    <endpoint normalizedDigest="&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-16&quot;?&gt;&lt;Data address=&quot;net.tcp://10.20.53.1:9000/HiveServer/ClientCommunicator&quot; binding=&quot;netTcpBinding&quot; bindingConfiguration=&quot;NetTcpBinding_IClientCommunicator&quot; contract=&quot;ServerService.IClientCommunicator&quot; name=&quot;NetTcpBinding_IClientCommunicator&quot;&gt;&lt;identity&gt;&lt;userPrincipalName value=&quot;mse08023@fhs-hagenberg.ac.at&quot; /&gt;&lt;/identity&gt;&lt;/Data&gt;" digest="&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-16&quot;?&gt;&lt;Data address=&quot;net.tcp://10.20.53.1:9000/HiveServer/ClientCommunicator&quot; binding=&quot;netTcpBinding&quot; bindingConfiguration=&quot;NetTcpBinding_IClientCommunicator&quot; contract=&quot;ServerService.IClientCommunicator&quot; name=&quot;NetTcpBinding_IClientCommunicator&quot;&gt;&lt;identity&gt;&lt;userPrincipalName value=&quot;mse08023@fhs-hagenberg.ac.at&quot; /&gt;&lt;/identity&gt;&lt;/Data&gt;" contractName="ServerService.IClientCommunicator" name="NetTcpBinding_IClientCommunicator" />
   </endpoints>
 </configurationSnapshot>
Index: /trunk/sources/HeuristicLab.Hive.Client.Communication/3.2/Service References/ServerService/configuration91.svcinfo
===================================================================
--- /trunk/sources/HeuristicLab.Hive.Client.Communication/3.2/Service References/ServerService/configuration91.svcinfo	(revision 1634)
+++ /trunk/sources/HeuristicLab.Hive.Client.Communication/3.2/Service References/ServerService/configuration91.svcinfo	(revision 1635)
@@ -1,4 +1,4 @@
 <?xml version="1.0" encoding="utf-8"?>
-<SavedWcfConfigurationInformation xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" Version="9.1" CheckSum="Rqe47epOB9kn3CQ5FcfRHLaniGg=">
+<SavedWcfConfigurationInformation xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" Version="9.1" CheckSum="7tyXa/aSUNO4WyJm94sZeOTEbBk=">
   <bindingConfigurations>
     <bindingConfiguration bindingType="netTcpBinding" name="NetTcpBinding_IClientCommunicator">
@@ -107,8 +107,8 @@
   </bindingConfigurations>
   <endpoints>
-    <endpoint name="NetTcpBinding_IClientCommunicator" contract="ServerService.IClientCommunicator" bindingType="netTcpBinding" address="net.tcp://10.20.53.2:9000/HiveServer/ClientCommunicator" bindingConfiguration="NetTcpBinding_IClientCommunicator">
+    <endpoint name="NetTcpBinding_IClientCommunicator" contract="ServerService.IClientCommunicator" bindingType="netTcpBinding" address="net.tcp://10.20.53.1:9000/HiveServer/ClientCommunicator" bindingConfiguration="NetTcpBinding_IClientCommunicator">
       <properties>
         <property path="/address" isComplexType="false" isExplicitlyDefined="true" clrType="System.Uri, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-          <serializedValue>net.tcp://10.20.53.2:9000/HiveServer/ClientCommunicator</serializedValue>
+          <serializedValue>net.tcp://10.20.53.1:9000/HiveServer/ClientCommunicator</serializedValue>
         </property>
         <property path="/behaviorConfiguration" isComplexType="false" isExplicitlyDefined="false" clrType="System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
Index: /trunk/sources/HeuristicLab.Hive.Client.Communication/3.2/Service References/ServerService/service1.wsdl
===================================================================
--- /trunk/sources/HeuristicLab.Hive.Client.Communication/3.2/Service References/ServerService/service1.wsdl	(revision 1634)
+++ /trunk/sources/HeuristicLab.Hive.Client.Communication/3.2/Service References/ServerService/service1.wsdl	(revision 1635)
@@ -207,7 +207,7 @@
   <wsdl:service name="ClientFacade">
     <wsdl:port name="NetTcpBinding_IClientCommunicator" binding="tns:NetTcpBinding_IClientCommunicator">
-      <soap12:address location="net.tcp://10.20.53.2:9000/HiveServer/ClientCommunicator" />
+      <soap12:address location="net.tcp://10.20.53.1:9000/HiveServer/ClientCommunicator" />
       <wsa10:EndpointReference>
-        <wsa10:Address>net.tcp://10.20.53.2:9000/HiveServer/ClientCommunicator</wsa10:Address>
+        <wsa10:Address>net.tcp://10.20.53.1:9000/HiveServer/ClientCommunicator</wsa10:Address>
         <Identity xmlns="http://schemas.xmlsoap.org/ws/2006/02/addressingidentity">
           <Upn>mse08023@fhs-hagenberg.ac.at</Upn>
Index: /trunk/sources/HeuristicLab.Hive.Client.Communication/3.2/WcfService.cs
===================================================================
--- /trunk/sources/HeuristicLab.Hive.Client.Communication/3.2/WcfService.cs	(revision 1634)
+++ /trunk/sources/HeuristicLab.Hive.Client.Communication/3.2/WcfService.cs	(revision 1635)
@@ -255,5 +255,6 @@
     public List<CachedHivePluginInfo> RequestPlugins(List<HivePluginInfo> requestedPlugins) {
       try {
-        return proxy.SendPlugins(requestedPlugins.ToArray()).Plugins;
+        ResponsePlugin response = proxy.SendPlugins(requestedPlugins.ToArray());
+        return response.Plugins;        
       }
       catch (Exception e) {
@@ -263,4 +264,12 @@
     }
 
+    public void Logout(Guid guid) {
+      try {
+        proxy.Logout(guid);
+      }
+      catch (Exception e) {
+        HandleNetworkError(e);
+      }
+    }
   }
 }
Index: /trunk/sources/HeuristicLab.Hive.Client.Communication/3.2/app.config
===================================================================
--- /trunk/sources/HeuristicLab.Hive.Client.Communication/3.2/app.config	(revision 1634)
+++ /trunk/sources/HeuristicLab.Hive.Client.Communication/3.2/app.config	(revision 1635)
@@ -22,5 +22,5 @@
         </bindings>
         <client>
-            <endpoint address="net.tcp://10.20.53.2:9000/HiveServer/ClientCommunicator"
+            <endpoint address="net.tcp://10.20.53.1:9000/HiveServer/ClientCommunicator"
                 binding="netTcpBinding" bindingConfiguration="NetTcpBinding_IClientCommunicator"
                 contract="ServerService.IClientCommunicator" name="NetTcpBinding_IClientCommunicator">
Index: /trunk/sources/HeuristicLab.Hive.Client.Core/3.2/Core.cs
===================================================================
--- /trunk/sources/HeuristicLab.Hive.Client.Core/3.2/Core.cs	(revision 1634)
+++ /trunk/sources/HeuristicLab.Hive.Client.Core/3.2/Core.cs	(revision 1635)
@@ -143,4 +143,5 @@
           abortRequested = true;
           beat.StopHeartBeat();
+          WcfService.Instance.Logout(ConfigManager.Instance.GetClientInfo().Id);
           break;
       }
@@ -210,5 +211,5 @@
           files.AddRange(plugininfo.PluginFiles);
         
-        AppDomain appDomain = PluginManager.Manager.CreateAndInitAppDomainWithSandbox(e.Result.Job.Id.ToString(), sandboxed, typeof(HeuristicLab.Hive.Engine.HiveEngine), files);
+        AppDomain appDomain = PluginManager.Manager.CreateAndInitAppDomainWithSandbox(e.Result.Job.Id.ToString(), sandboxed, null, files);
         appDomain.UnhandledException += new UnhandledExceptionEventHandler(appDomain_UnhandledException);
         lock (engines) {                    
Index: /trunk/sources/HeuristicLab.Hive.Client.Core/3.2/HeuristicLab.Hive.Client.Core-3.2.csproj
===================================================================
--- /trunk/sources/HeuristicLab.Hive.Client.Core/3.2/HeuristicLab.Hive.Client.Core-3.2.csproj	(revision 1634)
+++ /trunk/sources/HeuristicLab.Hive.Client.Core/3.2/HeuristicLab.Hive.Client.Core-3.2.csproj	(revision 1635)
@@ -143,8 +143,4 @@
       <Name>HeuristicLab.Hive.Contracts-3.2</Name>
     </ProjectReference>
-    <ProjectReference Include="..\..\HeuristicLab.Hive.Engine\3.2\HeuristicLab.Hive.Engine-3.2.csproj">
-      <Project>{C8FEDAC1-0326-4293-B585-F0FEDDEDFC11}</Project>
-      <Name>HeuristicLab.Hive.Engine-3.2</Name>
-    </ProjectReference>
     <ProjectReference Include="..\..\HeuristicLab.Hive.JobBase\3.2\HeuristicLab.Hive.JobBase-3.2.csproj">
       <Project>{21187322-52DD-4243-80A4-A85F0263E63B}</Project>
Index: /trunk/sources/HeuristicLab.Hive.Client.Core/3.2/PluginCache.cs
===================================================================
--- /trunk/sources/HeuristicLab.Hive.Client.Core/3.2/PluginCache.cs	(revision 1634)
+++ /trunk/sources/HeuristicLab.Hive.Client.Core/3.2/PluginCache.cs	(revision 1635)
@@ -35,9 +35,9 @@
       List<HivePluginInfo> missingPlugins = new List<HivePluginInfo>();
       bool found = false;
-      
-      //Todo: Fix the whole equals thing here
+            
       foreach (HivePluginInfo info in requests) {
+        //we MAY run in problems here - if there is a plugin twice in requests, there may be added two different versions of the plugin
         foreach (CachedHivePluginInfo cache in pluginCache) {
-          if (info.Equals(cache)) {
+          if (info.Name.Equals(cache.Name) && info.Version.Equals(cache.Version) && info.BuildDate <= cache.BuildDate) {
             neededPlugins.Add(cache);
             found = true;
