mirror of
https://github.com/opencloud-eu/opencloud.git
synced 2026-01-05 11:51:16 -06:00
2.0 KiB
2.0 KiB
title, date, weight, geekdocRepo, geekdocEditPath, geekdocFilePath, geekdocCollapseSection
| title | date | weight | geekdocRepo | geekdocEditPath | geekdocFilePath | geekdocCollapseSection |
|---|---|---|---|---|---|---|
| Create Share Flow | 2018-05-02T00:00:00+00:00 | 40 | https://github.com/owncloud/ocis | edit/master/docs/services/ocm | create_share_flow.md | true |
OCM Create Share Flow
{{< mermaid class="text-center">}} sequenceDiagram box Instance A participant osp as ocmsharesprovider participant gwa as Gateway A participant httpa as ocs end actor usera as User A box Instance B participant httpb as ocmd participant gwb as Gateway B participant ocmc as OCMCore end
Note over usera: A shares a resource with B
usera->>+httpa: CreateShare
httpa->>+gwa: GetInfoByDomain
Note left of gwa: GetInfoByDomain<br/>(ocmproviderauthorizer)
gwa-->>-httpa: return
httpa->>+gwa: GetAcceptedUser
Note left of gwa: GetAcceptedUser<br/>(ocminvitemanager)
gwa-->>-httpa: return
httpa->>+gwa: CreateOCMShare
gwa->>+osp: CreateOCMShare
osp->>+gwa: Stat
gwa-->>-osp: return
Note left of osp: store share in repo
osp->>+httpb: POST /shares
httpb->>+gwb: IsProviderAllowed
Note right of gwb: IsProviderAllowed<br/>(ocmproviderauthorizer)
gwb-->>-httpb: return
httpb->>+gwb: GetUser
Note right of gwb: GetUser<br/>(userprovider)
gwb-->>-httpb: return
httpb->>+gwb: CreateOCMCoreShare
gwb->>+ocmc: CreateOCMCoreShare
Note right of ocmc: StoreReceivedShare
ocmc-->>-gwb: return
gwb-->>-httpb: return
httpb-->>-osp: return
osp-->>-gwa: return
gwa-->>-httpa: return
httpa->>+gwa: Stat
Note left of gwa: Stat<br/>(storageprovider)
gwa-->>-httpa: return
httpa-->>-usera: return
{{< /mermaid >}}