test_class.declarator: EFFECTED_PERMISSIONS =
              EffectedPermissions.newInstance(TestConstants.Policy.PERMISSIONS_ALL, TestConstants.Policy.PERMISSIONS_ALL)
test_class.modifier: private static final
test_class.original_string: private static final EffectedPermissions EFFECTED_PERMISSIONS =
              EffectedPermissions.newInstance(TestConstants.Policy.PERMISSIONS_ALL, TestConstants.Policy.PERMISSIONS_ALL);
test_class.type: EffectedPermissions
test_class.var_name: EFFECTED_PERMISSIONS
test_class.file: model/policies/src/test/java/org/eclipse/ditto/model/policies/ImmutableResourceTest.java
test_class.identifier: ImmutableResourceTest
test_case.body: @Test(expected = DittoJsonException.class)
      public void createResourceWithJsonValueInvalidType() {
          ImmutableResource.of(RESOURCE_KEY, JsonFactory.newValue(true));
      }
test_case.class_method_signature: ImmutableResourceTest.createResourceWithJsonValueInvalidType()
test_case.full_signature: @Test(expected = DittoJsonException.class) public void createResourceWithJsonValueInvalidType()
test_case.identifier: createResourceWithJsonValueInvalidType
test_case.invocations: of newValue
test_case.modifiers: @Test(expected = DittoJsonException.class) public
test_case.parameters: ()
test_case.return: void
test_case.signature: void createResourceWithJsonValueInvalidType()
focal_class.declarator: resourceKey
focal_class.modifier: private final
focal_class.original_string: private final ResourceKey resourceKey;
focal_class.type: ResourceKey
focal_class.var_name: resourceKey
focal_class.declarator: effectedPermissions
focal_class.modifier: private final
focal_class.original_string: private final EffectedPermissions effectedPermissions;
focal_class.type: EffectedPermissions
focal_class.var_name: effectedPermissions
focal_class.file: model/policies/src/main/java/org/eclipse/ditto/model/policies/ImmutableResource.java
focal_class.identifier: ImmutableResource
focal_class.interfaces: implements Resource
focal_class.class_method_signature: ImmutableResource.ImmutableResource(final ResourceKey theResourceKey, final EffectedPermissions theEffectedPermissions)
focal_class.full_signature: private  ImmutableResource(final ResourceKey theResourceKey, final EffectedPermissions theEffectedPermissions)
focal_class.identifier: ImmutableResource
focal_class.modifiers: private
focal_class.parameters: (final ResourceKey theResourceKey, final EffectedPermissions theEffectedPermissions)
focal_class.signature:  ImmutableResource(final ResourceKey theResourceKey, final EffectedPermissions theEffectedPermissions)
focal_class.class_method_signature: ImmutableResource.of(final ResourceKey resourceKey, final JsonValue jsonValue)
focal_class.full_signature: public static Resource of(final ResourceKey resourceKey, final JsonValue jsonValue)
focal_class.identifier: of
focal_class.modifiers: public static
focal_class.parameters: (final ResourceKey resourceKey, final JsonValue jsonValue)
focal_class.return: Resource
focal_class.signature: Resource of(final ResourceKey resourceKey, final JsonValue jsonValue)
focal_class.class_method_signature: ImmutableResource.of(final ResourceKey resourceKey, final EffectedPermissions effectedPermissions)
focal_class.full_signature: public static Resource of(final ResourceKey resourceKey, final EffectedPermissions effectedPermissions)
focal_class.identifier: of
focal_class.modifiers: public static
focal_class.parameters: (final ResourceKey resourceKey, final EffectedPermissions effectedPermissions)
focal_class.return: Resource
focal_class.signature: Resource of(final ResourceKey resourceKey, final EffectedPermissions effectedPermissions)
focal_class.class_method_signature: ImmutableResource.fromJson(final JsonObject jsonObject)
focal_class.full_signature: public static Resource fromJson(final JsonObject jsonObject)
focal_class.identifier: fromJson
focal_class.modifiers: public static
focal_class.parameters: (final JsonObject jsonObject)
focal_class.return: Resource
focal_class.signature: Resource fromJson(final JsonObject jsonObject)
focal_class.class_method_signature: ImmutableResource.getResourceKey()
focal_class.full_signature: @Override public ResourceKey getResourceKey()
focal_class.identifier: getResourceKey
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: ResourceKey
focal_class.signature: ResourceKey getResourceKey()
focal_class.class_method_signature: ImmutableResource.getType()
focal_class.full_signature: @Override public String getType()
focal_class.identifier: getType
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: String
focal_class.signature: String getType()
focal_class.class_method_signature: ImmutableResource.getPath()
focal_class.full_signature: @Override public JsonPointer getPath()
focal_class.identifier: getPath
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: JsonPointer
focal_class.signature: JsonPointer getPath()
focal_class.class_method_signature: ImmutableResource.getFullQualifiedPath()
focal_class.full_signature: @Override public String getFullQualifiedPath()
focal_class.identifier: getFullQualifiedPath
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: String
focal_class.signature: String getFullQualifiedPath()
focal_class.class_method_signature: ImmutableResource.getEffectedPermissions()
focal_class.full_signature: @Override public EffectedPermissions getEffectedPermissions()
focal_class.identifier: getEffectedPermissions
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: EffectedPermissions
focal_class.signature: EffectedPermissions getEffectedPermissions()
focal_class.class_method_signature: ImmutableResource.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: ImmutableResource.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: ImmutableResource.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: ImmutableResource.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_method.body: public static Resource of(final ResourceKey resourceKey, final JsonValue jsonValue) {
          checkNotNull(jsonValue, "JSON value");
  
          final EffectedPermissions effectedPermissions = Optional.of(jsonValue)
                  .filter(JsonValue::isObject)
                  .map(JsonValue::asObject)
                  .map(object -> wrapJsonRuntimeException(() -> ImmutableEffectedPermissions.fromJson(object)))
                  .orElseThrow(() -> new DittoJsonException(JsonParseException.newBuilder()
                          .message("The JSON object for the 'permissions' (grant/revoke) of the 'resource' '" +
                                  resourceKey + "' is missing or not an object.")
                          .build()));
  
          return of(resourceKey, effectedPermissions);
      }
focal_method.class_method_signature: ImmutableResource.of(final ResourceKey resourceKey, final JsonValue jsonValue)
focal_method.full_signature: public static Resource of(final ResourceKey resourceKey, final JsonValue jsonValue)
focal_method.identifier: of
focal_method.invocations: checkNotNull orElseThrow map map filter of wrapJsonRuntimeException fromJson build message newBuilder of
focal_method.modifiers: public static
focal_method.parameters: (final ResourceKey resourceKey, final JsonValue jsonValue)
focal_method.return: Resource
focal_method.signature: Resource of(final ResourceKey resourceKey, final JsonValue jsonValue)