Builder#tag (and ItemBuilder#tag, etc.) only allow one tag, and overwrite the previous data provider if called multiple times. This is not ergonomic and requires users to fall back to setData.
There should be an abstracted Tag API that allows for multiple tags to be specified easily. This might involve moving tag up into AbstractBuilder so that tag callbacks can be managed in a field rather than added as a data provider directly.
Builder#tag
(andItemBuilder#tag
, etc.) only allow one tag, and overwrite the previous data provider if called multiple times. This is not ergonomic and requires users to fall back tosetData
.There should be an abstracted Tag API that allows for multiple tags to be specified easily. This might involve moving
tag
up intoAbstractBuilder
so that tag callbacks can be managed in a field rather than added as a data provider directly.