Skip to content

DomainObjectSerializer API #18

@beikov

Description

@beikov

The idea is to provide an API for serializing and deserializing domain objects to some format(csv, excel, json, xml, etc.). This is similar/related to expression serialization in blaze-expression, but in this case is only for domain objects. The serializer contract should offer methods for serializing a header and payload. The idea is that the header only needs to be serialized once and payload can be serialized multiple times afterwards into an existing context.

I have to think more about this, as we might move this to blaze-data. Not sure if it even makes sense to define the base contracts in blaze-domain.

The main driver for this is the serialization/deserialization for the excel format. The implementation should use a library like Apache POI. The domain model contains serialization metadata e.g. @ExcelColumn(index = 1, converter = SomeConverter.class) which is used to drive the serialization. The API should be capable to create a specialized serializer/deserializer for a domain type so that it can spin bytecode behind the scenes if wanted. The converter is very similar to the TypeAdapter contract in blaze-expression, so we might want to lift this contract into blaze-domain.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions