Package erjang.epmd

Source Code of erjang.epmd.EPMDServer

package erjang.epmd;

import java.nio.channels.SelectionKey;
import java.util.logging.Level;
import java.util.logging.Logger;

public class EPMDServer extends PacketServer {

  private static int epmd_port;

  @Override
  protected PacketConnection newConnection(SelectionKey dsk) {

    return new EPMDConnection(epmd_port, dsk);
   
  }

  static public void main(String[] args) {
    epmd_port = 4369;
    Level level = Level.WARNING;
    for (int i = 0; i < args.length; i++) {
      if (args[i].startsWith("-p"))
        epmd_port = toInt(args[i].substring(2), epmd_port);
      if (args[i].startsWith("-d"))
        level = toLevel(toInt(args[i].substring(2), 2));
    }
    final Logger log = Logger.getLogger("erjang.epmd");
    log.setLevel(level);
   
    new EPMDServer().listen(epmd_port);
  }
 
  public static int toInt(String intString, int defaultValue) {
    try {
      return Integer.parseInt(intString);
    } catch (NumberFormatException e) {
      return defaultValue;
    }
  }
 
  public static Level toLevel(int level) {
    if (level <= 0) {
      return Level.OFF;
    }
    switch (level) {
    case 1: return Level.SEVERE;
    case 2: return Level.WARNING;
    case 3: return Level.INFO;
    case 4: return Level.FINE;
    case 5: return Level.FINER;
    case 6: return Level.FINEST;
    default: return Level.FINEST;
    }
  }
}
TOP

Related Classes of erjang.epmd.EPMDServer

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.