in src/main/java/software/amazon/cloudformation/proxy/aws/SdkPojoSerializer.java [50:79]
private void writeObject(Object value, SdkField<?> sdkField, JsonGenerator gen, SerializerProvider serializers)
throws IOException {
MarshallingType<?> type = sdkField.marshallingType();
if (type.equals(MarshallingType.BOOLEAN)) {
gen.writeBoolean((Boolean) value);
} else if (type.equals(MarshallingType.DOUBLE)) {
gen.writeNumber((Double) value);
} else if (type.equals(MarshallingType.INTEGER)) {
gen.writeNumber((Integer) value);
} else if (type.equals(MarshallingType.FLOAT)) {
gen.writeNumber((Float) value);
} else if (type.equals(MarshallingType.STRING)) {
gen.writeString((String) value);
} else if (type.equals(MarshallingType.BIG_DECIMAL)) {
gen.writeNumber((BigDecimal) value);
} else if (type.equals(MarshallingType.SDK_BYTES)) {
gen.writeBinary(((SdkBytes) value).asByteArray());
} else if (type.equals(MarshallingType.INSTANT)) {
JsonSerializer<Object> serializer = serializers.findValueSerializer(Instant.class);
serializer.serialize(value, gen, serializers);
} else if (type.equals(MarshallingType.LONG)) {
gen.writeNumber((Long) value);
} else if (type.equals(MarshallingType.SDK_POJO)) {
writeSdkPojo((SdkPojo) value, gen, serializers);
} else if (type.equals(MarshallingType.LIST)) {
writeSdkList((Collection<Object>) value, sdkField, gen, serializers);
} else if (type.equals(MarshallingType.MAP)) {
writeSdkMap((Map<String, Object>) value, sdkField, gen, serializers);
}
}