See: Description
| Interface | Description |
|---|---|
| Translator |
Performs translation between library specific types and neutral types.
|
| Class | Description |
|---|---|
| Ersatz |
Neutral form for communication with various forms of EO object storages.
|
Neo4J adaptor makes use of a few libraries (specifically: Lucene, Neo4J and NextStep collection types) of which
each has its own limitations or ways to denote some value being not set (empty). To name some, NSDictionary
can't store null value (uses NSKeyValueCoding.Null instead,
Neo4J uses no value at all for null, Lucene doesn't support timestamps.
To work around cross-library communication we introduce record ersatz term which is a map of EO attribute to neutral java value,
where numbers are represented by suitable numeric classes, timestamps are represented by subclasses of Date,
nulls are represented by nulls and ersatz object contains information on which EO attribute values
are EMPTY (so null is considered to be some value). Record ersatz are instances of Ersatz.
For each library there's custom Ersatz implementation that uses custom Translator to convert between neutral
and library specific values.
Copyright © 2002 – 2020 Project Wonder.