Free cookie consent management tool by TermsFeed Policy Generator

Changeset 398


Ignore:
Timestamp:
07/29/08 16:17:10 (16 years ago)
Author:
gkronber
Message:

removed the distinction between controller agents and normal agents. Also removed the AgentScheduler because it is not needed anymore. (ticket #204)

Location:
trunk/sources
Files:
1 deleted
8 edited

Legend:

Unmodified
Added
Removed
  • trunk/sources/HeuristicLab.CEDMA.Core/AgentList.cs

    r390 r398  
    6666      agent.Status = ProcessStatus.Unknown;
    6767      agent.Database = database;
    68       long id = database.InsertAgent(null, agent.Name, true, DbPersistenceManager.Save(agent));
     68      long id = database.InsertAgent(null, agent.Name, DbPersistenceManager.Save(agent));
    6969      agent.Id = id;
    7070      agentList.Add(agent);
  • trunk/sources/HeuristicLab.CEDMA.DB.Interfaces/AgentEntry.cs

    r392 r398  
    4141    public ProcessStatus Status { get; set; }
    4242    [DataMember]
    43     public bool ControllerAgent { get; set; }
    44     [DataMember]
    4543    public byte[] RawData { get; set; }
    4644  }
  • trunk/sources/HeuristicLab.CEDMA.DB.Interfaces/IDatabase.cs

    r390 r398  
    3131  public interface IDatabase {
    3232    [OperationContract]
    33     long InsertAgent(long? parentAgentId, string name, bool controllerAgent, byte[] rawData);
     33    long InsertAgent(long? parentAgentId, string name, byte[] rawData);
    3434
    3535    [OperationContract(Name = "UpdateAgentName")]
  • trunk/sources/HeuristicLab.CEDMA.DB/Database.cs

    r394 r398  
    5555            }
    5656            using(DbCommand cmd = cnn.CreateCommand()) {
    57               cmd.CommandText = "CREATE TABLE Agent (ID integer primary key autoincrement, ProjectId integer, ParentAgentId integer, Name text, Status text default "+ProcessStatus.Unknown+", ControllerAgent integer, CreationTime DateTime, RawData Blob)";
     57              cmd.CommandText = "CREATE TABLE Agent (ID integer primary key autoincrement, ProjectId integer, ParentAgentId integer, Name text, Status text default "+ProcessStatus.Unknown+", CreationTime DateTime, RawData Blob)";
    5858              cmd.Transaction = t;
    5959              cmd.ExecuteNonQuery();
     
    7373    #endregion
    7474
    75     #region insert agent/run/result/sub-result
    76     public long InsertAgent(long? parentAgentId, string name, bool controllerAgent, byte[] rawData) {
     75    #region insert agent/result/sub-result
     76    public long InsertAgent(long? parentAgentId, string name, byte[] rawData) {
    7777      rwLock.EnterWriteLock();
    7878      try {
     
    8383            using(DbCommand c = cnn.CreateCommand()) {
    8484              c.Transaction = t;
    85               c.CommandText = "Insert into Agent (Name, ParentAgentId, ControllerAgent, CreationTime, RawData) values (@Name, @ParentAgentId, @ControllerAgent, @CreationTime, @RawData); select last_insert_rowid()";
     85              c.CommandText = "Insert into Agent (Name, ParentAgentId, CreationTime, RawData) values (@Name, @ParentAgentId, @CreationTime, @RawData); select last_insert_rowid()";
    8686              DbParameter nameParam = c.CreateParameter();
    8787              nameParam.ParameterName = "@Name";
     
    9292              parentParam.Value = parentAgentId;
    9393              c.Parameters.Add(parentParam);
    94               DbParameter controllerParam = c.CreateParameter();
    95               controllerParam.ParameterName = "@ControllerAgent";
    96               controllerParam.Value = controllerAgent;
    97               c.Parameters.Add(controllerParam);
    9894              DbParameter creationTimeParam = c.CreateParameter();
    9995              creationTimeParam.ParameterName = "@CreationTime";
     
    284280    #endregion
    285281
    286     #region get agent/run/result/sub-result
     282    #region get agent/result/sub-result
    287283
    288284    public ICollection<AgentEntry> GetAgents(ProcessStatus status) {
     
    293289          cnn.Open();
    294290          SQLiteCommand c = cnn.CreateCommand();
    295           c.CommandText = "Select id, name, ControllerAgent, rawdata from Agent where Status=@Status";
     291          c.CommandText = "Select id, name, rawdata from Agent where Status=@Status";
    296292          DbParameter statusParameter = c.CreateParameter();
    297293          statusParameter.ParameterName = "@Status";
     
    305301            agent.Id = r.GetInt32(0);
    306302            agent.Name = r.IsDBNull(1)?"":r.GetString(1);
    307             agent.ControllerAgent = r.GetBoolean(2);
    308             agent.RawData = (byte[])r.GetValue(3);
     303            agent.RawData = (byte[])r.GetValue(2);
    309304            agents.Add(agent);
    310305          }
     
    323318          cnn.Open();
    324319          using(DbCommand c = cnn.CreateCommand()) {
    325             c.CommandText = "Select id, name, status, ControllerAgent, rawdata from Agent where ParentAgentId isnull";
     320            c.CommandText = "Select id, name, status, rawdata from Agent where ParentAgentId isnull";
    326321            using(DbDataReader r = c.ExecuteReader()) {
    327322              while(r.Read()) {
     
    331326                agent.Name = r.IsDBNull(1)?"-":r.GetString(1);
    332327                agent.Status = (ProcessStatus)Enum.Parse(typeof(ProcessStatus), r.GetString(2));
    333                 agent.ControllerAgent = r.GetBoolean(3);
    334                 agent.RawData = (byte[])r.GetValue(4);
     328                agent.RawData = (byte[])r.GetValue(3);
    335329                agents.Add(agent);
    336330              }
     
    351345          cnn.Open();
    352346          using(DbCommand c = cnn.CreateCommand()) {
    353             c.CommandText = "Select id, name, status, controllerAgent, rawdata from Agent where ParentAgentId=@ParentAgentId";
     347            c.CommandText = "Select id, name, status, rawdata from Agent where ParentAgentId=@ParentAgentId";
    354348            DbParameter parentParameter = c.CreateParameter();
    355349            parentParameter.ParameterName = "@ParentAgentId";
     
    364358                agent.Name = r.IsDBNull(1)?"-":r.GetString(1);
    365359                agent.Status = (ProcessStatus)Enum.Parse(typeof(ProcessStatus), r.GetString(2));
    366                 agent.ControllerAgent = r.GetBoolean(3);
    367                 agent.RawData = (byte[])r.GetValue(4);
     360                agent.RawData = (byte[])r.GetValue(3);
    368361                agents.Add(agent);
    369362              }
  • trunk/sources/HeuristicLab.CEDMA.Operators/OnGridProcessor.cs

    r394 r398  
    6161      using(ChannelFactory<IDatabase> factory = new ChannelFactory<IDatabase>(binding)) {
    6262        IDatabase database = factory.CreateChannel(new EndpointAddress(serverUrl));
    63         long id = database.InsertAgent(agentId, null, false, DbPersistenceManager.Save(agent));
     63        long id = database.InsertAgent(agentId, null, DbPersistenceManager.Save(agent));
    6464        database.UpdateAgent(id, ProcessStatus.Waiting);
    6565      }
  • trunk/sources/HeuristicLab.CEDMA.Server/HeuristicLab.CEDMA.Server.csproj

    r393 r398  
    5959  </ItemGroup>
    6060  <ItemGroup>
    61     <Compile Include="AgentScheduler.cs" />
    6261    <Compile Include="RunScheduler.cs" />
    6362    <Compile Include="DbPersistenceManager.cs" />
  • trunk/sources/HeuristicLab.CEDMA.Server/RunScheduler.cs

    r393 r398  
    6464    }
    6565    private void ReleaseWaitingRuns() {
    66       IEnumerable<AgentEntry> agents;
     66      ICollection<AgentEntry> agents;
    6767      lock(remoteCommLock) {
    68         agents = database.GetAgents(ProcessStatus.Waiting).Where(a=>!a.ControllerAgent);
     68        agents = database.GetAgents(ProcessStatus.Waiting);
    6969      }
    7070      foreach(AgentEntry entry in agents) {
  • trunk/sources/HeuristicLab.CEDMA.Server/ServerForm.cs

    r393 r398  
    5454    }
    5555
    56     private void InitAgentScheduler() {
    57       AgentScheduler scheduler = new AgentScheduler(database, addressTextBox.Text);
    58       Thread agentSchedulerThread = new Thread(scheduler.Run);
    59       agentSchedulerThread.Start();
    60     }
    61 
    6256    private void InitRunScheduler() {
    6357      JobManager jobManager = new JobManager(gridAddress.Text);
     
    8175    private void Start() {
    8276      InitDatabase();
    83       InitAgentScheduler();
    8477      InitRunScheduler();
    8578
Note: See TracChangeset for help on using the changeset viewer.