I don't think this should require a new CR as it is an *addition* to an
SPI, but wanted to run it past everyone and get y'alls thoughts. I ran
across the need for this while re-working the documentation.
Basically I needed a (easy) way to allow users to override the implicit
resolution for a built-in basic type. So I added the following method to
MetadataBuilder:
applyBasicType(BasicType type, String... keys)
specifically passing in some keys, intending to allow overriding the keys
defined by BasicType. To that end I did have to make one additional change
to add a new type, BasicTypeRegistration, to act as a tuple for the
BasicType+keys and MetadataBuildingOptions#getBasicTypeRegistrations to
return this type rather than "just" returning BasicType.
The specific use-case was to allow users to easy remap how UUID attributes
are handled (store as CHAR rather than BINARY). But really it is useful
for altering any implicit attribute type mapping.
Show replies by date