class UniqueStringGenerator {

  public String getUniqueString(S selector) {
    requireNonNull(selector, "selector");

    NamePattern namePattern = namePatterns.get(selector);
    checkArgument(namePattern != null, "Unknown selector: %s", selector);

    return getUniqueString(namePattern.prefix, namePattern.suffixPattern);
  }

  public  UniqueStringGenerator();

}