nus-yam/ex-repair huggingface dataset:
Program: 54743
Project: 54743
Buggy source:
private void cacheExtensionFactory(final Config conf){
  if (conf.hasPath("String_Node_Str")) {
    cache.addCacheExtensionFactory(newFactory(path + "String_Node_Str",conf,CacheExtensionFactoryConfiguration::new));
  }
 else {
    each(conf,(name,decoconf) -> {
      cache.addCacheExtensionFactory(newFactory(path + "String_Node_Str" + name,decoconf,CacheExtensionFactoryConfiguration::new));
    }
);
  }
}

Fixed version (ground truth):
private void cacheExtensionFactory(final Config conf){
  if (conf.hasPath("String_Node_Str")) {
    cache.addCacheExtensionFactory(newFactory(path + "String_Node_Str",conf,CacheExtensionFactoryConfiguration::new));
  }
 else {
    each(conf,(name,decoconf) -> cache.addCacheExtensionFactory(newFactory(path + "String_Node_Str" + name,decoconf,CacheExtensionFactoryConfiguration::new)));
  }
}
Program: 54744
Project: 54744
Buggy source:
private void cacheLoaderFactory(final Config conf){
  if (conf.hasPath("String_Node_Str")) {
    cache.addCacheLoaderFactory(newFactory(path + "String_Node_Str",conf,CacheLoaderFactoryConfiguration::new));
  }
 else {
    each(conf,(name,c) -> {
      cache.addCacheLoaderFactory(newFactory(path + "String_Node_Str" + name,c,CacheLoaderFactoryConfiguration::new));
    }
);
  }
}

Fixed version (ground truth):
private void cacheLoaderFactory(final Config conf){
  if (conf.hasPath("String_Node_Str")) {
    cache.addCacheLoaderFactory(newFactory(path + "String_Node_Str",conf,CacheLoaderFactoryConfiguration::new));
  }
 else {
    each(conf,(name,c) -> cache.addCacheLoaderFactory(newFactory(path + "String_Node_Str" + name,c,CacheLoaderFactoryConfiguration::new)));
  }
}
Program: 54745
Project: 54745
Buggy source:
private void cacheDecoratorFactory(final Config conf){
  if (conf.hasPath("String_Node_Str")) {
    cache.addCacheDecoratorFactory(newFactory(path + "String_Node_Str",conf,CacheDecoratorFactoryConfiguration::new));
  }
 else {
    each(conf,(name,decoconf) -> {
      cache.addCacheDecoratorFactory(newFactory(path + "String_Node_Str" + name,decoconf,CacheDecoratorFactoryConfiguration::new));
    }
);
  }
}

Fixed version (ground truth):
private void cacheDecoratorFactory(final Config conf){
  if (conf.hasPath("String_Node_Str")) {
    cache.addCacheDecoratorFactory(newFactory(path + "String_Node_Str",conf,CacheDecoratorFactoryConfiguration::new));
  }
 else {
    each(conf,(name,decoconf) -> cache.addCacheDecoratorFactory(newFactory(path + "String_Node_Str" + name,decoconf,CacheDecoratorFactoryConfiguration::new)));
  }
}
Program: 54746
Project: 54746
Buggy source:
private void cacheManagerPeerProviderFactory(final Config conf){
  if (conf.hasPath("String_Node_Str")) {
    eh.addCacheManagerPeerProviderFactory(newFactory("String_Node_Str",conf,FactoryConfiguration::new));
  }
 else {
    each(conf,(name,c) -> {
      eh.addCacheManagerPeerProviderFactory(newFactory("String_Node_Str" + name,c,FactoryConfiguration::new));
    }
);
  }
}

Fixed version (ground truth):
private void cacheManagerPeerProviderFactory(final Config conf){
  if (conf.hasPath("String_Node_Str")) {
    eh.addCacheManagerPeerProviderFactory(newFactory("String_Node_Str",conf,FactoryConfiguration::new));
  }
 else {
    each(conf,(name,c) -> eh.addCacheManagerPeerProviderFactory(newFactory("String_Node_Str" + name,c,FactoryConfiguration::new)));
  }
}
Program: 54747
Project: 54747
Buggy source:
private boolean existsIdx(final String name){
  MongoCursor<Document> iterator=sessions.listIndexes().iterator();
  while (iterator.hasNext()) {
    Document doc=iterator.next();
    if (doc.getString("String_Node_Str").equals(name)) {
      return true;
    }
  }
  return false;
}

Fixed version (ground truth):
private boolean existsIdx(final String name){
  for (  final Document doc : sessions.listIndexes()) {
    if (doc.getString("String_Node_Str").equals(name)) {
      return true;
    }
  }
  return false;
}
Program: 54748
Project: 54748
Buggy source:
private static Function<Object,Object> idGen(final Bucket bucket){
  return entity -> {
    return IdGenerator.getOrGenId(entity,() -> bucket.counter(entity.getClass().getName(),1,1).content());
  }
;
}

Fixed version (ground truth):
private static Function<Object,Object> idGen(final Bucket bucket){
  return entity -> IdGenerator.getOrGenId(entity,() -> bucket.counter(entity.getClass().getName(),1,1).content());
}
Program: 54750
Project: 54750
Buggy source:
/** 
 * Retrieve and lock a entity by its unique ID. If the entity is found, a entity is returned. Otherwise a  {@link DocumentDoesNotExistException}. This method works similar to   {@link #get(Class,Object)}, but in addition it (write) locks the entity for the given lock time interval. Note that this lock time is hard capped to 30 seconds, even if provided with a higher value and is not configurable. The entity will unlock afterwards automatically. Detecting an already locked entity is done by checking for  {@link TemporaryLockFailureException}. Note that this exception can also be raised in other conditions, always when the error is transient and retrying may help.
 * @param entityClass Entity class.
 * @param id id the unique ID of the entity.
 * @param lockTime the time to write lock the entity (max. 30 seconds).
 * @param < T > Entity type.
 * @return an {@link Observable} eventually containing the found {@link JsonDocument}.
 */
default <T>T getAndLock(final Class<T> entityClass,final Object id,final int lockTime) throws DocumentDoesNotExistException {
  return async().<T>getAndLock(entityClass,id,lockTime).switchIfEmpty(notFound(entityClass,id)).toBlocking().single();
}

Fixed version (ground truth):
/** 
 * Retrieve and lock a entity by its unique ID. If the entity is found, a entity is returned. Otherwise a  {@link DocumentDoesNotExistException}. This method works similar to   {@link #get(Class,Object)}, but in addition it (write) locks the entity for the given lock time interval. Note that this lock time is hard capped to 30 seconds, even if provided with a higher value and is not configurable. The entity will unlock afterwards automatically. Detecting an already locked entity is done by checking for  {@link TemporaryLockFailureException}. Note that this exception can also be raised in other conditions, always when the error is transient and retrying may help.
 * @param entityClass Entity class.
 * @param id id the unique ID of the entity.
 * @param lockTime the time to write lock the entity (max. 30 seconds).
 * @param < T > Entity type.
 * @return an {@link Observable} eventually containing the found {@link JsonDocument}.
 */
default <T>T getAndLock(final Class<T> entityClass,final Object id,final int lockTime) throws DocumentDoesNotExistException {
  return async().getAndLock(entityClass,id,lockTime).switchIfEmpty(notFound(entityClass,id)).toBlocking().single();
}
Program: 54751
Project: 54751
Buggy source:
/** 
 * Retrieve and touch an entity by its unique ID. If the entity is found, an entity is returned. Otherwise a  {@link DocumentDoesNotExistException}. This method works similar to   {@link #get(Class,Object)}, but in addition it touches the entity, which will reset its configured expiration time to the value provided.
 * @param entityClass Entity class.
 * @param id id the unique ID of the entity.
 * @param expiry the new expiration time for the entity (in seconds).
 * @param < T > Entity type.
 * @return an {@link Observable} eventually containing the found {@link JsonDocument}.
 */
default <T>T getAndTouch(final Class<T> entityClass,final Object id,final int expiry) throws DocumentDoesNotExistException {
  return async().<T>getAndTouch(entityClass,id,expiry).switchIfEmpty(notFound(entityClass,id)).toBlocking().single();
}

Fixed version (ground truth):
/** 
 * Retrieve and touch an entity by its unique ID. If the entity is found, an entity is returned. Otherwise a  {@link DocumentDoesNotExistException}. This method works similar to   {@link #get(Class,Object)}, but in addition it touches the entity, which will reset its configured expiration time to the value provided.
 * @param entityClass Entity class.
 * @param id id the unique ID of the entity.
 * @param expiry the new expiration time for the entity (in seconds).
 * @param < T > Entity type.
 * @return an {@link Observable} eventually containing the found {@link JsonDocument}.
 */
default <T>T getAndTouch(final Class<T> entityClass,final Object id,final int expiry) throws DocumentDoesNotExistException {
  return async().getAndTouch(entityClass,id,expiry).switchIfEmpty(notFound(entityClass,id)).toBlocking().single();
}
Program: 54752
Project: 54752
Buggy source:
/** 
 * Get an entity/document by ID. The unique ID is constructed via  {@link N1Q#qualifyId(Class,Object)}. If the entity is found, a entity is returned. Otherwise a  {@link DocumentDoesNotExistException}.
 * @param entityClass Entity class.
 * @param id Entity id.
 * @param mode Replica mode.
 * @param < T > Entity type.
 * @return An entity matching the id or an empty observable.
 */
default <T>T getFromReplica(final Class<T> entityClass,final Object id,final ReplicaMode mode) throws DocumentDoesNotExistException {
  return async().<T>getFromReplica(entityClass,id,mode).switchIfEmpty(notFound(entityClass,id)).toBlocking().single();
}

Fixed version (ground truth):
/** 
 * Get an entity/document by ID. The unique ID is constructed via  {@link N1Q#qualifyId(Class,Object)}. If the entity is found, a entity is returned. Otherwise a  {@link DocumentDoesNotExistException}.
 * @param entityClass Entity class.
 * @param id Entity id.
 * @param mode Replica mode.
 * @param < T > Entity type.
 * @return An entity matching the id or an empty observable.
 */
default <T>T getFromReplica(final Class<T> entityClass,final Object id,final ReplicaMode mode) throws DocumentDoesNotExistException {
  return async().getFromReplica(entityClass,id,mode).switchIfEmpty(notFound(entityClass,id)).toBlocking().single();
}
Program: 54753
Project: 54753
Buggy source:
/** 
 * Get an entity/document by ID. The unique ID is constructed via  {@link N1Q#qualifyId(Class,Object)}. If the entity is found, a entity is returned. Otherwise a  {@link DocumentDoesNotExistException}.
 * @param entityClass Entity class.
 * @param id Entity id.
 * @param < T > Entity type.
 * @return An entity matching the id or an empty observable.
 */
default <T>T get(final Class<T> entityClass,final Object id) throws DocumentDoesNotExistException {
  return async().<T>get(entityClass,id).switchIfEmpty(notFound(entityClass,id)).toBlocking().single();
}

Fixed version (ground truth):
/** 
 * Get an entity/document by ID. The unique ID is constructed via  {@link N1Q#qualifyId(Class,Object)}. If the entity is found, a entity is returned. Otherwise a  {@link DocumentDoesNotExistException}.
 * @param entityClass Entity class.
 * @param id Entity id.
 * @param < T > Entity type.
 * @return An entity matching the id or an empty observable.
 */
default <T>T get(final Class<T> entityClass,final Object id) throws DocumentDoesNotExistException {
  return async().get(entityClass,id).switchIfEmpty(notFound(entityClass,id)).toBlocking().single();
}
Program: 54754
Project: 54754
Buggy source:
/** 
 * Produces an observable that throws a   {@link DocumentDoesNotExistException}.
 * @param entityClass Entity class.
 * @param id Entity id.
 * @param < T > Entity type.
 * @return An observable that throws a {@link DocumentDoesNotExistException}.
 */
@SuppressWarnings("String_Node_Str") static <T>Observable<T> notFound(final Class entityClass,final Object id){
  return Observable.create(s -> {
    s.onError(new DocumentDoesNotExistException(N1Q.qualifyId(entityClass,id)));
  }
);
}

Fixed version (ground truth):
/** 
 * Produces an observable that throws a   {@link DocumentDoesNotExistException}.
 * @param entityClass Entity class.
 * @param id Entity id.
 * @param < T > Entity type.
 * @return An observable that throws a {@link DocumentDoesNotExistException}.
 */
@SuppressWarnings("String_Node_Str") static <T>Observable<T> notFound(final Class entityClass,final Object id){
  return Observable.create(s -> s.onError(new DocumentDoesNotExistException(N1Q.qualifyId(entityClass,id))));
}
Program: 54755
Project: 54755
Buggy source:
@Override public Field load(final Class key) throws Exception {
  if (key == Object.class) {
    throw new IllegalArgumentException("String_Node_Str" + key.getName() + "String_Node_Str"+ Id.class.getName());
  }
  Field[] fields=key.getDeclaredFields();
  for (  Field field : fields) {
    if (field.getName().equals("String_Node_Str")) {
      field.setAccessible(true);
      return field;
    }
 else     if (field.getAnnotation(Id.class) != null) {
      field.setAccessible(true);
      return field;
    }
  }
  return load(key.getSuperclass());
}

Fixed version (ground truth):
@Override public Field load(final Class key){
  if (key == Object.class) {
    throw new IllegalArgumentException("String_Node_Str" + key.getName() + "String_Node_Str"+ Id.class.getName());
  }
  Field[] fields=key.getDeclaredFields();
  for (  Field field : fields) {
    if (field.getName().equals("String_Node_Str")) {
      field.setAccessible(true);
      return field;
    }
 else     if (field.getAnnotation(Id.class) != null) {
      field.setAccessible(true);
      return field;
    }
  }
  return load(key.getSuperclass());
}
Program: 54756
Project: 54756
Buggy source:
private static Field field(final Object bean){
  Field id=Try.apply(() -> CACHE.getUnchecked(bean.getClass())).unwrap(UncheckedExecutionException.class).get();
  return id;
}

Fixed version (ground truth):
private static Field field(final Object bean){
  return Try.apply(() -> CACHE.getUnchecked(bean.getClass())).unwrap(UncheckedExecutionException.class).get();
}
Program: 54757
Project: 54757
Buggy source:
static Handler tryPage(final Handler handler,final Logger log){
  return (req,rsp,ex) -> Try.run(() -> handler.handle(req,rsp,ex)).onFailure(cause -> {
    log.debug("String_Node_Str",cause);
  }
);
}

Fixed version (ground truth):
static Handler tryPage(final Handler handler,final Logger log){
  return (req,rsp,ex) -> Try.run(() -> handler.handle(req,rsp,ex)).onFailure(cause -> log.debug("String_Node_Str",cause));
}
Program: 54759
Project: 54759
Buggy source:
@SuppressWarnings("String_Node_Str") static Optional<Class> findClass(final ClassLoader loader,final String name){
  return Arrays.asList(loader,Thread.currentThread().getContextClassLoader()).stream().map(Throwing.<ClassLoader,Class>throwingFunction(cl -> cl.loadClass(name)).orElse((Class)null)).filter(Objects::nonNull).findFirst();
}

Fixed version (ground truth):
@SuppressWarnings("String_Node_Str") static Optional<Class> findClass(final ClassLoader loader,final String name){
  return Stream.of(loader,Thread.currentThread().getContextClassLoader()).map(Throwing.<ClassLoader,Class>throwingFunction(cl -> cl.loadClass(name)).orElse((Class)null)).filter(Objects::nonNull).findFirst();
}
Program: 54760
Project: 54760
Buggy source:
@SuppressWarnings("String_Node_Str") static Map<String,Object> frame(final ClassLoader loader,final SourceLocator locator,final Throwable cause,final StackTraceElement e){
  int line=Math.max(e.getLineNumber(),1);
  String className=e.getClassName();
  SourceLocator.Source source=locator.source(className);
  int[] range=source.range(line,SAMPLE_SIZE);
  int lineStart=range[0];
  int lineNth=line - lineStart;
  Path filePath=source.getPath();
  Optional<Class> clazz=findClass(loader,className);
  String filename=Optional.ofNullable(e.getFileName()).orElse("String_Node_Str");
  return ImmutableMap.<String,Object>builder().put("String_Node_Str",new File(filename).getName()).put("String_Node_Str",Optional.ofNullable(e.getMethodName()).orElse("String_Node_Str")).put("String_Node_Str",line).put("String_Node_Str",lineStart + 1).put("String_Node_Str",lineNth).put("String_Node_Str",Optional.ofNullable(clazz.map(Whoops::locationOf).orElse(new File(filename).getParent())).orElse(filename)).put("String_Node_Str",source.source(range[0],range[1])).put("String_Node_Str",openWith.apply(filePath,line)).put("String_Node_Str",clazz.map(c -> c.getSimpleName()).orElse(new File(filename).getName())).put("String_Node_Str",Arrays.asList(ImmutableMap.of("String_Node_Str",cause.getClass().getName(),"String_Node_Str",message(cause)))).build();
}

Fixed version (ground truth):
@SuppressWarnings("String_Node_Str") static Map<String,Object> frame(final ClassLoader loader,final SourceLocator locator,final Throwable cause,final StackTraceElement e){
  int line=Math.max(e.getLineNumber(),1);
  String className=e.getClassName();
  SourceLocator.Source source=locator.source(className);
  int[] range=source.range(line,SAMPLE_SIZE);
  int lineStart=range[0];
  int lineNth=line - lineStart;
  Path filePath=source.getPath();
  Optional<Class> clazz=findClass(loader,className);
  String filename=Optional.ofNullable(e.getFileName()).orElse("String_Node_Str");
  return ImmutableMap.<String,Object>builder().put("String_Node_Str",new File(filename).getName()).put("String_Node_Str",Optional.ofNullable(e.getMethodName()).orElse("String_Node_Str")).put("String_Node_Str",line).put("String_Node_Str",lineStart + 1).put("String_Node_Str",lineNth).put("String_Node_Str",Optional.ofNullable(clazz.map(Whoops::locationOf).orElse(new File(filename).getParent())).orElse(filename)).put("String_Node_Str",source.source(range[0],range[1])).put("String_Node_Str",openWith.apply(filePath,line)).put("String_Node_Str",clazz.map(Class::getSimpleName).orElse(new File(filename).getName())).put("String_Node_Str",Arrays.asList(ImmutableMap.of("String_Node_Str",cause.getClass().getName(),"String_Node_Str",message(cause)))).build();
}
Program: 54761
Project: 54761
Buggy source:
@Inject public FileMonitor(final Injector injector,final Env env,final WatchService watcher,final Set<FileEventOptions> optionList) throws IOException {
  this.injector=injector;
  this.watcher=watcher;
  this.optionList=optionList;
  ExecutorService monitor=Executors.newSingleThreadExecutor(task -> {
    Thread thread=new Thread(task,"String_Node_Str");
    thread.setDaemon(true);
    return thread;
  }
);
  env.onStop(monitor::shutdown);
  monitor.execute(this);
}

Fixed version (ground truth):
@Inject public FileMonitor(final Injector injector,final Env env,final WatchService watcher,final Set<FileEventOptions> optionList){
  this.injector=injector;
  this.watcher=watcher;
  this.optionList=optionList;
  ExecutorService monitor=Executors.newSingleThreadExecutor(task -> {
    Thread thread=new Thread(task,"String_Node_Str");
    thread.setDaemon(true);
    return thread;
  }
);
  env.onStop(monitor::shutdown);
  monitor.execute(this);
}
Program: 54762
Project: 54762
Buggy source:
@SuppressWarnings({"String_Node_Str","String_Node_Str"}) private void paths(final ClassLoader loader,final Config conf,final String name,final Consumer<FileEventOptions> callback) throws Throwable {
  list(conf,name,value -> {
    Config coptions=ConfigFactory.parseMap((Map)value);
    Class handler=loader.loadClass(coptions.getString("String_Node_Str"));
    Path path=Paths.get(coptions.getString("String_Node_Str"));
    FileEventOptions options=new FileEventOptions(path,handler);
    list(coptions,"String_Node_Str",it -> options.kind(new WatchEventKind(it.toString())));
    list(coptions,"String_Node_Str",it -> options.modifier(new WatchEventModifier(it.toString())));
    list(coptions,"String_Node_Str",it -> options.includes(it.toString()));
    list(coptions,"String_Node_Str",it -> options.recursive(Boolean.valueOf(it.toString())));
    callback.accept(options);
  }
);
}

Fixed version (ground truth):
@SuppressWarnings({"String_Node_Str","String_Node_Str"}) private void paths(final ClassLoader loader,final Config conf,final String name,final Consumer<FileEventOptions> callback){
  list(conf,name,value -> {
    Config coptions=ConfigFactory.parseMap((Map)value);
    Class handler=loader.loadClass(coptions.getString("String_Node_Str"));
    Path path=Paths.get(coptions.getString("String_Node_Str"));
    FileEventOptions options=new FileEventOptions(path,handler);
    list(coptions,"String_Node_Str",it -> options.kind(new WatchEventKind(it.toString())));
    list(coptions,"String_Node_Str",it -> options.modifier(new WatchEventModifier(it.toString())));
    list(coptions,"String_Node_Str",it -> options.includes(it.toString()));
    list(coptions,"String_Node_Str",it -> options.recursive(Boolean.valueOf(it.toString())));
    callback.accept(options);
  }
);
}
Program: 54763
Project: 54763
Buggy source:
@Override public void configure(final Env env,final Config conf,final Binder binder) throws Throwable {
  this.watcher=FileSystems.getDefault().newWatchService();
  binder.bind(WatchService.class).toInstance(watcher);
  List<FileEventOptions> paths=new ArrayList<>();
  paths(env.getClass().getClassLoader(),conf,"String_Node_Str",options -> {
    paths.add(register(binder,options));
  }
);
  for (  Throwing.Function2<Config,Binder,FileEventOptions> binding : bindings) {
    paths.add(binding.apply(conf,binder));
  }
  binder.bind(FileMonitor.class).asEagerSingleton();
  paths.forEach(it -> log.info("String_Node_Str",it));
}

Fixed version (ground truth):
@Override public void configure(final Env env,final Config conf,final Binder binder) throws Throwable {
  this.watcher=FileSystems.getDefault().newWatchService();
  binder.bind(WatchService.class).toInstance(watcher);
  List<FileEventOptions> paths=new ArrayList<>();
  paths(env.getClass().getClassLoader(),conf,"String_Node_Str",options -> paths.add(register(binder,options)));
  for (  Throwing.Function2<Config,Binder,FileEventOptions> binding : bindings) {
    paths.add(binding.apply(conf,binder));
  }
  binder.bind(FileMonitor.class).asEagerSingleton();
  paths.forEach(it -> log.info("String_Node_Str",it));
}
Program: 54764
Project: 54764
Buggy source:
@SuppressWarnings("String_Node_Str") private void list(final Config conf,final String name,final Throwing.Consumer<Object> callback) throws Throwable {
  if (conf.hasPath(name)) {
    Object value=conf.getAnyRef(name);
    List values=value instanceof List ? (List)value : ImmutableList.of(value);
    for (    Object it : values) {
      callback.accept(it);
    }
  }
}

Fixed version (ground truth):
@SuppressWarnings("String_Node_Str") private void list(final Config conf,final String name,final Throwing.Consumer<Object> callback){
  if (conf.hasPath(name)) {
    Object value=conf.getAnyRef(name);
    List values=value instanceof List ? (List)value : ImmutableList.of(value);
    for (    Object it : values) {
      callback.accept(it);
    }
  }
}
Program: 54765
Project: 54765
Buggy source:
@Override public boolean matches(final Path path){
  return matchers.stream().filter(it -> it.matches(path)).findFirst().isPresent();
}

Fixed version (ground truth):
@Override public boolean matches(final Path path){
  return matchers.stream().anyMatch(it -> it.matches(path));
}
Program: 54767
Project: 54767
Buggy source:
@Override public void configure(final Env env,final Config config,final Binder binder){
  Config mail=config.getConfig(name).withFallback(config.getConfig("String_Node_Str"));
  ServiceKey serviceKey=env.serviceKey();
  serviceKey.generate(SimpleEmail.class,name,k -> {
    binder.bind(k).toProvider(new SimpleEmailProvider(mail));
  }
);
  serviceKey.generate(HtmlEmail.class,name,k -> {
    binder.bind(k).toProvider(new HtmlEmailProvider(mail));
  }
);
  serviceKey.generate(MultiPartEmail.class,name,k -> {
    binder.bind(k).toProvider(new MultiPartEmailProvider(mail));
  }
);
  serviceKey.generate(ImageHtmlEmail.class,name,k -> {
    binder.bind(k).toProvider(new ImageHtmlEmailProvider(mail));
  }
);
}

Fixed version (ground truth):
@Override public void configure(final Env env,final Config config,final Binder binder){
  Config mail=config.getConfig(name).withFallback(config.getConfig("String_Node_Str"));
  ServiceKey serviceKey=env.serviceKey();
  serviceKey.generate(SimpleEmail.class,name,k -> binder.bind(k).toProvider(new SimpleEmailProvider(mail)));
  serviceKey.generate(HtmlEmail.class,name,k -> binder.bind(k).toProvider(new HtmlEmailProvider(mail)));
  serviceKey.generate(MultiPartEmail.class,name,k -> binder.bind(k).toProvider(new MultiPartEmailProvider(mail)));
  serviceKey.generate(ImageHtmlEmail.class,name,k -> binder.bind(k).toProvider(new ImageHtmlEmailProvider(mail)));
}
Program: 54768
Project: 54768
Buggy source:
private static <T>T newObject(final Class<T> klass){
  return throwingSupplier(() -> klass.newInstance()).get();
}

Fixed version (ground truth):
private static <T>T newObject(final Class<T> klass){
  return throwingSupplier(klass::newInstance).get();
}
Program: 54770
Project: 54770
Buggy source:
@SuppressWarnings({"String_Node_Str","String_Node_Str"}) private static void guavaServices(final Env env,final Binder binder,final Set<Class<Service>> serviceTypes){
  Consumer<Class> guavaService=klass -> {
    binder.bind(klass).asEagerSingleton();
    serviceTypes.add(klass);
  }
;
  serviceTypes.forEach(guavaService);
  AtomicReference<ServiceManager> sm=new AtomicReference<>();
  Provider<ServiceManager> smProvider=() -> sm.get();
  binder.bind(ServiceManager.class).toProvider(smProvider);
  env.onStart(r -> {
    List<Service> services=serviceTypes.stream().map(r::require).collect(Collectors.toList());
    sm.set(new ServiceManager(services));
    sm.get().startAsync().awaitHealthy();
  }
);
  env.onStop(() -> {
    sm.get().stopAsync().awaitStopped();
  }
);
}

Fixed version (ground truth):
@SuppressWarnings({"String_Node_Str","String_Node_Str"}) private static void guavaServices(final Env env,final Binder binder,final Set<Class<Service>> serviceTypes){
  Consumer<Class> guavaService=klass -> {
    binder.bind(klass).asEagerSingleton();
    serviceTypes.add(klass);
  }
;
  serviceTypes.forEach(guavaService);
  AtomicReference<ServiceManager> sm=new AtomicReference<>();
  Provider<ServiceManager> smProvider=sm::get;
  binder.bind(ServiceManager.class).toProvider(smProvider);
  env.onStart(r -> {
    List<Service> services=serviceTypes.stream().map(r::require).collect(Collectors.toList());
    sm.set(new ServiceManager(services));
    sm.get().startAsync().awaitHealthy();
  }
);
  env.onStop(() -> sm.get().stopAsync().awaitStopped());
}
Program: 54771
Project: 54771
Buggy source:
@SuppressWarnings("String_Node_Str") private String toSpec(final Object spec){
  if (spec instanceof Map) {
    Map<String,Object> m=(Map<String,Object>)spec;
    return m.entrySet().stream().map(e -> e.getKey() + "String_Node_Str" + e.getValue()).collect(Collectors.joining("String_Node_Str")).toString();
  }
  return spec.toString();
}

Fixed version (ground truth):
@SuppressWarnings("String_Node_Str") private String toSpec(final Object spec){
  if (spec instanceof Map) {
    Map<String,Object> m=(Map<String,Object>)spec;
    return m.entrySet().stream().map(e -> e.getKey() + "String_Node_Str" + e.getValue()).collect(Collectors.joining("String_Node_Str"));
  }
  return spec.toString();
}
Program: 54772
Project: 54772
Buggy source:
private static JobKey jobKey(final Method method){
  Class<?> klass=method.getDeclaringClass();
  String classname=klass.getSimpleName();
  klass=klass.getDeclaringClass();
  while (klass != null) {
    classname=klass.getSimpleName() + "String_Node_Str" + classname;
    klass=klass.getDeclaringClass();
  }
  return JobKey.jobKey(classname + "String_Node_Str" + method.getName(),method.getDeclaringClass().getPackage().getName());
}

Fixed version (ground truth):
private static JobKey jobKey(final Method method){
  Class<?> klass=method.getDeclaringClass();
  StringBuilder classname=new StringBuilder(klass.getSimpleName());
  klass=klass.getDeclaringClass();
  while (klass != null) {
    classname.insert(0,klass.getSimpleName() + "String_Node_Str");
    klass=klass.getDeclaringClass();
  }
  return JobKey.jobKey(classname + "String_Node_Str" + method.getName(),method.getDeclaringClass().getPackage().getName());
}
Program: 54773
Project: 54773
Buggy source:
@Override public Object handle(final Request req) throws Throwable {
  Set<Route.Definition> routes=req.require(Route.KEY);
  WebPageProvider provider=req.require(name,WebPageProvider.class);
  List<WebPage> pages=routes.stream().filter(filter).flatMap(r -> provider.apply(r).stream()).map(page -> {
    String name=page.getName();
    if (name.startsWith("String_Node_Str")) {
      name=name.substring(1);
    }
    page.setName(name);
    return page;
  }
).collect(Collectors.toList());
  return Results.ok(gen.apply(pages)).type(MediaType.xml);
}

Fixed version (ground truth):
@Override public Object handle(final Request req) throws Throwable {
  Set<Route.Definition> routes=req.require(Route.KEY);
  WebPageProvider provider=req.require(name,WebPageProvider.class);
  List<WebPage> pages=routes.stream().filter(filter).flatMap(r -> provider.apply(r).stream()).peek(page -> {
    String name=page.getName();
    if (name.startsWith("String_Node_Str")) {
      name=name.substring(1);
    }
    page.setName(name);
  }
).collect(Collectors.toList());
  return Results.ok(gen.apply(pages)).type(MediaType.xml);
}
Program: 54774
Project: 54774
Buggy source:
@TaskAction public void process() throws Throwable {
  try {
    String env=getEnv();
    this.assetFile=new File(getOutput(),"String_Node_Str" + env + "String_Node_Str");
    new JoobyContainer(getProject()).run(getMainClassName(),(app,conf) -> {
      compile(getLogger(),app.getClass().getClassLoader(),env,getMaxAge(),getOutput(),assetFile,getAssemblyOutput(),conf);
    }
,env);
  }
 catch (  CompilationDone ex) {
  }
}

Fixed version (ground truth):
@TaskAction public void process() throws Throwable {
  try {
    String env=getEnv();
    this.assetFile=new File(getOutput(),"String_Node_Str" + env + "String_Node_Str");
    new JoobyContainer(getProject()).run(getMainClassName(),(app,conf) -> compile(getLogger(),app.getClass().getClassLoader(),env,getMaxAge(),getOutput(),assetFile,getAssemblyOutput(),conf),env);
  }
 catch (  CompilationDone ex) {
  }
}
Program: 54776
Project: 54776
Buggy source:
private SourceSet sourceSet(final Project project){
  SourceSet sourceSet=getJavaConvention(project).getSourceSets().getByName(SourceSet.MAIN_SOURCE_SET_NAME);
  return sourceSet;
}

Fixed version (ground truth):
private SourceSet sourceSet(final Project project){
  return getJavaConvention(project).getSourceSets().getByName(SourceSet.MAIN_SOURCE_SET_NAME);
}
Program: 54777
Project: 54777
Buggy source:
public Set<File> sources(){
  SourceSet sourceSet=sourceSet(project);
  Set<File> src=new LinkedHashSet<>();
  sourceSet.getResources().getSrcDirs().forEach(src::add);
  sourceSet.getJava().getSrcDirs().forEach(f -> src.add(f.getParentFile()));
  return src;
}

Fixed version (ground truth):
public Set<File> sources(){
  SourceSet sourceSet=sourceSet(project);
  Set<File> src=new LinkedHashSet<>(sourceSet.getResources().getSrcDirs());
  sourceSet.getJava().getSrcDirs().forEach(f -> src.add(f.getParentFile()));
  return src;
}
Program: 54778
Project: 54778
Buggy source:
public Set<File> classpath(){
  SourceSet sourceSet=sourceSet(project);
  Set<File> cp=new LinkedHashSet<>();
  sourceSet.getResources().getSrcDirs().forEach(cp::add);
  sourceSet.getRuntimeClasspath().getFiles().forEach(cp::add);
  Configuration provided=project.getConfigurations().findByName("String_Node_Str");
  if (provided != null) {
    provided.getFiles().forEach(cp::add);
  }
  return cp;
}

Fixed version (ground truth):
public Set<File> classpath(){
  SourceSet sourceSet=sourceSet(project);
  Set<File> cp=new LinkedHashSet<>(sourceSet.getResources().getSrcDirs());
  cp.addAll(sourceSet.getRuntimeClasspath().getFiles());
  Configuration provided=project.getConfigurations().findByName("String_Node_Str");
  if (provided != null) {
    cp.addAll(provided.getFiles());
  }
  return cp;
}
Program: 54779
Project: 54779
Buggy source:
public URLClassLoader newClassLoader() throws MalformedURLException {
  return toClassLoader(classpath().stream().map(throwingFunction(f -> f.toURI().toURL())).collect(Collectors.toList()),getClass().getClassLoader());
}

Fixed version (ground truth):
public URLClassLoader newClassLoader(){
  return toClassLoader(classpath().stream().map(throwingFunction(f -> f.toURI().toURL())).collect(Collectors.toList()),getClass().getClassLoader());
}
Program: 54780
Project: 54780
Buggy source:
private Properties toProperties(final Config config){
  Properties properties=new Properties();
  config.withoutPath("String_Node_Str").entrySet().forEach(prop -> {
    properties.setProperty("String_Node_Str" + prop.getKey(),prop.getValue().unwrapped().toString());
  }
);
  return properties;
}

Fixed version (ground truth):
private Properties toProperties(final Config config){
  Properties properties=new Properties();
  config.withoutPath("String_Node_Str").entrySet().forEach(prop -> properties.setProperty("String_Node_Str" + prop.getKey(),prop.getValue().unwrapped().toString()));
  return properties;
}
Program: 54781
Project: 54781
Buggy source:
@Override public void onCompleted(){
  if (done.compareAndSet(false,true)) {
    deferred.resolve((Object)null);
  }
  deferred=null;
}

Fixed version (ground truth):
@Override public void onCompleted(){
  if (done.compareAndSet(false,true)) {
    deferred.resolve(null);
  }
  deferred=null;
}
Program: 54782
Project: 54782
Buggy source:
/** 
 * Append persistent classes (classess annotated with Entity).
 * @param classes Persistent classes.
 * @return This module.
 */
@SuppressWarnings("String_Node_Str") public Hbm classes(final Class... classes){
  sources.add((m,c) -> Arrays.asList(classes).stream().forEach(m::addAnnotatedClass));
  return this;
}

Fixed version (ground truth):
/** 
 * Append persistent classes (classess annotated with Entity).
 * @param classes Persistent classes.
 * @return This module.
 */
@SuppressWarnings("String_Node_Str") public Hbm classes(final Class... classes){
  sources.add((m,c) -> Arrays.stream(classes).forEach(m::addAnnotatedClass));
  return this;
}
Program: 54783
Project: 54783
Buggy source:
/** 
 * Register an hibernate event listener. Listener will be created and injected by Guice.
 * @param type Event type.
 * @param listenerType Listener type.
 * @return This module.
 */
@SuppressWarnings("String_Node_Str") public <T>Hbm onEvent(final EventType<T> type,final Class<? extends T> listenerType){
  bindings.add(b -> {
    b.bind(listenerType).asEagerSingleton();
  }
);
  listeners.add((s,r) -> {
    ServiceRegistryImplementor serviceRegistry=s.getServiceRegistry();
    EventListenerRegistry service=serviceRegistry.getService(EventListenerRegistry.class);
    T listener=r.require(listenerType);
    service.appendListeners(type,listener);
  }
);
  return this;
}

Fixed version (ground truth):
/** 
 * Register an hibernate event listener. Listener will be created and injected by Guice.
 * @param type Event type.
 * @param listenerType Listener type.
 * @return This module.
 */
@SuppressWarnings("String_Node_Str") public <T>Hbm onEvent(final EventType<T> type,final Class<? extends T> listenerType){
  bindings.add(b -> b.bind(listenerType).asEagerSingleton());
  listeners.add((s,r) -> {
    ServiceRegistryImplementor serviceRegistry=s.getServiceRegistry();
    EventListenerRegistry service=serviceRegistry.getService(EventListenerRegistry.class);
    T listener=r.require(listenerType);
    service.appendListeners(type,listener);
  }
);
  return this;
}
Program: 54784
Project: 54784
Buggy source:
public UnitOfWork rollback(){
  active(session,trx -> {
    log.debug("String_Node_Str",oid(session),oid(trx));
    trx.rollback();
  }
,trx -> {
    log.warn("String_Node_Str",oid(session),oid(trx));
  }
);
  return this;
}

Fixed version (ground truth):
public UnitOfWork rollback(){
  active(session,trx -> {
    log.debug("String_Node_Str",oid(session),oid(trx));
    trx.rollback();
  }
,trx -> log.warn("String_Node_Str",oid(session),oid(trx)));
  return this;
}
Program: 54785
Project: 54785
Buggy source:
public UnitOfWork commit(){
  if (rollbackOnly) {
    return this;
  }
  if (!readOnly) {
    log.debug("String_Node_Str",oid(session));
    session.flush();
  }
 else {
    log.debug("String_Node_Str",oid(session));
  }
  active(session,trx -> {
    log.debug("String_Node_Str",oid(session),oid(trx));
    trx.commit();
  }
,trx -> {
    log.warn("String_Node_Str",oid(session),oid(trx));
  }
);
  return this;
}

Fixed version (ground truth):
public UnitOfWork commit(){
  if (rollbackOnly) {
    return this;
  }
  if (!readOnly) {
    log.debug("String_Node_Str",oid(session));
    session.flush();
  }
 else {
    log.debug("String_Node_Str",oid(session));
  }
  active(session,trx -> {
    log.debug("String_Node_Str",oid(session),oid(trx));
    trx.commit();
  }
,trx -> log.warn("String_Node_Str",oid(session),oid(trx)));
  return this;
}
Program: 54786
Project: 54786
Buggy source:
public UnitOfWork begin(){
  if (rollbackOnly) {
    return this;
  }
  active(session,trx -> {
    log.debug("String_Node_Str",oid(session),oid(trx));
  }
,trx -> {
    log.debug("String_Node_Str",oid(session),oid(trx));
    trx.begin();
  }
);
  return this;
}

Fixed version (ground truth):
public UnitOfWork begin(){
  if (rollbackOnly) {
    return this;
  }
  active(session,trx -> log.debug("String_Node_Str",oid(session),oid(trx)),trx -> {
    log.debug("String_Node_Str",oid(session),oid(trx));
    trx.begin();
  }
);
  return this;
}
Program: 54787
Project: 54787
Buggy source:
private void onSyncPackageJson(Config conf,Path workDirectory,Throwing.Consumer<String> action) throws IOException {
  Path tmp=Paths.get(conf.getString("String_Node_Str"),"String_Node_Str");
  Files.createDirectories(tmp);
  Throwing.Consumer<String> syncPackageJson=existingSha1 -> {
    Path packageJson=workDirectory.resolve("String_Node_Str");
    String sha1=Hashing.sha1().hashBytes(Files.readAllBytes(packageJson)).toString();
    if (!existingSha1.equals(sha1)) {
      action.accept("String_Node_Str");
      Files.write(tmp.resolve("String_Node_Str" + sha1),Arrays.asList("String_Node_Str"));
    }
  }
;
  if (!Files.exists(workDirectory.resolve("String_Node_Str"))) {
    syncPackageJson.accept("String_Node_Str");
  }
 else {
    String existingSha1=Files.find(tmp,1,(path,attr) -> path.getFileName().toString().startsWith("String_Node_Str")).findFirst().map(path -> path.getFileName().toString().replace("String_Node_Str","String_Node_Str")).orElse("String_Node_Str");
    syncPackageJson.accept(existingSha1);
  }
}

Fixed version (ground truth):
private void onSyncPackageJson(Config conf,Path workDirectory,Throwing.Consumer<String> action) throws IOException {
  Path tmp=Paths.get(conf.getString("String_Node_Str"),"String_Node_Str");
  Files.createDirectories(tmp);
  String sha1=Hashing.sha1().hashBytes(Files.readAllBytes(workDirectory.resolve("String_Node_Str"))).toString();
  Path lastSha1=tmp.resolve(sha1 + "String_Node_Str");
  if (!Files.exists(lastSha1) || !Files.exists(workDirectory.resolve("String_Node_Str"))) {
    action.accept("String_Node_Str");
    Files.write(tmp.resolve(lastSha1),Arrays.asList("String_Node_Str"));
  }
}
Program: 54788
Project: 54788
Buggy source:
@Override public void execute() throws MojoExecutionException, MojoFailureException {
  try {
    Path srcdir=new File(mavenProject.getBuild().getSourceDirectory()).toPath();
    Path bindir=new File(mavenProject.getBuild().getOutputDirectory()).toPath();
    new JoobyRunner(mavenProject).run(mainClass,(app,conf) -> {
      process(app,srcdir,bindir);
    }
);
  }
 catch (  Throwable ex) {
    throw new MojoFailureException("String_Node_Str" + mainClass,ex);
  }
}

Fixed version (ground truth):
@Override public void execute() throws MojoExecutionException, MojoFailureException {
  if (mainClass == null) {
    throw new MojoExecutionException("String_Node_Str");
  }
  try {
    Path srcdir=new File(mavenProject.getBuild().getSourceDirectory()).toPath();
    Path bindir=new File(mavenProject.getBuild().getOutputDirectory()).toPath();
    new JoobyRunner(mavenProject).run(mainClass,(app,conf) -> {
      process(app,srcdir,bindir);
    }
);
  }
 catch (  Throwable ex) {
    throw new MojoFailureException("String_Node_Str" + mainClass,ex);
  }
}
Program: 54789
Project: 54789
Buggy source:
private void handleErr(final RequestImpl req,final ResponseImpl rsp,final Throwable ex){
  try {
    log.debug("String_Node_Str",req.method(),req.path(),ex);
    Status status=sc.apply(ex);
    if (status == Status.REQUESTED_RANGE_NOT_SATISFIABLE) {
      String range=rsp.header("String_Node_Str").toOptional().map(it -> "String_Node_Str" + it).orElse("String_Node_Str");
      rsp.reset();
      rsp.header("String_Node_Str",range);
    }
 else {
      rsp.reset();
    }
    rsp.header("String_Node_Str",NO_CACHE);
    rsp.status(status);
    Err err=ex instanceof Err ? (Err)ex : new Err(status,ex);
    Iterator<Handler> it=this.err.iterator();
    while (!rsp.committed() && it.hasNext()) {
      Err.Handler next=it.next();
      log.debug("String_Node_Str",next);
      next.handle(req,rsp,err);
    }
  }
 catch (  Throwable errex) {
    log.error("String_Node_Str",req.method(),req.path(),Throwables.getStackTraceAsString(errex),ex);
  }
}

Fixed version (ground truth):
private void handleErr(final RequestImpl req,final ResponseImpl rsp,final Throwable ex){
  try {
    log.debug("String_Node_Str",req.method(),req.path(),ex);
    Status status=sc.apply(ex);
    if (status == Status.REQUESTED_RANGE_NOT_SATISFIABLE) {
      String range=rsp.header("String_Node_Str").toOptional().map(it -> "String_Node_Str" + it).orElse("String_Node_Str");
      rsp.reset();
      rsp.header("String_Node_Str",range);
    }
 else {
      rsp.reset();
    }
    rsp.header("String_Node_Str",NO_CACHE);
    rsp.status(status);
    Err err=ex instanceof Err ? (Err)ex : new Err(status,ex);
    Iterator<Handler> it=this.err.iterator();
    while (!rsp.committed() && it.hasNext()) {
      Err.Handler next=it.next();
      log.debug("String_Node_Str",next);
      next.handle(req,rsp,err);
    }
  }
 catch (  Throwable errex) {
    log.error("String_Node_Str",req.method(),req.path(),req.route().print(6),Throwables.getStackTraceAsString(errex),ex);
  }
}
Program: 54790
Project: 54790
Buggy source:
@Inject public ServerExecutorProvider(final Server server){
  executor=requireNonNull(server,"String_Node_Str").executor().orElse(MoreExecutors.directExecutor());
}

Fixed version (ground truth):
@Inject public ServerExecutorProvider(final ServerHolder serverHolder){
  requireNonNull(serverHolder,"String_Node_Str");
  executor=(serverHolder.server != null) ? serverHolder.server.executor().orElse(MoreExecutors.directExecutor()) : MoreExecutors.directExecutor();
}
Program: 54791
Project: 54791
Buggy source:
private String sha1(final File dir) throws IOException {
  try (Stream<Path> stream=Files.walk(dir.toPath())){
    Hasher sha1=Hashing.sha1().newHasher();
    stream.filter(p -> !Files.isDirectory(p)).forEach(p -> Try.run(() -> sha1.putBytes(Files.readAllBytes(p))));
    return BaseEncoding.base16().encode(sha1.hash().asBytes()).toLowerCase();
  }
 }

Fixed version (ground truth):
private String sha1(final File dir,final File sprite,final File css) throws IOException {
  try (Stream<Path> stream=Files.walk(dir.toPath())){
    Hasher sha1=Hashing.sha1().newHasher();
    stream.filter(p -> !Files.isDirectory(p)).forEach(p -> Try.run(() -> sha1.putBytes(Files.readAllBytes(p))));
    if (sprite.exists()) {
      sha1.putBytes(Files.readAllBytes(sprite.toPath()));
    }
    if (css.exists()) {
      sha1.putBytes(Files.readAllBytes(css.toPath()));
    }
    return BaseEncoding.base16().encode(sha1.hash().asBytes()).toLowerCase();
  }
 }
Program: 54792
Project: 54792
Buggy source:
public String spritePath(){
  String spritePath=get("String_Node_Str");
  if (spritePath == null) {
    throw new IllegalArgumentException("String_Node_Str");
  }
  if (spritePath.endsWith("String_Node_Str")) {
    return spritePath;
  }
 else {
    return spritePath + "String_Node_Str" + prefix("String_Node_Str")+ prefix("String_Node_Str")+ "String_Node_Str";
  }
}

Fixed version (ground truth):
public String spritePath(){
  return nameFor("String_Node_Str","String_Node_Str");
}
Program: 54793
Project: 54793
Buggy source:
public String cssPath(){
  String cssPath=get("String_Node_Str");
  if (cssPath == null) {
    return spritePath().replace("String_Node_Str","String_Node_Str");
  }
  return cssPath;
}

Fixed version (ground truth):
public String cssPath(){
  try {
    return nameFor("String_Node_Str","String_Node_Str");
  }
 catch (  IllegalArgumentException x) {
    return spritePath().replace("String_Node_Str","String_Node_Str");
  }
}
Program: 54795
Project: 54795
Buggy source:
private void start(final String[] args,final Consumer<List<Route.Definition>> routes) throws Throwable {
  long start=System.currentTimeMillis();
  started.set(true);
  this.injector=bootstrap(args(args),routes);
  Runtime.getRuntime().addShutdownHook(new Thread(() -> stop()));
  Config conf=injector.getInstance(Config.class);
  Logger log=logger(this);
  if (log.isDebugEnabled()) {
    String desc=configTree(conf.origin().description());
    log.debug("String_Node_Str",desc);
  }
  for (  CheckedConsumer<Registry> onStart : this.onStart) {
    onStart.accept(this);
  }
  Set<Route.Definition> routeDefs=injector.getInstance(Route.KEY);
  Set<WebSocket.Definition> sockets=injector.getInstance(WebSocket.KEY);
  if (mapper != null) {
    routeDefs.forEach(it -> it.map(mapper));
  }
  Server server=injector.getInstance(Server.class);
  String serverName=server.getClass().getSimpleName().replace("String_Node_Str","String_Node_Str").toLowerCase();
  server.start();
  long end=System.currentTimeMillis();
  log.info("String_Node_Str",conf.getString("String_Node_Str"),serverName,end - start,new AppPrinter(routeDefs,sockets,conf));
  boolean join=conf.hasPath("String_Node_Str") ? conf.getBoolean("String_Node_Str") : true;
  if (join) {
    server.join();
  }
}

Fixed version (ground truth):
private void start(final String[] args,final Consumer<List<Route.Definition>> routes) throws Throwable {
  long start=System.currentTimeMillis();
  started.set(true);
  this.injector=bootstrap(args(args),routes);
  Runtime.getRuntime().addShutdownHook(new Thread(() -> stop()));
  Config conf=injector.getInstance(Config.class);
  Logger log=logger(this);
  for (  CheckedConsumer<Registry> onStart : this.onStart) {
    onStart.accept(this);
  }
  Set<Route.Definition> routeDefs=injector.getInstance(Route.KEY);
  Set<WebSocket.Definition> sockets=injector.getInstance(WebSocket.KEY);
  if (mapper != null) {
    routeDefs.forEach(it -> it.map(mapper));
  }
  AppPrinter printer=new AppPrinter(routeDefs,sockets,conf);
  printer.printConf(log,conf);
  Server server=injector.getInstance(Server.class);
  String serverName=server.getClass().getSimpleName().replace("String_Node_Str","String_Node_Str").toLowerCase();
  server.start();
  long end=System.currentTimeMillis();
  log.info("String_Node_Str",conf.getString("String_Node_Str"),serverName,end - start,printer);
  boolean join=conf.hasPath("String_Node_Str") ? conf.getBoolean("String_Node_Str") : true;
  if (join) {
    server.join();
  }
}