@NotNull public static PropertyValue newBoolean(boolean value) { return new PropertyStateValue(BooleanPropertyState.booleanProperty("", value)); }
/** * Create a {@code PropertyState} from a boolean. * @param name The name of the property state * @param value The value of the property state * @return The new property state of type {@link Type#BOOLEAN} */ public static PropertyState booleanProperty( @Nonnull String name, boolean value) { return new BooleanPropertyState(name, value); }
@Nonnull public static PropertyValue newBoolean(boolean value) { return new PropertyStateValue(BooleanPropertyState.booleanProperty("", value)); }
/** * Create a {@code PropertyState} from a boolean. * @param name The name of the property state * @param value The value of the property state * @return The new property state of type {@link Type#BOOLEAN} */ public static PropertyState booleanProperty( @NotNull String name, boolean value) { return new BooleanPropertyState(name, value); }
@Override public Value createValue(boolean value) { return newValue(BooleanPropertyState.booleanProperty("", value), namePathMapper); }
@NotNull public Value createValue(boolean value) { return newValue(BooleanPropertyState.booleanProperty("", value), namePathMapper, getBlobAccessProvider()); }
return GenericPropertyState.dateProperty(name, ISO8601.format((Calendar) value)); } else if (value instanceof Boolean) { return BooleanPropertyState.booleanProperty(name, (Boolean) value); } else if (value instanceof BigDecimal) { return DecimalPropertyState.decimalProperty(name, (BigDecimal) value);
return GenericPropertyState.dateProperty(name, ISO8601.format((Calendar) value)); } else if (value instanceof Boolean) { return BooleanPropertyState.booleanProperty(name, (Boolean) value); } else if (value instanceof BigDecimal) { return DecimalPropertyState.decimalProperty(name, (BigDecimal) value);
return BooleanPropertyState.booleanProperty(name, true); } else if (reader.matches(JsopReader.FALSE)) { return BooleanPropertyState.booleanProperty(name, false); } else if (reader.matches(JsopReader.STRING)) { String jsonString = reader.getToken();
return BooleanPropertyState.booleanProperty(name, true); } else if (reader.matches(JsopReader.FALSE)) { return BooleanPropertyState.booleanProperty(name, false); } else if (reader.matches(JsopReader.STRING)) { String jsonString = reader.getToken();
return BooleanPropertyState.booleanProperty(name, true); } else if (reader.matches(JsopReader.FALSE)) { return BooleanPropertyState.booleanProperty(name, false); } else if (reader.matches(JsopReader.STRING)) { String jsonString = reader.getToken();
return BooleanPropertyState.booleanProperty(name, true); } else if (reader.matches(JsopReader.FALSE)) { return BooleanPropertyState.booleanProperty(name, false); } else if (reader.matches(JsopReader.STRING)) { String jsonString = reader.getToken();
return DoublePropertyState.doubleProperty(name, (Double) value); case PropertyType.BOOLEAN: return BooleanPropertyState.booleanProperty(name, (Boolean) value); case PropertyType.DECIMAL: return DecimalPropertyState.decimalProperty(name, (BigDecimal) value);
return DoublePropertyState.doubleProperty(name, (Double) value); case PropertyType.BOOLEAN: return BooleanPropertyState.booleanProperty(name, (Boolean) value); case PropertyType.DECIMAL: return DecimalPropertyState.decimalProperty(name, (BigDecimal) value);
/** * Create a {@code PropertyState} based on a {@link Value}. The * {@link Type} of the property state is determined by the * type of the value. * @param name The name of the property state * @param value The value of the property state * @return The new property state * @throws RepositoryException forwarded from {@code value} */ @NotNull public static PropertyState createProperty(String name, Value value) throws RepositoryException { int type = value.getType(); switch (type) { case PropertyType.STRING: return StringPropertyState.stringProperty(name, getString(value, type)); case PropertyType.BINARY: return BinaryPropertyState.binaryProperty(name, value); case PropertyType.LONG: return LongPropertyState.createLongProperty(name, value.getLong()); case PropertyType.DOUBLE: return DoublePropertyState.doubleProperty(name, value.getDouble()); case PropertyType.BOOLEAN: return BooleanPropertyState.booleanProperty(name, value.getBoolean()); case PropertyType.DECIMAL: return DecimalPropertyState.decimalProperty(name, value.getDecimal()); default: return new GenericPropertyState(name, getString(value, type), Type.fromTag(type, false)); } }
/** * Create a {@code PropertyState} based on a {@link Value}. The * {@link Type} of the property state is determined by the * type of the value. * @param name The name of the property state * @param value The value of the property state * @return The new property state * @throws RepositoryException forwarded from {@code value} */ @Nonnull public static PropertyState createProperty(String name, Value value) throws RepositoryException { int type = value.getType(); switch (type) { case PropertyType.STRING: return StringPropertyState.stringProperty(name, getString(value, type)); case PropertyType.BINARY: return BinaryPropertyState.binaryProperty(name, value); case PropertyType.LONG: return LongPropertyState.createLongProperty(name, value.getLong()); case PropertyType.DOUBLE: return DoublePropertyState.doubleProperty(name, value.getDouble()); case PropertyType.BOOLEAN: return BooleanPropertyState.booleanProperty(name, value.getBoolean()); case PropertyType.DECIMAL: return DecimalPropertyState.decimalProperty(name, value.getDecimal()); default: return new GenericPropertyState(name, getString(value, type), Type.fromTag(type, false)); } }
return createProperty(name, number, PropertyType.LONG); } else if (reader.matches(JsopReader.TRUE)) { return BooleanPropertyState.booleanProperty(name, true); } else if (reader.matches(JsopReader.FALSE)) { return BooleanPropertyState.booleanProperty(name, false); } else if (reader.matches(JsopReader.STRING)) { String jsonString = reader.getToken();
/** * Create a {@code PropertyState} from a string. * @param name The name of the property state * @param value The value of the property state * @param type The type of the property state * @return The new property state */ @NotNull public static PropertyState createProperty(String name, String value, int type) { switch (type) { case PropertyType.STRING: return StringPropertyState.stringProperty(name, value); case PropertyType.BINARY: return BinaryPropertyState.binaryProperty(name, Conversions.convert(value).toBinary()); case PropertyType.LONG: return LongPropertyState.createLongProperty(name, Conversions.convert(value).toLong()); case PropertyType.DOUBLE: return DoublePropertyState.doubleProperty(name, Conversions.convert(value).toDouble()); case PropertyType.BOOLEAN: return BooleanPropertyState.booleanProperty(name, Conversions.convert(value).toBoolean()); case PropertyType.DECIMAL: return DecimalPropertyState.decimalProperty(name, Conversions.convert(value).toDecimal()); default: return new GenericPropertyState(name, value, Type.fromTag(type, false)); } }
/** * Create a {@code PropertyState} from a string. * @param name The name of the property state * @param value The value of the property state * @param type The type of the property state * @return The new property state */ @Nonnull public static PropertyState createProperty(String name, String value, int type) { switch (type) { case PropertyType.STRING: return StringPropertyState.stringProperty(name, value); case PropertyType.BINARY: return BinaryPropertyState.binaryProperty(name, Conversions.convert(value).toBinary()); case PropertyType.LONG: return LongPropertyState.createLongProperty(name, Conversions.convert(value).toLong()); case PropertyType.DOUBLE: return DoublePropertyState.doubleProperty(name, Conversions.convert(value).toDouble()); case PropertyType.BOOLEAN: return BooleanPropertyState.booleanProperty(name, Conversions.convert(value).toBoolean()); case PropertyType.DECIMAL: return DecimalPropertyState.decimalProperty(name, Conversions.convert(value).toDecimal()); default: return new GenericPropertyState(name, value, Type.fromTag(type, false)); } }
@Test public void testPropertyChanges() { JsopDiff diff; PropertyState before = StringPropertyState.stringProperty("foo", "bar"); diff = new JsopDiff(); diff.propertyAdded(before); assertEquals("^\"/foo\":\"bar\"", diff.toString()); diff = new JsopDiff(); diff.propertyChanged(before, LongPropertyState.createLongProperty("foo", 123L)); assertEquals("^\"/foo\":123", diff.toString()); diff = new JsopDiff(); diff.propertyChanged(before, DoublePropertyState.doubleProperty("foo", 1.23)); assertEquals("^\"/foo\":1.23", diff.toString()); diff = new JsopDiff(); diff.propertyChanged(before, BooleanPropertyState.booleanProperty("foo", true)); assertEquals("^\"/foo\":true", diff.toString()); diff = new JsopDiff(); diff.propertyDeleted(before); assertEquals("^\"/foo\":null", diff.toString()); }