code: public static ILoggingTool createLoggingTool(Class<?> sourceClass) {
          ILoggingTool tool = null;
          // first attempt the user set ILoggingTool
          if (userSetILoggerTool != null) {
              tool = instantiateWithCreateMethod(sourceClass, userSetILoggerTool);
          }
          if (tool == null) {
              tool = initializeLoggingTool(sourceClass, DEFAULT_LOGGING_TOOL_CLASS);
          }
          if (tool == null) {
              tool = initializeLoggingTool(sourceClass, STDOUT_LOGGING_TOOL_CLASS);
          }
          return tool;
      }
docs: Dynamically create a {@link ILoggingTool} for the given
  <code>sourceClass</code>.
  
  @param  sourceClass Class for which the {@link ILoggingTool} should be
  constructed.
  @return             An {@link ILoggingTool} implementation.