class Server {

  @SuppressWarnings("unchecked")
  public <T> T get(Class<T> serviceKlass) {
    ensureOperational();
    Check.notNull(serviceKlass, "serviceKlass");
    return (T) services.get(serviceKlass);
  }

  public  Server(String name, String homeDir);
  public  Server(String name, String homeDir, String configDir, String logDir,
      String tempDir);
  public  Server(String name, String homeDir, Configuration config);
  public  Server(String name, String homeDir, String configDir, String logDir,
      String tempDir, Configuration config);

}