@Override public Optional<JsonValue> getEntity(final JsonSchemaVersion schemaVersion) { final JsonObject jsonObject = StreamSupport.stream(policyEntries.spliterator(), false) .map(entry -> JsonFactory.newObjectBuilder() .set(entry.getLabel().getJsonFieldDefinition(), entry.toJson(schemaVersion, FieldType.regularOrSpecial())) .build()) .collect(JsonCollectors.objectsToObject()); return Optional.ofNullable(jsonObject); }
@Override public Optional<JsonValue> getEntity(final JsonSchemaVersion schemaVersion) { final JsonObject jsonObject = StreamSupport.stream(policyEntries.spliterator(), false) .map(entry -> JsonFactory.newObjectBuilder() .set(entry.getLabel().getJsonFieldDefinition(), entry.toJson(schemaVersion, FieldType.regularOrSpecial())) .build()) .collect(JsonCollectors.objectsToObject()); return Optional.ofNullable(jsonObject); }
@Override public Optional<JsonValue> getEntity(final JsonSchemaVersion schemaVersion) { final JsonObject jsonObject = StreamSupport.stream(policyEntries.spliterator(), false) .map(entry -> JsonFactory.newObjectBuilder() .set(entry.getLabel().getJsonFieldDefinition(), entry.toJson(schemaVersion, FieldType.regularOrSpecial())) .build()) .collect(JsonCollectors.objectsToObject()); return Optional.ofNullable(jsonObject); }
@Override public Optional<JsonValue> getEntity(final JsonSchemaVersion schemaVersion) { final JsonObject jsonObject = StreamSupport.stream(policyEntries.spliterator(), false) .map(entry -> JsonFactory.newObjectBuilder() .set(entry.getLabel().getJsonFieldDefinition(), entry.toJson(schemaVersion, FieldType.regularOrSpecial())) .build()) .collect(JsonCollectors.objectsToObject()); return Optional.ofNullable(jsonObject); }
@Override protected void appendPayload(final JsonObjectBuilder jsonObjectBuilder, final JsonSchemaVersion schemaVersion, final Predicate<JsonField> thePredicate) { final Predicate<JsonField> predicate = schemaVersion.and(thePredicate); jsonObjectBuilder.set(JSON_POLICY_ENTRIES, StreamSupport.stream(policyEntries.spliterator(), false) .map(entry -> JsonFactory.newObjectBuilder().set(entry.getLabel().getJsonFieldDefinition(), entry.toJson(schemaVersion, thePredicate), predicate).build()) .collect(JsonCollectors.objectsToObject()), predicate); }
@Override protected void appendPayload(final JsonObjectBuilder jsonObjectBuilder, final JsonSchemaVersion schemaVersion, final Predicate<JsonField> thePredicate) { final Predicate<JsonField> predicate = schemaVersion.and(thePredicate); jsonObjectBuilder.set(JSON_POLICY_ENTRIES, StreamSupport.stream(policyEntries.spliterator(), false) .map(entry -> JsonFactory.newObjectBuilder().set(entry.getLabel().getJsonFieldDefinition(), entry.toJson(schemaVersion, thePredicate), predicate).build()) .collect(JsonCollectors.objectsToObject()), predicate); }
@Override protected void appendPayload(final JsonObjectBuilder jsonObjectBuilder, final JsonSchemaVersion schemaVersion, final Predicate<JsonField> thePredicate) { final Predicate<JsonField> predicate = schemaVersion.and(thePredicate); jsonObjectBuilder.set(PolicyModifyCommand.JsonFields.JSON_POLICY_ID, policyId, predicate); jsonObjectBuilder.set(JSON_POLICY_ENTRIES, StreamSupport.stream(policyEntries.spliterator(), false) .map(entry -> JsonFactory.newObjectBuilder() .set(entry.getLabel().getJsonFieldDefinition(), entry.toJson(schemaVersion, thePredicate), predicate) .build()) .collect(JsonCollectors.objectsToObject()), predicate); }
@Override protected void appendPayload(final JsonObjectBuilder jsonObjectBuilder, final JsonSchemaVersion schemaVersion, final Predicate<JsonField> thePredicate) { final Predicate<JsonField> predicate = schemaVersion.and(thePredicate); jsonObjectBuilder.set(PolicyModifyCommand.JsonFields.JSON_POLICY_ID, policyId, predicate); jsonObjectBuilder.set(JSON_POLICY_ENTRIES, StreamSupport.stream(policyEntries.spliterator(), false) .map(entry -> JsonFactory.newObjectBuilder() .set(entry.getLabel().getJsonFieldDefinition(), entry.toJson(schemaVersion, thePredicate), predicate) .build()) .collect(JsonCollectors.objectsToObject()), predicate); }
@Override public JsonObject toJson(final JsonSchemaVersion schemaVersion, final Predicate<JsonField> thePredicate) { checkNotNull(schemaVersion, "schema version"); checkNotNull(thePredicate, "predicate"); final Predicate<JsonField> predicate = schemaVersion.and(thePredicate); final JsonObjectBuilder jsonObjectBuilder = JsonFactory.newObjectBuilder(); jsonObjectBuilder.set(JsonFields.SCHEMA_VERSION, schemaVersion.toInt(), predicate); if (null != lifecycle) { jsonObjectBuilder.set(JsonFields.LIFECYCLE, lifecycle.name(), predicate); } if (null != revision) { jsonObjectBuilder.set(JsonFields.REVISION, revision.toLong(), predicate); } if (null != modified) { jsonObjectBuilder.set(JsonFields.MODIFIED, modified.toString(), predicate); } if (null != policyId) { jsonObjectBuilder.set(JsonFields.NAMESPACE, namespace, predicate); jsonObjectBuilder.set(JsonFields.ID, policyId, predicate); } jsonObjectBuilder.set(JsonFields.ENTRIES, stream() .map(policyEntry -> JsonFactory.newObjectBuilder() .set(policyEntry.getLabel().getJsonFieldDefinition(), policyEntry.toJson(schemaVersion, thePredicate.and(FieldType.notHidden())), predicate) // notice: only "not HIDDEN" sub-fields of PolicyEntry are included .build()) .collect(JsonCollectors.objectsToObject()), predicate); return jsonObjectBuilder.build(); }