⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 savedworker.java

📁 一个agent 工具包,可以开发移动设备应用,考虑了安全措施
💻 JAVA
字号:
package SOMA.agent.mobility;

import SOMA.agent.*;
import SOMA.Environment;
import SOMA.naming.AgentID;
import java.io.*;
import SOMA.network.connection.Daemon;

public class SavedWorker implements Serializable
{
  public AgentPacket packet;
  public boolean activate = false;

  public SavedWorker( Environment env, AgentWorker worker ) throws AgentWorker.AgentWorkerException
  {
    if( worker.getStatus() == Daemon.ON )
    {
      worker.stop();
      activate = true;
    }
    else
      activate = false;

    Object status = worker.getStatus();

    if( status == Daemon.OFF ||
        status == AgentWorker.IDLE ||
        status == AgentWorker.STOPPED )
    {
      packet = env.agentManager.packAgent( worker.agent );
    }
    else
      throw new AgentWorker.AgentWorkerException( "Cannot save worker: " + worker );
  }

  public AgentID restoreWorker( Environment env ) throws AgentWorker.AgentWorkerException
  {
    AgentID agentID = null;

    Agent agent = packet.getAgent( env );

    if( agent != null )
    {
      AgentWorker worker = env.agentManager.createWorker( agent );

      if( activate )
        worker.start();

      agentID = agent.getID();
    }
    else
      env.out.println( "SavedWorker: Error starting agent: " + packet.getAgentID() );

    return agentID;
  }

  public String toString()
  {
    return "[SavedWorker " + packet + " activate?" + activate +"]";
  }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -