Changeset 393 for trunk/sources/HeuristicLab.CEDMA.Server
- Timestamp:
- 07/22/08 23:29:18 (16 years ago)
- Location:
- trunk/sources/HeuristicLab.CEDMA.Server
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/sources/HeuristicLab.CEDMA.Server/AgentScheduler.cs
r390 r393 29 29 using System.Threading; 30 30 using HeuristicLab.CEDMA.Core; 31 using HeuristicLab.Data; 31 32 32 33 namespace HeuristicLab.CEDMA.Server { … … 35 36 private List<IEngine> engines; 36 37 private Dictionary<IEngine, AgentEntry> agent; 38 private string serverUri; 37 39 38 public AgentScheduler(Database database ) {40 public AgentScheduler(Database database, string serverUri) { 39 41 this.database = database; 42 this.serverUri = serverUri; 40 43 engines = new List<IEngine>(); 41 44 agent = new Dictionary<IEngine, AgentEntry>(); … … 74 77 engine.Reset(); 75 78 79 // initialize CEDMA variables for the execution of the agent 80 engine.GlobalScope.AddVariable(new Variable("AgentId", new IntData((int)a.Id))); 81 engine.GlobalScope.AddVariable(new Variable("CedmaServerUri", new StringData(serverUri))); 82 76 83 agent[engine] = a; 77 84 engines.Add(engine); -
trunk/sources/HeuristicLab.CEDMA.Server/HeuristicLab.CEDMA.Server.csproj
r377 r393 89 89 <Name>HeuristicLab.Core</Name> 90 90 </ProjectReference> 91 <ProjectReference Include="..\HeuristicLab.Data\HeuristicLab.Data.csproj"> 92 <Project>{F473D9AF-3F09-4296-9F28-3C65118DAFFA}</Project> 93 <Name>HeuristicLab.Data</Name> 94 </ProjectReference> 91 95 <ProjectReference Include="..\HeuristicLab.Grid\HeuristicLab.Grid.csproj"> 92 96 <Project>{545CE756-98D8-423B-AC2E-6E7D70926E5C}</Project> -
trunk/sources/HeuristicLab.CEDMA.Server/RunScheduler.cs
r392 r393 31 31 using HeuristicLab.Grid; 32 32 using System.Diagnostics; 33 using HeuristicLab.Data; 33 34 34 35 namespace HeuristicLab.CEDMA.Server { … … 39 40 public AtomicOperation Operation; 40 41 } 42 private string serverUri; 41 43 private Database database; 42 44 private JobManager jobManager; … … 47 49 private AutoResetEvent runningJobs = new AutoResetEvent(false); 48 50 49 public RunScheduler(Database database, JobManager jobManager ) {51 public RunScheduler(Database database, JobManager jobManager, string serverUri) { 50 52 this.database = database; 51 53 this.jobManager = jobManager; 54 this.serverUri = serverUri; 52 55 jobQueue = new Queue<Job>(); 53 56 Thread resultsGatheringThread = new Thread(GatherResults); … … 66 69 } 67 70 foreach(AgentEntry entry in agents) { 68 IOperatorGraph opGraph = (IOperatorGraph)DbPersistenceManager.Restore(entry.RawData); 69 AtomicOperation op = new AtomicOperation(opGraph.InitialOperator, new Scope()); 71 Agent agent = (Agent)DbPersistenceManager.Restore(entry.RawData); 72 IOperatorGraph opGraph = agent.OperatorGraph; 73 Scope scope = new Scope(); 74 // initialize CEDMA variables for the execution of the agent 75 scope.AddVariable(new Variable("AgentId", new IntData((int)entry.Id))); 76 scope.AddVariable(new Variable("CedmaServerUri", new StringData(serverUri))); 77 AtomicOperation op = new AtomicOperation(opGraph.InitialOperator, scope); 70 78 WaitHandle wHandle; 71 79 lock(remoteCommLock) { -
trunk/sources/HeuristicLab.CEDMA.Server/ServerForm.cs
r380 r393 55 55 56 56 private void InitAgentScheduler() { 57 AgentScheduler scheduler = new AgentScheduler(database );57 AgentScheduler scheduler = new AgentScheduler(database, addressTextBox.Text); 58 58 Thread agentSchedulerThread = new Thread(scheduler.Run); 59 59 agentSchedulerThread.Start(); … … 63 63 JobManager jobManager = new JobManager(gridAddress.Text); 64 64 jobManager.Reset(); 65 RunScheduler scheduler = new RunScheduler(database, jobManager );65 RunScheduler scheduler = new RunScheduler(database, jobManager, addressTextBox.Text); 66 66 Thread runSchedulerThread = new Thread(scheduler.Run); 67 67 runSchedulerThread.Start();
Note: See TracChangeset
for help on using the changeset viewer.