All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.undefinedlabs.scope.ScopeTracerCreator Maven / Gradle / Ivy

package com.undefinedlabs.scope;

import com.undefinedlabs.scope.settings.ScopeSettings;
import io.opentracing.Tracer;
import java.util.Iterator;
import java.util.ServiceLoader;

public enum ScopeTracerCreator implements TracerCreator {
  INSTANCE;

  @Override
  public Tracer create(final ScopeSettings settings) {
    final ServiceLoader slFactories =
        ServiceLoader.load(ScopeTracerFactory.class);

    final Iterator slFactoriesIterator = slFactories.iterator();
    if (slFactoriesIterator.hasNext()) {
      final ScopeTracerFactory factory = slFactoriesIterator.next();
      return factory.create(settings);
    }

    return null;
  }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy