Beispiel #1
0
 ProtocolData(String prefix) {
   pid = CommonState.getPid();
   lid = Configuration.getPid(prefix + "." + PAR_LINKABLE);
   tid = Configuration.getPid(prefix + "." + PAR_TRANSPORT);
   period = Configuration.getInt(prefix + "." + PAR_PERIOD);
   prob = Configuration.getDouble(prefix + "." + PAR_PROB);
 }
Beispiel #2
0
  /**
   * Loads configuration. It verifies the constraints defined in {@link WireByMethod}.
   *
   * @param prefix the configuration prefix for this class
   */
  public WireByMethod(String prefix) {
    super(prefix);

    // get the method
    try {
      final Class wire =
          Configuration.getClass(
              prefix + "." + PAR_CLASS, Class.forName("peersim.graph.GraphFactory"));
      method =
          WireByMethod.getMethod(wire, Configuration.getString(prefix + "." + PAR_METHOD, "wire"));
    } catch (Exception e) {
      throw new RuntimeException(e);
    }

    // set the constant args (those other than 0th)
    Class[] argt = method.getParameterTypes();
    args = new Object[argt.length];
    for (int i = 1; i < args.length; ++i) {

      if (argt[i] == int.class) args[i] = Configuration.getInt(prefix + "." + PAR_ARG + i);
      else if (argt[i] == long.class) args[i] = Configuration.getLong(prefix + "." + PAR_ARG + i);
      else if (argt[i] == double.class)
        args[i] = Configuration.getDouble(prefix + "." + PAR_ARG + i);
      else if (i == args.length - 1 && argt[i].isInstance(CommonState.r)) args[i] = CommonState.r;
      else {
        // we should neve get here
        throw new RuntimeException(
            "Unexpected error, please " + "report this problem to the peersim team");
      }
    }
  }
Beispiel #3
0
 public HelloWorld(String prefix) {
   this.prefix = prefix;
   // initialisation des identifiants a partir du fichier de configuration
   this.transportPid = Configuration.getPid(prefix + ".transport");
   this.mypid = Configuration.getPid(prefix + ".myself");
   this.ping_timeout = Configuration.getLong(prefix + ".ping_timeout");
   this.ping_frequency = Configuration.getLong(prefix + ".ping_frequency");
   this.transport = null;
   this.state = 0;
   this.last_pong = new long[Network.size()];
   this.nodes_alive = new boolean[Network.size()];
   for (int i = 0; i < Network.size(); i++) {
     nodes_alive[i] = true;
   }
 }
  public JungGraphObserver(String name) {
    this.name = name;
    this.hyphadataPid = Configuration.getPid(PAR_HYPHADATA_PROTO);
    this.hyphalinkPid = Configuration.getPid(PAR_HYPHALINK_PROTO);
    this.mycocastPid = Configuration.getPid(PAR_MYCOCAST_PROTO);
    this.period = Configuration.getInt(name + "." + PAR_PERIOD);

    this.walkDelay = Configuration.getInt(name + "." + PAR_WALK_DELAY);
    mainThread = Thread.currentThread();
    this.changeListeners = new HashSet<ChangeListener>();

    visualizer = null;

    // HyphaData.addHyphaDataListener(this);
    // HyphaLink.addHyphaLinkListener(this);
  }
  /** Initialization based on configuration parameters. */
  public OrangeSched(String n) {

    String[] prots = Configuration.getString(n + "." + PAR_PROTOCOL).split("\\s");
    pid = new int[prots.length];
    nce = new NextCycleEvent[prots.length];
    for (int i = 0; i < prots.length; ++i) {
      pid[i] = Configuration.lookupPid(prots[i]);
      if (!(Network.prototype.getProtocol(pid[i]) instanceof CDProtocol)) {
        throw new IllegalParameterException(
            n + "." + PAR_PROTOCOL, "Only CDProtocols are accepted here");
      }

      nce[i] =
          (NextCycleEvent) Configuration.getInstance(n + "." + PAR_NEXTC, new NextCycleEvent(null));
    }

    randstart = Configuration.contains(n + "." + PAR_RNDSTART);
  }
 /** Loads protocol schedulers for all protocols. */
 static {
   String[] names = Configuration.getNames(Node.PAR_PROT);
   sch = new Scheduler[names.length];
   for (int i = 0; i < names.length; ++i) {
     if (Network.prototype.getProtocol(i) instanceof CDProtocol)
       // with no default values for step to avoid
       // "overscheduling" due to lack of step option.
       sch[i] = new Scheduler(names[i], false);
   }
 }
  public PopulateVirtualWorld(String prefix) {
    distribution = Configuration.getInt(prefix + "." + PAR_DISTRIB);
    applicativeLayerId = Configuration.getPid(prefix + "." + APPLICATIVE_LAYER);
    Globals.mapSize = Configuration.getLong(prefix + "." + MAP_SIZE);
    Globals.zoneSize = Configuration.getLong(prefix + "." + ZONE_SIZE);
    Globals.zoneNb = Configuration.getInt(prefix + "." + ZONE_NB);
    Globals.outOfZoneNb = Configuration.getInt(prefix + "." + OUT_OF_ZONE_NB);
    Globals.wSpeed = Configuration.getInt(prefix + "." + WSPEED);
    Globals.tSpeed = Configuration.getInt(prefix + "." + TSPEED);
    Globals.smallZoneSize = Configuration.getInt(prefix + "." + SMALL_ZONE_SIZE);
    Globals.smallZoneNb = Configuration.getInt(prefix + "." + SMALL_ZONE_NB);

    Globals.haltedToHalted = Configuration.getInt(prefix + "." + HTH);
    Globals.haltedToTravelling = Configuration.getInt(prefix + "." + HTT);
    Globals.haltedToWandering = Configuration.getInt(prefix + "." + HTW);

    Globals.travellingToTravelling = Configuration.getInt(prefix + "." + TTT);
    Globals.travellingToHalted = Configuration.getInt(prefix + "." + TTH);
    Globals.travellingToWandering = Configuration.getInt(prefix + "." + TTW);

    Globals.wanderingToWandering = Configuration.getInt(prefix + "." + WTW);
    Globals.wanderingToTravelling = Configuration.getInt(prefix + "." + WTT);
    Globals.wanderingToHalted = Configuration.getInt(prefix + "." + WTH);
    Globals.changeWanderingDirection = Configuration.getInt(prefix + "." + CWD);

    Globals.quiet = Configuration.getBoolean(prefix + "." + QUIET);
  }
Beispiel #8
0
 /** Creates a new observer and initializes the configuration parameter. */
 public DummyObserver(String name) {
   this.name = name;
   pid = Configuration.getPid(name + "." + PAR_PROTID);
 }
Beispiel #9
0
 /** Reads configuration parameters, using the specified prefix. */
 public FingerObserver(String prefix) {
   pid = Configuration.getPid(prefix + "." + PAR_PROT);
   hid = Configuration.getPid(prefix + "." + PAR_HOLDER, pid);
   this.prefix = prefix;
 }