Opened at 2019-10-03T13:56:17Z
Last modified at 2019-10-03T16:35:43Z
#3258 assigned defect
The interface for the client-side storage plugin web resource has a one-to-many conflict — at Version 2
Reported by: | exarkun | Owned by: | exarkun |
---|---|---|---|
Priority: | normal | Milestone: | storage economics plugins |
Component: | unknown | Version: | n/a |
Keywords: | Cc: | ||
Launchpad Bug: |
Description (last modified by exarkun)
Storage plugins can contribute to the web interface on client nodes. They do this by implementing IFoolscapStoragePlugin.get_client_resource. This is somewhat awkward to implement because it does not receive all of the same information that IFoolscapStoragePlugin.get_storage_client receives and collecting that information where get_client_resource needs to be called is challenging to implement.
This divergence in available information is caused by the following conflict. get_client_resource is expected to return a single resource which represents "the plugin". However, get_storage_client is called on a per-server basis to get an IStorageServer provider specifically for that single server. Since a Tahoe-LAFS client can be connected to many servers, this call may be made many times to create many objects.
I don't see any way to easily simultaneously accommodate both of these constraints.
Change History (2)
comment:1 Changed at 2019-10-03T13:56:23Z by exarkun
- Owner set to exarkun
- Status changed from new to assigned
comment:2 Changed at 2019-10-03T16:33:24Z by exarkun
- Description modified (diff)
- Summary changed from Get the client-side web resource for storage plugins from the storage object itself to The interface for the client-side storage plugin web resource has a one-to-many conflict