test_class.declarator: USER_ID = "userId"
test_class.modifier: private static final
test_class.original_string: private static final String USER_ID = "userId";
test_class.type: String
test_class.var_name: USER_ID
test_class.declarator: credentials = new AbstractCredentials(USER_ID) {
      }
test_class.modifier: private
test_class.original_string: private AbstractCredentials credentials = new AbstractCredentials(USER_ID) {
      };
test_class.type: AbstractCredentials
test_class.var_name: credentials
test_class.file: oak-security-spi/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/credentials/AbstractCredentialsTest.java
test_class.identifier: AbstractCredentialsTest
test_case.body: @Test(expected = IllegalArgumentException.class)
      public void testSetNullAttributeName() {
          credentials.setAttribute(null, "value");
      }
test_case.class_method_signature: AbstractCredentialsTest.testSetNullAttributeName()
test_case.full_signature: @Test(expected = IllegalArgumentException.class) public void testSetNullAttributeName()
test_case.identifier: testSetNullAttributeName
test_case.invocations: setAttribute
test_case.modifiers: @Test(expected = IllegalArgumentException.class) public
test_case.parameters: ()
test_case.return: void
test_case.signature: void testSetNullAttributeName()
focal_class.declarator: attributes = new HashMap<>()
focal_class.modifier: protected final
focal_class.original_string: protected final Map<String,Object> attributes = new HashMap<>();
focal_class.type: Map<String,Object>
focal_class.var_name: attributes
focal_class.declarator: userId
focal_class.modifier: protected final
focal_class.original_string: protected final String userId;
focal_class.type: String
focal_class.var_name: userId
focal_class.file: oak-security-spi/src/main/java/org/apache/jackrabbit/oak/spi/security/authentication/credentials/AbstractCredentials.java
focal_class.identifier: AbstractCredentials
focal_class.interfaces: implements Credentials
focal_class.class_method_signature: AbstractCredentials.AbstractCredentials(@NotNull String userId)
focal_class.full_signature: public  AbstractCredentials(@NotNull String userId)
focal_class.identifier: AbstractCredentials
focal_class.modifiers: public
focal_class.parameters: (@NotNull String userId)
focal_class.signature:  AbstractCredentials(@NotNull String userId)
focal_class.class_method_signature: AbstractCredentials.getUserId()
focal_class.full_signature: @NotNull public String getUserId()
focal_class.identifier: getUserId
focal_class.modifiers: @NotNull public
focal_class.parameters: ()
focal_class.return: String
focal_class.signature: String getUserId()
focal_class.class_method_signature: AbstractCredentials.setAttribute(@NotNull String name, @Nullable Object value)
focal_class.full_signature: public void setAttribute(@NotNull String name, @Nullable Object value)
focal_class.identifier: setAttribute
focal_class.modifiers: public
focal_class.parameters: (@NotNull String name, @Nullable Object value)
focal_class.return: void
focal_class.signature: void setAttribute(@NotNull String name, @Nullable Object value)
focal_class.class_method_signature: AbstractCredentials.getAttribute(@NotNull String name)
focal_class.full_signature: @Nullable public Object getAttribute(@NotNull String name)
focal_class.identifier: getAttribute
focal_class.modifiers: @Nullable public
focal_class.parameters: (@NotNull String name)
focal_class.return: Object
focal_class.signature: Object getAttribute(@NotNull String name)
focal_class.class_method_signature: AbstractCredentials.removeAttribute(@NotNull String name)
focal_class.full_signature: public void removeAttribute(@NotNull String name)
focal_class.identifier: removeAttribute
focal_class.modifiers: public
focal_class.parameters: (@NotNull String name)
focal_class.return: void
focal_class.signature: void removeAttribute(@NotNull String name)
focal_class.class_method_signature: AbstractCredentials.getAttributes()
focal_class.full_signature: @NotNull public Map<String,Object> getAttributes()
focal_class.identifier: getAttributes
focal_class.modifiers: @NotNull public
focal_class.parameters: ()
focal_class.return: Map<String,Object>
focal_class.signature: Map<String,Object> getAttributes()
focal_class.class_method_signature: AbstractCredentials.setAttributes(@NotNull Map<String,Object> attributes)
focal_class.full_signature: public void setAttributes(@NotNull Map<String,Object> attributes)
focal_class.identifier: setAttributes
focal_class.modifiers: public
focal_class.parameters: (@NotNull Map<String,Object> attributes)
focal_class.return: void
focal_class.signature: void setAttributes(@NotNull Map<String,Object> attributes)
focal_method.body: public void setAttribute(@NotNull String name, @Nullable Object value) {
          // name cannot be null
          if (name == null) {
              throw new IllegalArgumentException("name cannot be null");
          }
  
          // null value is the same as removeAttribute()
          if (value == null) {
              removeAttribute(name);
              return;
          }
  
          synchronized (attributes) {
              attributes.put(name, value);
          }
      }
focal_method.class_method_signature: AbstractCredentials.setAttribute(@NotNull String name, @Nullable Object value)
focal_method.full_signature: public void setAttribute(@NotNull String name, @Nullable Object value)
focal_method.identifier: setAttribute
focal_method.invocations: removeAttribute put
focal_method.modifiers: public
focal_method.parameters: (@NotNull String name, @Nullable Object value)
focal_method.return: void
focal_method.signature: void setAttribute(@NotNull String name, @Nullable Object value)