+
+ protected Object deserializeMetadataValue(String metadataValue) {
+ try {
+ return STANDARD_CODER.decode(metadataValue, Object.class);
+ } catch (CoderException ce) {
+ String errorMessage = "error decoding metadata JSON value read from database: " + metadataValue;
+ throw new PfModelRuntimeException(Response.Status.INTERNAL_SERVER_ERROR, errorMessage, ce);
+ }
+ }
+
+ protected String serializeMetadataValue(Object metadataValue) {
+ try {
+ return STANDARD_CODER.encode(metadataValue);
+ } catch (CoderException ce) {
+ String errorMessage = "error encoding metadata JSON value for database: " + metadataValue;
+ throw new PfModelRuntimeException(Response.Status.INTERNAL_SERVER_ERROR, errorMessage, ce);
+ }
+ }