test_class.declarator: KNOWN_AUTH_SUBJECT_FOO = newAuthSubject("foo")
test_class.modifier: private static final
test_class.original_string: private static final AuthorizationSubject KNOWN_AUTH_SUBJECT_FOO = newAuthSubject("foo");
test_class.type: AuthorizationSubject
test_class.var_name: KNOWN_AUTH_SUBJECT_FOO
test_class.declarator: KNOWN_AUTH_SUBJECT_BAR = newAuthSubject("bar")
test_class.modifier: private static final
test_class.original_string: private static final AuthorizationSubject KNOWN_AUTH_SUBJECT_BAR = newAuthSubject("bar");
test_class.type: AuthorizationSubject
test_class.var_name: KNOWN_AUTH_SUBJECT_BAR
test_class.declarator: KNOWN_AUTH_SUBJECT_BAZ = newAuthSubject("baz")
test_class.modifier: private static final
test_class.original_string: private static final AuthorizationSubject KNOWN_AUTH_SUBJECT_BAZ = newAuthSubject("baz");
test_class.type: AuthorizationSubject
test_class.var_name: KNOWN_AUTH_SUBJECT_BAZ
test_class.declarator: underTest = null
test_class.modifier: private
test_class.original_string: private AccessControlList underTest = null;
test_class.type: AccessControlList
test_class.var_name: underTest
test_class.file: model/things/src/test/java/org/eclipse/ditto/model/things/ImmutableAccessControlListTest.java
test_class.identifier: ImmutableAccessControlListTest
test_case.body: @Test(expected = NullPointerException.class)
      public void tryToGetAclEntryForNullAuthoriztionSubject() {
          underTest.getEntryFor(null);
      }
test_case.class_method_signature: ImmutableAccessControlListTest.tryToGetAclEntryForNullAuthoriztionSubject()
test_case.full_signature: @Test(expected = NullPointerException.class) public void tryToGetAclEntryForNullAuthoriztionSubject()
test_case.identifier: tryToGetAclEntryForNullAuthoriztionSubject
test_case.invocations: getEntryFor
test_case.modifiers: @Test(expected = NullPointerException.class) public
test_case.parameters: ()
test_case.return: void
test_case.signature: void tryToGetAclEntryForNullAuthoriztionSubject()
focal_class.declarator: JSON_SCHEMA_VERSION =
              JsonFactory.newIntFieldDefinition(JsonSchemaVersion.getJsonKey(), FieldType.SPECIAL, FieldType.HIDDEN,
                      JsonSchemaVersion.V_1)
focal_class.modifier: private static final
focal_class.original_string: private static final JsonFieldDefinition<Integer> JSON_SCHEMA_VERSION =
              JsonFactory.newIntFieldDefinition(JsonSchemaVersion.getJsonKey(), FieldType.SPECIAL, FieldType.HIDDEN,
                      JsonSchemaVersion.V_1);
focal_class.type: JsonFieldDefinition<Integer>
focal_class.var_name: JSON_SCHEMA_VERSION
focal_class.declarator: entries
focal_class.modifier: private final
focal_class.original_string: private final Map<AuthorizationSubject, AclEntry> entries;
focal_class.type: Map<AuthorizationSubject, AclEntry>
focal_class.var_name: entries
focal_class.file: model/things/src/main/java/org/eclipse/ditto/model/things/ImmutableAccessControlList.java
focal_class.identifier: ImmutableAccessControlList
focal_class.interfaces: implements AccessControlList
focal_class.class_method_signature: ImmutableAccessControlList.ImmutableAccessControlList(final Map<AuthorizationSubject, AclEntry> theEntries)
focal_class.full_signature: private  ImmutableAccessControlList(final Map<AuthorizationSubject, AclEntry> theEntries)
focal_class.identifier: ImmutableAccessControlList
focal_class.modifiers: private
focal_class.parameters: (final Map<AuthorizationSubject, AclEntry> theEntries)
focal_class.signature:  ImmutableAccessControlList(final Map<AuthorizationSubject, AclEntry> theEntries)
focal_class.class_method_signature: ImmutableAccessControlList.ImmutableAccessControlList(final Collection<AclEntry> theEntries)
focal_class.full_signature: private  ImmutableAccessControlList(final Collection<AclEntry> theEntries)
focal_class.identifier: ImmutableAccessControlList
focal_class.modifiers: private
focal_class.parameters: (final Collection<AclEntry> theEntries)
focal_class.signature:  ImmutableAccessControlList(final Collection<AclEntry> theEntries)
focal_class.class_method_signature: ImmutableAccessControlList.empty()
focal_class.full_signature: public static AccessControlList empty()
focal_class.identifier: empty
focal_class.modifiers: public static
focal_class.parameters: ()
focal_class.return: AccessControlList
focal_class.signature: AccessControlList empty()
focal_class.class_method_signature: ImmutableAccessControlList.of(final AclEntry entry, final AclEntry... furtherEntries)
focal_class.full_signature: public static AccessControlList of(final AclEntry entry, final AclEntry... furtherEntries)
focal_class.identifier: of
focal_class.modifiers: public static
focal_class.parameters: (final AclEntry entry, final AclEntry... furtherEntries)
focal_class.return: AccessControlList
focal_class.signature: AccessControlList of(final AclEntry entry, final AclEntry... furtherEntries)
focal_class.class_method_signature: ImmutableAccessControlList.of(final Iterable<AclEntry> entries)
focal_class.full_signature: public static AccessControlList of(final Iterable<AclEntry> entries)
focal_class.identifier: of
focal_class.modifiers: public static
focal_class.parameters: (final Iterable<AclEntry> entries)
focal_class.return: AccessControlList
focal_class.signature: AccessControlList of(final Iterable<AclEntry> entries)
focal_class.class_method_signature: ImmutableAccessControlList.fromJson(final JsonObject jsonObject)
focal_class.full_signature: public static AccessControlList fromJson(final JsonObject jsonObject)
focal_class.identifier: fromJson
focal_class.modifiers: public static
focal_class.parameters: (final JsonObject jsonObject)
focal_class.return: AccessControlList
focal_class.signature: AccessControlList fromJson(final JsonObject jsonObject)
focal_class.class_method_signature: ImmutableAccessControlList.merge(final AclEntry entry)
focal_class.full_signature: @Override public AccessControlList merge(final AclEntry entry)
focal_class.identifier: merge
focal_class.modifiers: @Override public
focal_class.parameters: (final AclEntry entry)
focal_class.return: AccessControlList
focal_class.signature: AccessControlList merge(final AclEntry entry)
focal_class.class_method_signature: ImmutableAccessControlList.merge(final AuthorizationSubject authorizationSubject, final Permission permission,
              final Permission... furtherPermissions)
focal_class.full_signature: @Override public AccessControlList merge(final AuthorizationSubject authorizationSubject, final Permission permission,
              final Permission... furtherPermissions)
focal_class.identifier: merge
focal_class.modifiers: @Override public
focal_class.parameters: (final AuthorizationSubject authorizationSubject, final Permission permission,
              final Permission... furtherPermissions)
focal_class.return: AccessControlList
focal_class.signature: AccessControlList merge(final AuthorizationSubject authorizationSubject, final Permission permission,
              final Permission... furtherPermissions)
focal_class.class_method_signature: ImmutableAccessControlList.merge(final Permission permission, final AuthorizationSubject authorizationSubject,
              final AuthorizationSubject... furtherAuthorizationSubjects)
focal_class.full_signature: @Override public AccessControlList merge(final Permission permission, final AuthorizationSubject authorizationSubject,
              final AuthorizationSubject... furtherAuthorizationSubjects)
focal_class.identifier: merge
focal_class.modifiers: @Override public
focal_class.parameters: (final Permission permission, final AuthorizationSubject authorizationSubject,
              final AuthorizationSubject... furtherAuthorizationSubjects)
focal_class.return: AccessControlList
focal_class.signature: AccessControlList merge(final Permission permission, final AuthorizationSubject authorizationSubject,
              final AuthorizationSubject... furtherAuthorizationSubjects)
focal_class.class_method_signature: ImmutableAccessControlList.setEntry(final AclEntry aclEntry)
focal_class.full_signature: @Override public AccessControlList setEntry(final AclEntry aclEntry)
focal_class.identifier: setEntry
focal_class.modifiers: @Override public
focal_class.parameters: (final AclEntry aclEntry)
focal_class.return: AccessControlList
focal_class.signature: AccessControlList setEntry(final AclEntry aclEntry)
focal_class.class_method_signature: ImmutableAccessControlList.setForAllAuthorizationSubjects(final Permissions permissions)
focal_class.full_signature: @Override public AccessControlList setForAllAuthorizationSubjects(final Permissions permissions)
focal_class.identifier: setForAllAuthorizationSubjects
focal_class.modifiers: @Override public
focal_class.parameters: (final Permissions permissions)
focal_class.return: AccessControlList
focal_class.signature: AccessControlList setForAllAuthorizationSubjects(final Permissions permissions)
focal_class.class_method_signature: ImmutableAccessControlList.getAuthorizedSubjectsFor(final Permission permission,
              final Permission... furtherPermissions)
focal_class.full_signature: @Override public Set<AuthorizationSubject> getAuthorizedSubjectsFor(final Permission permission,
              final Permission... furtherPermissions)
focal_class.identifier: getAuthorizedSubjectsFor
focal_class.modifiers: @Override public
focal_class.parameters: (final Permission permission,
              final Permission... furtherPermissions)
focal_class.return: Set<AuthorizationSubject>
focal_class.signature: Set<AuthorizationSubject> getAuthorizedSubjectsFor(final Permission permission,
              final Permission... furtherPermissions)
focal_class.class_method_signature: ImmutableAccessControlList.hasPermission(final AuthorizationContext authorizationContext, final Permission permission,
              final Permission... furtherPermissions)
focal_class.full_signature: @Override public boolean hasPermission(final AuthorizationContext authorizationContext, final Permission permission,
              final Permission... furtherPermissions)
focal_class.identifier: hasPermission
focal_class.modifiers: @Override public
focal_class.parameters: (final AuthorizationContext authorizationContext, final Permission permission,
              final Permission... furtherPermissions)
focal_class.return: boolean
focal_class.signature: boolean hasPermission(final AuthorizationContext authorizationContext, final Permission permission,
              final Permission... furtherPermissions)
focal_class.class_method_signature: ImmutableAccessControlList.hasPermission(final AuthorizationSubject authorizationSubject, final Permission permission,
              final Permission... furtherPermissions)
focal_class.full_signature: @Override public boolean hasPermission(final AuthorizationSubject authorizationSubject, final Permission permission,
              final Permission... furtherPermissions)
focal_class.identifier: hasPermission
focal_class.modifiers: @Override public
focal_class.parameters: (final AuthorizationSubject authorizationSubject, final Permission permission,
              final Permission... furtherPermissions)
focal_class.return: boolean
focal_class.signature: boolean hasPermission(final AuthorizationSubject authorizationSubject, final Permission permission,
              final Permission... furtherPermissions)
focal_class.class_method_signature: ImmutableAccessControlList.getAuthorizedSubjectsFor(final Permissions expectedPermissions)
focal_class.full_signature: @Override public Set<AuthorizationSubject> getAuthorizedSubjectsFor(final Permissions expectedPermissions)
focal_class.identifier: getAuthorizedSubjectsFor
focal_class.modifiers: @Override public
focal_class.parameters: (final Permissions expectedPermissions)
focal_class.return: Set<AuthorizationSubject>
focal_class.signature: Set<AuthorizationSubject> getAuthorizedSubjectsFor(final Permissions expectedPermissions)
focal_class.class_method_signature: ImmutableAccessControlList.contains(final AuthorizationSubject authorizationSubject)
focal_class.full_signature: @Override public boolean contains(final AuthorizationSubject authorizationSubject)
focal_class.identifier: contains
focal_class.modifiers: @Override public
focal_class.parameters: (final AuthorizationSubject authorizationSubject)
focal_class.return: boolean
focal_class.signature: boolean contains(final AuthorizationSubject authorizationSubject)
focal_class.class_method_signature: ImmutableAccessControlList.getEntryFor(final AuthorizationSubject authorizationSubject)
focal_class.full_signature: @Override public Optional<AclEntry> getEntryFor(final AuthorizationSubject authorizationSubject)
focal_class.identifier: getEntryFor
focal_class.modifiers: @Override public
focal_class.parameters: (final AuthorizationSubject authorizationSubject)
focal_class.return: Optional<AclEntry>
focal_class.signature: Optional<AclEntry> getEntryFor(final AuthorizationSubject authorizationSubject)
focal_class.class_method_signature: ImmutableAccessControlList.getPermissionsOf(final AuthorizationSubject authorizationSubject)
focal_class.full_signature: @Override public Permissions getPermissionsOf(final AuthorizationSubject authorizationSubject)
focal_class.identifier: getPermissionsOf
focal_class.modifiers: @Override public
focal_class.parameters: (final AuthorizationSubject authorizationSubject)
focal_class.return: Permissions
focal_class.signature: Permissions getPermissionsOf(final AuthorizationSubject authorizationSubject)
focal_class.class_method_signature: ImmutableAccessControlList.removeEntry(final AclEntry entry)
focal_class.full_signature: @Override public AccessControlList removeEntry(final AclEntry entry)
focal_class.identifier: removeEntry
focal_class.modifiers: @Override public
focal_class.parameters: (final AclEntry entry)
focal_class.return: AccessControlList
focal_class.signature: AccessControlList removeEntry(final AclEntry entry)
focal_class.class_method_signature: ImmutableAccessControlList.removePermission(final AuthorizationSubject authorizationSubject,
              final Permission permission, final Permission... furtherPermissions)
focal_class.full_signature: @Override public AccessControlList removePermission(final AuthorizationSubject authorizationSubject,
              final Permission permission, final Permission... furtherPermissions)
focal_class.identifier: removePermission
focal_class.modifiers: @Override public
focal_class.parameters: (final AuthorizationSubject authorizationSubject,
              final Permission permission, final Permission... furtherPermissions)
focal_class.return: AccessControlList
focal_class.signature: AccessControlList removePermission(final AuthorizationSubject authorizationSubject,
              final Permission permission, final Permission... furtherPermissions)
focal_class.class_method_signature: ImmutableAccessControlList.removeAllPermissionsOf(final AuthorizationSubject authorizationSubject)
focal_class.full_signature: @Override public AccessControlList removeAllPermissionsOf(final AuthorizationSubject authorizationSubject)
focal_class.identifier: removeAllPermissionsOf
focal_class.modifiers: @Override public
focal_class.parameters: (final AuthorizationSubject authorizationSubject)
focal_class.return: AccessControlList
focal_class.signature: AccessControlList removeAllPermissionsOf(final AuthorizationSubject authorizationSubject)
focal_class.class_method_signature: ImmutableAccessControlList.isEmpty()
focal_class.full_signature: @Override public boolean isEmpty()
focal_class.identifier: isEmpty
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: boolean
focal_class.signature: boolean isEmpty()
focal_class.class_method_signature: ImmutableAccessControlList.getSize()
focal_class.full_signature: @Override public int getSize()
focal_class.identifier: getSize
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: int
focal_class.signature: int getSize()
focal_class.class_method_signature: ImmutableAccessControlList.getEntriesSet()
focal_class.full_signature: @Override public Set<AclEntry> getEntriesSet()
focal_class.identifier: getEntriesSet
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: Set<AclEntry>
focal_class.signature: Set<AclEntry> getEntriesSet()
focal_class.class_method_signature: ImmutableAccessControlList.stream()
focal_class.full_signature: @Override public Stream<AclEntry> stream()
focal_class.identifier: stream
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: Stream<AclEntry>
focal_class.signature: Stream<AclEntry> stream()
focal_class.class_method_signature: ImmutableAccessControlList.iterator()
focal_class.full_signature: @Override public Iterator<AclEntry> iterator()
focal_class.identifier: iterator
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: Iterator<AclEntry>
focal_class.signature: Iterator<AclEntry> iterator()
focal_class.class_method_signature: ImmutableAccessControlList.toJson(final JsonSchemaVersion schemaVersion, final Predicate<JsonField> thePredicate)
focal_class.full_signature: @Override public JsonObject toJson(final JsonSchemaVersion schemaVersion, final Predicate<JsonField> thePredicate)
focal_class.identifier: toJson
focal_class.modifiers: @Override public
focal_class.parameters: (final JsonSchemaVersion schemaVersion, final Predicate<JsonField> thePredicate)
focal_class.return: JsonObject
focal_class.signature: JsonObject toJson(final JsonSchemaVersion schemaVersion, final Predicate<JsonField> thePredicate)
focal_class.class_method_signature: ImmutableAccessControlList.equals(final Object o)
focal_class.full_signature: @Override public boolean equals(final Object o)
focal_class.identifier: equals
focal_class.modifiers: @Override public
focal_class.parameters: (final Object o)
focal_class.return: boolean
focal_class.signature: boolean equals(final Object o)
focal_class.class_method_signature: ImmutableAccessControlList.hashCode()
focal_class.full_signature: @Override public int hashCode()
focal_class.identifier: hashCode
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: int
focal_class.signature: int hashCode()
focal_class.class_method_signature: ImmutableAccessControlList.toString()
focal_class.full_signature: @Override public String toString()
focal_class.identifier: toString
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: String
focal_class.signature: String toString()
focal_class.class_method_signature: ImmutableAccessControlList.copyEntries()
focal_class.full_signature: private Map<AuthorizationSubject, AclEntry> copyEntries()
focal_class.identifier: copyEntries
focal_class.modifiers: private
focal_class.parameters: ()
focal_class.return: Map<AuthorizationSubject, AclEntry>
focal_class.signature: Map<AuthorizationSubject, AclEntry> copyEntries()
focal_method.body: @Override
      public Optional<AclEntry> getEntryFor(final AuthorizationSubject authorizationSubject) {
          checkNotNull(authorizationSubject, "authorization subject to get as ACL entry");
  
          return Optional.ofNullable(entries.get(authorizationSubject));
      }
focal_method.class_method_signature: ImmutableAccessControlList.getEntryFor(final AuthorizationSubject authorizationSubject)
focal_method.full_signature: @Override public Optional<AclEntry> getEntryFor(final AuthorizationSubject authorizationSubject)
focal_method.identifier: getEntryFor
focal_method.invocations: checkNotNull ofNullable get
focal_method.modifiers: @Override public
focal_method.parameters: (final AuthorizationSubject authorizationSubject)
focal_method.return: Optional<AclEntry>
focal_method.signature: Optional<AclEntry> getEntryFor(final AuthorizationSubject authorizationSubject)