-
Type: Epic
-
Resolution: Unresolved
-
Priority: Major - P3
-
None
-
Affects Version/s: None
-
Component/s: POJO
-
To Do
-
Refactor Pojo Codec
Summary
Refactor the POJO Code support to improve readability
Motivation
Engineers on the Java driver team are having trouble reviewing bug fixes and enhancements to the POJO codec due to the complexity of the implementation. This project aims to improve readability through a series of refactorings.
Further research during the scoping phase will specify what we aim to do. For now, the main idea is to improve readability by front-loading all configuration to constructors such that the codec is immutable by the time of first use. Essentially, all fields will be final and deeply immutable (e.g. no updates to lists or dictionaries after construction)
Cast of Characters
Engineering Lead:
Document Author:
POCers:
Product Owner:
Program Manager:
Stakeholders:
Documentation
[Scope Document|some.url]
[Technical Design Document|some.url]
- is depended on by
-
JAVA-4578 Java driver cannot handle Deeper Polymorphic trees
- Backlog
-
JAVA-4478 ConventionAnnotationImpl issue with a @BsonIgnore'd setter method
- Backlog
-
JAVA-4479 Issue with setter of different type than field
- Backlog
- is related to
-
JAVA-5646 ClassModel throws ClassCastException when deep ParameterizedType exist in field type
- Backlog