@Override public void write(JSONStringWriter serializer) { String pathString = serializer.getPathLanguage() == PathLanguage.JSONPATH ? "$.collections[*][?(@="+JSONStringWriter.toJSON(collection)+")]" : "/collections[. = "+JSONStringWriter.toJSON(collection)+"]"; writeDelete(serializer, pathString, null); } @Override
@Override public void write(JSONStringWriter serializer) { String pathString = serializer.getPathLanguage() == PathLanguage.JSONPATH ? "$.permissions.[*][?(@.role-name="+JSONStringWriter.toJSON(role)+")]": "/permissions[role-name = "+JSONStringWriter.toJSON(role)+"]"; writeDelete(serializer, pathString, null ); } @Override
@Override public void write(JSONStringWriter serializer) { // TODO: error if name empty String pathString = serializer.getPathLanguage() == PathLanguage.JSONPATH ? "$.properties.["+JSONStringWriter.toJSON(name)+"]": "/properties/node("+JSONStringWriter.toJSON(name)+")"; writeReplaceApply(serializer, pathString, null, call ); } @Override
@Override public void write(JSONStringWriter serializer) { // TODO: error if name empty String pathString = serializer.getPathLanguage() == PathLanguage.JSONPATH ? "$.metadataValues.["+JSONStringWriter.toJSON(key)+"]": "/metadataValues/node("+JSONStringWriter.toJSON(key)+")"; writeReplaceApply(serializer, pathString, null, call ); } @Override
@Override public void write(JSONStringWriter serializer) { // TODO: error if name empty String pathString = serializer.getPathLanguage() == PathLanguage.JSONPATH ? "$.properties.["+JSONStringWriter.toJSON(name)+"]": "/properties/node("+JSONStringWriter.toJSON(name)+")"; writeDelete(serializer, pathString, null ); } @Override
@Override public void write(JSONStringWriter serializer) { // TODO: error if name empty String pathString = serializer.getPathLanguage() == PathLanguage.JSONPATH ? "$.metadataValues.["+JSONStringWriter.toJSON(key)+"]": "/metadataValues/node("+JSONStringWriter.toJSON(key)+")"; writeDelete(serializer, pathString, null ); } @Override
@Override public void write(JSONStringWriter serializer) { String pathString = serializer.getPathLanguage() == PathLanguage.JSONPATH ? "$.[\"collections\"]" : "/array-node('collections')"; writeStartInsert(serializer, pathString, "last-child", null); serializer.writeStartEntry("content"); serializer.writeStringValue(collection); serializer.writeEndObject(); serializer.writeEndObject(); } @Override
@Override public void write(JSONStringWriter serializer) { String pathString = serializer.getPathLanguage() == PathLanguage.JSONPATH ? "$.quality": "/node('quality')"; writeStartReplace(serializer, pathString, null); serializer.writeStartEntry("content"); serializer.writeNumberValue(quality); serializer.writeEndObject(); serializer.writeEndObject(); } @Override
@Override public void write(JSONStringWriter serializer) { // TODO: error if name empty String pathString = serializer.getPathLanguage() == PathLanguage.JSONPATH ? "$.properties" : "/array-node('properties')"; writeStartInsert(serializer, pathString, "last-child", null); serializer.writeStartEntry("content"); serializer.writeStartObject(); serializer.writeStartEntry(name); // TODO: typed serializer.writeStringValue(value.toString()); serializer.writeEndObject(); serializer.writeEndObject(); serializer.writeEndObject(); } @Override
@Override public void write(JSONStringWriter serializer) { String pathString = serializer.getPathLanguage() == PathLanguage.JSONPATH ? "$.collections[?(@="+JSONStringWriter.toJSON(oldCollection)+")]" : "/collections[. eq "+JSONStringWriter.toJSON(oldCollection)+"]"; writeStartReplace(serializer, pathString, null ); serializer.writeStartEntry("content"); serializer.writeStringValue(newCollection); serializer.writeEndObject(); serializer.writeEndObject(); } @Override
@Override public void write(JSONStringWriter serializer) { // TODO: error if name empty String pathString = serializer.getPathLanguage() == PathLanguage.JSONPATH ? "$.metadataValues.["+JSONStringWriter.toJSON(key)+"]": "/metadataValues/node("+JSONStringWriter.toJSON(key)+")"; writeStartReplace(serializer, pathString, null ); serializer.writeStartEntry("content"); serializer.writeStringValue(value); serializer.writeEndObject(); serializer.writeEndObject(); } @Override
@Override public void write(JSONStringWriter serializer) { // TODO: error if name empty String pathString = serializer.getPathLanguage() == PathLanguage.JSONPATH ? "$.properties.["+JSONStringWriter.toJSON(oldName)+"]": "/properties/node("+JSONStringWriter.toJSON(oldName)+")"; writeStartReplace(serializer, pathString, null ); serializer.writeStartEntry("content"); serializer.writeStartObject(); serializer.writeStartEntry(newName); serializer.writeStringValue(newValue.toString()); serializer.writeEndObject(); serializer.writeEndObject(); serializer.writeEndObject(); } @Override
@Override public void write(JSONStringWriter serializer) { // TODO: error if name empty String pathString = serializer.getPathLanguage() == PathLanguage.JSONPATH ? "$.metadataValues" : "/object-node('metadataValues')"; writeStartInsert(serializer, pathString, "last-child", null); serializer.writeStartEntry("content"); serializer.writeStartObject(); serializer.writeStartEntry(key); serializer.writeStringValue(value); serializer.writeEndObject(); serializer.writeEndObject(); serializer.writeEndObject(); } @Override
@Override public void write(JSONStringWriter serializer) { String pathString = serializer.getPathLanguage() == PathLanguage.JSONPATH ? "$.permissions" : "/array-node('permissions')"; writeStartInsert(serializer, pathString, "last-child", null); serializer.writeStartEntry("content"); serializer.writeStartObject(); serializer.writeStartEntry("role-name"); serializer.writeStringValue(role); serializer.writeStartEntry("capabilities"); serializer.writeStartArray(); for (Capability capability: capabilities) { serializer.writeStartItem(); serializer.writeStringValue(capability.toString().toLowerCase()); } serializer.writeEndArray(); serializer.writeEndObject(); serializer.writeEndObject(); serializer.writeEndObject(); } @Override
@Override public void write(JSONStringWriter serializer) { String pathString = serializer.getPathLanguage() == PathLanguage.JSONPATH ? "$.permissions[?(role-name="+JSONStringWriter.toJSON(oldRole)+")]": "/permissions[role-name = "+JSONStringWriter.toJSON(oldRole)+"]"; writeStartReplace(serializer, pathString, null ); serializer.writeStartEntry("content"); serializer.writeStartObject(); serializer.writeStartEntry("role-name"); serializer.writeStringValue(newRole); serializer.writeStartEntry("capabilities"); serializer.writeStartArray(); for (Capability capability: newCapabilities) { serializer.writeStartItem(); serializer.writeStringValue(capability.toString().toLowerCase()); } serializer.writeEndArray(); serializer.writeEndObject(); serializer.writeEndObject(); serializer.writeEndObject(); } @Override