@Override public ValueObject filterValue(ValueObject value) { if (value == null) { return null; } boolean empty = false; switch (value.getObjectType()) { case ARRAY: empty = value.asArray().size() == 0; break; case MAP: empty = value.asMap().size() == 0; break; default: String s = ValueUtil.asNativeString(value); empty = s != null && s.length() == 0; break; } if (not) { return empty ? null : value; } else { return empty ? value : null; } }
case MAP: ValueMap map = value.asMap(); Map<String, Object> avroMap = new HashMap<>(value.asMap().size()); for (ValueMapEntry valueMapEntry : map) { avroMap.put(valueMapEntry.getKey(), getAvroNativeFromValue(valueMapEntry.getValue(),
case MAP: ValueMap map = value.asMap(); Map<String, Object> avroMap = new HashMap<>(value.asMap().size()); for (ValueMapEntry valueMapEntry : map) { avroMap.put(valueMapEntry.getKey(), getAvroNativeFromValue(valueMapEntry.getValue(),
@Override public ValueObject filterValue(ValueObject value) { if (value != null) { if (value.getObjectType() == ValueObject.TYPE.ARRAY) { return ValueFactory.create(value.asArray().size()); } if (value.getObjectType() == ValueObject.TYPE.MAP) { return ValueFactory.create(value.asMap().size()); } Numeric num = ValueUtil.asNumber(value); if (num != null) { return num; } return ValueFactory.create(ValueUtil.asNativeString(value).length()); } return null; }