Changeset 4254


Ignore:
Timestamp:
08/18/10 17:23:09 (12 years ago)
Author:
cneumuel
Message:

some small refactorings (#1159)

Location:
branches/3.3-HiveMigration/sources/HeuristicLab.Hive
Files:
5 added
10 deleted
35 edited

Legend:

Unmodified
Added
Removed
  • branches/3.3-HiveMigration/sources/HeuristicLab.Hive/HeuristicLab.Hive.Contracts/3.3/HeuristicLab.Hive.Contracts-3.3.csproj

    r4253 r4254  
    135135    <Compile Include="RecurrentEvent.cs" />
    136136    <Compile Include="ResponseCalendar.cs" />
    137     <Compile Include="ResponseSerializedJob.cs" />
    138137    <Compile Include="MultiStream.cs" />
    139138    <Compile Include="Interfaces\ISlaveFacade.cs" />
     
    145144    <Compile Include="Interfaces\IServerConsoleFacade.cs" />
    146145    <Compile Include="MessageContainer.cs" />
    147     <Compile Include="ResponseJob.cs" />
    148146    <Compile Include="HeuristicLabHiveContractsPlugin.cs" />
    149147    <Compile Include="Interfaces\ISlaveCommunicator.cs" />
    150148    <Compile Include="Properties\AssemblyInfo.cs" />
    151149    <Compile Include="Response.cs" />
    152     <Compile Include="ResponseHB.cs" />
     150    <Compile Include="ResponseHeartBeat.cs" />
    153151    <Compile Include="ResponseList.cs" />
    154     <Compile Include="ResponsePlugin.cs" />
    155152    <Compile Include="ResponseResultReceived.cs" />
    156153    <Compile Include="StreamedObject.cs" />
  • branches/3.3-HiveMigration/sources/HeuristicLab.Hive/HeuristicLab.Hive.Contracts/3.3/Interfaces/IJobManager.cs

    r4170 r4254  
    3333  [ServiceContract]
    3434  public interface IJobManager {
     35
    3536    [OperationContract]
    3637    ResponseList<JobDto> GetAllJobsWithFilter(State jobState, int offset, int count);
     38
    3739    [OperationContract]
    3840    ResponseList<JobDto> GetAllJobs();
     41
    3942    [OperationContract]
    4043    ResponseObject<JobDto> GetJobById(Guid jobId);
     44
    4145    [OperationContract]
    4246    ResponseObject<JobDto> GetJobByIdWithDetails(Guid jobId);
     47
    4348    [OperationContract]
    4449    ResponseObject<JobDto> AddNewJob(SerializedJob job);
     50
    4551    [OperationContract]
    4652    Response RemoveJob(Guid jobId);
     53
    4754    [OperationContract]
    4855    ResponseObject<JobDto> GetLastJobResultOf(Guid jobId);
     56
    4957    [OperationContract]
    5058    ResponseObject<SerializedJob> GetLastSerializedJobResultOf(Guid jobId, bool requested, bool snapshot);
     59
    5160    [OperationContract]
    5261    ResponseObject<JobResultList> GetAllJobResults(IEnumerable<Guid> jobIds);
     62
    5363    [OperationContract]
    5464    Response RequestSnapshot(Guid jobId);
     65
    5566    [OperationContract]
    5667    Response AbortJob(Guid jobId);
     68
    5769    [OperationContract]
    5870    ResponseList<ProjectDto> GetAllProjects();
     71
    5972    [OperationContract]
    6073    Response CreateProject(ProjectDto project);
     74
    6175    [OperationContract]
    6276    Response ChangeProject(ProjectDto project);
     77
    6378    [OperationContract]
    6479    Response DeleteProject(Guid projectId);
     80
    6581    [OperationContract]
    6682    ResponseList<JobDto> GetJobsByProject(Guid projectId);
     83
    6784    [OperationContract]
    6885    ResponseObject<JobDto> AddJobWithGroupStrings(SerializedJob job, IEnumerable<string> resources);
  • branches/3.3-HiveMigration/sources/HeuristicLab.Hive/HeuristicLab.Hive.Contracts/3.3/Interfaces/ISlaveCommunicator.cs

    r4253 r4254  
    3434  [ServiceContract]
    3535  public interface ISlaveCommunicator {
     36
    3637    [OperationContract]
    3738    Response Login(ClientDto clientInfo);
     39
    3840    [OperationContract]
    39     ResponseHB ProcessHeartBeat(HeartBeatData hbData);
     41    ResponseHeartBeat ProcessHeartBeat(HeartBeatData hbData);
     42
    4043    [OperationContract]
    41     ResponseJob SendJob(Guid clientId);
    42     //[OperationContract]
    43     //ResponseSerializedJob SendSerializedJob(Guid clientId);
     44    ResponseObject<JobDto> GetJob(Guid clientId);
     45
    4446    [OperationContract]
    45     ResponseResultReceived StoreFinishedJobResult(Guid clientId,
    46       Guid jobId,
    47       byte[] result,
    48       double percentage,
    49       string exception);
     47    ResponseResultReceived StoreFinishedJobResult(Guid clientId, Guid jobId, byte[] result, double percentage, string exception);
     48
    5049    [OperationContract]
    51     ResponseResultReceived ProcessSnapshot(Guid clientId,
    52       Guid jobId,
    53       byte[] result,
    54       double percentage,
    55       string exception);
     50    ResponseResultReceived ProcessSnapshot(Guid clientId, Guid jobId, byte[] result, double percentage, string exception);
     51
    5652    [OperationContract]
    5753    Response Logout(Guid clientId);
     54
    5855    [OperationContract]
    5956    Response IsJobStillNeeded(Guid jobId);
     57
    6058    [OperationContract]
    61     ResponsePlugin SendPlugins(List<HivePluginInfoDto> pluginList);
     59    ResponseList<CachedHivePluginInfoDto> SendPlugins(List<HivePluginInfoDto> pluginList);
    6260
    6361    [OperationContract]
    6462    ResponseCalendar GetCalendar(Guid clientId);
     63
    6564    [OperationContract]
    6665    Response SetCalendarStatus(Guid clientId, CalendarState state);
  • branches/3.3-HiveMigration/sources/HeuristicLab.Hive/HeuristicLab.Hive.Contracts/3.3/Interfaces/ISlaveManager.cs

    r4253 r4254  
    3333  [ServiceContract]
    3434  public interface ISlaveManager {
     35
    3536    [OperationContract]
    3637    ResponseList<ClientDto> GetAllClients();
     38
    3739    [OperationContract]
    3840    [ServiceKnownType(typeof (ResourceDto))]
     
    4042    [ServiceKnownType(typeof(ClientGroupDto))]
    4143    ResponseList<ClientGroupDto> GetAllClientGroups();
     44
    4245    [OperationContract]
    4346    ResponseObject<ClientGroupDtoList> GetAllGroupsOfResource(Guid resourceId);
     47
    4448    [OperationContract]
    4549    ResponseObject<ClientGroupDto> AddClientGroup(ClientGroupDto clientGroup);
     50
    4651    [OperationContract]
    4752    Response DeleteClientGroup(Guid clientGroupId);
     53
    4854    [OperationContract]
    4955    [ServiceKnownType(typeof(ResourceDto))]
     
    5157    [ServiceKnownType(typeof(ClientGroupDto))]
    5258    Response AddResourceToGroup(Guid clientGroupId, ResourceDto resource);
     59
    5360    [OperationContract]
    5461    Response DeleteResourceFromGroup(Guid clientGroupId, Guid resourceId);
     62
    5563    [OperationContract]
    5664    ResponseList<UpTimeStatisticsDto> GetAllUpTimeStatistics();
     65
    5766    [OperationContract]
    5867    ResponseList<AppointmentDto> GetUptimeCalendarForResource(Guid guid);
     68
    5969    [OperationContract]
    6070    Response SetUptimeCalendarForResource(Guid guid, IEnumerable<AppointmentDto> appointments, bool isForced);
  • branches/3.3-HiveMigration/sources/HeuristicLab.Hive/HeuristicLab.Hive.Contracts/3.3/MessageContainer.cs

    r4133 r4254  
    5858      MessageContainer clone = (MessageContainer)Activator.CreateInstance(this.GetType(), true);
    5959      cloner.RegisterClonedObject(this, clone);
    60       //clone.StatusMessage = this.StatusMessage;
    61       //clone.Success = this.Success;
     60      clone.Message = this.Message;
     61      clone.JobId = this.JobId;
    6262      return clone;
    6363    }
  • branches/3.3-HiveMigration/sources/HeuristicLab.Hive/HeuristicLab.Hive.Contracts/3.3/ResponseObject.cs

    r4133 r4254  
    3131  [StorableClass]
    3232  [DataContract]
     33  [Serializable]
    3334  public class ResponseObject<T> : Response
    3435    where T : IDeepCloneable {
  • branches/3.3-HiveMigration/sources/HeuristicLab.Hive/HeuristicLab.Hive.Contracts/3.3/ResponsePlugin.cs

    r4133 r4254  
    1111  [DataContract]
    1212  [Serializable]
    13   public class ResponsePlugin : Response {
     13  public class ResponsePlugin : ResponseBase {
    1414    [Storable]
    1515    [DataMember]
  • branches/3.3-HiveMigration/sources/HeuristicLab.Hive/HeuristicLab.Hive.Contracts/3.3/ResponseSerializedJob.cs

    r4133 r4254  
    3737  [DataContract]
    3838  [Serializable]
    39   public class ResponseSerializedJob : Response {
     39  public class ResponseSerializedJob : ResponseBase {
    4040    [Storable]
    4141    [DataMember]
  • branches/3.3-HiveMigration/sources/HeuristicLab.Hive/HeuristicLab.Hive.Server.Core/3.3/DefaultScheduler.cs

    r4253 r4254  
    1313namespace HeuristicLab.Hive.Server.Core {
    1414  internal class DefaultScheduler : IScheduler {
    15     //private ISessionFactory factory;
    1615
    17     private static Mutex jobLock =
    18       new Mutex();
     16    private static object jobLock = new object();
    1917
    2018    #region IScheduler Members
    2119
    22     public DefaultScheduler() {
    23       //factory = ServiceLocator.GetSessionFactory();
    24     }
     20    public DefaultScheduler() { }
    2521
    26     public bool ExistsJobForSlave(HeuristicLab.Hive.Contracts.BusinessObjects.HeartBeatData hbData) {
    27       List<JobDto> allOfflineJobsForSlave =
    28         new List<JobDto>(DaoLocator.JobDao.FindFittingJobsForSlave(State.Offline, hbData.FreeCores, hbData.FreeMemory, hbData.SlaveId));
     22    public bool ExistsJobForSlave(HeartBeatData hbData) {
     23      List<JobDto> allOfflineJobsForSlave = new List<JobDto>(DaoLocator.JobDao.FindFittingJobsForSlave(State.Offline, hbData.FreeCores, hbData.FreeMemory, hbData.SlaveId));
    2924      return (allOfflineJobsForSlave != null && allOfflineJobsForSlave.Count > 0);
    3025    }
    3126
    32     public HeuristicLab.Hive.Contracts.BusinessObjects.JobDto GetNextJobForSlave(Guid slaveId) {
    33       /// Critical section ///
    34       jobLock.WaitOne();
    35       JobDto jobToCalculate = null;
    36       using (TransactionScope scope = new TransactionScope(TransactionScopeOption.Required, new TransactionOptions { IsolationLevel = ApplicationConstants.ISOLATION_LEVEL_SCOPE })) {
    37         ClientDto slave = DaoLocator.ClientDao.FindById(slaveId);
    38         LinkedList<JobDto> allOfflineJobsForSlave =
    39           new LinkedList<JobDto>(DaoLocator.JobDao.FindFittingJobsForSlave(State.Offline, slave.NrOfFreeCores, slave.FreeMemory, slave.Id));       
    40         if (allOfflineJobsForSlave != null && allOfflineJobsForSlave.Count > 0) {
    41           jobToCalculate = allOfflineJobsForSlave.First.Value;
    42           jobToCalculate.State = State.Calculating;
    43           jobToCalculate.Client = slave;
    44           jobToCalculate.Client.State = State.Calculating;
    45           jobToCalculate.DateCalculated = DateTime.Now;
    46           DaoLocator.JobDao.AssignSlaveToJob(slave.Id, jobToCalculate.Id);
    47           DaoLocator.JobDao.Update(jobToCalculate);
    48           DaoLocator.ClientDao.Update(jobToCalculate.Client);
     27    public JobDto GetNextJobForSlave(Guid slaveId) {
     28      lock (jobLock) {
     29        /// Critical section ///
     30        JobDto jobToCalculate = null;
     31        using (TransactionScope scope = new TransactionScope(TransactionScopeOption.Required, new TransactionOptions { IsolationLevel = ApplicationConstants.ISOLATION_LEVEL_SCOPE })) {
     32          ClientDto slave = DaoLocator.ClientDao.FindById(slaveId);
     33          LinkedList<JobDto> allOfflineJobsForSlave =
     34            new LinkedList<JobDto>(DaoLocator.JobDao.FindFittingJobsForSlave(State.Offline, slave.NrOfFreeCores, slave.FreeMemory, slave.Id));
     35          if (allOfflineJobsForSlave != null && allOfflineJobsForSlave.Count > 0) {
     36            jobToCalculate = allOfflineJobsForSlave.First.Value;
     37            jobToCalculate.State = State.Calculating;
     38            jobToCalculate.Client = slave;
     39            jobToCalculate.Client.State = State.Calculating;
     40            jobToCalculate.DateCalculated = DateTime.Now;
     41            DaoLocator.JobDao.AssignSlaveToJob(slave.Id, jobToCalculate.Id);
     42            DaoLocator.JobDao.Update(jobToCalculate);
     43            DaoLocator.ClientDao.Update(jobToCalculate.Client);
     44          }
     45          scope.Complete();
    4946        }
    50         scope.Complete();
     47        /// End Critical section ///
     48
     49        return jobToCalculate;
    5150      }
    52       jobLock.ReleaseMutex();
    53       /// End Critical section ///
    54 
    55       return jobToCalculate;
    5651    }
    5752
  • branches/3.3-HiveMigration/sources/HeuristicLab.Hive/HeuristicLab.Hive.Server.Core/3.3/Facades/SlaveFacade.cs

    r4253 r4254  
    5555    }
    5656
    57     public ResponseHB ProcessHeartBeat(HeartBeatData hbData) {
     57    public ResponseHeartBeat ProcessHeartBeat(HeartBeatData hbData) {
    5858      using (contextFactory.GetContext()) {
    5959        return slaveCommunicator.ProcessHeartBeat(hbData);
     
    6161    }
    6262
    63     public ResponseJob SendJob(Guid clientId) {
     63    public ResponseObject<JobDto> GetJob(Guid clientId) {
    6464      using (contextFactory.GetContext()) {
    65         return slaveCommunicator.SendJob(clientId);
     65        return slaveCommunicator.GetJob(clientId);
    6666      }
    6767    }
     
    8585    }
    8686
    87     public ResponsePlugin SendPlugins(List<HivePluginInfoDto> pluginList) {
     87    public ResponseList<CachedHivePluginInfoDto> SendPlugins(List<HivePluginInfoDto> pluginList) {
    8888      return slaveCommunicator.SendPlugins(pluginList);     
    8989    }
     
    118118        MultiStream stream = new MultiStream();
    119119
    120         ResponseJob job = null;
     120        ResponseObject<JobDto> job = null;
    121121
    122         job = ServiceLocator.GetSlaveCommunicator().SendJob(clientId);
     122        job = ServiceLocator.GetSlaveCommunicator().GetJob(clientId);
    123123
    124124        //first send response
    125         stream.AddStream(new StreamedObject<ResponseJob>(job));
     125        stream.AddStream(new StreamedObject<ResponseObject<JobDto>>(job));
    126126
    127127        IJobManager jobManager = ServiceLocator.GetJobManager();
     
    130130        //second stream the job binary data
    131131        MemoryStream memoryStream = new MemoryStream();
    132         if (job.Job != null)
    133           stream.AddStream(new MemoryStream(internalJobManager.GetSerializedJobDataById(job.Job.Id)));
     132        if (job.Obj != null)
     133          stream.AddStream(new MemoryStream(internalJobManager.GetSerializedJobDataById(job.Obj.Id)));
    134134
    135135        OperationContext clientContext = OperationContext.Current;
     
    145145
    146146    public Stream SendStreamedPlugins(List<HivePluginInfoDto> pluginList) {
    147       return new StreamedObject<ResponsePlugin>(this.SendPlugins(pluginList));
     147      return new StreamedObject<ResponseList<CachedHivePluginInfoDto>>(this.SendPlugins(pluginList));
    148148    }
    149149
  • branches/3.3-HiveMigration/sources/HeuristicLab.Hive/HeuristicLab.Hive.Server.Core/3.3/HeuristicLab.Hive.Server.Core-3.3.csproj

    r4253 r4254  
    125125    <Compile Include="Authorization\HivePermissionManager.cs" />
    126126    <Compile Include="HeuristicLabHiveServerCorePlugin.cs" />
    127     <Compile Include="HiveServerMessages.Designer.cs" />
    128127    <Compile Include="InternalInterfaces\IHivePermissionManager.cs" />
    129128    <Compile Include="InternalInterfaces\IInternalSlaveCommunicator.cs" />
  • branches/3.3-HiveMigration/sources/HeuristicLab.Hive/HeuristicLab.Hive.Server.Core/3.3/JobManager.cs

    r4173 r4254  
    4141namespace HeuristicLab.Hive.Server.Core {
    4242  internal class JobManager : IJobManager, IInternalJobManager {
    43     //ISessionFactory factory;
    4443    private ILifecycleManager lifecycleManager;
    4544
     
    4746
    4847    public JobManager() {
    49       //factory = ServiceLocator.GetSessionFactory();
    5048      lifecycleManager = ServiceLocator.GetLifecycleManager();
    5149
    5250      lifecycleManager.RegisterStartup(new EventHandler(lifecycleManager_OnStartup));
    53       lifecycleManager.RegisterStartup(new EventHandler(lifecycleManager_OnShutdown));
     51      lifecycleManager.RegisterShutdown(new EventHandler(lifecycleManager_OnShutdown));
    5452    }
    5553
     
    6159      Logger.Info("Searching for dead Jobs");
    6260
    63       // [chn] why is transaction management done here?
    64       using (TransactionScope scope = new TransactionScope(TransactionScopeOption.Required, new TransactionOptions { IsolationLevel = ApplicationConstants.ISOLATION_LEVEL_SCOPE })) {
    65         List<JobDto> allJobs = new List<JobDto>(DaoLocator.JobDao.FindAll());
    66         foreach (JobDto curJob in allJobs) {
    67           if (curJob.State != State.Calculating && curJob.State != State.Finished) {
    68             DaoLocator.JobDao.SetJobOffline(curJob);
    69           }
    70         }
    71         scope.Complete();
    72       }
    73       // DaoLocator.DestroyContext();
     61      List<JobDto> allJobs = new List<JobDto>(DaoLocator.JobDao.FindAll());
     62      foreach (JobDto curJob in allJobs) {
     63        if (curJob.State != State.Calculating && curJob.State != State.Finished) {
     64          DaoLocator.JobDao.SetJobOffline(curJob);
     65        }
     66      }
    7467    }
    7568
     
    322315    }
    323316
     317    /// <summary>
     318    /// Returns the current state for all jobs requested
     319    /// </summary>
     320    /// <param name="jobIds"></param>
     321    /// <returns></returns>
    324322    public ResponseObject<JobResultList> GetAllJobResults(IEnumerable<Guid> jobIds) {
    325323      ResponseObject<JobResultList> response = new ResponseObject<JobResultList>();
     
    334332          Exception = job.Exception,
    335333          Percentage = job.Percentage
    336         });       
     334        });
    337335      }
    338336      response.Obj = jobResultList;
     
    340338      response.StatusMessage = ApplicationConstants.RESPONSE_JOB_ALL_JOBS;
    341339      return response;
    342     }
    343 
    344     public ResponseList<ProjectDto> GetAllProjects() {
    345       return null;
    346     }
    347 
    348     private Response createUpdateProject(ProjectDto project) {
    349       return null;
    350     }
    351 
    352     public Response CreateProject(ProjectDto project) {
    353       return createUpdateProject(project);
    354     }
    355 
    356     public Response ChangeProject(ProjectDto project) {
    357       return createUpdateProject(project);
    358     }
    359 
    360     public Response DeleteProject(Guid projectId) {
    361       return null;
    362     }
    363 
    364     public ResponseList<JobDto> GetJobsByProject(Guid projectId) {
    365       return null;
    366340    }
    367341
     
    376350    #endregion
    377351
     352    #region Project handling (currently unimplemented)
     353
     354    public ResponseList<ProjectDto> GetAllProjects() {
     355      throw new NotImplementedException();
     356    }
     357
     358    private Response CreateUpdateProject(ProjectDto project) {
     359      throw new NotImplementedException();
     360    }
     361
     362    public Response CreateProject(ProjectDto project) {
     363      return CreateUpdateProject(project);
     364    }
     365
     366    public Response ChangeProject(ProjectDto project) {
     367      return CreateUpdateProject(project);
     368    }
     369
     370    public Response DeleteProject(Guid projectId) {
     371      throw new NotImplementedException();
     372    }
     373
     374    public ResponseList<JobDto> GetJobsByProject(Guid projectId) {
     375      throw new NotImplementedException();
     376    }
     377    #endregion
    378378  }
    379379}
  • branches/3.3-HiveMigration/sources/HeuristicLab.Hive/HeuristicLab.Hive.Server.Core/3.3/ServiceLocator.cs

    r4253 r4254  
    9797    public static ILifecycleManager GetLifecycleManager() {
    9898      if (lifecycleManager == null) {
    99         lifecycleManager = new LifecycleManager();
     99        lifecycleManager = ApplicationManager.Manager.GetInstances<ILifecycleManager>().First();
    100100      }
    101101      return lifecycleManager;
  • branches/3.3-HiveMigration/sources/HeuristicLab.Hive/HeuristicLab.Hive.Server.Core/3.3/SlaveCommunicator.cs

    r4253 r4254  
    248248    /// <param name="hbData"></param>
    249249    /// <returns></returns>
    250     public ResponseHB ProcessHeartBeat(HeartBeatData hbData) {
     250    public ResponseHeartBeat ProcessHeartBeat(HeartBeatData hbData) {
    251251      Logger.Debug("BEGIN Processing Heartbeat for Client " + hbData.SlaveId);
    252252
    253       ResponseHB response = new ResponseHB();
     253      ResponseHeartBeat response = new ResponseHeartBeat();
    254254      response.ActionRequest = new List<MessageContainer>();
    255255
     
    342342    /// <param name="clientAdapter"></param>
    343343    /// <param name="response"></param>
    344     private void ProcessJobProcess(HeartBeatData hbData, ResponseHB response) {
     344    private void ProcessJobProcess(HeartBeatData hbData, ResponseHeartBeat response) {
    345345      Logger.Debug("Started for Client " + hbData.SlaveId);
    346346      List<JobDto> jobsOfClient = new List<JobDto>(DaoLocator.JobDao.FindActiveJobsOfSlave(DaoLocator.ClientDao.FindById(hbData.SlaveId)));
     
    432432    /// <param name="clientId"></param>
    433433    /// <returns></returns>
    434     public ResponseJob SendJob(Guid clientId) {
    435 
    436       ResponseJob response = new ResponseJob();
     434    public ResponseObject<JobDto> GetJob(Guid clientId) {
     435      ResponseObject<JobDto> response = new ResponseObject<JobDto>();
    437436
    438437      JobDto job2Calculate = scheduler.GetNextJobForSlave(clientId);
    439438      if (job2Calculate != null) {
    440         response.Job = job2Calculate;
    441         response.Job.PluginsNeeded = DaoLocator.PluginInfoDao.GetPluginDependenciesForJob(response.Job);
     439        response.Obj = job2Calculate;
     440        response.Obj.PluginsNeeded = DaoLocator.PluginInfoDao.GetPluginDependenciesForJob(response.Obj);
    442441        response.Success = true;
    443442        Logger.Info("Job pulled: " + job2Calculate + " for user " + clientId);
     
    449448      } else {
    450449        response.Success = false;
    451         response.Job = null;
     450        response.Obj = null;
    452451        response.StatusMessage = ApplicationConstants.RESPONSE_COMMUNICATOR_NO_JOBS_LEFT;
    453452        Logger.Info("No more Jobs left for " + clientId);
    454453      }
    455 
    456 
    457 
    458454      return response;
    459455    }
     
    711707    }
    712708
    713     public ResponsePlugin SendPlugins(List<HivePluginInfoDto> pluginList) {
    714       ResponsePlugin response = new ResponsePlugin();
     709    public ResponseList<CachedHivePluginInfoDto> SendPlugins(List<HivePluginInfoDto> pluginList) {
     710      ResponseList<CachedHivePluginInfoDto> response = new ResponseList<CachedHivePluginInfoDto>();
    715711      foreach (HivePluginInfoDto pluginInfo in pluginList) {
    716712        if (pluginInfo.Update) {
     
    719715            ApplicationManager.Manager.Plugins.Where(pd => pd.Name == pluginInfo.Name && pd.Version.Major == pluginInfo.Version.Major && pd.Version.Minor == pluginInfo.Version.Minor && pd.Version.Revision > pluginInfo.Version.Revision).SingleOrDefault();
    720716          if (ipd != null) {
    721             response.Plugins.Add(convertPluginDescriptorToDto(ipd));
     717            response.List.Add(convertPluginDescriptorToDto(ipd));
    722718          }
    723719        } else {
     
    725721            ApplicationManager.Manager.Plugins.Where(pd => pd.Name == pluginInfo.Name && pd.Version.Major == pluginInfo.Version.Major && pd.Version.Minor == pluginInfo.Version.Minor && pd.Version.Revision >= pluginInfo.Version.Revision).SingleOrDefault();
    726722          if (ipd != null) {
    727             response.Plugins.Add(convertPluginDescriptorToDto(ipd));
     723            response.List.Add(convertPluginDescriptorToDto(ipd));
    728724          } else {
    729725            response.Success = false;
  • branches/3.3-HiveMigration/sources/HeuristicLab.Hive/HeuristicLab.Hive.Server/3.3/HeuristicLab.Hive.Server-3.3.csproj

    r4171 r4254  
    7878  </PropertyGroup>
    7979  <ItemGroup>
     80    <Reference Include="HeuristicLab.Common.Resources-3.3">
     81      <HintPath>..\..\..\..\..\..\..\..\..\Programme\HeuristicLab 3.3\HeuristicLab.Common.Resources-3.3.dll</HintPath>
     82    </Reference>
    8083    <Reference Include="HeuristicLab.PluginInfrastructure-3.3">
    8184      <HintPath>..\..\..\..\..\..\..\..\..\Programme\HeuristicLab 3.3\HeuristicLab.PluginInfrastructure-3.3.dll</HintPath>
     
    133136      <SubType>Designer</SubType>
    134137    </EmbeddedResource>
    135     <EmbeddedResource Include="Properties\Resources.resx">
    136       <Generator>ResXFileCodeGenerator</Generator>
    137       <LastGenOutput>Resources.Designer.cs</LastGenOutput>
    138       <SubType>Designer</SubType>
    139     </EmbeddedResource>
    140     <Compile Include="Properties\Resources.Designer.cs">
    141       <AutoGen>True</AutoGen>
    142       <DependentUpon>Resources.resx</DependentUpon>
    143       <DesignTime>True</DesignTime>
    144     </Compile>
    145138    <None Include="Properties\AssemblyInfo.frame" />
    146139    <None Include="HeuristicLab.snk" />
    147     <None Include="Properties\Settings.settings">
    148       <Generator>SettingsSingleFileGenerator</Generator>
    149       <LastGenOutput>Settings.Designer.cs</LastGenOutput>
    150     </None>
    151     <Compile Include="Properties\Settings.Designer.cs">
    152       <AutoGen>True</AutoGen>
    153       <DependentUpon>Settings.settings</DependentUpon>
    154       <DesignTimeSharedInput>True</DesignTimeSharedInput>
    155     </Compile>
    156140  </ItemGroup>
    157141  <ItemGroup>
     
    164148      <Name>HeuristicLab.Hive.Server.Core-3.3</Name>
    165149    </ProjectReference>
    166   </ItemGroup>
    167   <ItemGroup>
    168     <None Include="Resources\HeuristicLab.ico" />
    169150  </ItemGroup>
    170151  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
  • branches/3.3-HiveMigration/sources/HeuristicLab.Hive/HeuristicLab.Hive.Server/3.3/HeuristicLabHiveServerApplication.cs

    r4253 r4254  
    3030using HeuristicLab.Hive.Contracts.Interfaces;
    3131using HeuristicLab.PluginInfrastructure;
     32using HeuristicLab.Hive.Server.Core;
    3233
    3334namespace HeuristicLab.Hive.Server {
     
    162163      baseAddrDict.Add(STR_ExecutionEngineFacade, StartService(Services.ExecutionEngineFacade, addresses[index], WcfSettings.DEFAULTPORT));
    163164
    164       // [chn] why is lifecyclemanager instantiated here?? shouldnt Core.ServiceLocator be used?
    165       IEnumerable<ILifecycleManager> lifecycleManagers = ApplicationManager.Manager.GetInstances<ILifecycleManager>();
    166       if (lifecycleManagers.Count() > 0) {
    167         ILifecycleManager lifecycleManager = lifecycleManagers.First();
     165      ILifecycleManager lifecycleManager = ServiceLocator.GetLifecycleManager();
    168166
    169         lifecycleManager.Init();
     167      lifecycleManager.Init();
    170168
    171         // [chn] remove gui code here, how to display any response from server?
    172         Form mainForm = new MainForm(baseAddrDict);
    173         Application.Run(mainForm);
     169      Form mainForm = new MainForm(baseAddrDict);
     170      Application.Run();
    174171
    175         lifecycleManager.Shutdown();
    176       }
     172      lifecycleManager.Shutdown();
     173     
    177174      StopService(Services.All);
    178175    }
  • branches/3.3-HiveMigration/sources/HeuristicLab.Hive/HeuristicLab.Hive.Server/3.3/HeuristicLabHiveServerPlugin.cs

    r4171 r4254  
    2929  [Plugin("HeuristicLab.Hive.Server", "3.3")]
    3030  [PluginFile("HeuristicLab.Hive.Server-3.3.dll", PluginFileType.Assembly)]
     31  [PluginDependency("HeuristicLab.Common.Resources", "3.3")]
    3132  [PluginDependency("HeuristicLab.Hive.Contracts", "3.3")]
    3233  [PluginDependency("HeuristicLab.Hive.Server.Core", "3.3")]
  • branches/3.3-HiveMigration/sources/HeuristicLab.Hive/HeuristicLab.Hive.Server/3.3/MainForm.Designer.cs

    r4042 r4254  
    5151          // rtfServices
    5252          //
     53          this.rtfServices.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
     54                      | System.Windows.Forms.AnchorStyles.Left)
     55                      | System.Windows.Forms.AnchorStyles.Right)));
    5356          this.rtfServices.Location = new System.Drawing.Point(12, 25);
    5457          this.rtfServices.Name = "rtfServices";
    5558          this.rtfServices.ReadOnly = true;
    56           this.rtfServices.Size = new System.Drawing.Size(280, 121);
     59          this.rtfServices.Size = new System.Drawing.Size(377, 129);
    5760          this.rtfServices.TabIndex = 1;
    5861          this.rtfServices.Text = "";
     
    9699          this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
    97100          this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
    98           this.ClientSize = new System.Drawing.Size(304, 166);
     101          this.ClientSize = new System.Drawing.Size(401, 166);
    99102          this.Controls.Add(this.rtfServices);
    100103          this.Controls.Add(this.label1);
    101           this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle;
    102104          this.Name = "MainForm";
    103           this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
    104105          this.Text = "Hive Server";
    105106          this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.MainForm_FormClosing);
  • branches/3.3-HiveMigration/sources/HeuristicLab.Hive/HeuristicLab.Hive.Server/3.3/MainForm.cs

    r4171 r4254  
    77using System.Text;
    88using System.Windows.Forms;
    9 using HeuristicLab.Hive.Server.Properties;
    109
    11 namespace HeuristicLab.Hive.Server
    12 {
    13     public partial class MainForm : Form {
    14         public MainForm(Dictionary<string, Uri> addresses) {
    15           InitializeComponent();
    16           this.Visible = false;
    17           this.Hide();
     10namespace HeuristicLab.Hive.Server {
     11  public partial class MainForm : Form {
     12    public MainForm(Dictionary<string, Uri> addresses) {
     13      InitializeComponent();
    1814
    19           Uri uri;
    20           StringBuilder servicesTxt = new StringBuilder();
    21           addresses.TryGetValue(HeuristicLabHiveServerApplication.STR_ClientCommunicator, out uri);
    22           if (uri != null)
    23             servicesTxt.AppendLine(String.Format("Server Client: {0}", uri));
    24           addresses.TryGetValue(HeuristicLabHiveServerApplication.STR_ServerConsoleFacade, out uri);
    25           if (uri != null)
    26             servicesTxt.AppendLine(String.Format("Server Console: {0}", uri));
    27           addresses.TryGetValue(HeuristicLabHiveServerApplication.STR_ExecutionEngineFacade, out uri);
    28           if (uri != null)
    29             servicesTxt.AppendLine(String.Format("Execution Engine: {0}", uri));
     15      Uri uri;
     16      StringBuilder servicesTxt = new StringBuilder();
     17      addresses.TryGetValue(HeuristicLabHiveServerApplication.STR_ClientCommunicator, out uri);
     18      if (uri != null)
     19        servicesTxt.AppendLine(String.Format("Server Client: {0}", uri));
     20      addresses.TryGetValue(HeuristicLabHiveServerApplication.STR_ServerConsoleFacade, out uri);
     21      if (uri != null)
     22        servicesTxt.AppendLine(String.Format("Server Console: {0}", uri));
     23      addresses.TryGetValue(HeuristicLabHiveServerApplication.STR_ExecutionEngineFacade, out uri);
     24      if (uri != null)
     25        servicesTxt.AppendLine(String.Format("Execution Engine: {0}", uri));
    3026
    31           rtfServices.AppendText(servicesTxt.ToString());
     27      rtfServices.AppendText(servicesTxt.ToString());
    3228
    33           ni.Icon = Resources.HeuristicLab;
    34           ni.BalloonTipTitle = "HL Hive Server Services";
    35           ni.BalloonTipText = servicesTxt.ToString();
    36           ni.BalloonTipIcon = ToolTipIcon.Info;
    37           ni.Text = "HL Hive Server Services";
    38           ni.ShowBalloonTip(10000);
    39         }
     29      ni.Icon = HeuristicLab.Common.Resources.HeuristicLab.Icon;
     30      ni.BalloonTipTitle = "HL Hive Server Services";
     31      ni.BalloonTipText = servicesTxt.ToString();
     32      ni.BalloonTipIcon = ToolTipIcon.Info;
     33      ni.Text = "HL Hive Server Services";
     34      ni.ShowBalloonTip(10000);
     35    }
    4036
    41         private void CloseApp(object sender, EventArgs e) {
    42           Dispose();
    43         }
     37    private void CloseApp(object sender, EventArgs e) {
     38      this.Dispose();
     39      Application.Exit();
     40    }
    4441
    45         private void ShowInfo(object sender, EventArgs e) {
    46           this.Visible = true;
    47         }
     42    private void ShowInfo(object sender, EventArgs e) {
     43      this.Visible = true;
     44    }
    4845
    49         private void btnClose_Click(object sender, EventArgs e) {
    50           this.Visible = false;
    51         }
    52 
    53         private void MainForm_FormClosing(object sender, FormClosingEventArgs e) {         
    54         }
    55 
     46    private void MainForm_FormClosing(object sender, FormClosingEventArgs e) {
     47      e.Cancel = true;
     48      this.Visible = false;
    5649    }
     50  }
    5751}
  • branches/3.3-HiveMigration/sources/HeuristicLab.Hive/HeuristicLab.Hive.Slave.Communication/3.3/HeuristicLab.Hive.Slave.Communication-3.3.csproj

    r4253 r4254  
    111111    <Compile Include="HeuristicLabHiveSlaveCommunicationPlugin.cs" />
    112112    <Compile Include="Properties\AssemblyInfo.cs" />
    113     <Compile Include="SendJobCompletedEventArgs.cs" />
     113    <Compile Include="GetJobCompletedEventArgs.cs" />
    114114    <Compile Include="Service References\ServerService\Reference.cs">
    115115      <AutoGen>True</AutoGen>
     
    123123    <None Include="HeuristicLab.snk" />
    124124    <None Include="Properties\AssemblyInfo.frame" />
     125    <None Include="Properties\DataSources\HeuristicLab.Hive.Contracts.BusinessObjects.JobDto.datasource" />
     126    <None Include="Properties\DataSources\HeuristicLab.Hive.Contracts.ResponseHeartBeat.datasource" />
     127    <None Include="Properties\DataSources\HeuristicLab.PluginInfrastructure.CachedHivePluginInfoDto.datasource" />
    125128    <None Include="Service References\ServerService\Arrays1.xsd">
    126129      <SubType>Designer</SubType>
  • branches/3.3-HiveMigration/sources/HeuristicLab.Hive/HeuristicLab.Hive.Slave.Communication/3.3/Service References/ServerService/HeuristicLab.Hive.Contracts.BusinessObjects1.xsd

    r4170 r4254  
    22<xs:schema xmlns:ser="http://schemas.microsoft.com/2003/10/Serialization/" xmlns:tns="http://schemas.datacontract.org/2004/07/HeuristicLab.Hive.Contracts.BusinessObjects" elementFormDefault="qualified" targetNamespace="http://schemas.datacontract.org/2004/07/HeuristicLab.Hive.Contracts.BusinessObjects" xmlns:xs="http://www.w3.org/2001/XMLSchema">
    33  <xs:import namespace="http://schemas.datacontract.org/2004/07/HeuristicLab.DataAccess" />
     4  <xs:import namespace="http://schemas.microsoft.com/2003/10/Serialization/Arrays" />
    45  <xs:import namespace="http://schemas.microsoft.com/2003/10/Serialization/" />
    5   <xs:import namespace="http://schemas.microsoft.com/2003/10/Serialization/Arrays" />
    66  <xs:import namespace="http://schemas.datacontract.org/2004/07/System" />
    77  <xs:complexType name="ClientDto">
     
    7171  <xs:complexType name="HeartBeatData">
    7272    <xs:sequence>
    73       <xs:element minOccurs="0" name="ClientId" type="ser:guid" />
    7473      <xs:element minOccurs="0" name="FreeCores" type="xs:int" />
    7574      <xs:element minOccurs="0" name="FreeMemory" type="xs:int" />
    7675      <xs:element xmlns:q3="http://schemas.microsoft.com/2003/10/Serialization/Arrays" minOccurs="0" name="JobProgress" nillable="true" type="q3:ArrayOfKeyValueOfguiddouble" />
     76      <xs:element minOccurs="0" name="SlaveId" type="ser:guid" />
    7777    </xs:sequence>
    7878  </xs:complexType>
  • branches/3.3-HiveMigration/sources/HeuristicLab.Hive/HeuristicLab.Hive.Slave.Communication/3.3/Service References/ServerService/HeuristicLab.Hive.Contracts1.xsd

    r4170 r4254  
    1111  </xs:complexType>
    1212  <xs:element name="Response" nillable="true" type="tns:Response" />
    13   <xs:complexType name="ResponseHB">
     13  <xs:complexType name="ResponseHeartBeat">
    1414    <xs:complexContent mixed="false">
    1515      <xs:extension base="tns:Response">
     
    2020    </xs:complexContent>
    2121  </xs:complexType>
    22   <xs:element name="ResponseHB" nillable="true" type="tns:ResponseHB" />
     22  <xs:element name="ResponseHeartBeat" nillable="true" type="tns:ResponseHeartBeat" />
    2323  <xs:complexType name="ArrayOfMessageContainer">
    2424    <xs:sequence>
     
    5050  </xs:simpleType>
    5151  <xs:element name="MessageContainer.MessageType" nillable="true" type="tns:MessageContainer.MessageType" />
    52   <xs:complexType name="ResponseJob">
     52  <xs:complexType name="ResponseObjectOfJobDtoZAa7YIsz">
     53    <xs:annotation>
     54      <xs:appinfo>
     55        <GenericType Name="ResponseObjectOf{0}{#}" Namespace="http://schemas.datacontract.org/2004/07/HeuristicLab.Hive.Contracts" xmlns="http://schemas.microsoft.com/2003/10/Serialization/">
     56          <GenericParameter Name="JobDto" Namespace="http://schemas.datacontract.org/2004/07/HeuristicLab.Hive.Contracts.BusinessObjects">
     57          </GenericParameter>
     58        </GenericType>
     59      </xs:appinfo>
     60    </xs:annotation>
    5361    <xs:complexContent mixed="false">
    5462      <xs:extension base="tns:Response">
    5563        <xs:sequence>
    56           <xs:element xmlns:q1="http://schemas.datacontract.org/2004/07/HeuristicLab.Hive.Contracts.BusinessObjects" minOccurs="0" name="Job" nillable="true" type="q1:JobDto" />
     64          <xs:element xmlns:q1="http://schemas.datacontract.org/2004/07/HeuristicLab.Hive.Contracts.BusinessObjects" minOccurs="0" name="Obj" nillable="true" type="q1:JobDto" />
    5765        </xs:sequence>
    5866      </xs:extension>
    5967    </xs:complexContent>
    6068  </xs:complexType>
    61   <xs:element name="ResponseJob" nillable="true" type="tns:ResponseJob" />
     69  <xs:element name="ResponseObjectOfJobDtoZAa7YIsz" nillable="true" type="tns:ResponseObjectOfJobDtoZAa7YIsz" />
    6270  <xs:complexType name="ResponseResultReceived">
    6371    <xs:complexContent mixed="false">
     
    7179  </xs:complexType>
    7280  <xs:element name="ResponseResultReceived" nillable="true" type="tns:ResponseResultReceived" />
    73   <xs:complexType name="ResponsePlugin">
     81  <xs:complexType name="ResponseListOfCachedHivePluginInfoDtoZMwZop09">
     82    <xs:annotation>
     83      <xs:appinfo>
     84        <GenericType Name="ResponseListOf{0}{#}" Namespace="http://schemas.datacontract.org/2004/07/HeuristicLab.Hive.Contracts" xmlns="http://schemas.microsoft.com/2003/10/Serialization/">
     85          <GenericParameter Name="CachedHivePluginInfoDto" Namespace="http://schemas.datacontract.org/2004/07/HeuristicLab.PluginInfrastructure">
     86          </GenericParameter>
     87        </GenericType>
     88      </xs:appinfo>
     89    </xs:annotation>
    7490    <xs:complexContent mixed="false">
    7591      <xs:extension base="tns:Response">
    7692        <xs:sequence>
    77           <xs:element xmlns:q2="http://schemas.datacontract.org/2004/07/HeuristicLab.PluginInfrastructure" minOccurs="0" name="Plugins" nillable="true" type="q2:ArrayOfCachedHivePluginInfoDto" />
     93          <xs:element xmlns:q2="http://schemas.datacontract.org/2004/07/HeuristicLab.PluginInfrastructure" minOccurs="0" name="List" nillable="true" type="q2:ArrayOfCachedHivePluginInfoDto" />
    7894        </xs:sequence>
    7995      </xs:extension>
    8096    </xs:complexContent>
    8197  </xs:complexType>
    82   <xs:element name="ResponsePlugin" nillable="true" type="tns:ResponsePlugin" />
     98  <xs:element name="ResponseListOfCachedHivePluginInfoDtoZMwZop09" nillable="true" type="tns:ResponseListOfCachedHivePluginInfoDtoZMwZop09" />
    8399  <xs:complexType name="ResponseCalendar">
    84100    <xs:complexContent mixed="false">
  • branches/3.3-HiveMigration/sources/HeuristicLab.Hive/HeuristicLab.Hive.Slave.Communication/3.3/Service References/ServerService/Reference.cs

    r4253 r4254  
    1010
    1111namespace HeuristicLab.Hive.Slave.Communication.ServerService {
    12     using System.Runtime.Serialization;
    13     using System;
    14    
    15    
    16     [System.Diagnostics.DebuggerStepThroughAttribute()]
    17     [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
    18     [System.Runtime.Serialization.DataContractAttribute(Name="PersistableObject", Namespace="http://schemas.datacontract.org/2004/07/HeuristicLab.DataAccess")]
    19     [System.SerializableAttribute()]
    20     [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Hive.Contracts.BusinessObjects.ClientConfigDto))]
    21     [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Hive.Contracts.BusinessObjects.JobDto))]
    22     [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Hive.Contracts.BusinessObjects.HivePluginInfoDto))]
    23     [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.PluginInfrastructure.CachedHivePluginInfoDto))]
    24     [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Hive.Contracts.BusinessObjects.ProjectDto))]
    25     [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Hive.Contracts.BusinessObjects.AppointmentDto))]
    26     [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Hive.Contracts.BusinessObjects.ResourceDto))]
    27     [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Hive.Contracts.BusinessObjects.ClientDto))]
    28     public partial class PersistableObject : object, System.Runtime.Serialization.IExtensibleDataObject, System.ComponentModel.INotifyPropertyChanged {
    29        
    30         [System.NonSerializedAttribute()]
    31         private System.Runtime.Serialization.ExtensionDataObject extensionDataField;
    32        
    33         [System.Runtime.Serialization.OptionalFieldAttribute()]
    34         private System.Guid IdField;
    35        
    36         [global::System.ComponentModel.BrowsableAttribute(false)]
    37         public System.Runtime.Serialization.ExtensionDataObject ExtensionData {
    38             get {
    39                 return this.extensionDataField;
    40             }
    41             set {
    42                 this.extensionDataField = value;
    43             }
    44         }
    45        
    46         [System.Runtime.Serialization.DataMemberAttribute()]
    47         public System.Guid Id {
    48             get {
    49                 return this.IdField;
    50             }
    51             set {
    52                 if ((this.IdField.Equals(value) != true)) {
    53                     this.IdField = value;
    54                     this.RaisePropertyChanged("Id");
    55                 }
    56             }
    57         }
    58        
    59         public event System.ComponentModel.PropertyChangedEventHandler PropertyChanged;
    60        
    61         protected void RaisePropertyChanged(string propertyName) {
    62             System.ComponentModel.PropertyChangedEventHandler propertyChanged = this.PropertyChanged;
    63             if ((propertyChanged != null)) {
    64                 propertyChanged(this, new System.ComponentModel.PropertyChangedEventArgs(propertyName));
    65             }
    66         }
    67     }
    68    
    69     [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
    70     [System.ServiceModel.ServiceContractAttribute(ConfigurationName="ServerService.IClientFacade")]
    71     public interface IClientFacade {
    72        
    73         [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IClientCommunicator/Login", ReplyAction="http://tempuri.org/IClientCommunicator/LoginResponse")]
    74         [System.ServiceModel.ServiceKnownTypeAttribute(typeof(HeuristicLab.Hive.Contracts.ResponseHB))]
    75         [System.ServiceModel.ServiceKnownTypeAttribute(typeof(HeuristicLab.Hive.Contracts.ResponseJob))]
     12   
     13   
     14    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
     15    [System.ServiceModel.ServiceContractAttribute(ConfigurationName="ServerService.ISlaveFacade")]
     16    public interface ISlaveFacade {
     17       
     18        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/ISlaveCommunicator/Login", ReplyAction="http://tempuri.org/ISlaveCommunicator/LoginResponse")]
     19        [System.ServiceModel.ServiceKnownTypeAttribute(typeof(HeuristicLab.Hive.Contracts.ResponseHeartBeat))]
     20        [System.ServiceModel.ServiceKnownTypeAttribute(typeof(HeuristicLab.Hive.Contracts.ResponseObject<HeuristicLab.Hive.Contracts.BusinessObjects.JobDto>))]
    7621        [System.ServiceModel.ServiceKnownTypeAttribute(typeof(HeuristicLab.Hive.Contracts.ResponseResultReceived))]
    77         [System.ServiceModel.ServiceKnownTypeAttribute(typeof(HeuristicLab.Hive.Contracts.ResponsePlugin))]
     22        [System.ServiceModel.ServiceKnownTypeAttribute(typeof(HeuristicLab.Hive.Contracts.ResponseList<HeuristicLab.PluginInfrastructure.CachedHivePluginInfoDto>))]
    7823        [System.ServiceModel.ServiceKnownTypeAttribute(typeof(HeuristicLab.Hive.Contracts.ResponseCalendar))]
    7924        HeuristicLab.Hive.Contracts.Response Login(HeuristicLab.Hive.Contracts.BusinessObjects.ClientDto clientInfo);
    8025       
    81         [System.ServiceModel.OperationContractAttribute(AsyncPattern=true, Action="http://tempuri.org/IClientCommunicator/Login", ReplyAction="http://tempuri.org/IClientCommunicator/LoginResponse")]
     26        [System.ServiceModel.OperationContractAttribute(AsyncPattern=true, Action="http://tempuri.org/ISlaveCommunicator/Login", ReplyAction="http://tempuri.org/ISlaveCommunicator/LoginResponse")]
    8227        System.IAsyncResult BeginLogin(HeuristicLab.Hive.Contracts.BusinessObjects.ClientDto clientInfo, System.AsyncCallback callback, object asyncState);
    8328       
    8429        HeuristicLab.Hive.Contracts.Response EndLogin(System.IAsyncResult result);
    8530       
    86         [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IClientCommunicator/ProcessHeartBeat", ReplyAction="http://tempuri.org/IClientCommunicator/ProcessHeartBeatResponse")]
    87         HeuristicLab.Hive.Contracts.ResponseHB ProcessHeartBeat(HeuristicLab.Hive.Contracts.BusinessObjects.HeartBeatData hbData);
    88        
    89         [System.ServiceModel.OperationContractAttribute(AsyncPattern=true, Action="http://tempuri.org/IClientCommunicator/ProcessHeartBeat", ReplyAction="http://tempuri.org/IClientCommunicator/ProcessHeartBeatResponse")]
     31        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/ISlaveCommunicator/ProcessHeartBeat", ReplyAction="http://tempuri.org/ISlaveCommunicator/ProcessHeartBeatResponse")]
     32        HeuristicLab.Hive.Contracts.ResponseHeartBeat ProcessHeartBeat(HeuristicLab.Hive.Contracts.BusinessObjects.HeartBeatData hbData);
     33       
     34        [System.ServiceModel.OperationContractAttribute(AsyncPattern=true, Action="http://tempuri.org/ISlaveCommunicator/ProcessHeartBeat", ReplyAction="http://tempuri.org/ISlaveCommunicator/ProcessHeartBeatResponse")]
    9035        System.IAsyncResult BeginProcessHeartBeat(HeuristicLab.Hive.Contracts.BusinessObjects.HeartBeatData hbData, System.AsyncCallback callback, object asyncState);
    9136       
    92         HeuristicLab.Hive.Contracts.ResponseHB EndProcessHeartBeat(System.IAsyncResult result);
    93        
    94         [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IClientCommunicator/SendJob", ReplyAction="http://tempuri.org/IClientCommunicator/SendJobResponse")]
    95         HeuristicLab.Hive.Contracts.ResponseJob SendJob(System.Guid clientId);
    96        
    97         [System.ServiceModel.OperationContractAttribute(AsyncPattern=true, Action="http://tempuri.org/IClientCommunicator/SendJob", ReplyAction="http://tempuri.org/IClientCommunicator/SendJobResponse")]
    98         System.IAsyncResult BeginSendJob(System.Guid clientId, System.AsyncCallback callback, object asyncState);
    99        
    100         HeuristicLab.Hive.Contracts.ResponseJob EndSendJob(System.IAsyncResult result);
    101        
    102         [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IClientCommunicator/StoreFinishedJobResult", ReplyAction="http://tempuri.org/IClientCommunicator/StoreFinishedJobResultResponse")]
     37        HeuristicLab.Hive.Contracts.ResponseHeartBeat EndProcessHeartBeat(System.IAsyncResult result);
     38       
     39        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/ISlaveCommunicator/GetJob", ReplyAction="http://tempuri.org/ISlaveCommunicator/GetJobResponse")]
     40        HeuristicLab.Hive.Contracts.ResponseObject<HeuristicLab.Hive.Contracts.BusinessObjects.JobDto> GetJob(System.Guid clientId);
     41       
     42        [System.ServiceModel.OperationContractAttribute(AsyncPattern=true, Action="http://tempuri.org/ISlaveCommunicator/GetJob", ReplyAction="http://tempuri.org/ISlaveCommunicator/GetJobResponse")]
     43        System.IAsyncResult BeginGetJob(System.Guid clientId, System.AsyncCallback callback, object asyncState);
     44       
     45        HeuristicLab.Hive.Contracts.ResponseObject<HeuristicLab.Hive.Contracts.BusinessObjects.JobDto> EndGetJob(System.IAsyncResult result);
     46       
     47        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/ISlaveCommunicator/StoreFinishedJobResult", ReplyAction="http://tempuri.org/ISlaveCommunicator/StoreFinishedJobResultResponse")]
    10348        HeuristicLab.Hive.Contracts.ResponseResultReceived StoreFinishedJobResult(System.Guid clientId, System.Guid jobId, byte[] result, double percentage, string exception);
    10449       
    105         [System.ServiceModel.OperationContractAttribute(AsyncPattern=true, Action="http://tempuri.org/IClientCommunicator/StoreFinishedJobResult", ReplyAction="http://tempuri.org/IClientCommunicator/StoreFinishedJobResultResponse")]
     50        [System.ServiceModel.OperationContractAttribute(AsyncPattern=true, Action="http://tempuri.org/ISlaveCommunicator/StoreFinishedJobResult", ReplyAction="http://tempuri.org/ISlaveCommunicator/StoreFinishedJobResultResponse")]
    10651        System.IAsyncResult BeginStoreFinishedJobResult(System.Guid clientId, System.Guid jobId, byte[] result, double percentage, string exception, System.AsyncCallback callback, object asyncState);
    10752       
    10853        HeuristicLab.Hive.Contracts.ResponseResultReceived EndStoreFinishedJobResult(System.IAsyncResult result);
    10954       
    110         [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IClientCommunicator/ProcessSnapshot", ReplyAction="http://tempuri.org/IClientCommunicator/ProcessSnapshotResponse")]
     55        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/ISlaveCommunicator/ProcessSnapshot", ReplyAction="http://tempuri.org/ISlaveCommunicator/ProcessSnapshotResponse")]
    11156        HeuristicLab.Hive.Contracts.ResponseResultReceived ProcessSnapshot(System.Guid clientId, System.Guid jobId, byte[] result, double percentage, string exception);
    11257       
    113         [System.ServiceModel.OperationContractAttribute(AsyncPattern=true, Action="http://tempuri.org/IClientCommunicator/ProcessSnapshot", ReplyAction="http://tempuri.org/IClientCommunicator/ProcessSnapshotResponse")]
     58        [System.ServiceModel.OperationContractAttribute(AsyncPattern=true, Action="http://tempuri.org/ISlaveCommunicator/ProcessSnapshot", ReplyAction="http://tempuri.org/ISlaveCommunicator/ProcessSnapshotResponse")]
    11459        System.IAsyncResult BeginProcessSnapshot(System.Guid clientId, System.Guid jobId, byte[] result, double percentage, string exception, System.AsyncCallback callback, object asyncState);
    11560       
    11661        HeuristicLab.Hive.Contracts.ResponseResultReceived EndProcessSnapshot(System.IAsyncResult result);
    11762       
    118         [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IClientCommunicator/Logout", ReplyAction="http://tempuri.org/IClientCommunicator/LogoutResponse")]
    119         [System.ServiceModel.ServiceKnownTypeAttribute(typeof(HeuristicLab.Hive.Contracts.ResponseHB))]
    120         [System.ServiceModel.ServiceKnownTypeAttribute(typeof(HeuristicLab.Hive.Contracts.ResponseJob))]
     63        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/ISlaveCommunicator/Logout", ReplyAction="http://tempuri.org/ISlaveCommunicator/LogoutResponse")]
     64        [System.ServiceModel.ServiceKnownTypeAttribute(typeof(HeuristicLab.Hive.Contracts.ResponseHeartBeat))]
     65        [System.ServiceModel.ServiceKnownTypeAttribute(typeof(HeuristicLab.Hive.Contracts.ResponseObject<HeuristicLab.Hive.Contracts.BusinessObjects.JobDto>))]
    12166        [System.ServiceModel.ServiceKnownTypeAttribute(typeof(HeuristicLab.Hive.Contracts.ResponseResultReceived))]
    122         [System.ServiceModel.ServiceKnownTypeAttribute(typeof(HeuristicLab.Hive.Contracts.ResponsePlugin))]
     67        [System.ServiceModel.ServiceKnownTypeAttribute(typeof(HeuristicLab.Hive.Contracts.ResponseList<HeuristicLab.PluginInfrastructure.CachedHivePluginInfoDto>))]
    12368        [System.ServiceModel.ServiceKnownTypeAttribute(typeof(HeuristicLab.Hive.Contracts.ResponseCalendar))]
    12469        HeuristicLab.Hive.Contracts.Response Logout(System.Guid clientId);
    12570       
    126         [System.ServiceModel.OperationContractAttribute(AsyncPattern=true, Action="http://tempuri.org/IClientCommunicator/Logout", ReplyAction="http://tempuri.org/IClientCommunicator/LogoutResponse")]
     71        [System.ServiceModel.OperationContractAttribute(AsyncPattern=true, Action="http://tempuri.org/ISlaveCommunicator/Logout", ReplyAction="http://tempuri.org/ISlaveCommunicator/LogoutResponse")]
    12772        System.IAsyncResult BeginLogout(System.Guid clientId, System.AsyncCallback callback, object asyncState);
    12873       
    12974        HeuristicLab.Hive.Contracts.Response EndLogout(System.IAsyncResult result);
    13075       
    131         [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IClientCommunicator/IsJobStillNeeded", ReplyAction="http://tempuri.org/IClientCommunicator/IsJobStillNeededResponse")]
    132         [System.ServiceModel.ServiceKnownTypeAttribute(typeof(HeuristicLab.Hive.Contracts.ResponseHB))]
    133         [System.ServiceModel.ServiceKnownTypeAttribute(typeof(HeuristicLab.Hive.Contracts.ResponseJob))]
     76        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/ISlaveCommunicator/IsJobStillNeeded", ReplyAction="http://tempuri.org/ISlaveCommunicator/IsJobStillNeededResponse")]
     77        [System.ServiceModel.ServiceKnownTypeAttribute(typeof(HeuristicLab.Hive.Contracts.ResponseHeartBeat))]
     78        [System.ServiceModel.ServiceKnownTypeAttribute(typeof(HeuristicLab.Hive.Contracts.ResponseObject<HeuristicLab.Hive.Contracts.BusinessObjects.JobDto>))]
    13479        [System.ServiceModel.ServiceKnownTypeAttribute(typeof(HeuristicLab.Hive.Contracts.ResponseResultReceived))]
    135         [System.ServiceModel.ServiceKnownTypeAttribute(typeof(HeuristicLab.Hive.Contracts.ResponsePlugin))]
     80        [System.ServiceModel.ServiceKnownTypeAttribute(typeof(HeuristicLab.Hive.Contracts.ResponseList<HeuristicLab.PluginInfrastructure.CachedHivePluginInfoDto>))]
    13681        [System.ServiceModel.ServiceKnownTypeAttribute(typeof(HeuristicLab.Hive.Contracts.ResponseCalendar))]
    13782        HeuristicLab.Hive.Contracts.Response IsJobStillNeeded(System.Guid jobId);
    13883       
    139         [System.ServiceModel.OperationContractAttribute(AsyncPattern=true, Action="http://tempuri.org/IClientCommunicator/IsJobStillNeeded", ReplyAction="http://tempuri.org/IClientCommunicator/IsJobStillNeededResponse")]
     84        [System.ServiceModel.OperationContractAttribute(AsyncPattern=true, Action="http://tempuri.org/ISlaveCommunicator/IsJobStillNeeded", ReplyAction="http://tempuri.org/ISlaveCommunicator/IsJobStillNeededResponse")]
    14085        System.IAsyncResult BeginIsJobStillNeeded(System.Guid jobId, System.AsyncCallback callback, object asyncState);
    14186       
    14287        HeuristicLab.Hive.Contracts.Response EndIsJobStillNeeded(System.IAsyncResult result);
    14388       
    144         [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IClientCommunicator/SendPlugins", ReplyAction="http://tempuri.org/IClientCommunicator/SendPluginsResponse")]
    145         HeuristicLab.Hive.Contracts.ResponsePlugin SendPlugins(HeuristicLab.Hive.Contracts.BusinessObjects.HivePluginInfoDto[] pluginList);
    146        
    147         [System.ServiceModel.OperationContractAttribute(AsyncPattern=true, Action="http://tempuri.org/IClientCommunicator/SendPlugins", ReplyAction="http://tempuri.org/IClientCommunicator/SendPluginsResponse")]
     89        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/ISlaveCommunicator/SendPlugins", ReplyAction="http://tempuri.org/ISlaveCommunicator/SendPluginsResponse")]
     90        HeuristicLab.Hive.Contracts.ResponseList<HeuristicLab.PluginInfrastructure.CachedHivePluginInfoDto> SendPlugins(HeuristicLab.Hive.Contracts.BusinessObjects.HivePluginInfoDto[] pluginList);
     91       
     92        [System.ServiceModel.OperationContractAttribute(AsyncPattern=true, Action="http://tempuri.org/ISlaveCommunicator/SendPlugins", ReplyAction="http://tempuri.org/ISlaveCommunicator/SendPluginsResponse")]
    14893        System.IAsyncResult BeginSendPlugins(HeuristicLab.Hive.Contracts.BusinessObjects.HivePluginInfoDto[] pluginList, System.AsyncCallback callback, object asyncState);
    14994       
    150         HeuristicLab.Hive.Contracts.ResponsePlugin EndSendPlugins(System.IAsyncResult result);
    151        
    152         [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IClientCommunicator/GetCalendar", ReplyAction="http://tempuri.org/IClientCommunicator/GetCalendarResponse")]
     95        HeuristicLab.Hive.Contracts.ResponseList<HeuristicLab.PluginInfrastructure.CachedHivePluginInfoDto> EndSendPlugins(System.IAsyncResult result);
     96       
     97        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/ISlaveCommunicator/GetCalendar", ReplyAction="http://tempuri.org/ISlaveCommunicator/GetCalendarResponse")]
    15398        HeuristicLab.Hive.Contracts.ResponseCalendar GetCalendar(System.Guid clientId);
    15499       
    155         [System.ServiceModel.OperationContractAttribute(AsyncPattern=true, Action="http://tempuri.org/IClientCommunicator/GetCalendar", ReplyAction="http://tempuri.org/IClientCommunicator/GetCalendarResponse")]
     100        [System.ServiceModel.OperationContractAttribute(AsyncPattern=true, Action="http://tempuri.org/ISlaveCommunicator/GetCalendar", ReplyAction="http://tempuri.org/ISlaveCommunicator/GetCalendarResponse")]
    156101        System.IAsyncResult BeginGetCalendar(System.Guid clientId, System.AsyncCallback callback, object asyncState);
    157102       
    158103        HeuristicLab.Hive.Contracts.ResponseCalendar EndGetCalendar(System.IAsyncResult result);
    159104       
    160         [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IClientCommunicator/SetCalendarStatus", ReplyAction="http://tempuri.org/IClientCommunicator/SetCalendarStatusResponse")]
    161         [System.ServiceModel.ServiceKnownTypeAttribute(typeof(HeuristicLab.Hive.Contracts.ResponseHB))]
    162         [System.ServiceModel.ServiceKnownTypeAttribute(typeof(HeuristicLab.Hive.Contracts.ResponseJob))]
     105        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/ISlaveCommunicator/SetCalendarStatus", ReplyAction="http://tempuri.org/ISlaveCommunicator/SetCalendarStatusResponse")]
     106        [System.ServiceModel.ServiceKnownTypeAttribute(typeof(HeuristicLab.Hive.Contracts.ResponseHeartBeat))]
     107        [System.ServiceModel.ServiceKnownTypeAttribute(typeof(HeuristicLab.Hive.Contracts.ResponseObject<HeuristicLab.Hive.Contracts.BusinessObjects.JobDto>))]
    163108        [System.ServiceModel.ServiceKnownTypeAttribute(typeof(HeuristicLab.Hive.Contracts.ResponseResultReceived))]
    164         [System.ServiceModel.ServiceKnownTypeAttribute(typeof(HeuristicLab.Hive.Contracts.ResponsePlugin))]
     109        [System.ServiceModel.ServiceKnownTypeAttribute(typeof(HeuristicLab.Hive.Contracts.ResponseList<HeuristicLab.PluginInfrastructure.CachedHivePluginInfoDto>))]
    165110        [System.ServiceModel.ServiceKnownTypeAttribute(typeof(HeuristicLab.Hive.Contracts.ResponseCalendar))]
    166111        HeuristicLab.Hive.Contracts.Response SetCalendarStatus(System.Guid clientId, HeuristicLab.Hive.Contracts.BusinessObjects.CalendarState state);
    167112       
    168         [System.ServiceModel.OperationContractAttribute(AsyncPattern=true, Action="http://tempuri.org/IClientCommunicator/SetCalendarStatus", ReplyAction="http://tempuri.org/IClientCommunicator/SetCalendarStatusResponse")]
     113        [System.ServiceModel.OperationContractAttribute(AsyncPattern=true, Action="http://tempuri.org/ISlaveCommunicator/SetCalendarStatus", ReplyAction="http://tempuri.org/ISlaveCommunicator/SetCalendarStatusResponse")]
    169114        System.IAsyncResult BeginSetCalendarStatus(System.Guid clientId, HeuristicLab.Hive.Contracts.BusinessObjects.CalendarState state, System.AsyncCallback callback, object asyncState);
    170115       
    171116        HeuristicLab.Hive.Contracts.Response EndSetCalendarStatus(System.IAsyncResult result);
    172117       
    173         [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IClientFacade/SendStreamedJob", ReplyAction="http://tempuri.org/IClientFacade/SendStreamedJobResponse")]
     118        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/ISlaveFacade/SendStreamedJob", ReplyAction="http://tempuri.org/ISlaveFacade/SendStreamedJobResponse")]
    174119        System.IO.Stream SendStreamedJob(System.Guid clientId);
    175120       
    176         [System.ServiceModel.OperationContractAttribute(AsyncPattern=true, Action="http://tempuri.org/IClientFacade/SendStreamedJob", ReplyAction="http://tempuri.org/IClientFacade/SendStreamedJobResponse")]
     121        [System.ServiceModel.OperationContractAttribute(AsyncPattern=true, Action="http://tempuri.org/ISlaveFacade/SendStreamedJob", ReplyAction="http://tempuri.org/ISlaveFacade/SendStreamedJobResponse")]
    177122        System.IAsyncResult BeginSendStreamedJob(System.Guid clientId, System.AsyncCallback callback, object asyncState);
    178123       
    179124        System.IO.Stream EndSendStreamedJob(System.IAsyncResult result);
    180125       
    181         [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IClientFacade/SendStreamedPlugins", ReplyAction="http://tempuri.org/IClientFacade/SendStreamedPluginsResponse")]
     126        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/ISlaveFacade/SendStreamedPlugins", ReplyAction="http://tempuri.org/ISlaveFacade/SendStreamedPluginsResponse")]
    182127        System.IO.Stream SendStreamedPlugins(HeuristicLab.Hive.Contracts.BusinessObjects.HivePluginInfoDto[] pluginList);
    183128       
    184         [System.ServiceModel.OperationContractAttribute(AsyncPattern=true, Action="http://tempuri.org/IClientFacade/SendStreamedPlugins", ReplyAction="http://tempuri.org/IClientFacade/SendStreamedPluginsResponse")]
     129        [System.ServiceModel.OperationContractAttribute(AsyncPattern=true, Action="http://tempuri.org/ISlaveFacade/SendStreamedPlugins", ReplyAction="http://tempuri.org/ISlaveFacade/SendStreamedPluginsResponse")]
    185130        System.IAsyncResult BeginSendStreamedPlugins(HeuristicLab.Hive.Contracts.BusinessObjects.HivePluginInfoDto[] pluginList, System.AsyncCallback callback, object asyncState);
    186131       
    187132        System.IO.Stream EndSendStreamedPlugins(System.IAsyncResult result);
    188133       
    189         [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IClientFacade/StoreFinishedJobResultStreamed", ReplyAction="http://tempuri.org/IClientFacade/StoreFinishedJobResultStreamedResponse")]
     134        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/ISlaveFacade/StoreFinishedJobResultStreamed", ReplyAction="http://tempuri.org/ISlaveFacade/StoreFinishedJobResultStreamedResponse")]
    190135        HeuristicLab.Hive.Contracts.ResponseResultReceived StoreFinishedJobResultStreamed(System.IO.Stream stream);
    191136       
    192         [System.ServiceModel.OperationContractAttribute(AsyncPattern=true, Action="http://tempuri.org/IClientFacade/StoreFinishedJobResultStreamed", ReplyAction="http://tempuri.org/IClientFacade/StoreFinishedJobResultStreamedResponse")]
     137        [System.ServiceModel.OperationContractAttribute(AsyncPattern=true, Action="http://tempuri.org/ISlaveFacade/StoreFinishedJobResultStreamed", ReplyAction="http://tempuri.org/ISlaveFacade/StoreFinishedJobResultStreamedResponse")]
    193138        System.IAsyncResult BeginStoreFinishedJobResultStreamed(System.IO.Stream stream, System.AsyncCallback callback, object asyncState);
    194139       
    195140        HeuristicLab.Hive.Contracts.ResponseResultReceived EndStoreFinishedJobResultStreamed(System.IAsyncResult result);
    196141       
    197         [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IClientFacade/ProcessSnapshotStreamed", ReplyAction="http://tempuri.org/IClientFacade/ProcessSnapshotStreamedResponse")]
     142        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/ISlaveFacade/ProcessSnapshotStreamed", ReplyAction="http://tempuri.org/ISlaveFacade/ProcessSnapshotStreamedResponse")]
    198143        HeuristicLab.Hive.Contracts.ResponseResultReceived ProcessSnapshotStreamed(System.IO.Stream stream);
    199144       
    200         [System.ServiceModel.OperationContractAttribute(AsyncPattern=true, Action="http://tempuri.org/IClientFacade/ProcessSnapshotStreamed", ReplyAction="http://tempuri.org/IClientFacade/ProcessSnapshotStreamedResponse")]
     145        [System.ServiceModel.OperationContractAttribute(AsyncPattern=true, Action="http://tempuri.org/ISlaveFacade/ProcessSnapshotStreamed", ReplyAction="http://tempuri.org/ISlaveFacade/ProcessSnapshotStreamedResponse")]
    201146        System.IAsyncResult BeginProcessSnapshotStreamed(System.IO.Stream stream, System.AsyncCallback callback, object asyncState);
    202147       
     
    205150   
    206151    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
    207     public interface IClientFacadeChannel : HeuristicLab.Hive.Slave.Communication.ServerService.IClientFacade, System.ServiceModel.IClientChannel {
     152    public interface ISlaveFacadeChannel : HeuristicLab.Hive.Slave.Communication.ServerService.ISlaveFacade, System.ServiceModel.IClientChannel {
    208153    }
    209154   
     
    238183        }
    239184       
    240         public HeuristicLab.Hive.Contracts.ResponseHB Result {
    241             get {
    242                 base.RaiseExceptionIfNecessary();
    243                 return ((HeuristicLab.Hive.Contracts.ResponseHB)(this.results[0]));
    244             }
    245         }
    246     }
    247    
    248     [System.Diagnostics.DebuggerStepThroughAttribute()]
    249     [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
    250     public partial class SendJobCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
    251        
    252         private object[] results;
    253        
    254         public SendJobCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) :
    255                 base(exception, cancelled, userState) {
    256             this.results = results;
    257         }
    258        
    259         public HeuristicLab.Hive.Contracts.ResponseJob Result {
    260             get {
    261                 base.RaiseExceptionIfNecessary();
    262                 return ((HeuristicLab.Hive.Contracts.ResponseJob)(this.results[0]));
     185        public HeuristicLab.Hive.Contracts.ResponseHeartBeat Result {
     186            get {
     187                base.RaiseExceptionIfNecessary();
     188                return ((HeuristicLab.Hive.Contracts.ResponseHeartBeat)(this.results[0]));
     189            }
     190        }
     191    }
     192   
     193    [System.Diagnostics.DebuggerStepThroughAttribute()]
     194    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
     195    public partial class GetJobCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
     196       
     197        private object[] results;
     198       
     199        public GetJobCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) :
     200                base(exception, cancelled, userState) {
     201            this.results = results;
     202        }
     203       
     204        public HeuristicLab.Hive.Contracts.ResponseObject<HeuristicLab.Hive.Contracts.BusinessObjects.JobDto> Result {
     205            get {
     206                base.RaiseExceptionIfNecessary();
     207                return ((HeuristicLab.Hive.Contracts.ResponseObject<HeuristicLab.Hive.Contracts.BusinessObjects.JobDto>)(this.results[0]));
    263208            }
    264209        }
     
    352297        }
    353298       
    354         public HeuristicLab.Hive.Contracts.ResponsePlugin Result {
    355             get {
    356                 base.RaiseExceptionIfNecessary();
    357                 return ((HeuristicLab.Hive.Contracts.ResponsePlugin)(this.results[0]));
     299        public HeuristicLab.Hive.Contracts.ResponseList<HeuristicLab.PluginInfrastructure.CachedHivePluginInfoDto> Result {
     300            get {
     301                base.RaiseExceptionIfNecessary();
     302                return ((HeuristicLab.Hive.Contracts.ResponseList<HeuristicLab.PluginInfrastructure.CachedHivePluginInfoDto>)(this.results[0]));
    358303            }
    359304        }
     
    476421    [System.Diagnostics.DebuggerStepThroughAttribute()]
    477422    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
    478     public partial class ClientFacadeClient : System.ServiceModel.ClientBase<HeuristicLab.Hive.Slave.Communication.ServerService.IClientFacade>, HeuristicLab.Hive.Slave.Communication.ServerService.IClientFacade {
     423    public partial class SlaveFacadeClient : System.ServiceModel.ClientBase<HeuristicLab.Hive.Slave.Communication.ServerService.ISlaveFacade>, HeuristicLab.Hive.Slave.Communication.ServerService.ISlaveFacade {
    479424       
    480425        private BeginOperationDelegate onBeginLoginDelegate;
     
    490435        private System.Threading.SendOrPostCallback onProcessHeartBeatCompletedDelegate;
    491436       
    492         private BeginOperationDelegate onBeginSendJobDelegate;
    493        
    494         private EndOperationDelegate onEndSendJobDelegate;
    495        
    496         private System.Threading.SendOrPostCallback onSendJobCompletedDelegate;
     437        private BeginOperationDelegate onBeginGetJobDelegate;
     438       
     439        private EndOperationDelegate onEndGetJobDelegate;
     440       
     441        private System.Threading.SendOrPostCallback onGetJobCompletedDelegate;
    497442       
    498443        private BeginOperationDelegate onBeginStoreFinishedJobResultDelegate;
     
    562507        private System.Threading.SendOrPostCallback onProcessSnapshotStreamedCompletedDelegate;
    563508       
    564         public ClientFacadeClient() {
    565         }
    566        
    567         public ClientFacadeClient(string endpointConfigurationName) :
     509        public SlaveFacadeClient() {
     510        }
     511       
     512        public SlaveFacadeClient(string endpointConfigurationName) :
    568513                base(endpointConfigurationName) {
    569514        }
    570515       
    571         public ClientFacadeClient(string endpointConfigurationName, string remoteAddress) :
     516        public SlaveFacadeClient(string endpointConfigurationName, string remoteAddress) :
    572517                base(endpointConfigurationName, remoteAddress) {
    573518        }
    574519       
    575         public ClientFacadeClient(string endpointConfigurationName, System.ServiceModel.EndpointAddress remoteAddress) :
     520        public SlaveFacadeClient(string endpointConfigurationName, System.ServiceModel.EndpointAddress remoteAddress) :
    576521                base(endpointConfigurationName, remoteAddress) {
    577522        }
    578523       
    579         public ClientFacadeClient(System.ServiceModel.Channels.Binding binding, System.ServiceModel.EndpointAddress remoteAddress) :
     524        public SlaveFacadeClient(System.ServiceModel.Channels.Binding binding, System.ServiceModel.EndpointAddress remoteAddress) :
    580525                base(binding, remoteAddress) {
    581526        }
     
    585530        public event System.EventHandler<ProcessHeartBeatCompletedEventArgs> ProcessHeartBeatCompleted;
    586531       
    587         public event System.EventHandler<SendJobCompletedEventArgs> SendJobCompleted;
     532        public event System.EventHandler<GetJobCompletedEventArgs> GetJobCompleted;
    588533       
    589534        public event System.EventHandler<StoreFinishedJobResultCompletedEventArgs> StoreFinishedJobResultCompleted;
     
    659604        }
    660605       
    661         public HeuristicLab.Hive.Contracts.ResponseHB ProcessHeartBeat(HeuristicLab.Hive.Contracts.BusinessObjects.HeartBeatData hbData) {
     606        public HeuristicLab.Hive.Contracts.ResponseHeartBeat ProcessHeartBeat(HeuristicLab.Hive.Contracts.BusinessObjects.HeartBeatData hbData) {
    662607            return base.Channel.ProcessHeartBeat(hbData);
    663608        }
     
    669614       
    670615        [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
    671         public HeuristicLab.Hive.Contracts.ResponseHB EndProcessHeartBeat(System.IAsyncResult result) {
     616        public HeuristicLab.Hive.Contracts.ResponseHeartBeat EndProcessHeartBeat(System.IAsyncResult result) {
    672617            return base.Channel.EndProcessHeartBeat(result);
    673618        }
     
    679624       
    680625        private object[] OnEndProcessHeartBeat(System.IAsyncResult result) {
    681             HeuristicLab.Hive.Contracts.ResponseHB retVal = this.EndProcessHeartBeat(result);
     626            HeuristicLab.Hive.Contracts.ResponseHeartBeat retVal = this.EndProcessHeartBeat(result);
    682627            return new object[] {
    683628                    retVal};
     
    709654        }
    710655       
    711         public HeuristicLab.Hive.Contracts.ResponseJob SendJob(System.Guid clientId) {
    712             return base.Channel.SendJob(clientId);
    713         }
    714        
    715         [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
    716         public System.IAsyncResult BeginSendJob(System.Guid clientId, System.AsyncCallback callback, object asyncState) {
    717             return base.Channel.BeginSendJob(clientId, callback, asyncState);
    718         }
    719        
    720         [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
    721         public HeuristicLab.Hive.Contracts.ResponseJob EndSendJob(System.IAsyncResult result) {
    722             return base.Channel.EndSendJob(result);
    723         }
    724        
    725         private System.IAsyncResult OnBeginSendJob(object[] inValues, System.AsyncCallback callback, object asyncState) {
     656        public HeuristicLab.Hive.Contracts.ResponseObject<HeuristicLab.Hive.Contracts.BusinessObjects.JobDto> GetJob(System.Guid clientId) {
     657            return base.Channel.GetJob(clientId);
     658        }
     659       
     660        [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
     661        public System.IAsyncResult BeginGetJob(System.Guid clientId, System.AsyncCallback callback, object asyncState) {
     662            return base.Channel.BeginGetJob(clientId, callback, asyncState);
     663        }
     664       
     665        [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
     666        public HeuristicLab.Hive.Contracts.ResponseObject<HeuristicLab.Hive.Contracts.BusinessObjects.JobDto> EndGetJob(System.IAsyncResult result) {
     667            return base.Channel.EndGetJob(result);
     668        }
     669       
     670        private System.IAsyncResult OnBeginGetJob(object[] inValues, System.AsyncCallback callback, object asyncState) {
    726671            System.Guid clientId = ((System.Guid)(inValues[0]));
    727             return this.BeginSendJob(clientId, callback, asyncState);
    728         }
    729        
    730         private object[] OnEndSendJob(System.IAsyncResult result) {
    731             HeuristicLab.Hive.Contracts.ResponseJob retVal = this.EndSendJob(result);
    732             return new object[] {
    733                     retVal};
    734         }
    735        
    736         private void OnSendJobCompleted(object state) {
    737             if ((this.SendJobCompleted != null)) {
    738                 InvokeAsyncCompletedEventArgs e = ((InvokeAsyncCompletedEventArgs)(state));
    739                 this.SendJobCompleted(this, new SendJobCompletedEventArgs(e.Results, e.Error, e.Cancelled, e.UserState));
    740             }
    741         }
    742        
    743         public void SendJobAsync(System.Guid clientId) {
    744             this.SendJobAsync(clientId, null);
    745         }
    746        
    747         public void SendJobAsync(System.Guid clientId, object userState) {
    748             if ((this.onBeginSendJobDelegate == null)) {
    749                 this.onBeginSendJobDelegate = new BeginOperationDelegate(this.OnBeginSendJob);
    750             }
    751             if ((this.onEndSendJobDelegate == null)) {
    752                 this.onEndSendJobDelegate = new EndOperationDelegate(this.OnEndSendJob);
    753             }
    754             if ((this.onSendJobCompletedDelegate == null)) {
    755                 this.onSendJobCompletedDelegate = new System.Threading.SendOrPostCallback(this.OnSendJobCompleted);
    756             }
    757             base.InvokeAsync(this.onBeginSendJobDelegate, new object[] {
    758                         clientId}, this.onEndSendJobDelegate, this.onSendJobCompletedDelegate, userState);
     672            return this.BeginGetJob(clientId, callback, asyncState);
     673        }
     674       
     675        private object[] OnEndGetJob(System.IAsyncResult result) {
     676            HeuristicLab.Hive.Contracts.ResponseObject<HeuristicLab.Hive.Contracts.BusinessObjects.JobDto> retVal = this.EndGetJob(result);
     677            return new object[] {
     678                    retVal};
     679        }
     680       
     681        private void OnGetJobCompleted(object state) {
     682            if ((this.GetJobCompleted != null)) {
     683                InvokeAsyncCompletedEventArgs e = ((InvokeAsyncCompletedEventArgs)(state));
     684                this.GetJobCompleted(this, new GetJobCompletedEventArgs(e.Results, e.Error, e.Cancelled, e.UserState));
     685            }
     686        }
     687       
     688        public void GetJobAsync(System.Guid clientId) {
     689            this.GetJobAsync(clientId, null);
     690        }
     691       
     692        public void GetJobAsync(System.Guid clientId, object userState) {
     693            if ((this.onBeginGetJobDelegate == null)) {
     694                this.onBeginGetJobDelegate = new BeginOperationDelegate(this.OnBeginGetJob);
     695            }
     696            if ((this.onEndGetJobDelegate == null)) {
     697                this.onEndGetJobDelegate = new EndOperationDelegate(this.OnEndGetJob);
     698            }
     699            if ((this.onGetJobCompletedDelegate == null)) {
     700                this.onGetJobCompletedDelegate = new System.Threading.SendOrPostCallback(this.OnGetJobCompleted);
     701            }
     702            base.InvokeAsync(this.onBeginGetJobDelegate, new object[] {
     703                        clientId}, this.onEndGetJobDelegate, this.onGetJobCompletedDelegate, userState);
    759704        }
    760705       
     
    975920        }
    976921       
    977         public HeuristicLab.Hive.Contracts.ResponsePlugin SendPlugins(HeuristicLab.Hive.Contracts.BusinessObjects.HivePluginInfoDto[] pluginList) {
     922        public HeuristicLab.Hive.Contracts.ResponseList<HeuristicLab.PluginInfrastructure.CachedHivePluginInfoDto> SendPlugins(HeuristicLab.Hive.Contracts.BusinessObjects.HivePluginInfoDto[] pluginList) {
    978923            return base.Channel.SendPlugins(pluginList);
    979924        }
     
    985930       
    986931        [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
    987         public HeuristicLab.Hive.Contracts.ResponsePlugin EndSendPlugins(System.IAsyncResult result) {
     932        public HeuristicLab.Hive.Contracts.ResponseList<HeuristicLab.PluginInfrastructure.CachedHivePluginInfoDto> EndSendPlugins(System.IAsyncResult result) {
    988933            return base.Channel.EndSendPlugins(result);
    989934        }
     
    995940       
    996941        private object[] OnEndSendPlugins(System.IAsyncResult result) {
    997             HeuristicLab.Hive.Contracts.ResponsePlugin retVal = this.EndSendPlugins(result);
     942            HeuristicLab.Hive.Contracts.ResponseList<HeuristicLab.PluginInfrastructure.CachedHivePluginInfoDto> retVal = this.EndSendPlugins(result);
    998943            return new object[] {
    999944                    retVal};
  • branches/3.3-HiveMigration/sources/HeuristicLab.Hive/HeuristicLab.Hive.Slave.Communication/3.3/Service References/ServerService/Reference.svcmap

    r4107 r4254  
    1919  </ClientOptions>
    2020  <MetadataSources>
    21     <MetadataSource Address="net.tcp://10.42.1.153:9000/HiveServer/mex" Protocol="mex" SourceId="1" />
     21    <MetadataSource Address="net.tcp://10.42.1.154:9000/HiveServer/mex" Protocol="mex" SourceId="1" />
    2222  </MetadataSources>
    2323  <Metadata>
    24     <MetadataFile FileName="service1.wsdl" MetadataType="Wsdl" ID="03ab6bc6-4c88-4e1f-8d59-3f52f2942db4" SourceId="1" SourceUrl="net.tcp://10.42.1.153:9000/HiveServer/mex" />
    25     <MetadataFile FileName="service2.xsd" MetadataType="Schema" ID="51e801d0-81c2-4b13-b430-c177265c3333" SourceId="1" SourceUrl="net.tcp://10.42.1.153:9000/HiveServer/mex" />
    26     <MetadataFile FileName="service3.xsd" MetadataType="Schema" ID="e8e86f83-8c65-4364-a203-c7b20d29ac40" SourceId="1" SourceUrl="net.tcp://10.42.1.153:9000/HiveServer/mex" />
    27     <MetadataFile FileName="HeuristicLab.Hive.Contracts.BusinessObjects1.xsd" MetadataType="Schema" ID="249326e6-36f3-421b-927e-ca9b7bedfdb5" SourceId="1" SourceUrl="net.tcp://10.42.1.153:9000/HiveServer/mex" />
    28     <MetadataFile FileName="HeuristicLab.DataAccess1.xsd" MetadataType="Schema" ID="5e0b464e-8324-4e2e-bbed-da3c79943457" SourceId="1" SourceUrl="net.tcp://10.42.1.153:9000/HiveServer/mex" />
    29     <MetadataFile FileName="HeuristicLab.Hive.Contracts1.xsd" MetadataType="Schema" ID="0e2228b1-c9aa-4a6c-99ef-dbdcf6c563d9" SourceId="1" SourceUrl="net.tcp://10.42.1.153:9000/HiveServer/mex" />
    30     <MetadataFile FileName="Arrays1.xsd" MetadataType="Schema" ID="0537e276-0286-4f2d-a565-616bf77a9e75" SourceId="1" SourceUrl="net.tcp://10.42.1.153:9000/HiveServer/mex" />
    31     <MetadataFile FileName="System1.xsd" MetadataType="Schema" ID="27a70b20-97c3-47b5-a35c-767183544bc7" SourceId="1" SourceUrl="net.tcp://10.42.1.153:9000/HiveServer/mex" />
    32     <MetadataFile FileName="HeuristicLab.PluginInfrastructure2.xsd" MetadataType="Schema" ID="af9a77d2-d649-4bb6-bf18-f1b3ba4d594a" SourceId="1" SourceUrl="net.tcp://10.42.1.153:9000/HiveServer/mex" />
    33     <MetadataFile FileName="Message1.xsd" MetadataType="Schema" ID="e9066a85-9edd-4f73-a792-4b932bdb9e59" SourceId="1" SourceUrl="net.tcp://10.42.1.153:9000/HiveServer/mex" />
     24    <MetadataFile FileName="service1.wsdl" MetadataType="Wsdl" ID="0162f5cd-4ce4-4063-b440-7f660342c1b4" SourceId="1" SourceUrl="net.tcp://10.42.1.154:9000/HiveServer/mex" />
     25    <MetadataFile FileName="service2.xsd" MetadataType="Schema" ID="38b7fb46-f017-4fd9-90a3-4dd56030d327" SourceId="1" SourceUrl="net.tcp://10.42.1.154:9000/HiveServer/mex" />
     26    <MetadataFile FileName="service3.xsd" MetadataType="Schema" ID="6eda0295-9645-4116-9a1a-12ad7571f78e" SourceId="1" SourceUrl="net.tcp://10.42.1.154:9000/HiveServer/mex" />
     27    <MetadataFile FileName="HeuristicLab.Hive.Contracts.BusinessObjects1.xsd" MetadataType="Schema" ID="abb70224-775d-4edc-986c-20eede5dbe04" SourceId="1" SourceUrl="net.tcp://10.42.1.154:9000/HiveServer/mex" />
     28    <MetadataFile FileName="HeuristicLab.DataAccess1.xsd" MetadataType="Schema" ID="55cbe34c-d0be-42ef-989a-a97018741832" SourceId="1" SourceUrl="net.tcp://10.42.1.154:9000/HiveServer/mex" />
     29    <MetadataFile FileName="HeuristicLab.Hive.Contracts1.xsd" MetadataType="Schema" ID="d4834dd8-d9fe-4ce9-b5e9-dd9fe5451fbe" SourceId="1" SourceUrl="net.tcp://10.42.1.154:9000/HiveServer/mex" />
     30    <MetadataFile FileName="Arrays1.xsd" MetadataType="Schema" ID="7f60dd4e-614e-4b85-a4e7-a4caac529103" SourceId="1" SourceUrl="net.tcp://10.42.1.154:9000/HiveServer/mex" />
     31    <MetadataFile FileName="System1.xsd" MetadataType="Schema" ID="9bdcdb6f-8162-4554-84af-95dd11d14f5e" SourceId="1" SourceUrl="net.tcp://10.42.1.154:9000/HiveServer/mex" />
     32    <MetadataFile FileName="HeuristicLab.PluginInfrastructure2.xsd" MetadataType="Schema" ID="df9afdc0-162d-4bae-93e1-31ab835940f9" SourceId="1" SourceUrl="net.tcp://10.42.1.154:9000/HiveServer/mex" />
     33    <MetadataFile FileName="Message1.xsd" MetadataType="Schema" ID="332a2050-4e50-46c6-8b55-0e53a2dfe882" SourceId="1" SourceUrl="net.tcp://10.42.1.154:9000/HiveServer/mex" />
    3434  </Metadata>
    3535  <Extensions>
  • branches/3.3-HiveMigration/sources/HeuristicLab.Hive/HeuristicLab.Hive.Slave.Communication/3.3/Service References/ServerService/configuration.svcinfo

    r4107 r4254  
    33  <behaviors />
    44  <bindings>
    5     <binding digest="System.ServiceModel.Configuration.NetTcpBindingElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089:&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-16&quot;?&gt;&lt;Data hostNameComparisonMode=&quot;StrongWildcard&quot; listenBacklog=&quot;10&quot; maxBufferSize=&quot;65536&quot; maxConnections=&quot;10&quot; name=&quot;NetTcpBinding_IClientFacade&quot; transactionFlow=&quot;false&quot; transactionProtocol=&quot;OleTransactions&quot; transferMode=&quot;Streamed&quot;&gt;&lt;readerQuotas maxArrayLength=&quot;16384&quot; maxBytesPerRead=&quot;4096&quot; maxDepth=&quot;32&quot; maxNameTableCharCount=&quot;16384&quot; maxStringContentLength=&quot;8192&quot; /&gt;&lt;reliableSession enabled=&quot;false&quot; inactivityTimeout=&quot;00:10:00&quot; ordered=&quot;true&quot; /&gt;&lt;security mode=&quot;None&quot;&gt;&lt;message clientCredentialType=&quot;Windows&quot; /&gt;&lt;transport clientCredentialType=&quot;Windows&quot; protectionLevel=&quot;EncryptAndSign&quot; /&gt;&lt;/security&gt;&lt;/Data&gt;" bindingType="netTcpBinding" name="NetTcpBinding_IClientFacade" />
     5    <binding digest="System.ServiceModel.Configuration.NetTcpBindingElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089:&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-16&quot;?&gt;&lt;Data hostNameComparisonMode=&quot;StrongWildcard&quot; listenBacklog=&quot;10&quot; maxBufferSize=&quot;65536&quot; maxConnections=&quot;10&quot; name=&quot;NetTcpBinding_ISlaveFacade&quot; transactionFlow=&quot;false&quot; transactionProtocol=&quot;OleTransactions&quot; transferMode=&quot;Streamed&quot;&gt;&lt;readerQuotas maxArrayLength=&quot;16384&quot; maxBytesPerRead=&quot;4096&quot; maxDepth=&quot;32&quot; maxNameTableCharCount=&quot;16384&quot; maxStringContentLength=&quot;8192&quot; /&gt;&lt;reliableSession enabled=&quot;false&quot; inactivityTimeout=&quot;00:10:00&quot; ordered=&quot;true&quot; /&gt;&lt;security mode=&quot;None&quot;&gt;&lt;message clientCredentialType=&quot;Windows&quot; /&gt;&lt;transport clientCredentialType=&quot;Windows&quot; protectionLevel=&quot;EncryptAndSign&quot; /&gt;&lt;/security&gt;&lt;/Data&gt;" bindingType="netTcpBinding" name="NetTcpBinding_ISlaveFacade" />
    66  </bindings>
    77  <endpoints>
    8     <endpoint normalizedDigest="&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-16&quot;?&gt;&lt;Data address=&quot;net.tcp://10.42.1.153:9000/HiveServer/ClientCommunicator&quot; binding=&quot;netTcpBinding&quot; bindingConfiguration=&quot;NetTcpBinding_IClientFacade&quot; contract=&quot;ServerService.IClientFacade&quot; name=&quot;NetTcpBinding_IClientFacade&quot; /&gt;" digest="&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-16&quot;?&gt;&lt;Data address=&quot;net.tcp://10.42.1.153:9000/HiveServer/ClientCommunicator&quot; binding=&quot;netTcpBinding&quot; bindingConfiguration=&quot;NetTcpBinding_IClientFacade&quot; contract=&quot;ServerService.IClientFacade&quot; name=&quot;NetTcpBinding_IClientFacade&quot; /&gt;" contractName="ServerService.IClientFacade" name="NetTcpBinding_IClientFacade" />
     8    <endpoint normalizedDigest="&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-16&quot;?&gt;&lt;Data address=&quot;net.tcp://10.42.1.154:9000/HiveServer/ClientCommunicator&quot; binding=&quot;netTcpBinding&quot; bindingConfiguration=&quot;NetTcpBinding_ISlaveFacade&quot; contract=&quot;ServerService.ISlaveFacade&quot; name=&quot;NetTcpBinding_ISlaveFacade&quot; /&gt;" digest="&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-16&quot;?&gt;&lt;Data address=&quot;net.tcp://10.42.1.154:9000/HiveServer/ClientCommunicator&quot; binding=&quot;netTcpBinding&quot; bindingConfiguration=&quot;NetTcpBinding_ISlaveFacade&quot; contract=&quot;ServerService.ISlaveFacade&quot; name=&quot;NetTcpBinding_ISlaveFacade&quot; /&gt;" contractName="ServerService.ISlaveFacade" name="NetTcpBinding_ISlaveFacade" />
    99  </endpoints>
    1010</configurationSnapshot>
  • branches/3.3-HiveMigration/sources/HeuristicLab.Hive/HeuristicLab.Hive.Slave.Communication/3.3/Service References/ServerService/configuration91.svcinfo

    r4107 r4254  
    11<?xml version="1.0" encoding="utf-8"?>
    2 <SavedWcfConfigurationInformation xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" Version="9.1" CheckSum="8ELBmhFDdKazse0ChCu2fhV6nYM=">
     2<SavedWcfConfigurationInformation xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" Version="9.1" CheckSum="q2x/4cQUEACPUg4K+/rZlk1YeAs=">
    33  <bindingConfigurations>
    4     <bindingConfiguration bindingType="netTcpBinding" name="NetTcpBinding_IClientFacade">
     4    <bindingConfiguration bindingType="netTcpBinding" name="NetTcpBinding_ISlaveFacade">
    55      <properties>
    66        <property path="/name" isComplexType="false" isExplicitlyDefined="true" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    7           <serializedValue>NetTcpBinding_IClientFacade</serializedValue>
     7          <serializedValue>NetTcpBinding_ISlaveFacade</serializedValue>
    88        </property>
    99        <property path="/closeTimeout" isComplexType="false" isExplicitlyDefined="true" clrType="System.TimeSpan, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
     
    119119  </bindingConfigurations>
    120120  <endpoints>
    121     <endpoint name="NetTcpBinding_IClientFacade" contract="ServerService.IClientFacade" bindingType="netTcpBinding" address="net.tcp://10.42.1.153:9000/HiveServer/ClientCommunicator" bindingConfiguration="NetTcpBinding_IClientFacade">
     121    <endpoint name="NetTcpBinding_ISlaveFacade" contract="ServerService.ISlaveFacade" bindingType="netTcpBinding" address="net.tcp://10.42.1.154:9000/HiveServer/ClientCommunicator" bindingConfiguration="NetTcpBinding_ISlaveFacade">
    122122      <properties>
    123123        <property path="/address" isComplexType="false" isExplicitlyDefined="true" clrType="System.Uri, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    124           <serializedValue>net.tcp://10.42.1.153:9000/HiveServer/ClientCommunicator</serializedValue>
     124          <serializedValue>net.tcp://10.42.1.154:9000/HiveServer/ClientCommunicator</serializedValue>
    125125        </property>
    126126        <property path="/behaviorConfiguration" isComplexType="false" isExplicitlyDefined="false" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
     
    131131        </property>
    132132        <property path="/bindingConfiguration" isComplexType="false" isExplicitlyDefined="true" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    133           <serializedValue>NetTcpBinding_IClientFacade</serializedValue>
     133          <serializedValue>NetTcpBinding_ISlaveFacade</serializedValue>
    134134        </property>
    135135        <property path="/contract" isComplexType="false" isExplicitlyDefined="true" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    136           <serializedValue>ServerService.IClientFacade</serializedValue>
     136          <serializedValue>ServerService.ISlaveFacade</serializedValue>
    137137        </property>
    138138        <property path="/headers" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.AddressHeaderCollectionElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
     
    194194        </property>
    195195        <property path="/name" isComplexType="false" isExplicitlyDefined="true" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    196           <serializedValue>NetTcpBinding_IClientFacade</serializedValue>
     196          <serializedValue>NetTcpBinding_ISlaveFacade</serializedValue>
    197197        </property>
    198198        <property path="/kind" isComplexType="false" isExplicitlyDefined="false" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
  • branches/3.3-HiveMigration/sources/HeuristicLab.Hive/HeuristicLab.Hive.Slave.Communication/3.3/Service References/ServerService/service1.wsdl

    r4107 r4254  
    11<?xml version="1.0" encoding="utf-8"?>
    2 <wsdl:definitions xmlns:wsap="http://schemas.xmlsoap.org/ws/2004/08/addressing/policy" xmlns:wsa10="http://www.w3.org/2005/08/addressing" xmlns:tns="http://tempuri.org/" xmlns:msc="http://schemas.microsoft.com/ws/2005/12/wsdl/contract" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy" xmlns:wsam="http://www.w3.org/2007/05/addressing/metadata" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="ClientFacade" targetNamespace="http://tempuri.org/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
    3   <wsp:Policy wsu:Id="NetTcpBinding_IClientFacade_policy">
     2<wsdl:definitions xmlns:wsap="http://schemas.xmlsoap.org/ws/2004/08/addressing/policy" xmlns:wsa10="http://www.w3.org/2005/08/addressing" xmlns:tns="http://tempuri.org/" xmlns:msc="http://schemas.microsoft.com/ws/2005/12/wsdl/contract" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy" xmlns:wsam="http://www.w3.org/2007/05/addressing/metadata" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="SlaveFacade" targetNamespace="http://tempuri.org/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
     3  <wsp:Policy wsu:Id="NetTcpBinding_ISlaveFacade_policy">
    44    <wsp:ExactlyOne>
    55      <wsp:All>
     
    2626    </xsd:schema>
    2727  </wsdl:types>
    28   <wsdl:message name="IClientFacade_Login_InputMessage">
     28  <wsdl:message name="ISlaveFacade_Login_InputMessage">
    2929    <wsdl:part name="parameters" element="tns:Login" />
    3030  </wsdl:message>
    31   <wsdl:message name="IClientFacade_Login_OutputMessage">
     31  <wsdl:message name="ISlaveFacade_Login_OutputMessage">
    3232    <wsdl:part name="parameters" element="tns:LoginResponse" />
    3333  </wsdl:message>
    34   <wsdl:message name="IClientFacade_ProcessHeartBeat_InputMessage">
     34  <wsdl:message name="ISlaveFacade_ProcessHeartBeat_InputMessage">
    3535    <wsdl:part name="parameters" element="tns:ProcessHeartBeat" />
    3636  </wsdl:message>
    37   <wsdl:message name="IClientFacade_ProcessHeartBeat_OutputMessage">
     37  <wsdl:message name="ISlaveFacade_ProcessHeartBeat_OutputMessage">
    3838    <wsdl:part name="parameters" element="tns:ProcessHeartBeatResponse" />
    3939  </wsdl:message>
    40   <wsdl:message name="IClientFacade_SendJob_InputMessage">
    41     <wsdl:part name="parameters" element="tns:SendJob" />
    42   </wsdl:message>
    43   <wsdl:message name="IClientFacade_SendJob_OutputMessage">
    44     <wsdl:part name="parameters" element="tns:SendJobResponse" />
    45   </wsdl:message>
    46   <wsdl:message name="IClientFacade_StoreFinishedJobResult_InputMessage">
     40  <wsdl:message name="ISlaveFacade_GetJob_InputMessage">
     41    <wsdl:part name="parameters" element="tns:GetJob" />
     42  </wsdl:message>
     43  <wsdl:message name="ISlaveFacade_GetJob_OutputMessage">
     44    <wsdl:part name="parameters" element="tns:GetJobResponse" />
     45  </wsdl:message>
     46  <wsdl:message name="ISlaveFacade_StoreFinishedJobResult_InputMessage">
    4747    <wsdl:part name="parameters" element="tns:StoreFinishedJobResult" />
    4848  </wsdl:message>
    49   <wsdl:message name="IClientFacade_StoreFinishedJobResult_OutputMessage">
     49  <wsdl:message name="ISlaveFacade_StoreFinishedJobResult_OutputMessage">
    5050    <wsdl:part name="parameters" element="tns:StoreFinishedJobResultResponse" />
    5151  </wsdl:message>
    52   <wsdl:message name="IClientFacade_ProcessSnapshot_InputMessage">
     52  <wsdl:message name="ISlaveFacade_ProcessSnapshot_InputMessage">
    5353    <wsdl:part name="parameters" element="tns:ProcessSnapshot" />
    5454  </wsdl:message>
    55   <wsdl:message name="IClientFacade_ProcessSnapshot_OutputMessage">
     55  <wsdl:message name="ISlaveFacade_ProcessSnapshot_OutputMessage">
    5656    <wsdl:part name="parameters" element="tns:ProcessSnapshotResponse" />
    5757  </wsdl:message>
    58   <wsdl:message name="IClientFacade_Logout_InputMessage">
     58  <wsdl:message name="ISlaveFacade_Logout_InputMessage">
    5959    <wsdl:part name="parameters" element="tns:Logout" />
    6060  </wsdl:message>
    61   <wsdl:message name="IClientFacade_Logout_OutputMessage">
     61  <wsdl:message name="ISlaveFacade_Logout_OutputMessage">
    6262    <wsdl:part name="parameters" element="tns:LogoutResponse" />
    6363  </wsdl:message>
    64   <wsdl:message name="IClientFacade_IsJobStillNeeded_InputMessage">
     64  <wsdl:message name="ISlaveFacade_IsJobStillNeeded_InputMessage">
    6565    <wsdl:part name="parameters" element="tns:IsJobStillNeeded" />
    6666  </wsdl:message>
    67   <wsdl:message name="IClientFacade_IsJobStillNeeded_OutputMessage">
     67  <wsdl:message name="ISlaveFacade_IsJobStillNeeded_OutputMessage">
    6868    <wsdl:part name="parameters" element="tns:IsJobStillNeededResponse" />
    6969  </wsdl:message>
    70   <wsdl:message name="IClientFacade_SendPlugins_InputMessage">
     70  <wsdl:message name="ISlaveFacade_SendPlugins_InputMessage">
    7171    <wsdl:part name="parameters" element="tns:SendPlugins" />
    7272  </wsdl:message>
    73   <wsdl:message name="IClientFacade_SendPlugins_OutputMessage">
     73  <wsdl:message name="ISlaveFacade_SendPlugins_OutputMessage">
    7474    <wsdl:part name="parameters" element="tns:SendPluginsResponse" />
    7575  </wsdl:message>
    76   <wsdl:message name="IClientFacade_GetCalendar_InputMessage">
     76  <wsdl:message name="ISlaveFacade_GetCalendar_InputMessage">
    7777    <wsdl:part name="parameters" element="tns:GetCalendar" />
    7878  </wsdl:message>
    79   <wsdl:message name="IClientFacade_GetCalendar_OutputMessage">
     79  <wsdl:message name="ISlaveFacade_GetCalendar_OutputMessage">
    8080    <wsdl:part name="parameters" element="tns:GetCalendarResponse" />
    8181  </wsdl:message>
    82   <wsdl:message name="IClientFacade_SetCalendarStatus_InputMessage">
     82  <wsdl:message name="ISlaveFacade_SetCalendarStatus_InputMessage">
    8383    <wsdl:part name="parameters" element="tns:SetCalendarStatus" />
    8484  </wsdl:message>
    85   <wsdl:message name="IClientFacade_SetCalendarStatus_OutputMessage">
     85  <wsdl:message name="ISlaveFacade_SetCalendarStatus_OutputMessage">
    8686    <wsdl:part name="parameters" element="tns:SetCalendarStatusResponse" />
    8787  </wsdl:message>
    88   <wsdl:message name="IClientFacade_SendStreamedJob_InputMessage">
     88  <wsdl:message name="ISlaveFacade_SendStreamedJob_InputMessage">
    8989    <wsdl:part name="parameters" element="tns:SendStreamedJob" />
    9090  </wsdl:message>
    91   <wsdl:message name="IClientFacade_SendStreamedJob_OutputMessage">
     91  <wsdl:message name="ISlaveFacade_SendStreamedJob_OutputMessage">
    9292    <wsdl:part name="parameters" element="tns:SendStreamedJobResponse" />
    9393  </wsdl:message>
    94   <wsdl:message name="IClientFacade_SendStreamedPlugins_InputMessage">
     94  <wsdl:message name="ISlaveFacade_SendStreamedPlugins_InputMessage">
    9595    <wsdl:part name="parameters" element="tns:SendStreamedPlugins" />
    9696  </wsdl:message>
    97   <wsdl:message name="IClientFacade_SendStreamedPlugins_OutputMessage">
     97  <wsdl:message name="ISlaveFacade_SendStreamedPlugins_OutputMessage">
    9898    <wsdl:part name="parameters" element="tns:SendStreamedPluginsResponse" />
    9999  </wsdl:message>
    100   <wsdl:message name="IClientFacade_StoreFinishedJobResultStreamed_InputMessage">
     100  <wsdl:message name="ISlaveFacade_StoreFinishedJobResultStreamed_InputMessage">
    101101    <wsdl:part name="parameters" element="tns:StoreFinishedJobResultStreamed" />
    102102  </wsdl:message>
    103   <wsdl:message name="IClientFacade_StoreFinishedJobResultStreamed_OutputMessage">
     103  <wsdl:message name="ISlaveFacade_StoreFinishedJobResultStreamed_OutputMessage">
    104104    <wsdl:part name="parameters" element="tns:StoreFinishedJobResultStreamedResponse" />
    105105  </wsdl:message>
    106   <wsdl:message name="IClientFacade_ProcessSnapshotStreamed_InputMessage">
     106  <wsdl:message name="ISlaveFacade_ProcessSnapshotStreamed_InputMessage">
    107107    <wsdl:part name="parameters" element="tns:ProcessSnapshotStreamed" />
    108108  </wsdl:message>
    109   <wsdl:message name="IClientFacade_ProcessSnapshotStreamed_OutputMessage">
     109  <wsdl:message name="ISlaveFacade_ProcessSnapshotStreamed_OutputMessage">
    110110    <wsdl:part name="parameters" element="tns:ProcessSnapshotStreamedResponse" />
    111111  </wsdl:message>
    112   <wsdl:portType name="IClientFacade">
     112  <wsdl:portType name="ISlaveFacade">
    113113    <wsdl:operation name="Login">
    114       <wsdl:input wsaw:Action="http://tempuri.org/IClientCommunicator/Login" message="tns:IClientFacade_Login_InputMessage" />
    115       <wsdl:output wsaw:Action="http://tempuri.org/IClientCommunicator/LoginResponse" message="tns:IClientFacade_Login_OutputMessage" />
     114      <wsdl:input wsaw:Action="http://tempuri.org/ISlaveCommunicator/Login" message="tns:ISlaveFacade_Login_InputMessage" />
     115      <wsdl:output wsaw:Action="http://tempuri.org/ISlaveCommunicator/LoginResponse" message="tns:ISlaveFacade_Login_OutputMessage" />
    116116    </wsdl:operation>
    117117    <wsdl:operation name="ProcessHeartBeat">
    118       <wsdl:input wsaw:Action="http://tempuri.org/IClientCommunicator/ProcessHeartBeat" message="tns:IClientFacade_ProcessHeartBeat_InputMessage" />
    119       <wsdl:output wsaw:Action="http://tempuri.org/IClientCommunicator/ProcessHeartBeatResponse" message="tns:IClientFacade_ProcessHeartBeat_OutputMessage" />
    120     </wsdl:operation>
    121     <wsdl:operation name="SendJob">
    122       <wsdl:input wsaw:Action="http://tempuri.org/IClientCommunicator/SendJob" message="tns:IClientFacade_SendJob_InputMessage" />
    123       <wsdl:output wsaw:Action="http://tempuri.org/IClientCommunicator/SendJobResponse" message="tns:IClientFacade_SendJob_OutputMessage" />
     118      <wsdl:input wsaw:Action="http://tempuri.org/ISlaveCommunicator/ProcessHeartBeat" message="tns:ISlaveFacade_ProcessHeartBeat_InputMessage" />
     119      <wsdl:output wsaw:Action="http://tempuri.org/ISlaveCommunicator/ProcessHeartBeatResponse" message="tns:ISlaveFacade_ProcessHeartBeat_OutputMessage" />
     120    </wsdl:operation>
     121    <wsdl:operation name="GetJob">
     122      <wsdl:input wsaw:Action="http://tempuri.org/ISlaveCommunicator/GetJob" message="tns:ISlaveFacade_GetJob_InputMessage" />
     123      <wsdl:output wsaw:Action="http://tempuri.org/ISlaveCommunicator/GetJobResponse" message="tns:ISlaveFacade_GetJob_OutputMessage" />
    124124    </wsdl:operation>
    125125    <wsdl:operation name="StoreFinishedJobResult">
    126       <wsdl:input wsaw:Action="http://tempuri.org/IClientCommunicator/StoreFinishedJobResult" message="tns:IClientFacade_StoreFinishedJobResult_InputMessage" />
    127       <wsdl:output wsaw:Action="http://tempuri.org/IClientCommunicator/StoreFinishedJobResultResponse" message="tns:IClientFacade_StoreFinishedJobResult_OutputMessage" />
     126      <wsdl:input wsaw:Action="http://tempuri.org/ISlaveCommunicator/StoreFinishedJobResult" message="tns:ISlaveFacade_StoreFinishedJobResult_InputMessage" />
     127      <wsdl:output wsaw:Action="http://tempuri.org/ISlaveCommunicator/StoreFinishedJobResultResponse" message="tns:ISlaveFacade_StoreFinishedJobResult_OutputMessage" />
    128128    </wsdl:operation>
    129129    <wsdl:operation name="ProcessSnapshot">
    130       <wsdl:input wsaw:Action="http://tempuri.org/IClientCommunicator/ProcessSnapshot" message="tns:IClientFacade_ProcessSnapshot_InputMessage" />
    131       <wsdl:output wsaw:Action="http://tempuri.org/IClientCommunicator/ProcessSnapshotResponse" message="tns:IClientFacade_ProcessSnapshot_OutputMessage" />
     130      <wsdl:input wsaw:Action="http://tempuri.org/ISlaveCommunicator/ProcessSnapshot" message="tns:ISlaveFacade_ProcessSnapshot_InputMessage" />
     131      <wsdl:output wsaw:Action="http://tempuri.org/ISlaveCommunicator/ProcessSnapshotResponse" message="tns:ISlaveFacade_ProcessSnapshot_OutputMessage" />
    132132    </wsdl:operation>
    133133    <wsdl:operation name="Logout">
    134       <wsdl:input wsaw:Action="http://tempuri.org/IClientCommunicator/Logout" message="tns:IClientFacade_Logout_InputMessage" />
    135       <wsdl:output wsaw:Action="http://tempuri.org/IClientCommunicator/LogoutResponse" message="tns:IClientFacade_Logout_OutputMessage" />
     134      <wsdl:input wsaw:Action="http://tempuri.org/ISlaveCommunicator/Logout" message="tns:ISlaveFacade_Logout_InputMessage" />
     135      <wsdl:output wsaw:Action="http://tempuri.org/ISlaveCommunicator/LogoutResponse" message="tns:ISlaveFacade_Logout_OutputMessage" />
    136136    </wsdl:operation>
    137137    <wsdl:operation name="IsJobStillNeeded">
    138       <wsdl:input wsaw:Action="http://tempuri.org/IClientCommunicator/IsJobStillNeeded" message="tns:IClientFacade_IsJobStillNeeded_InputMessage" />
    139       <wsdl:output wsaw:Action="http://tempuri.org/IClientCommunicator/IsJobStillNeededResponse" message="tns:IClientFacade_IsJobStillNeeded_OutputMessage" />
     138      <wsdl:input wsaw:Action="http://tempuri.org/ISlaveCommunicator/IsJobStillNeeded" message="tns:ISlaveFacade_IsJobStillNeeded_InputMessage" />
     139      <wsdl:output wsaw:Action="http://tempuri.org/ISlaveCommunicator/IsJobStillNeededResponse" message="tns:ISlaveFacade_IsJobStillNeeded_OutputMessage" />
    140140    </wsdl:operation>
    141141    <wsdl:operation name="SendPlugins">
    142       <wsdl:input wsaw:Action="http://tempuri.org/IClientCommunicator/SendPlugins" message="tns:IClientFacade_SendPlugins_InputMessage" />
    143       <wsdl:output wsaw:Action="http://tempuri.org/IClientCommunicator/SendPluginsResponse" message="tns:IClientFacade_SendPlugins_OutputMessage" />
     142      <wsdl:input wsaw:Action="http://tempuri.org/ISlaveCommunicator/SendPlugins" message="tns:ISlaveFacade_SendPlugins_InputMessage" />
     143      <wsdl:output wsaw:Action="http://tempuri.org/ISlaveCommunicator/SendPluginsResponse" message="tns:ISlaveFacade_SendPlugins_OutputMessage" />
    144144    </wsdl:operation>
    145145    <wsdl:operation name="GetCalendar">
    146       <wsdl:input wsaw:Action="http://tempuri.org/IClientCommunicator/GetCalendar" message="tns:IClientFacade_GetCalendar_InputMessage" />
    147       <wsdl:output wsaw:Action="http://tempuri.org/IClientCommunicator/GetCalendarResponse" message="tns:IClientFacade_GetCalendar_OutputMessage" />
     146      <wsdl:input wsaw:Action="http://tempuri.org/ISlaveCommunicator/GetCalendar" message="tns:ISlaveFacade_GetCalendar_InputMessage" />
     147      <wsdl:output wsaw:Action="http://tempuri.org/ISlaveCommunicator/GetCalendarResponse" message="tns:ISlaveFacade_GetCalendar_OutputMessage" />
    148148    </wsdl:operation>
    149149    <wsdl:operation name="SetCalendarStatus">
    150       <wsdl:input wsaw:Action="http://tempuri.org/IClientCommunicator/SetCalendarStatus" message="tns:IClientFacade_SetCalendarStatus_InputMessage" />
    151       <wsdl:output wsaw:Action="http://tempuri.org/IClientCommunicator/SetCalendarStatusResponse" message="tns:IClientFacade_SetCalendarStatus_OutputMessage" />
     150      <wsdl:input wsaw:Action="http://tempuri.org/ISlaveCommunicator/SetCalendarStatus" message="tns:ISlaveFacade_SetCalendarStatus_InputMessage" />
     151      <wsdl:output wsaw:Action="http://tempuri.org/ISlaveCommunicator/SetCalendarStatusResponse" message="tns:ISlaveFacade_SetCalendarStatus_OutputMessage" />
    152152    </wsdl:operation>
    153153    <wsdl:operation name="SendStreamedJob">
    154       <wsdl:input wsaw:Action="http://tempuri.org/IClientFacade/SendStreamedJob" message="tns:IClientFacade_SendStreamedJob_InputMessage" />
    155       <wsdl:output wsaw:Action="http://tempuri.org/IClientFacade/SendStreamedJobResponse" message="tns:IClientFacade_SendStreamedJob_OutputMessage" />
     154      <wsdl:input wsaw:Action="http://tempuri.org/ISlaveFacade/SendStreamedJob" message="tns:ISlaveFacade_SendStreamedJob_InputMessage" />
     155      <wsdl:output wsaw:Action="http://tempuri.org/ISlaveFacade/SendStreamedJobResponse" message="tns:ISlaveFacade_SendStreamedJob_OutputMessage" />
    156156    </wsdl:operation>
    157157    <wsdl:operation name="SendStreamedPlugins">
    158       <wsdl:input wsaw:Action="http://tempuri.org/IClientFacade/SendStreamedPlugins" message="tns:IClientFacade_SendStreamedPlugins_InputMessage" />
    159       <wsdl:output wsaw:Action="http://tempuri.org/IClientFacade/SendStreamedPluginsResponse" message="tns:IClientFacade_SendStreamedPlugins_OutputMessage" />
     158      <wsdl:input wsaw:Action="http://tempuri.org/ISlaveFacade/SendStreamedPlugins" message="tns:ISlaveFacade_SendStreamedPlugins_InputMessage" />
     159      <wsdl:output wsaw:Action="http://tempuri.org/ISlaveFacade/SendStreamedPluginsResponse" message="tns:ISlaveFacade_SendStreamedPlugins_OutputMessage" />
    160160    </wsdl:operation>
    161161    <wsdl:operation name="StoreFinishedJobResultStreamed">
    162       <wsdl:input wsaw:Action="http://tempuri.org/IClientFacade/StoreFinishedJobResultStreamed" message="tns:IClientFacade_StoreFinishedJobResultStreamed_InputMessage" />
    163       <wsdl:output wsaw:Action="http://tempuri.org/IClientFacade/StoreFinishedJobResultStreamedResponse" message="tns:IClientFacade_StoreFinishedJobResultStreamed_OutputMessage" />
     162      <wsdl:input wsaw:Action="http://tempuri.org/ISlaveFacade/StoreFinishedJobResultStreamed" message="tns:ISlaveFacade_StoreFinishedJobResultStreamed_InputMessage" />
     163      <wsdl:output wsaw:Action="http://tempuri.org/ISlaveFacade/StoreFinishedJobResultStreamedResponse" message="tns:ISlaveFacade_StoreFinishedJobResultStreamed_OutputMessage" />
    164164    </wsdl:operation>
    165165    <wsdl:operation name="ProcessSnapshotStreamed">
    166       <wsdl:input wsaw:Action="http://tempuri.org/IClientFacade/ProcessSnapshotStreamed" message="tns:IClientFacade_ProcessSnapshotStreamed_InputMessage" />
    167       <wsdl:output wsaw:Action="http://tempuri.org/IClientFacade/ProcessSnapshotStreamedResponse" message="tns:IClientFacade_ProcessSnapshotStreamed_OutputMessage" />
     166      <wsdl:input wsaw:Action="http://tempuri.org/ISlaveFacade/ProcessSnapshotStreamed" message="tns:ISlaveFacade_ProcessSnapshotStreamed_InputMessage" />
     167      <wsdl:output wsaw:Action="http://tempuri.org/ISlaveFacade/ProcessSnapshotStreamedResponse" message="tns:ISlaveFacade_ProcessSnapshotStreamed_OutputMessage" />
    168168    </wsdl:operation>
    169169  </wsdl:portType>
    170   <wsdl:binding name="NetTcpBinding_IClientFacade" type="tns:IClientFacade">
    171     <wsp:PolicyReference URI="#NetTcpBinding_IClientFacade_policy">
     170  <wsdl:binding name="NetTcpBinding_ISlaveFacade" type="tns:ISlaveFacade">
     171    <wsp:PolicyReference URI="#NetTcpBinding_ISlaveFacade_policy">
    172172    </wsp:PolicyReference>
    173173    <soap12:binding transport="http://schemas.microsoft.com/soap/tcp" />
    174174    <wsdl:operation name="Login">
    175       <soap12:operation soapAction="http://tempuri.org/IClientCommunicator/Login" style="document" />
     175      <soap12:operation soapAction="http://tempuri.org/ISlaveCommunicator/Login" style="document" />
    176176      <wsdl:input>
    177177        <soap12:body use="literal" />
     
    182182    </wsdl:operation>
    183183    <wsdl:operation name="ProcessHeartBeat">
    184       <soap12:operation soapAction="http://tempuri.org/IClientCommunicator/ProcessHeartBeat" style="document" />
    185       <wsdl:input>
    186         <soap12:body use="literal" />
    187       </wsdl:input>
    188       <wsdl:output>
    189         <soap12:body use="literal" />
    190       </wsdl:output>
    191     </wsdl:operation>
    192     <wsdl:operation name="SendJob">
    193       <soap12:operation soapAction="http://tempuri.org/IClientCommunicator/SendJob" style="document" />
     184      <soap12:operation soapAction="http://tempuri.org/ISlaveCommunicator/ProcessHeartBeat" style="document" />
     185      <wsdl:input>
     186        <soap12:body use="literal" />
     187      </wsdl:input>
     188      <wsdl:output>
     189        <soap12:body use="literal" />
     190      </wsdl:output>
     191    </wsdl:operation>
     192    <wsdl:operation name="GetJob">
     193      <soap12:operation soapAction="http://tempuri.org/ISlaveCommunicator/GetJob" style="document" />
    194194      <wsdl:input>
    195195        <soap12:body use="literal" />
     
    200200    </wsdl:operation>
    201201    <wsdl:operation name="StoreFinishedJobResult">
    202       <soap12:operation soapAction="http://tempuri.org/IClientCommunicator/StoreFinishedJobResult" style="document" />
     202      <soap12:operation soapAction="http://tempuri.org/ISlaveCommunicator/StoreFinishedJobResult" style="document" />
    203203      <wsdl:input>
    204204        <soap12:body use="literal" />
     
    209209    </wsdl:operation>
    210210    <wsdl:operation name="ProcessSnapshot">
    211       <soap12:operation soapAction="http://tempuri.org/IClientCommunicator/ProcessSnapshot" style="document" />
     211      <soap12:operation soapAction="http://tempuri.org/ISlaveCommunicator/ProcessSnapshot" style="document" />
    212212      <wsdl:input>
    213213        <soap12:body use="literal" />
     
    218218    </wsdl:operation>
    219219    <wsdl:operation name="Logout">
    220       <soap12:operation soapAction="http://tempuri.org/IClientCommunicator/Logout" style="document" />
     220      <soap12:operation soapAction="http://tempuri.org/ISlaveCommunicator/Logout" style="document" />
    221221      <wsdl:input>
    222222        <soap12:body use="literal" />
     
    227227    </wsdl:operation>
    228228    <wsdl:operation name="IsJobStillNeeded">
    229       <soap12:operation soapAction="http://tempuri.org/IClientCommunicator/IsJobStillNeeded" style="document" />
     229      <soap12:operation soapAction="http://tempuri.org/ISlaveCommunicator/IsJobStillNeeded" style="document" />
    230230      <wsdl:input>
    231231        <soap12:body use="literal" />
     
    236236    </wsdl:operation>
    237237    <wsdl:operation name="SendPlugins">
    238       <soap12:operation soapAction="http://tempuri.org/IClientCommunicator/SendPlugins" style="document" />
     238      <soap12:operation soapAction="http://tempuri.org/ISlaveCommunicator/SendPlugins" style="document" />
    239239      <wsdl:input>
    240240        <soap12:body use="literal" />
     
    245245    </wsdl:operation>
    246246    <wsdl:operation name="GetCalendar">
    247       <soap12:operation soapAction="http://tempuri.org/IClientCommunicator/GetCalendar" style="document" />
     247      <soap12:operation soapAction="http://tempuri.org/ISlaveCommunicator/GetCalendar" style="document" />
    248248      <wsdl:input>
    249249        <soap12:body use="literal" />
     
    254254    </wsdl:operation>
    255255    <wsdl:operation name="SetCalendarStatus">
    256       <soap12:operation soapAction="http://tempuri.org/IClientCommunicator/SetCalendarStatus" style="document" />
     256      <soap12:operation soapAction="http://tempuri.org/ISlaveCommunicator/SetCalendarStatus" style="document" />
    257257      <wsdl:input>
    258258        <soap12:body use="literal" />
     
    263263    </wsdl:operation>
    264264    <wsdl:operation name="SendStreamedJob">
    265       <soap12:operation soapAction="http://tempuri.org/IClientFacade/SendStreamedJob" style="document" />
     265      <soap12:operation soapAction="http://tempuri.org/ISlaveFacade/SendStreamedJob" style="document" />
    266266      <wsdl:input>
    267267        <soap12:body use="literal" />
     
    272272    </wsdl:operation>
    273273    <wsdl:operation name="SendStreamedPlugins">
    274       <soap12:operation soapAction="http://tempuri.org/IClientFacade/SendStreamedPlugins" style="document" />
     274      <soap12:operation soapAction="http://tempuri.org/ISlaveFacade/SendStreamedPlugins" style="document" />
    275275      <wsdl:input>
    276276        <soap12:body use="literal" />
     
    281281    </wsdl:operation>
    282282    <wsdl:operation name="StoreFinishedJobResultStreamed">
    283       <soap12:operation soapAction="http://tempuri.org/IClientFacade/StoreFinishedJobResultStreamed" style="document" />
     283      <soap12:operation soapAction="http://tempuri.org/ISlaveFacade/StoreFinishedJobResultStreamed" style="document" />
    284284      <wsdl:input>
    285285        <soap12:body use="literal" />
     
    290290    </wsdl:operation>
    291291    <wsdl:operation name="ProcessSnapshotStreamed">
    292       <soap12:operation soapAction="http://tempuri.org/IClientFacade/ProcessSnapshotStreamed" style="document" />
     292      <soap12:operation soapAction="http://tempuri.org/ISlaveFacade/ProcessSnapshotStreamed" style="document" />
    293293      <wsdl:input>
    294294        <soap12:body use="literal" />
     
    299299    </wsdl:operation>
    300300  </wsdl:binding>
    301   <wsdl:service name="ClientFacade">
    302     <wsdl:port name="NetTcpBinding_IClientFacade" binding="tns:NetTcpBinding_IClientFacade">
    303       <soap12:address location="net.tcp://10.42.1.153:9000/HiveServer/ClientCommunicator" />
     301  <wsdl:service name="SlaveFacade">
     302    <wsdl:port name="NetTcpBinding_ISlaveFacade" binding="tns:NetTcpBinding_ISlaveFacade">
     303      <soap12:address location="net.tcp://10.42.1.154:9000/HiveServer/ClientCommunicator" />
    304304      <wsa10:EndpointReference>
    305         <wsa10:Address>net.tcp://10.42.1.153:9000/HiveServer/ClientCommunicator</wsa10:Address>
     305        <wsa10:Address>net.tcp://10.42.1.154:9000/HiveServer/ClientCommunicator</wsa10:Address>
    306306      </wsa10:EndpointReference>
    307307    </wsdl:port>
  • branches/3.3-HiveMigration/sources/HeuristicLab.Hive/HeuristicLab.Hive.Slave.Communication/3.3/Service References/ServerService/service2.xsd

    r4170 r4254  
    2929    <xs:complexType>
    3030      <xs:sequence>
    31         <xs:element xmlns:q4="http://schemas.datacontract.org/2004/07/HeuristicLab.Hive.Contracts" minOccurs="0" name="ProcessHeartBeatResult" nillable="true" type="q4:ResponseHB" />
    32       </xs:sequence>
    33     </xs:complexType>
    34   </xs:element>
    35   <xs:element name="SendJob">
     31        <xs:element xmlns:q4="http://schemas.datacontract.org/2004/07/HeuristicLab.Hive.Contracts" minOccurs="0" name="ProcessHeartBeatResult" nillable="true" type="q4:ResponseHeartBeat" />
     32      </xs:sequence>
     33    </xs:complexType>
     34  </xs:element>
     35  <xs:element name="GetJob">
    3636    <xs:complexType>
    3737      <xs:sequence>
     
    4040    </xs:complexType>
    4141  </xs:element>
    42   <xs:element name="SendJobResponse">
    43     <xs:complexType>
    44       <xs:sequence>
    45         <xs:element xmlns:q6="http://schemas.datacontract.org/2004/07/HeuristicLab.Hive.Contracts" minOccurs="0" name="SendJobResult" nillable="true" type="q6:ResponseJob" />
     42  <xs:element name="GetJobResponse">
     43    <xs:complexType>
     44      <xs:sequence>
     45        <xs:element xmlns:q6="http://schemas.datacontract.org/2004/07/HeuristicLab.Hive.Contracts" minOccurs="0" name="GetJobResult" nillable="true" type="q6:ResponseObjectOfJobDtoZAa7YIsz" />
    4646      </xs:sequence>
    4747    </xs:complexType>
     
    121121    <xs:complexType>
    122122      <xs:sequence>
    123         <xs:element xmlns:q18="http://schemas.datacontract.org/2004/07/HeuristicLab.Hive.Contracts" minOccurs="0" name="SendPluginsResult" nillable="true" type="q18:ResponsePlugin" />
     123        <xs:element xmlns:q18="http://schemas.datacontract.org/2004/07/HeuristicLab.Hive.Contracts" minOccurs="0" name="SendPluginsResult" nillable="true" type="q18:ResponseListOfCachedHivePluginInfoDtoZMwZop09" />
    124124      </xs:sequence>
    125125    </xs:complexType>
  • branches/3.3-HiveMigration/sources/HeuristicLab.Hive/HeuristicLab.Hive.Slave.Communication/3.3/WcfService.cs

    r4253 r4254  
    6666    public event EventHandler Connected;
    6767
    68     public ClientFacadeClient proxy = null;
     68    public SlaveFacadeClient proxy = null;
    6969
    7070    /// <summary>
     
    8787
    8888        Logger.Debug("Creating the new connection proxy");
    89         proxy = new ClientFacadeClient(
     89        proxy = new SlaveFacadeClient(
    9090          HeuristicLab.Hive.Contracts.WcfSettings.GetStreamedBinding(),
    9191          new EndpointAddress("net.tcp://" + ServerIP + ":" + ServerPort + "/HiveServer/ClientCommunicator")
     
    204204    /// </summary>
    205205    #region PullJob
    206     public event System.EventHandler<SendJobCompletedEventArgs> SendJobCompleted;
     206    public event System.EventHandler<GetJobCompletedEventArgs> SendJobCompleted;
    207207    public void SendJobAsync(Guid guid) {
    208208      if (ConnState == NetworkEnum.WcfConnState.Loggedin) {
     
    223223          //first deserialize the response
    224224          BinaryFormatter formatter = new BinaryFormatter();
    225           ResponseJob response = (ResponseJob)formatter.Deserialize(stream);
     225          ResponseObject<JobDto> response = (ResponseObject<JobDto>)formatter.Deserialize(stream);
    226226
    227227          //second deserialize the BLOB
     
    236236          memStream.Close();
    237237
    238           SendJobCompletedEventArgs completedEventArgs = new SendJobCompletedEventArgs(new object[] { response, memStream.GetBuffer() }, e.Error, e.Cancelled, e.UserState);
     238          GetJobCompletedEventArgs completedEventArgs = new GetJobCompletedEventArgs(new object[] { response, memStream.GetBuffer() }, e.Error, e.Cancelled, e.UserState);
    239239          SendJobCompleted(sender, completedEventArgs);
    240240        } catch (Exception ex) {
     
    390390    }
    391391
    392     public List<HeuristicLab.PluginInfrastructure.CachedHivePluginInfoDto> RequestPlugins(List<HivePluginInfoDto> requestedPlugins) {
     392    public IEnumerable<CachedHivePluginInfoDto> RequestPlugins(List<HivePluginInfoDto> requestedPlugins) {
    393393      try {
    394394        Logger.Debug("STARTED: Requesting Plugins for Job");
     
    396396        Stream stream = proxy.SendStreamedPlugins(requestedPlugins.ToArray());
    397397        Logger.Debug("ENDED: Getting the stream");
    398         BinaryFormatter formatter =
    399           new BinaryFormatter();
     398        BinaryFormatter formatter = new BinaryFormatter();
    400399        Logger.Debug("STARTED: Deserializing the stream");
    401         ResponsePlugin response = (ResponsePlugin)formatter.Deserialize(stream);
     400        ResponseList<CachedHivePluginInfoDto> response = (ResponseList<CachedHivePluginInfoDto>)formatter.Deserialize(stream);
    402401        Logger.Debug("ENDED: Deserializing the stream");
    403402        if (stream != null)
    404403          stream.Dispose();
    405         return response.Plugins;
     404        return response.List;
    406405      } catch (Exception e) {
    407406        HandleNetworkError(e);
  • branches/3.3-HiveMigration/sources/HeuristicLab.Hive/HeuristicLab.Hive.Slave.Communication/3.3/app.config

    r4107 r4254  
    44        <bindings>
    55            <netTcpBinding>
    6                 <binding name="NetTcpBinding_IClientFacade" closeTimeout="00:01:00"
     6                <binding name="NetTcpBinding_ISlaveFacade" closeTimeout="00:01:00"
    77                    openTimeout="00:01:00" receiveTimeout="00:10:00" sendTimeout="00:01:00"
    88                    transactionFlow="false" transferMode="Streamed" transactionProtocol="OleTransactions"
     
    2222        </bindings>
    2323        <client>
    24             <endpoint address="net.tcp://10.42.1.153:9000/HiveServer/ClientCommunicator"
    25                 binding="netTcpBinding" bindingConfiguration="NetTcpBinding_IClientFacade"
    26                 contract="ServerService.IClientFacade" name="NetTcpBinding_IClientFacade" />
     24            <endpoint address="net.tcp://10.42.1.154:9000/HiveServer/ClientCommunicator"
     25                binding="netTcpBinding" bindingConfiguration="NetTcpBinding_ISlaveFacade"
     26                contract="ServerService.ISlaveFacade" name="NetTcpBinding_ISlaveFacade" />
    2727        </client>
    2828    </system.serviceModel>
  • branches/3.3-HiveMigration/sources/HeuristicLab.Hive/HeuristicLab.Hive.Slave.Core/3.3/ConfigurationManager/UptimeManager.cs

    r4253 r4254  
    1414  public class UptimeManager {
    1515
    16     private AppointmentContainer _appContainer = null;
     16    private AppointmentContainer appContainer = null;
    1717    public AppointmentContainer AppContainer {
    1818      get {
    19         if (_appContainer == null)
     19        if (appContainer == null)
    2020          RestoreFromHDD();
    21         return _appContainer;
     21        return appContainer;
    2222      }
    2323    }   
     
    6565        try {
    6666          r = new StreamReader(path + "calendar.xml");
    67           _appContainer = (AppointmentContainer)s.Deserialize(r);
     67          appContainer = (AppointmentContainer)s.Deserialize(r);
    6868          CalendarAvailable = true;
    6969        }
     
    7171          Logger.Error("Deserialization of Calendar failed", e);
    7272          Logger.Info("Starting with a new one");
    73           _appContainer = new AppointmentContainer();
     73          appContainer = new AppointmentContainer();
    7474          CalendarAvailable = false;
    7575        }
     
    7979        }
    8080      } else {
    81         _appContainer = new AppointmentContainer();
     81        appContainer = new AppointmentContainer();
    8282      }
    8383    }
  • branches/3.3-HiveMigration/sources/HeuristicLab.Hive/HeuristicLab.Hive.Slave.Core/3.3/Core.cs

    r4253 r4254  
    7878    public void Start() {
    7979      abortRequested = false;
    80       Logger.Info("Hive Client started");
     80      Logger.Info("Hive Slave started");
    8181      SlaveConsoleServer server = new SlaveConsoleServer();
    82       server.StartClientConsoleServer(new Uri("net.tcp://127.0.0.1:8000/ClientConsole/"));
     82      server.StartClientConsoleServer(new Uri("net.tcp://127.0.0.1:8000/SlaveConsole/"));
    8383
    8484      ConfigManager manager = ConfigManager.Instance;
    8585      manager.Core = this;
    86 
    87 
    8886
    8987      //Register all Wcf Service references
    9088      wcfService = WcfService.Instance;
    9189      wcfService.LoginCompleted += new EventHandler<LoginCompletedEventArgs>(wcfService_LoginCompleted);
    92       wcfService.SendJobCompleted += new EventHandler<SendJobCompletedEventArgs>(wcfService_SendJobCompleted);
     90      wcfService.SendJobCompleted += new EventHandler<GetJobCompletedEventArgs>(wcfService_GetJobCompleted);
    9391      wcfService.StoreFinishedJobResultCompleted += new EventHandler<StoreFinishedJobResultCompletedEventArgs>(wcfService_StoreFinishedJobResultCompleted);
    9492      wcfService.ProcessSnapshotCompleted += new EventHandler<ProcessSnapshotCompletedEventArgs>(wcfService_ProcessSnapshotCompleted);
     
    9694      wcfService.ServerChanged += new EventHandler(wcfService_ServerChanged);
    9795      wcfService.Connected += new EventHandler(wcfService_Connected);
     96
    9897      //Recover Server IP and Port from the Settings Framework
    9998      ConnectionContainer cc = ConfigManager.Instance.GetServerIPAndPort();
     
    131130            Logger.Error("AbortJob: Engine doesn't exist");
    132131          break;
     132
    133133        //Job has been successfully aborted
    134 
    135 
    136134        case MessageContainer.MessageType.JobAborted:
    137135          Guid jobId = new Guid(container.JobId.ToString());
    138136          KillAppDomain(jobId);
    139137          break;
    140 
    141138
    142139        //Request a Snapshot from the Execution Engine
     
    145142            engines[container.JobId].RequestSnapshot();
    146143          else
    147             Logger.Error("RequestSnapshot: Engine doesn't exist");
    148           break;
    149 
     144            Logger.Error("RequestSnapshot: Engine with Job doesn't exist");
     145          break;
    150146
    151147        //Snapshot is ready and can be sent back to the Server
     
    153149          ThreadPool.QueueUserWorkItem(new WaitCallback(GetSnapshot), container.JobId);
    154150          break;
    155 
    156151
    157152        //Pull a Job from the Server
     
    243238          KillAppDomain(jId);
    244239        }
    245       } catch (InvalidStateException ise) {
     240      }
     241      catch (InvalidStateException ise) {
    246242        Logger.Error("Invalid State while Snapshoting:", ise);
    247243      }
     
    302298    /// <param name="sender"></param>
    303299    /// <param name="e"></param>
    304     void wcfService_SendJobCompleted(object sender, SendJobCompletedEventArgs e) {
     300    void wcfService_GetJobCompleted(object sender, GetJobCompletedEventArgs e) {
    305301      if (e.Result.StatusMessage != ApplicationConstants.RESPONSE_COMMUNICATOR_NO_JOBS_LEFT) {
    306         Logger.Info("Received new job with id " + e.Result.Job.Id);
     302        Logger.Info("Received new job with id " + e.Result.Obj.Id);
    307303        bool sandboxed = false;
    308         Logger.Debug("Fetching plugins for job " + e.Result.Job.Id);
    309 
    310         PluginCache.Instance.PreparePlugins(e.Result.Job.PluginsNeeded);
    311 
    312         PluginCache.Instance.CopyPluginsForJob(e.Result.Job.PluginsNeeded, e.Result.Job.Id);
     304        Logger.Debug("Fetching plugins for job " + e.Result.Obj.Id);
     305
     306        PluginCache.Instance.PreparePlugins(e.Result.Obj.PluginsNeeded);
     307
     308        PluginCache.Instance.CopyPluginsForJob(e.Result.Obj.PluginsNeeded, e.Result.Obj.Id);
    313309
    314310        //        foreach (CachedHivePluginInfoDto plugininfo in PluginCache.Instance.GetPlugins(e.Result.Job.PluginsNeeded))
    315311        //        files.AddRange(plugininfo.PluginFiles);
    316         Logger.Debug("Plugins fetched for job " + e.Result.Job.Id);
     312        Logger.Debug("Plugins fetched for job " + e.Result.Obj.Id);
    317313        try {
    318           String pluginDir = Path.Combine(PluginCache.PLUGIN_REPO, e.Result.Job.Id.ToString());
    319          
     314          String pluginDir = Path.Combine(PluginCache.PLUGIN_REPO, e.Result.Obj.Id.ToString());
     315
    320316          AppDomain appDomain = HeuristicLab.PluginInfrastructure.Sandboxing.SandboxManager.CreateAndInitSandbox(pluginDir, null);
    321317          appDomain.UnhandledException += new UnhandledExceptionEventHandler(appDomain_UnhandledException);
    322318          lock (engines) {
    323             if (!jobs.ContainsKey(e.Result.Job.Id)) {
    324               jobs.Add(e.Result.Job.Id, e.Result.Job);
    325               appDomains.Add(e.Result.Job.Id, appDomain);
     319            if (!jobs.ContainsKey(e.Result.Obj.Id)) {
     320              jobs.Add(e.Result.Obj.Id, e.Result.Obj);
     321              appDomains.Add(e.Result.Obj.Id, appDomain);
    326322              Logger.Debug("Creating AppDomain");
    327               Executor engine =
    328                 (Executor)
    329                 appDomain.CreateInstanceAndUnwrap(typeof(Executor).Assembly.GetName().Name, typeof(Executor).FullName);
     323              Executor engine = (Executor)appDomain.CreateInstanceAndUnwrap(typeof(Executor).Assembly.GetName().Name, typeof(Executor).FullName);
    330324              Logger.Debug("Created AppDomain");
    331               engine.JobId = e.Result.Job.Id;
     325              engine.JobId = e.Result.Obj.Id;
    332326              engine.Queue = MessageQueue.GetInstance();
    333               Logger.Debug("Starting Engine for job " + e.Result.Job.Id);
     327              Logger.Debug("Starting Engine for job " + e.Result.Obj.Id);
    334328              engine.Start(e.Data);
    335               engines.Add(e.Result.Job.Id, engine);
     329              engines.Add(e.Result.Obj.Id, engine);
    336330
    337331              SlaveStatusInfo.JobsFetched++;
    338 
    339332              Logger.Info("Increment FetchedJobs to:" + SlaveStatusInfo.JobsFetched);
    340333            }
    341334          }
    342         } catch (Exception exception) {
    343           Logger.Error("Creating the Appdomain and loading the job failed for job " + e.Result.Job.Id);
     335        }
     336        catch (Exception exception) {
     337          Logger.Error("Creating the Appdomain and loading the job failed for job " + e.Result.Obj.Id);
    344338          Logger.Error("Error thrown is: ", exception);
    345339          CurrentlyFetching = false;
    346           KillAppDomain(e.Result.Job.Id);
    347           wcfService.StoreFinishedJobResultsSync(ConfigManager.Instance.GetClientInfo().Id, e.Result.Job.Id, new byte[] { }, 1, exception, true);
    348         }
    349       } else
     340          KillAppDomain(e.Result.Obj.Id);
     341          wcfService.StoreFinishedJobResultsSync(ConfigManager.Instance.GetClientInfo().Id, e.Result.Obj.Id, new byte[] { }, 1, exception, true);
     342        }
     343      } else {
    350344        Logger.Info("No more jobs left!");
     345      }
    351346      CurrentlyFetching = false;
    352347    }
     
    480475          PluginCache.Instance.DeletePluginsForJob(id);
    481476          GC.Collect();
    482         } catch (Exception ex) {
     477        }
     478        catch (Exception ex) {
    483479          Logger.Error("Exception when unloading the appdomain: ", ex);
    484480        }
  • branches/3.3-HiveMigration/sources/HeuristicLab.Hive/HeuristicLab.Hive.Slave.Core/3.3/Heartbeat.cs

    r4253 r4254  
    124124
    125125    void wcfService_ProcessHeartBeatCompleted(object sender, ProcessHeartBeatCompletedEventArgs e) {
    126       Logger.Debug("Heartbeat received");
     126      Logger.Debug("Heartbeat Response received");
    127127      e.Result.ActionRequest.ForEach(mc => MessageQueue.GetInstance().AddMessage(mc));
    128128    }
  • branches/3.3-HiveMigration/sources/HeuristicLab.Hive/HeuristicLab.Hive.Slave.Core/3.3/JobStorage/JobStorageManager.cs

    r4253 r4254  
    1515namespace HeuristicLab.Hive.Slave.Core.JobStorage {
    1616  public class JobStorageManager {
    17    
     17
    1818    private static List<JobStorageInfo> storedJobsList = new List<JobStorageInfo>();
    1919
    2020    private static String path = System.IO.Directory.GetCurrentDirectory() + "\\Hive.Slave.Jobs\\";
    21    
     21
    2222    public static void PersistObjectToDisc(String serverIP, long serverPort, Guid jobId, byte[] job) {
    2323      String filename = serverIP + "." + serverPort + "." + jobId.ToString();
    2424      JobStorageInfo info = new JobStorageInfo { JobID = jobId, ServerIP = serverIP, ServerPort = serverPort, TimeFinished = DateTime.Now };
    25      
     25
    2626      Stream jobstream = null;
    2727      try {
    2828        jobstream = File.Create(path + filename + ".dat");
    2929        jobstream.Write(job, 0, job.Length);
    30         storedJobsList.Add(info);       
     30        storedJobsList.Add(info);
    3131        Logger.Info("Job " + info.JobID + " stored on the harddisc");
    3232      }
     
    3535      }
    3636      finally {
    37         if(jobstream!=null)
     37        if (jobstream != null)
    3838          jobstream.Close();
    3939      }
    4040
    4141      StoreJobList();
    42 
    4342    }
    4443
    4544    public static void CheckAndSubmitJobsFromDisc() {
    46       for(int index=storedJobsList.Count; index > 0; index--) {
    47         if (WcfService.Instance.ConnState == NetworkEnum.WcfConnState.Loggedin && (storedJobsList[index-1].ServerIP == WcfService.Instance.ServerIP && storedJobsList[index-1].ServerPort == WcfService.Instance.ServerPort)) {
    48           String filename = storedJobsList[index-1].ServerIP + "." + storedJobsList[index-1].ServerPort + "." + storedJobsList[index-1].JobID.ToString();         
     45      for (int index = storedJobsList.Count; index > 0; index--) {
     46        if (WcfService.Instance.ConnState == NetworkEnum.WcfConnState.Loggedin && (storedJobsList[index - 1].ServerIP == WcfService.Instance.ServerIP && storedJobsList[index - 1].ServerPort == WcfService.Instance.ServerPort)) {
     47          String filename = storedJobsList[index - 1].ServerIP + "." + storedJobsList[index - 1].ServerPort + "." + storedJobsList[index - 1].JobID.ToString();
    4948          Logger.Info("Sending stored job " + storedJobsList[index - 1].JobID + " to the server");
    5049          try {
     
    5958            SlaveStatusInfo.JobsProcessed++;
    6059            storedJobsList.Remove(storedJobsList[index - 1]);
    61             File.Delete(path + filename + ".dat"); 
     60            File.Delete(path + filename + ".dat");
    6261          }
    6362          catch (Exception e) {
     
    6665            StoreJobList();
    6766          }
    68      
    69          }
    7067        }
     68      }
    7169    }
    7270
    7371    public static void StoreJobList() {
    7472      XmlSerializer serializer = new XmlSerializer(typeof(List<JobStorageInfo>));
    75       TextWriter writer = new StreamWriter(Path.Combine(path ,"list.xml"));
     73      TextWriter writer = new StreamWriter(Path.Combine(path, "list.xml"));
    7674      serializer.Serialize(writer, storedJobsList);
    7775      writer.Close();
     
    8280      if (!Directory.Exists(path))
    8381        Directory.CreateDirectory(path);
    84            
     82
    8583      XmlSerializer serializer = new XmlSerializer(typeof(List<JobStorageInfo>));
    8684      FileStream stream = null;
    87       if(File.Exists(Path.Combine(path ,"list.xml"))) {
     85      if (File.Exists(Path.Combine(path, "list.xml"))) {
    8886        try {
    8987          stream = new FileStream(Path.Combine(path, "list.xml"), FileMode.Open);
     
    9492        catch (Exception e) {
    9593          Logger.Error("Exception while loading the Stored Job List", e);
    96         } finally {
    97           if(stream != null)
     94        }
     95        finally {
     96          if (stream != null)
    9897            stream.Dispose();
    9998        }
     
    103102      }
    104103    }
    105    
    106104  }
    107105}
  • branches/3.3-HiveMigration/sources/HeuristicLab.Hive/HeuristicLab.Hive.Slave.Core/3.3/PluginCache.cs

    r4253 r4254  
    9797
    9898      Logger.Debug("First run - Update the plugins in the cache");
    99 
    10099      localPlugins.AddRange(missingPlugins);
    101 
    102       List<CachedHivePluginInfoDto> updateablePlugins = WcfService.Instance.RequestPlugins(localPlugins);
     100      IEnumerable<CachedHivePluginInfoDto> updateablePlugins = WcfService.Instance.RequestPlugins(localPlugins);
    103101
    104102      foreach (CachedHivePluginInfoDto updateablePlugin in updateablePlugins) {
    105         PluginDescription pd =
    106           cachedPlugins.Where(cachedPlugin => cachedPlugin.Name.Equals(updateablePlugin.Name)).SingleOrDefault();
     103        PluginDescription pd = cachedPlugins.Where(cachedPlugin => cachedPlugin.Name.Equals(updateablePlugin.Name)).SingleOrDefault();
    107104
    108105        if (pd != null) {
     
    115112        Logger.Debug("deleted old files");
    116113        Logger.Debug("creating new files");
    117 
    118 
    119 
    120114        foreach (HivePluginFile pf in updateablePlugin.PluginFiles) {
    121115          File.WriteAllBytes(PLUGIN_REPO + pf.Name.Split('\\').Last(), pf.BinaryFile);
Note: See TracChangeset for help on using the changeset viewer.