container/src/main/java/com/streamsets/datacollector/creation/StageLibraryDelegateCreator.java
private StageLibraryDelegate createInstance(StageLibraryDelegateDefinitition def) {
    StageLibraryDelegate instance  = null;
    ClassLoader classLoader = Thread.currentThread().getContextClassLoader();

    try {
      Thread.currentThread().setContextClassLoader(def.getClassLoader());
      instance = def.getKlass().newInstance();
    } catch (InstantiationException | IllegalAccessException ex) {
      LOG.error("Can't create instance of delegator: " + ex.toString(), ex);
    } finally {
      Thread.currentThread().setContextClassLoader(classLoader);
    }

    return instance;
  }
private StageLibraryDelegate createInstance(StageLibraryDelegateDefinitition def) {
    StageLibraryDelegate instance  = null;
    ClassLoader classLoader = Thread.currentThread().getContextClassLoader();

    try {
      Thread.currentThread().setContextClassLoader(def.getClassLoader());
      instance = def.getKlass().newInstance();
    } catch (InstantiationException | IllegalAccessException ex) {
      LOG.error("Can't create instance of delegator: " + ex.toString(), ex);
    } finally {
      Thread.currentThread().setContextClassLoader(classLoader);
    }

    return instance;
  }
private StageLibraryDelegate createInstance ( StageLibraryDelegateDefinitition def ) { StageLibraryDelegate instance = null ; ClassLoader classLoader = Thread . currentThread ( ) . getContextClassLoader ( ) ; try { Thread . currentThread ( ) . setContextClassLoader ( def . getClassLoader ( ) ) ; instance = def . getKlass ( ) . newInstance ( ) ; } catch ( InstantiationException | IllegalAccessException ex ) { LOG . error ( "Can't create instance of delegator: " + ex . toString ( ) , ex ) ; } finally { Thread . currentThread ( ) . setContextClassLoader ( classLoader ) ; } return instance ; }
Create actual instance of delegator.

@param def Delegator definition
@return New instance or null on any issue
Create actual instance of delegator .