test_class.declarator: testOutDir = new File("target/test-out/WebsterNodetypesTargetTest")
test_class.modifier: final
test_class.original_string: final File testOutDir = new File("target/test-out/WebsterNodetypesTargetTest");
test_class.type: File
test_class.var_name: testOutDir
test_class.file: webster/src/test/java/net/adamcin/oakpal/webster/targets/WebsterNodetypesTargetTest.java
test_class.identifier: WebsterNodetypesTargetTest
test_case.body: @Test
      public void testFromJson() throws Exception {
          final File targetFile = new File(testOutDir, "testFromJson.cnd");
          final File writeBack = new File(testOutDir, "testFromJson_writeback");
          if (targetFile.exists()) {
              targetFile.delete();
          }
          if (writeBack.exists()) {
              FileUtils.deleteDirectory(writeBack);
          }
          OakMachine.Builder builder = TestUtil.fromPlan(obj().get());
          WebsterNodetypesTarget target = WebsterNodetypesTarget.fromJson(targetFile, obj().get());
          target.setArchive(new FileArchive(new File("src/test/resources/filevault/noReferences")), writeBack);
          builder.build().initAndInspect(target::perform);
      }
test_case.class_method_signature: WebsterNodetypesTargetTest.testFromJson()
test_case.full_signature: @Test public void testFromJson()
test_case.identifier: testFromJson
test_case.invocations: exists delete exists deleteDirectory fromPlan get obj fromJson get obj setArchive initAndInspect build
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void testFromJson()
focal_class.declarator: LOGGER = LoggerFactory.getLogger(WebsterNodetypesTarget.class)
focal_class.modifier: private static final
focal_class.original_string: private static final Logger LOGGER = LoggerFactory.getLogger(WebsterNodetypesTarget.class);
focal_class.type: Logger
focal_class.var_name: LOGGER
focal_class.declarator: KEY_SCOPE_EXPORT_NAMES = "scopeExportNames"
focal_class.modifier: static final
focal_class.original_string: static final String KEY_SCOPE_EXPORT_NAMES = "scopeExportNames";
focal_class.type: String
focal_class.var_name: KEY_SCOPE_EXPORT_NAMES
focal_class.declarator: KEY_SCOPE_REPLACE_NAMES = "scopeReplaceNames"
focal_class.modifier: static final
focal_class.original_string: static final String KEY_SCOPE_REPLACE_NAMES = "scopeReplaceNames";
focal_class.type: String
focal_class.var_name: KEY_SCOPE_REPLACE_NAMES
focal_class.declarator: KEY_INCLUDE_BUILTINS = "includeBuiltins"
focal_class.modifier: static final
focal_class.original_string: static final String KEY_INCLUDE_BUILTINS = "includeBuiltins";
focal_class.type: String
focal_class.var_name: KEY_INCLUDE_BUILTINS
focal_class.declarator: targetFile
focal_class.modifier: private final
focal_class.original_string: private final File targetFile;
focal_class.type: File
focal_class.var_name: targetFile
focal_class.declarator: exporter
focal_class.modifier: private final
focal_class.original_string: private final CndExporter exporter;
focal_class.type: CndExporter
focal_class.var_name: exporter
focal_class.declarator: archive
focal_class.modifier: private
focal_class.original_string: private Archive archive;
focal_class.type: Archive
focal_class.var_name: archive
focal_class.declarator: writeBackDir
focal_class.modifier: private
focal_class.original_string: private File writeBackDir;
focal_class.type: File
focal_class.var_name: writeBackDir
focal_class.file: webster/src/main/java/net/adamcin/oakpal/webster/targets/WebsterNodetypesTarget.java
focal_class.identifier: WebsterNodetypesTarget
focal_class.interfaces: implements WebsterTarget, ArchiveAware
focal_class.class_method_signature: WebsterNodetypesTarget.WebsterNodetypesTarget(final File targetFile, final CndExporter exporter)
focal_class.full_signature: private  WebsterNodetypesTarget(final File targetFile, final CndExporter exporter)
focal_class.identifier: WebsterNodetypesTarget
focal_class.modifiers: private
focal_class.parameters: (final File targetFile, final CndExporter exporter)
focal_class.signature:  WebsterNodetypesTarget(final File targetFile, final CndExporter exporter)
focal_class.class_method_signature: WebsterNodetypesTarget.setArchive(final Archive archive, final File writeBackDir)
focal_class.full_signature: @Override public void setArchive(final Archive archive, final File writeBackDir)
focal_class.identifier: setArchive
focal_class.modifiers: @Override public
focal_class.parameters: (final Archive archive, final File writeBackDir)
focal_class.return: void
focal_class.signature: void setArchive(final Archive archive, final File writeBackDir)
focal_class.class_method_signature: WebsterNodetypesTarget.perform(final Session session)
focal_class.full_signature: @Override public void perform(final Session session)
focal_class.identifier: perform
focal_class.modifiers: @Override public
focal_class.parameters: (final Session session)
focal_class.return: void
focal_class.signature: void perform(final Session session)
focal_class.class_method_signature: WebsterNodetypesTarget.fromJson(final File target, final JsonObject config)
focal_class.full_signature: static WebsterNodetypesTarget fromJson(final File target, final JsonObject config)
focal_class.identifier: fromJson
focal_class.modifiers: static
focal_class.parameters: (final File target, final JsonObject config)
focal_class.return: WebsterNodetypesTarget
focal_class.signature: WebsterNodetypesTarget fromJson(final File target, final JsonObject config)
focal_method.body: static WebsterNodetypesTarget fromJson(final File target, final JsonObject config) {
          LOGGER.debug("[fromJson] fromJson: {}", config.toString());
  
          CndExporter.Builder builder = new CndExporter.Builder();
  
          if (config.containsKey(KEY_SCOPE_EXPORT_NAMES)) {
              List<Rule> scopeExportNames = Rules.fromJsonArray(config.getJsonArray(KEY_SCOPE_EXPORT_NAMES));
              builder.withScopeExportNames(scopeExportNames);
          }
  
          if (config.containsKey(KEY_SCOPE_REPLACE_NAMES)) {
              List<Rule> scopeReplaceNames = Rules.fromJsonArray(config.getJsonArray(KEY_SCOPE_REPLACE_NAMES));
              builder.withScopeReplaceNames(scopeReplaceNames);
          }
  
          if (config.containsKey(KEY_INCLUDE_BUILTINS)) {
              builder.withIncludeBuiltins(config.getBoolean(KEY_INCLUDE_BUILTINS, false));
          }
  
          return new WebsterNodetypesTarget(target, builder.build());
  
      }
focal_method.class_method_signature: WebsterNodetypesTarget.fromJson(final File target, final JsonObject config)
focal_method.full_signature: static WebsterNodetypesTarget fromJson(final File target, final JsonObject config)
focal_method.identifier: fromJson
focal_method.invocations: debug toString containsKey fromJsonArray getJsonArray withScopeExportNames containsKey fromJsonArray getJsonArray withScopeReplaceNames containsKey withIncludeBuiltins getBoolean build
focal_method.modifiers: static
focal_method.parameters: (final File target, final JsonObject config)
focal_method.return: WebsterNodetypesTarget
focal_method.signature: WebsterNodetypesTarget fromJson(final File target, final JsonObject config)