Add ability to Add, Modify, Set and Delete attributes, Query and Poll.
This issue is an expansion of #277 and then some, so excuse the catch-all and feel free to split this issue into components if you so choose.
Attributes ...
-
At present only a select few attributes are populated, and there are some that appear to be part of the object (get command) that do not seem to be populated, but are repeated under the attributes section (get_attributes command) where they are populated.
-
As noted in our conversations, the commands add_attribute, adjust_attribute, delete_attribute, modify_attribute and set_attribute are not implemented yet. KMIP 2.0 radically rewrote how attributes are handled, basically allowing users to create custom attributes, which has only complicated implementation. I would suggest only concentrating on set_attribute (which can add or modify), revising get_attributes to handle the new paradigm, then delete_attribute. The other commands are redundant to the functionality provided by the three aforementioned commands.
Other commands ...
-
Export: Helpful, but not critical. Can be done with a get command followed by a get_attributes command.
-
Import: Helpful, but not critical. The register command can store an object, but until set_attribute is implemented the attributes associated with that object cannot be set.
-
Poll: In larger environments the ability to "poll" the status of asynchronous operations will become critical to keep clients from timing out.
-
Query: As per our conversations, this was implemented in the old ProxyKMIPClient, not yet in the new client.
Thanks for filing this @KBassford . For now we can keep this as an overarching tracker for these different features and link in smaller issues as each part gets addressed.