test_class.file: core/src/test/java/net/adamcin/oakpal/core/checks/AcHandlingTest.java
test_class.identifier: AcHandlingTest
test_class.superclass: extends ProgressCheckTestBase
test_case.body: @Test
      public void testEmptyConfig() throws Exception {
          AcHandling.Check check = (AcHandling.Check) new AcHandling().newInstance(obj().get());
          assertNotNull("check should not be null", check);
          Assert.assertEquals("default levelSet should be " + AcHandling.DEFAULT_LEVEL_SET,
                  check.levelSet, AcHandling.DEFAULT_LEVEL_SET);
          assertTrue("default allowedModes should be empty: " + check.allowedModes,
                  check.allowedModes.isEmpty());
      }
test_case.class_method_signature: AcHandlingTest.testEmptyConfig()
test_case.full_signature: @Test public void testEmptyConfig()
test_case.identifier: testEmptyConfig
test_case.invocations: newInstance get obj assertNotNull assertEquals assertTrue isEmpty
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void testEmptyConfig()
focal_class.declarator: KEYS = new JsonKeys() {
          @Override
          public String allowedModes() {
              return "allowedModes";
          }
  
          @Override
          public String levelSet() {
              return "levelSet";
          }
      }
focal_class.modifier: private static final
focal_class.original_string: private static final JsonKeys KEYS = new JsonKeys() {
          @Override
          public String allowedModes() {
              return "allowedModes";
          }
  
          @Override
          public String levelSet() {
              return "levelSet";
          }
      };
focal_class.type: JsonKeys
focal_class.var_name: KEYS
focal_class.declarator: CONFIG_ALLOWED_MODES = keys().allowedModes()
focal_class.modifier: @Deprecated
      public static final
focal_class.original_string: @Deprecated
      public static final String CONFIG_ALLOWED_MODES = keys().allowedModes();
focal_class.type: String
focal_class.var_name: CONFIG_ALLOWED_MODES
focal_class.declarator: CONFIG_LEVEL_SET = keys().levelSet()
focal_class.modifier: @Deprecated
      public static final
focal_class.original_string: @Deprecated
      public static final String CONFIG_LEVEL_SET = keys().levelSet();
focal_class.type: String
focal_class.var_name: CONFIG_LEVEL_SET
focal_class.declarator: DEFAULT_LEVEL_SET = ACHandlingLevelSet.NO_UNSAFE
focal_class.modifier: static final
focal_class.original_string: static final ACHandlingLevelSet DEFAULT_LEVEL_SET = ACHandlingLevelSet.NO_UNSAFE;
focal_class.type: ACHandlingLevelSet
focal_class.var_name: DEFAULT_LEVEL_SET
focal_class.file: core/src/main/java/net/adamcin/oakpal/core/checks/AcHandling.java
focal_class.identifier: AcHandling
focal_class.interfaces: implements ProgressCheckFactory
focal_class.class_method_signature: AcHandling.keys()
focal_class.full_signature: public static JsonKeys keys()
focal_class.identifier: keys
focal_class.modifiers: public static
focal_class.parameters: ()
focal_class.return: JsonKeys
focal_class.signature: JsonKeys keys()
focal_class.class_method_signature: AcHandling.newInstance(final JsonObject config)
focal_class.full_signature: @Override public ProgressCheck newInstance(final JsonObject config)
focal_class.identifier: newInstance
focal_class.modifiers: @Override public
focal_class.parameters: (final JsonObject config)
focal_class.return: ProgressCheck
focal_class.signature: ProgressCheck newInstance(final JsonObject config)
focal_method.body: @Override
      public ProgressCheck newInstance(final JsonObject config) {
          if (hasNonNull(config, keys().allowedModes())) {
              List<AccessControlHandling> allowedModes = mapArrayOfStrings(arrayOrEmpty(config, keys().allowedModes()),
                      compose1(String::toUpperCase, AccessControlHandling::valueOf), true);
              return new Check(ACHandlingLevelSet.EXPLICIT, allowedModes);
          } else if (hasNonNull(config, keys().levelSet())) {
              ACHandlingLevelSet levelSet = ACHandlingLevelSet.valueOf(config.getString(keys().levelSet()).toUpperCase());
              return new Check(levelSet, Collections.emptyList());
          } else {
              return new Check(DEFAULT_LEVEL_SET, Collections.emptyList());
          }
      }
focal_method.class_method_signature: AcHandling.newInstance(final JsonObject config)
focal_method.full_signature: @Override public ProgressCheck newInstance(final JsonObject config)
focal_method.identifier: newInstance
focal_method.invocations: hasNonNull allowedModes keys mapArrayOfStrings arrayOrEmpty allowedModes keys compose1 hasNonNull levelSet keys valueOf toUpperCase getString levelSet keys emptyList emptyList
focal_method.modifiers: @Override public
focal_method.parameters: (final JsonObject config)
focal_method.return: ProgressCheck
focal_method.signature: ProgressCheck newInstance(final JsonObject config)