Changeset 2099 for trunk/sources/HeuristicLab.Hive.Server.Core
- Timestamp:
- 06/25/09 13:54:15 (15 years ago)
- Location:
- trunk/sources/HeuristicLab.Hive.Server.Core/3.2
- Files:
-
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/sources/HeuristicLab.Hive.Server.Core/3.2/ClientCommunicator.cs
r2098 r2099 385 385 if (job2Calculate != null) { 386 386 SerializedJob computableJob = 387 jobAdapter.Get ComputableJob(job2Calculate.Id);387 jobAdapter.GetSerializedJob(job2Calculate.Id); 388 388 389 389 response.Job = computableJob; … … 492 492 } 493 493 494 jobAdapter.Update ComputableJob(job);494 jobAdapter.UpdateSerializedJob(job); 495 495 496 496 List<JobResult> jobResults = new List<JobResult>( 497 jobResultAdapter.GetResultsOf(job.JobInfo ));497 jobResultAdapter.GetResultsOf(job.JobInfo.Id)); 498 498 foreach (JobResult currentResult in jobResults) 499 499 jobResultAdapter.Delete(currentResult); 500 500 501 JobResult jobResult = 502 new JobResult(); 501 SerializedJobResult serializedjobResult = 502 new SerializedJobResult(); 503 JobResult jobResult = new JobResult(); 503 504 jobResult.ClientId = client.Id; 504 505 jobResult.JobId = job.JobInfo.Id; 505 jobResult.Result = result;506 506 jobResult.Percentage = percentage; 507 507 jobResult.Exception = exception; 508 508 jobResult.DateFinished = DateTime.Now; 509 510 jobResultAdapter.Update(jobResult); 509 serializedjobResult.JobResult = jobResult; 510 serializedjobResult.SerializedJobResultData = 511 result; 512 513 jobResultAdapter.UpdateSerializedJobResult(serializedjobResult); 511 514 jobAdapter.Update(job.JobInfo); 512 515 -
trunk/sources/HeuristicLab.Hive.Server.Core/3.2/ClientFacade.cs
r1941 r2099 97 97 BinaryFormatter formatter = 98 98 new BinaryFormatter(); 99 JobResult result = (JobResult)formatter.Deserialize(stream); 99 SerializedJobResult result = 100 (SerializedJobResult)formatter.Deserialize(stream); 100 101 101 102 return this.StoreFinishedJobResult( 102 result. ClientId,103 result.Job Id,104 result. Result,105 result. Percentage,106 result. Exception);103 result.JobResult.ClientId, 104 result.JobResult.JobId, 105 result.SerializedJobResultData, 106 result.JobResult.Percentage, 107 result.JobResult.Exception); 107 108 } 108 109 … … 110 111 BinaryFormatter formatter = 111 112 new BinaryFormatter(); 112 JobResult result = (JobResult)formatter.Deserialize(stream);113 SerializedJobResult result = (SerializedJobResult)formatter.Deserialize(stream); 113 114 114 115 return this.ProcessSnapshot( 115 result. ClientId,116 result.Job Id,117 result. Result,118 result. Percentage,119 result. Exception);116 result.JobResult.ClientId, 117 result.JobResult.JobId, 118 result.SerializedJobResultData, 119 result.JobResult.Percentage, 120 result.JobResult.Exception); 120 121 } 121 122 -
trunk/sources/HeuristicLab.Hive.Server.Core/3.2/ExecutionEngineFacade.cs
r2092 r2099 44 44 } 45 45 46 public ResponseObject<JobResult> GetLastResult(Guid jobId, bool requested) { 47 return jobManager.GetLastJobResultOf(jobId, requested); 46 public ResponseObject<SerializedJobResult> 47 GetLastSerializedResult(Guid jobId, bool requested) { 48 return jobManager.GetLastSerializedJobResultOf(jobId, requested); 48 49 } 49 50 -
trunk/sources/HeuristicLab.Hive.Server.Core/3.2/JobManager.cs
r2092 r2099 48 48 } 49 49 50 private JobResult GetLastJobResult( Job job) {50 private JobResult GetLastJobResult(Guid jobId) { 51 51 ISession session = factory.GetSessionForCurrentThread(); 52 52 … … 55 55 session.GetDataAdapter<JobResult, IJobResultsAdapter>(); 56 56 57 return jobResultAdapter.GetLastResultOf(job );57 return jobResultAdapter.GetLastResultOf(jobId); 58 58 } 59 59 finally { … … 70 70 IJobAdapter jobAdapter = 71 71 session.GetDataAdapter<Job, IJobAdapter>(); 72 73 IJobResultsAdapter jobResultsAdapter = 74 session.GetDataAdapter<JobResult, IJobResultsAdapter>(); 72 75 73 76 tx = session.BeginTransaction(); … … 79 82 job; 80 83 81 JobResult lastJobResult = GetLastJobResult(job); 82 if (lastJobResult != null) { 83 computableJob.JobInfo.Percentage = lastJobResult.Percentage; 84 computableJob.SerializedJobData = lastJobResult.Result; 85 86 jobAdapter.UpdateComputableJob(computableJob); 84 JobResult lastResult = 85 GetLastJobResult(job.Id); 86 87 if (lastResult != null) { 88 SerializedJobResult lastJobResult = 89 jobResultsAdapter.GetSerializedJobResult(lastResult.Id); 90 91 if (lastJobResult != null) { 92 computableJob.JobInfo.Percentage = lastJobResult.JobResult.Percentage; 93 computableJob.SerializedJobData = lastJobResult.SerializedJobResultData; 94 95 jobAdapter.UpdateSerializedJob(computableJob); 96 } else { 97 computableJob.JobInfo.Percentage = 0; 98 } 87 99 } else { 88 100 computableJob.JobInfo.Percentage = 0; … … 223 235 224 236 job.JobInfo.DateCreated = DateTime.Now; 225 jobAdapter.Update ComputableJob(job);237 jobAdapter.UpdateSerializedJob(job); 226 238 response.Success = true; 227 239 response.Obj = job.JobInfo; … … 271 283 } 272 284 273 public ResponseObject<JobResult> GetLastJobResultOf(Guid jobId, bool requested) { 274 ISession session = factory.GetSessionForCurrentThread(); 285 public ResponseObject<JobResult> GetLastJobResultOf(Guid jobId) { 286 ResponseObject<JobResult> result = 287 new ResponseObject<JobResult>(); 288 289 result.Obj = 290 GetLastJobResult(jobId); 291 result.Success = 292 result.Obj != null; 293 294 return result; 295 } 296 297 public ResponseObject<SerializedJobResult> 298 GetLastSerializedJobResultOf(Guid jobId, bool requested) { 299 ISession session = factory.GetSessionForCurrentThread(); 300 301 ITransaction tx = null; 275 302 276 303 try { … … 278 305 session.GetDataAdapter<Job, IJobAdapter>(); 279 306 280 ResponseObject<JobResult> response = new ResponseObject<JobResult>(); 307 IJobResultsAdapter jobResultsAdapter = 308 session.GetDataAdapter<JobResult, IJobResultsAdapter>(); 309 310 tx = session.BeginTransaction(); 311 312 ResponseObject<SerializedJobResult> response = 313 new ResponseObject<SerializedJobResult>(); 281 314 282 315 Job job = jobAdapter.GetById(jobId); … … 284 317 response.Success = true; 285 318 response.StatusMessage = ApplicationConstants.RESPONSE_JOB_RESULT_NOT_YET_HERE; 319 320 tx.Commit(); 321 286 322 return response; 287 323 } 288 289 response.Success = true; 290 response.StatusMessage = ApplicationConstants.RESPONSE_JOB_JOB_RESULT_SENT; 291 response.Obj = GetLastJobResult(job); 292 293 return response; 294 } 295 finally { 296 if(session != null) 297 session.EndSession(); 298 } 299 } 324 325 JobResult lastResult = 326 jobResultsAdapter.GetLastResultOf(job.Id); 327 328 if (lastResult != null) { 329 response.Success = true; 330 response.StatusMessage = ApplicationConstants.RESPONSE_JOB_JOB_RESULT_SENT; 331 response.Obj = 332 jobResultsAdapter.GetSerializedJobResult( 333 lastResult.Id); 334 } else { 335 response.Success = false; 336 } 337 338 tx.Commit(); 339 return response; 340 } 341 catch (Exception ex) { 342 if (tx != null) 343 tx.Rollback(); 344 throw ex; 345 } 346 finally { 347 if (session != null) 348 session.EndSession(); 349 } 350 } 351 300 352 301 353 public Response RequestSnapshot(Guid jobId) { … … 385 437 return response; 386 438 } 387 response.List = new List<JobResult>(jobResultAdapter.GetResultsOf(job ));439 response.List = new List<JobResult>(jobResultAdapter.GetResultsOf(job.Id)); 388 440 response.Success = true; 389 441 response.StatusMessage = ApplicationConstants.RESPONSE_JOB_JOB_RESULT_SENT; -
trunk/sources/HeuristicLab.Hive.Server.Core/3.2/ServerConsoleFacade.cs
r2092 r2099 104 104 } 105 105 106 public ResponseObject<JobResult> GetLastJobResultOf(Guid jobId , bool requested) {106 public ResponseObject<JobResult> GetLastJobResultOf(Guid jobId) { 107 107 secMan.Authorize("AccessJobResults", sessionID, jobId); 108 return jobManager.GetLastJobResultOf(jobId, requested); 108 return jobManager.GetLastJobResultOf(jobId); 109 } 110 111 public ResponseObject<SerializedJobResult> GetLastSerializedJobResultOf(Guid jobId, bool requested) { 112 secMan.Authorize("AccessJobResults", sessionID, jobId); 113 return jobManager.GetLastSerializedJobResultOf(jobId, requested); 109 114 } 110 115
Note: See TracChangeset
for help on using the changeset viewer.