tree 9afeddc27e3a781f32189591d5d9f22c705cf599
parent dcecf11e8af4f6280c34bad629b5087b9141a836
author Dave Borowitz <dborowitz@google.com> 1552924964 -0700
committer Dave Borowitz <dborowitz@google.com> 1552924964 -0700

Bind ChangeAttributeFactory as a DynamicSet

DynamicMaps allow a view of plugin-provided bindings keyed by export
names. The main use case for an export name is to provide something with
that name that is visible to an end user, such as a new SSH command. In
the case of ChangeAttributeFactory, the export name is entirely unused;
it's just an arbitrary string that the plugin author provides, which has
to be unique to their plugin, but is otherwise meaningless.

By using DynamicSet instead of DynamicMap for these bindings, we
eliminate one line of boilerplate for plugin authors, and avoid
confusing them with the impression that this arbitrary string has
meaning.

The good news is that old plugins that use an explicit, arbitrary export
name will continue to work, because DynamicSet is implemented internally
by using separate binding annotations per instance. If callers use the
DynamicSet interface, they get a unique annotation for free, but it
still works if they explicitly pass the export annotation.

Convert most tests in PluginFieldsIT to demonstrate the new way, but
leave one test that uses the old explicit export to ensure that it still
works.

Change-Id: Iaf7e6ac8a53be115f1bc01e716e0fb3c04033754
