-
Notifications
You must be signed in to change notification settings - Fork 112
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Document difference between OCM Shares and collaboration Shares #2148
Comments
It expects req.Opaque to be a map with:
It then sets I'll see if I can find out if any of the existing share manager implementations do anything with these arguments, if not then we should probably stop requiring them. |
Ah wait, there is ocm.share.Manager So apparently OCM isn't the only way to collaborate in ScienceMesh? Anyway, this does probably confirm that the bug is in the CS3API message for |
The difference between OCM shares and collaboration shares is as follows: < // Manager is the interface that manipulates the OCM shares.
---
> // Manager is the interface that manipulates shares.
4,5c4
< Share(ctx context.Context, md *provider.ResourceId, g *ocm.ShareGrant, name string,
< pi *ocmprovider.ProviderInfo, pm string, owner *userpb.UserId, token string, st ocm.Share_ShareType) (*ocm.Share, error)
---
> Share(ctx context.Context, md *provider.ResourceInfo, g *collaboration.ShareGrant) (*collaboration.Share, error)
8c7
< GetShare(ctx context.Context, ref *ocm.ShareReference) (*ocm.Share, error)
---
> GetShare(ctx context.Context, ref *collaboration.ShareReference) (*collaboration.Share, error)
11c10
< Unshare(ctx context.Context, ref *ocm.ShareReference) error
---
> Unshare(ctx context.Context, ref *collaboration.ShareReference) error
14c13
< UpdateShare(ctx context.Context, ref *ocm.ShareReference, p *ocm.SharePermissions) (*ocm.Share, error)
---
> UpdateShare(ctx context.Context, ref *collaboration.ShareReference, p *collaboration.SharePermissions) (*collaboration.Share, error)
18c17
< ListShares(ctx context.Context, filters []*ocm.ListOCMSharesRequest_Filter) ([]*ocm.Share, error)
---
> ListShares(ctx context.Context, filters []*collaboration.Filter) ([]*collaboration.Share, error)
21c20
< ListReceivedShares(ctx context.Context) ([]*ocm.ReceivedShare, error)
---
> ListReceivedShares(ctx context.Context, filters []*collaboration.Filter) ([]*collaboration.ReceivedShare, error)
24c23
< GetReceivedShare(ctx context.Context, ref *ocm.ShareReference) (*ocm.ReceivedShare, error)
---
> GetReceivedShare(ctx context.Context, ref *collaboration.ShareReference) (*collaboration.ReceivedShare, error)
27c26
< UpdateReceivedShare(ctx context.Context, share *ocm.ReceivedShare, fieldMask *field_mask.FieldMask) (*ocm.ReceivedShare, error)
---
> UpdateReceivedShare(ctx context.Context, share *collaboration.ReceivedShare, fieldMask *field_mask.FieldMask) (*collaboration.ReceivedShare, error) |
@michielbdejong thanks for reporting. I understand there are a few elements specific to our implementation. IIRC, at the time of implementing this, I did find a few missing things in the OCM API. Would you be available for a short discussion around this sometime next week? We can converge around the discrepancies and I can work towards making our implementation more robust. |
It looks like |
The Opaque field in a CreateOCMShareRequest is optional but Reva's
implementation requires it.
The text was updated successfully, but these errors were encountered: