test_class.declarator: validator
test_class.modifier: private
test_class.original_string: private OakIndexDefinitionValidator validator;
test_class.type: OakIndexDefinitionValidator
test_class.var_name: validator
test_class.declarator: rootPackagePath = Paths.get("rootpackage")
test_class.modifier: private
test_class.original_string: private Path rootPackagePath = Paths.get("rootpackage");
test_class.type: Path
test_class.var_name: rootPackagePath
test_class.file: vault-validation/src/test/java/org/apache/jackrabbit/vault/validation/spi/impl/OakIndexDefinitionValidatorTest.java
test_class.identifier: OakIndexDefinitionValidatorTest
test_case.body: @Test
      public void test_index_at_deep_path() throws Exception {
          Map<String, DocViewProperty> props = new HashMap<>();
          props.put("includedPaths", new DocViewProperty("includedPaths", new String[] { "/home]" }, true, PropertyType.STRING));
          DocViewNode node = new DocViewNode("indexDef", "indexDef", null, props, null, "oak:QueryIndexDefinition");
  
          Collection<ValidationMessage> messages = validator.validate(node, "/apps/project/oak:index/indexDef",
                  Paths.get("apps", "project", "_oak_index", "content.xml"), false);
          ValidationExecutorTest.assertViolation(messages,
                  new ValidationMessage(ValidationMessageSeverity.ERROR,
                          String.format(OakIndexDefinitionValidator.MESSAGE_INDEX_AT_NODE, rootPackagePath, "/apps/project/oak:index/indexDef")));
  
      }
test_case.class_method_signature: OakIndexDefinitionValidatorTest.test_index_at_deep_path()
test_case.full_signature: @Test public void test_index_at_deep_path()
test_case.identifier: test_index_at_deep_path
test_case.invocations: put validate get assertViolation format
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void test_index_at_deep_path()
focal_class.declarator: MESSAGE_POTENTIAL_INDEX_IN_FILTER = "Package '%s' contains filter rule overwriting a potential index definition below '%s' but the according property " + PackageProperties.NAME_ALLOW_INDEX_DEFINITIONS + " is not set to 'true'"
focal_class.modifier: static final
focal_class.original_string: static final String MESSAGE_POTENTIAL_INDEX_IN_FILTER = "Package '%s' contains filter rule overwriting a potential index definition below '%s' but the according property " + PackageProperties.NAME_ALLOW_INDEX_DEFINITIONS + " is not set to 'true'";
focal_class.type: String
focal_class.var_name: MESSAGE_POTENTIAL_INDEX_IN_FILTER
focal_class.declarator: MESSAGE_INDEX_AT_NODE = "Package '%s' contains index definition at node '%s but the according property " + PackageProperties.NAME_ALLOW_INDEX_DEFINITIONS + " is not set to 'true'"
focal_class.modifier: static final
focal_class.original_string: static final String MESSAGE_INDEX_AT_NODE = "Package '%s' contains index definition at node '%s but the according property " + PackageProperties.NAME_ALLOW_INDEX_DEFINITIONS + " is not set to 'true'";
focal_class.type: String
focal_class.var_name: MESSAGE_INDEX_AT_NODE
focal_class.declarator: packageRootPathOfNotAllowedIndexDefinition
focal_class.modifier: private final
focal_class.original_string: private final Path packageRootPathOfNotAllowedIndexDefinition;
focal_class.type: Path
focal_class.var_name: packageRootPathOfNotAllowedIndexDefinition
focal_class.declarator: defaultMessageSeverity
focal_class.modifier: private final
focal_class.original_string: private final ValidationMessageSeverity defaultMessageSeverity;
focal_class.type: ValidationMessageSeverity
focal_class.var_name: defaultMessageSeverity
focal_class.file: vault-validation/src/main/java/org/apache/jackrabbit/vault/validation/spi/impl/OakIndexDefinitionValidator.java
focal_class.identifier: OakIndexDefinitionValidator
focal_class.interfaces: implements FilterValidator, DocumentViewXmlValidator
focal_class.class_method_signature: OakIndexDefinitionValidator.OakIndexDefinitionValidator(Path path, ValidationMessageSeverity defaultMessageSeverity)
focal_class.full_signature: public  OakIndexDefinitionValidator(Path path, ValidationMessageSeverity defaultMessageSeverity)
focal_class.identifier: OakIndexDefinitionValidator
focal_class.modifiers: public
focal_class.parameters: (Path path, ValidationMessageSeverity defaultMessageSeverity)
focal_class.signature:  OakIndexDefinitionValidator(Path path, ValidationMessageSeverity defaultMessageSeverity)
focal_class.class_method_signature: OakIndexDefinitionValidator.validate(@NotNull WorkspaceFilter filter)
focal_class.full_signature: @Override public @Nullable Collection<ValidationMessage> validate(@NotNull WorkspaceFilter filter)
focal_class.identifier: validate
focal_class.modifiers: @Override public @Nullable
focal_class.parameters: (@NotNull WorkspaceFilter filter)
focal_class.return: Collection<ValidationMessage>
focal_class.signature: Collection<ValidationMessage> validate(@NotNull WorkspaceFilter filter)
focal_class.class_method_signature: OakIndexDefinitionValidator.collectIndexPaths(List<PathFilterSet> pathFilters)
focal_class.full_signature: public Collection<ValidationMessage> collectIndexPaths(List<PathFilterSet> pathFilters)
focal_class.identifier: collectIndexPaths
focal_class.modifiers: public
focal_class.parameters: (List<PathFilterSet> pathFilters)
focal_class.return: Collection<ValidationMessage>
focal_class.signature: Collection<ValidationMessage> collectIndexPaths(List<PathFilterSet> pathFilters)
focal_class.class_method_signature: OakIndexDefinitionValidator.validate(@NotNull DocViewNode node, @NotNull String nodePath, @NotNull Path filePath, boolean isRoot)
focal_class.full_signature: @Override public @Nullable Collection<ValidationMessage> validate(@NotNull DocViewNode node, @NotNull String nodePath, @NotNull Path filePath, boolean isRoot)
focal_class.identifier: validate
focal_class.modifiers: @Override public @Nullable
focal_class.parameters: (@NotNull DocViewNode node, @NotNull String nodePath, @NotNull Path filePath, boolean isRoot)
focal_class.return: Collection<ValidationMessage>
focal_class.signature: Collection<ValidationMessage> validate(@NotNull DocViewNode node, @NotNull String nodePath, @NotNull Path filePath, boolean isRoot)
focal_class.class_method_signature: OakIndexDefinitionValidator.done()
focal_class.full_signature: @Override public @Nullable Collection<ValidationMessage> done()
focal_class.identifier: done
focal_class.modifiers: @Override public @Nullable
focal_class.parameters: ()
focal_class.return: Collection<ValidationMessage>
focal_class.signature: Collection<ValidationMessage> done()
focal_method.body: @Override
      public @Nullable Collection<ValidationMessage> validate(@NotNull WorkspaceFilter filter) {
          Collection<ValidationMessage> violations = new LinkedList<>();
          violations.addAll(collectIndexPaths(filter.getFilterSets()));
          return violations;
      }
focal_method.class_method_signature: OakIndexDefinitionValidator.validate(@NotNull WorkspaceFilter filter)
focal_method.full_signature: @Override public @Nullable Collection<ValidationMessage> validate(@NotNull WorkspaceFilter filter)
focal_method.identifier: validate
focal_method.invocations: addAll collectIndexPaths getFilterSets
focal_method.modifiers: @Override public @Nullable
focal_method.parameters: (@NotNull WorkspaceFilter filter)
focal_method.return: Collection<ValidationMessage>
focal_method.signature: Collection<ValidationMessage> validate(@NotNull WorkspaceFilter filter)