コード例 #1
0
  public void rename(DataSet data) {
    int n = 0;

    for (HostMatcher matcher : matchers) {
      if (matcher.matchesHost(data)) {
        NameTransformer transformer = transformers.get(n);

        if (LPARNameTransformer.class.equals(transformer.getClass())) {
          transformer = new LPARNameTransformer(data);
        } else if (NMONRunNameTransformer.class.equals(transformer.getClass())) {
          transformer = new NMONRunNameTransformer(data);
        }

        String newHostname = transformer.transform(data.getHostname());

        if (LOGGER.isDebugEnabled()) {
          LOGGER.debug(
              "renaming '{}' to '{}' with '{}'",
              new Object[] {data.getHostname(), newHostname, transformer});
        }

        data.setHostname(newHostname);

        break;
      } else {
        LOGGER.trace("'{}' does not match '{}'", matcher, data);
      }

      ++n;
    }
  }