test_class.file: core/src/test/java/net/adamcin/oakpal/core/repoinit/DefaultRepoInitFactoryTest.java
test_class.identifier: DefaultRepoInitFactoryTest
test_case.body: @Test
      public void testNewParser() {
          assertNull("null for null",
                  new DefaultRepoInitFactory(null).newParser());
          assertNull("null for wrong constructor",
                  new DefaultRepoInitFactory(ParserTypeWrongConstructor.class)
                          .newParser());
          assertNotNull("expect non null", new DefaultRepoInitFactory(ParserType.class).newParser());
      }
test_case.class_method_signature: DefaultRepoInitFactoryTest.testNewParser()
test_case.full_signature: @Test public void testNewParser()
test_case.identifier: testNewParser
test_case.invocations: assertNull newParser assertNull newParser assertNotNull newParser
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void testNewParser()
focal_class.declarator: LOGGER = LoggerFactory.getLogger(DefaultRepoInitFactory.class)
focal_class.modifier: private static final
focal_class.original_string: private static final Logger LOGGER = LoggerFactory.getLogger(DefaultRepoInitFactory.class);
focal_class.type: Logger
focal_class.var_name: LOGGER
focal_class.declarator: REPO_INIT_PARSER_IMPL_CLASS =
              "org.apache.sling.repoinit.parser.impl.RepoInitParserService"
focal_class.modifier: private static final
focal_class.original_string: private static final String REPO_INIT_PARSER_IMPL_CLASS =
              "org.apache.sling.repoinit.parser.impl.RepoInitParserService";
focal_class.type: String
focal_class.var_name: REPO_INIT_PARSER_IMPL_CLASS
focal_class.declarator: parserClazz
focal_class.original_string: Class<? extends RepoInitParser> parserClazz;
focal_class.type: Class<? extends RepoInitParser>
focal_class.var_name: parserClazz
focal_class.declarator: NOOP_PROCESSOR = (admin, reader) -> {
          throw new RepoInitParsingException("repoinit processor is not available", null);
      }
focal_class.modifier: static final
focal_class.original_string: static final OakMachine.RepoInitProcessor NOOP_PROCESSOR = (admin, reader) -> {
          throw new RepoInitParsingException("repoinit processor is not available", null);
      };
focal_class.type: OakMachine.RepoInitProcessor
focal_class.var_name: NOOP_PROCESSOR
focal_class.file: core/src/main/java/net/adamcin/oakpal/core/repoinit/DefaultRepoInitFactory.java
focal_class.identifier: DefaultRepoInitFactory
focal_class.class_method_signature: DefaultRepoInitFactory.DefaultRepoInitFactory(final @Nullable Class<? extends RepoInitParser> parserClazz)
focal_class.full_signature:   DefaultRepoInitFactory(final @Nullable Class<? extends RepoInitParser> parserClazz)
focal_class.identifier: DefaultRepoInitFactory
focal_class.parameters: (final @Nullable Class<? extends RepoInitParser> parserClazz)
focal_class.signature:  DefaultRepoInitFactory(final @Nullable Class<? extends RepoInitParser> parserClazz)
focal_class.class_method_signature: DefaultRepoInitFactory.newFactoryInstance(final @NotNull ClassLoader parserCl)
focal_class.full_signature: public static DefaultRepoInitFactory newFactoryInstance(final @NotNull ClassLoader parserCl)
focal_class.identifier: newFactoryInstance
focal_class.modifiers: public static
focal_class.parameters: (final @NotNull ClassLoader parserCl)
focal_class.return: DefaultRepoInitFactory
focal_class.signature: DefaultRepoInitFactory newFactoryInstance(final @NotNull ClassLoader parserCl)
focal_class.class_method_signature: DefaultRepoInitFactory.loadClazz(final @NotNull ClassLoader classLoader,
                                                        final @NotNull Class<T> iface,
                                                        final @NotNull String clazzName)
focal_class.full_signature: static Class<? extends T> loadClazz(final @NotNull ClassLoader classLoader,
                                                        final @NotNull Class<T> iface,
                                                        final @NotNull String clazzName)
focal_class.identifier: loadClazz
focal_class.modifiers: static
focal_class.parameters: (final @NotNull ClassLoader classLoader,
                                                        final @NotNull Class<T> iface,
                                                        final @NotNull String clazzName)
focal_class.return: Class<? extends T>
focal_class.signature: Class<? extends T> loadClazz(final @NotNull ClassLoader classLoader,
                                                        final @NotNull Class<T> iface,
                                                        final @NotNull String clazzName)
focal_class.class_method_signature: DefaultRepoInitFactory.newDefaultRepoInitProcessor(
              final @NotNull ClassLoader defaultClassLoader)
focal_class.full_signature: public static OakMachine.RepoInitProcessor newDefaultRepoInitProcessor(
              final @NotNull ClassLoader defaultClassLoader)
focal_class.identifier: newDefaultRepoInitProcessor
focal_class.modifiers: public static
focal_class.parameters: (
              final @NotNull ClassLoader defaultClassLoader)
focal_class.return: OakMachine.RepoInitProcessor
focal_class.signature: OakMachine.RepoInitProcessor newDefaultRepoInitProcessor(
              final @NotNull ClassLoader defaultClassLoader)
focal_class.class_method_signature: DefaultRepoInitFactory.newInstance()
focal_class.full_signature:  OakMachine.RepoInitProcessor newInstance()
focal_class.identifier: newInstance
focal_class.parameters: ()
focal_class.return: OakMachine.RepoInitProcessor
focal_class.signature: OakMachine.RepoInitProcessor newInstance()
focal_class.class_method_signature: DefaultRepoInitFactory.bindParser(final @NotNull RepoInitParser parser)
focal_class.full_signature: public static OakMachine.RepoInitProcessor bindParser(final @NotNull RepoInitParser parser)
focal_class.identifier: bindParser
focal_class.modifiers: public static
focal_class.parameters: (final @NotNull RepoInitParser parser)
focal_class.return: OakMachine.RepoInitProcessor
focal_class.signature: OakMachine.RepoInitProcessor bindParser(final @NotNull RepoInitParser parser)
focal_class.class_method_signature: DefaultRepoInitFactory.newParser()
focal_class.full_signature:  RepoInitParser newParser()
focal_class.identifier: newParser
focal_class.parameters: ()
focal_class.return: RepoInitParser
focal_class.signature: RepoInitParser newParser()
focal_class.class_method_signature: DefaultRepoInitFactory.newOpsProcessor()
focal_class.full_signature: static JcrRepoInitOpsProcessor newOpsProcessor()
focal_class.identifier: newOpsProcessor
focal_class.modifiers: static
focal_class.parameters: ()
focal_class.return: JcrRepoInitOpsProcessor
focal_class.signature: JcrRepoInitOpsProcessor newOpsProcessor()
focal_method.body: RepoInitParser newParser() {
          if (parserClazz != null) {
              try {
                  return parserClazz.getConstructor().newInstance();
              } catch (Exception e) {
                  LOGGER.warn("failed to construct instance of " + parserClazz.getName(), e);
              }
          }
          return null;
      }
focal_method.class_method_signature: DefaultRepoInitFactory.newParser()
focal_method.full_signature:  RepoInitParser newParser()
focal_method.identifier: newParser
focal_method.invocations: newInstance getConstructor warn getName
focal_method.parameters: ()
focal_method.return: RepoInitParser
focal_method.signature: RepoInitParser newParser()