test_class.declarator: testGroup
test_class.modifier: private
test_class.original_string: private Group testGroup;
test_class.type: Group
test_class.var_name: testGroup
test_class.declarator: authorizables
test_class.modifier: private
test_class.original_string: private Authorizable[] authorizables;
test_class.type: Authorizable[]
test_class.var_name: authorizables
test_class.file: oak-core/src/test/java/org/apache/jackrabbit/oak/security/user/CacheValidatorProviderTest.java
test_class.identifier: CacheValidatorProviderTest
test_class.superclass: extends AbstractSecurityTest
test_case.body: @Test
      public void testModifyCache() throws Exception {
          List<PropertyState> props = new ArrayList<>();
          props.add(PropertyStates.createProperty(CacheConstants.REP_EXPIRATION, 25));
          props.add(PropertyStates.createProperty(CacheConstants.REP_GROUP_PRINCIPAL_NAMES, EveryonePrincipal.NAME));
          props.add(PropertyStates.createProperty(JCR_PRIMARYTYPE, JcrConstants.NT_UNSTRUCTURED, Type.NAME));
          props.add(PropertyStates.createProperty("residualProp", "anyvalue"));
  
          Tree cache = getCache(getTestUser());
          for (PropertyState prop : props) {
              try {
                  cache.setProperty(prop);
                  root.commit(CacheValidatorProvider.asCommitAttributes());
  
                  fail("Modifying rep:cache node below a user or group must fail.");
              } catch (CommitFailedException e) {
                  assertTrue(e.isConstraintViolation());
                  assertEquals(34, e.getCode());
              } finally {
                  root.refresh();
              }
          }
      }
test_case.class_method_signature: CacheValidatorProviderTest.testModifyCache()
test_case.full_signature: @Test public void testModifyCache()
test_case.identifier: testModifyCache
test_case.invocations: add createProperty add createProperty add createProperty add createProperty getCache getTestUser setProperty commit asCommitAttributes fail assertTrue isConstraintViolation assertEquals getCode refresh
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void testModifyCache()
focal_class.declarator: isSystem
focal_class.modifier: private final
focal_class.original_string: private final boolean isSystem;
focal_class.type: boolean
focal_class.var_name: isSystem
focal_class.declarator: treeProvider
focal_class.modifier: private final
focal_class.original_string: private final TreeProvider treeProvider;
focal_class.type: TreeProvider
focal_class.var_name: treeProvider
focal_class.file: oak-core/src/main/java/org/apache/jackrabbit/oak/security/user/CacheValidatorProvider.java
focal_class.identifier: CacheValidatorProvider
focal_class.interfaces: implements CacheConstants
focal_class.class_method_signature: CacheValidatorProvider.CacheValidatorProvider(@NotNull Set<Principal> principals, @NotNull TreeProvider treeProvider)
focal_class.full_signature:   CacheValidatorProvider(@NotNull Set<Principal> principals, @NotNull TreeProvider treeProvider)
focal_class.identifier: CacheValidatorProvider
focal_class.parameters: (@NotNull Set<Principal> principals, @NotNull TreeProvider treeProvider)
focal_class.signature:  CacheValidatorProvider(@NotNull Set<Principal> principals, @NotNull TreeProvider treeProvider)
focal_class.class_method_signature: CacheValidatorProvider.getRootValidator(NodeState before, NodeState after, CommitInfo info)
focal_class.full_signature: @Nullable @Override protected Validator getRootValidator(NodeState before, NodeState after, CommitInfo info)
focal_class.identifier: getRootValidator
focal_class.modifiers: @Nullable @Override protected
focal_class.parameters: (NodeState before, NodeState after, CommitInfo info)
focal_class.return: Validator
focal_class.signature: Validator getRootValidator(NodeState before, NodeState after, CommitInfo info)
focal_class.class_method_signature: CacheValidatorProvider.asCommitAttributes()
focal_class.full_signature: static Map<String, Object> asCommitAttributes()
focal_class.identifier: asCommitAttributes
focal_class.modifiers: static
focal_class.parameters: ()
focal_class.return: Map<String, Object>
focal_class.signature: Map<String, Object> asCommitAttributes()
focal_class.superclass: extends ValidatorProvider
focal_method.body: static Map<String, Object> asCommitAttributes() {
          return Collections.singletonMap(CommitMarker.KEY, CommitMarker.INSTANCE);
      }
focal_method.class_method_signature: CacheValidatorProvider.asCommitAttributes()
focal_method.full_signature: static Map<String, Object> asCommitAttributes()
focal_method.identifier: asCommitAttributes
focal_method.invocations: singletonMap
focal_method.modifiers: static
focal_method.parameters: ()
focal_method.return: Map<String, Object>
focal_method.signature: Map<String, Object> asCommitAttributes()