@Override
public void serialize(PropertyPath path, Object object, WriteContext context) {
context.put(path, Persistent.object(alias));
BiConsumer<String, AccessibleProperty> propertySerializer = (name, property) -> {
PropertyPath subPath = path.property(name);
Object value = property.get(object);
context.serialize(subPath, value);
};
properties.forEach(propertySerializer);
if (identifier != null && identifier.property.isWritable()) {
propertySerializer.accept(identifier.name, identifier.property);
}
}