private static boolean shouldBeReplacedByLink(BeanPropertyWriter propertyWriter) { return propertyWriter != null && propertyWriter.getAnnotation(JsonIgnore.class) != null; }
private static boolean shouldBeReplacedByLink(BeanPropertyWriter propertyWriter) { return propertyWriter != null && propertyWriter.getAnnotation(JsonIgnore.class) != null; }
if (beanPropertyWriter.getAnnotation(JsonProperty.class) != null) if (beanPropertyWriter.getAnnotation(annotation) != null)
@Override public List<BeanPropertyWriter> changeProperties(SerializationConfig config, BeanDescription beanDesc, List<BeanPropertyWriter> beanProperties) { for (BeanPropertyWriter writer : beanProperties) { if (writer.getAnnotation(LinkedResource.class) != null) { writer.assignSerializer(new LinkedResourceUriSerializer()); } } return beanProperties; } });
@Override public List<BeanPropertyWriter> changeProperties(SerializationConfig config, BeanDescription beanDesc, List<BeanPropertyWriter> beanProperties) { for (BeanPropertyWriter writer : beanProperties) { if (writer.getAnnotation(LinkedResource.class) != null) { writer.assignSerializer(new LinkedResourceUriSerializer()); } } return beanProperties; } });
@Override public List<BeanPropertyWriter> changeProperties(SerializationConfig config, BeanDescription beanDesc, List<BeanPropertyWriter> beanProperties) { List<BeanPropertyWriter> newWriters = new ArrayList<BeanPropertyWriter>(); for (BeanPropertyWriter writer : beanProperties) { Encrypted encrypted = writer.getAnnotation(Encrypted.class); if (encrypted == null) { newWriters.add(writer); continue; } String source = encrypted.source(); EncryptionService service = sourceMap.get(source); if (service == null) { throw new IllegalArgumentException(String.format( "No encryption key source defined for %s.", source)); } JsonSerializer<Object> currentSer = writer.getSerializer(); JsonSerializer<Object> encryptSer = new EncryptedJsonSerializer(service, encrypted, currentSer); newWriters.add(new EncryptedPropertyWriter(writer, encryptSer)); } return newWriters; }
private static LinkSerializationMethod getSerializationMethod(HalSerializationConfig halSerializationConfig, BeanPropertyWriter property) { LinkSerialization linkSerialization = property.getAnnotation(LinkSerialization.class); if (linkSerialization == null) { linkSerialization = property.getMember().getDeclaringClass().getAnnotation(LinkSerialization.class); } if (linkSerialization == null) { return halSerializationConfig.getLinkSerializationMethod(); } else { return linkSerialization.value(); } }
/** * {@inheritDoc} * * @deprecated Provided for compatibility with deprecated method in Jackson. */ @Override @Deprecated public void serializeAsField( final Object pojo, final JsonGenerator jgen, final SerializerProvider prov, final BeanPropertyWriter writer) throws Exception { if (writer.getAnnotation(LogRedact.class) == null) { super.serializeAsField(pojo, jgen, prov, writer); } else { // since 2.3 if (_allowNull && writer.get(pojo) == null) { super.serializeAsField(pojo, jgen, prov, writer); } else { jgen.writeStringField(writer.getSerializedName().getValue(), REDACTION_STRING); } } }
@Override public void serializeAsField( final Object pojo, final JsonGenerator jgen, final SerializerProvider prov, final PropertyWriter writer) throws Exception { if (writer instanceof BeanPropertyWriter) { final BeanPropertyWriter beanPropertyWriter = (BeanPropertyWriter) writer; if (beanPropertyWriter.getAnnotation(LogRedact.class) == null) { super.serializeAsField(pojo, jgen, prov, writer); } else { if (_allowNull && beanPropertyWriter.get(pojo) == null) { super.serializeAsField(pojo, jgen, prov, writer); } else { jgen.writeStringField(beanPropertyWriter.getSerializedName().getValue(), REDACTION_STRING); } } } else { super.serializeAsField(pojo, jgen, prov, writer); } }
@Override public List<BeanPropertyWriter> changeProperties(SerializationConfig config, BeanDescription beanDesc, List<BeanPropertyWriter> beanProperties) { for (BeanPropertyWriter beanProperty : beanProperties) { StoredAsJson storedAsJson = beanProperty.getAnnotation(StoredAsJson.class); if (storedAsJson != null && !StoredAsJson.NULL.equals(storedAsJson.empty())) { final JsonSerializer<Object> nullSerializer; if (storedAsJson.binary()) { nullSerializer = new ConstantBinarySerializer(storedAsJson.empty()); } else { nullSerializer = new ConstantSerializer(storedAsJson.empty()); } beanProperty.assignNullSerializer(nullSerializer); } } return super.changeProperties(config, beanDesc, beanProperties); } }
final JsonIdentityReference identityReferenceP = propertyWriter.getAnnotation(JsonIdentityReference.class); final JsonIdentityReference identityReference = identityReferenceP != null ? identityReferenceP : identityReferenceC; final boolean alwaysAsId = identityReference != null && identityReference.alwaysAsId();
final JsonUnwrapped annotation = beanPropertyWriter.getAnnotation(JsonUnwrapped.class); if (annotation != null && annotation.enabled()) { pullProperties = new PropertyModel.PullProperties(annotation.prefix(), annotation.suffix());