Index: /trunk/sources/HeuristicLab.Hive.Client.Communication/WcfService.cs
===================================================================
--- /trunk/sources/HeuristicLab.Hive.Client.Communication/WcfService.cs	(revision 1270)
+++ /trunk/sources/HeuristicLab.Hive.Client.Communication/WcfService.cs	(revision 1271)
@@ -217,4 +217,20 @@
 
     #endregion  
+
+    /// <summary>
+    /// Send back finished and Stored Job Results
+    /// </summary>
+    #region SendJobResults
+    public event System.EventHandler<SendJobResultCompletedEventArgs> SendStoredJobResultCompleted;
+    public void SendStoredJobResultAsync(Guid clientId, long jobId, byte[] result, double percentage, Exception exception, bool finished) {
+      if (ConnState == NetworkEnum.WcfConnState.Loggedin)
+        //TODO: some sort of algo for the stored jobs
+        proxy.SendJobResultAsync(clientId, jobId, result, percentage, exception, finished);
+    }  
+    #endregion
+
+    public ResponseResultReceived SendStoredJobResultsSync(Guid clientId, long jobId, byte[] result, double percentage, Exception exception, bool finished) {
+      return proxy.SendJobResult(clientId, jobId, result, percentage, exception, finished);
+    }
   }
 }
Index: /trunk/sources/HeuristicLab.Hive.Client.Core/JobStorrage/JobStorrageManager.cs
===================================================================
--- /trunk/sources/HeuristicLab.Hive.Client.Core/JobStorrage/JobStorrageManager.cs	(revision 1270)
+++ /trunk/sources/HeuristicLab.Hive.Client.Core/JobStorrage/JobStorrageManager.cs	(revision 1271)
@@ -6,17 +6,21 @@
 using HeuristicLab.Hive.Client.Common;
 using HeuristicLab.Hive.Client.Communication;
+using HeuristicLab.Hive.Client.Core.ConfigurationManager;
+using HeuristicLab.Hive.Contracts;
 
 namespace HeuristicLab.Hive.Client.Core.JobStorrage {
   public class JobStorrageManager {
-    private static List<JobStorrageInfo> StoredJobsList = new List<JobStorrageInfo>();
+    
+    private static List<JobStorrageInfo> storedJobsList = new List<JobStorrageInfo>();
+    private static String path = "C:\\Program Files\\HeuristicLab 3.0\\plugins\\jobStorrage\\";
     
     public static void PersistObjectToDisc(String serverIP, long serverPort, long jobId, byte[] job) {
       String filename = serverIP + "." + serverPort + "." + jobId.ToString();
-      
+
       JobStorrageInfo info = new JobStorrageInfo { JobID = jobId, ServerIP = serverIP, ServerPort = serverPort, TimeFinished = DateTime.Now };
       try {
-        Stream jobstream = File.Create("C:\\Program Files\\HeuristicLab 3.0\\plugins\\jobStorrage\\ "+filename + ".dat");
+        Stream jobstream = File.Create(path + filename + ".dat");
         jobstream.Write(job, 0, job.Length);
-        StoredJobsList.Add(info);
+        storedJobsList.Add(info);
         jobstream.Close();
         Logging.GetInstance().Info("JobStorrageManager", "Job " + info.JobID + " stored on the harddisc");
@@ -28,7 +32,17 @@
 
     public static void CheckAndSubmitJobsFromDisc() {
-      foreach (JobStorrageInfo info in StoredJobsList) {
-        if (WcfService.Instance.ConnState == NetworkEnum.WcfConnState.Loggedin && (info.ServerIP == WcfService.Instance.ServerIP && info.ServerPort == WcfService.Instance.ServerPort)) {
-          Logging.GetInstance().Info("JobStorrageManager", "Sending stored job " + info.JobID + " to the server");
+      for(int index=storedJobsList.Count; index > 0; index--) {
+        if (WcfService.Instance.ConnState == NetworkEnum.WcfConnState.Loggedin && (storedJobsList[index-1].ServerIP == WcfService.Instance.ServerIP && storedJobsList[index-1].ServerPort == WcfService.Instance.ServerPort)) {
+          String filename = storedJobsList[index-1].ServerIP + "." + storedJobsList[index-1].ServerPort + "." + storedJobsList[index-1].JobID.ToString();
+          Logging.GetInstance().Info("JobStorrageManager", "Sending stored job " + storedJobsList[index-1].JobID + " to the server");
+          byte[] job = File.ReadAllBytes(path + filename + ".dat");
+          ResponseResultReceived res = WcfService.Instance.SendStoredJobResultsSync(ConfigManager.Instance.GetClientInfo().ClientId, storedJobsList[index-1].JobID, job, 1.00, null, true);
+          //TODO: has to be fixed from server side
+          //if (res.Success == true) {
+          Logging.GetInstance().Info("JobStorrageManager", "Sending of job " + storedJobsList[index - 1].JobID + " done");  
+          storedJobsList.Remove(storedJobsList[index - 1]);
+          File.Delete(path + filename + ".dat");
+            
+       //   }
         }
       }
