Skip to content

Commit 23b583c

Browse files
committed
Refactoring of the GORM model for shares
1 parent f41ee18 commit 23b583c

File tree

4 files changed

+145
-159
lines changed

4 files changed

+145
-159
lines changed
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
Enhancement: refactoring of the GORM model for shares
2+
3+
With this PR we introduce new constraints and rename
4+
some fields for better consistency:
5+
6+
* Types used by OCM structures only are prefixed with
7+
`Ocm`, and `AccessMethod` and `Protocol` were
8+
consolidated into `OcmProtocol`
9+
* ItemType is used in OCM shares as well
10+
* Unique indexes have been created for all shares
11+
* The `(FileIdPrefix, ItemSource)` tuple is now
12+
`(StorageId, FileId)` in `OcmShare`, and it was
13+
removed from `OcmReceivedShare` as unused
14+
15+
https://github.com/cs3org/reva/pull/5402
16+

pkg/share/manager/sql/conversions.go

Lines changed: 22 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -32,35 +32,35 @@ import (
3232
model "github.com/cs3org/reva/v3/pkg/share/manager/sql/model"
3333
)
3434

35-
func convertFromCS3OCMShareType(shareType ocm.ShareType) model.ShareType {
35+
func convertFromCS3OCMShareType(shareType ocm.ShareType) model.OcmShareType {
3636
switch shareType {
3737
case ocm.ShareType_SHARE_TYPE_USER:
38-
return model.ShareTypeUser
38+
return model.OcmShareTypeUser
3939
case ocm.ShareType_SHARE_TYPE_GROUP:
40-
return model.ShareTypeGroup
40+
return model.OcmShareTypeGroup
4141
}
4242
return -1
4343
}
4444

4545
func convertFromCS3OCMShareState(shareState ocm.ShareState) model.OcmShareState {
4646
switch shareState {
4747
case ocm.ShareState_SHARE_STATE_ACCEPTED:
48-
return model.ShareStateAccepted
48+
return model.OcmShareStateAccepted
4949
case ocm.ShareState_SHARE_STATE_PENDING:
50-
return model.ShareStatePending
50+
return model.OcmShareStatePending
5151
case ocm.ShareState_SHARE_STATE_REJECTED:
52-
return model.ShareStateRejected
52+
return model.OcmShareStateRejected
5353
}
5454
return -1
5555
}
5656

5757
func convertToCS3OCMShareState(state model.OcmShareState) ocm.ShareState {
5858
switch state {
59-
case model.ShareStateAccepted:
59+
case model.OcmShareStateAccepted:
6060
return ocm.ShareState_SHARE_STATE_ACCEPTED
61-
case model.ShareStatePending:
61+
case model.OcmShareStatePending:
6262
return ocm.ShareState_SHARE_STATE_PENDING
63-
case model.ShareStateRejected:
63+
case model.OcmShareStateRejected:
6464
return ocm.ShareState_SHARE_STATE_REJECTED
6565
}
6666
return ocm.ShareState_SHARE_STATE_INVALID
@@ -73,8 +73,8 @@ func convertToCS3OCMShare(s *model.OcmShare, am []*ocm.AccessMethod) *ocm.Share
7373
OpaqueId: strconv.Itoa(int(s.Id)),
7474
},
7575
ResourceId: &provider.ResourceId{
76-
StorageId: s.FileidPrefix,
77-
OpaqueId: s.ItemSource,
76+
StorageId: s.StorageId,
77+
OpaqueId: s.FileId,
7878
},
7979
Name: s.Name,
8080
Token: s.Token,
@@ -161,15 +161,15 @@ func viewModeToInt(v appprovider.ViewMode) int {
161161
return -1
162162
}
163163

164-
func convertToCS3AccessMethod(m *model.OcmSharesAccessMethod) *ocm.AccessMethod {
164+
func convertToCS3AccessMethod(m *model.OcmShareProtocol) *ocm.AccessMethod {
165165
switch m.Type {
166-
case model.WebDAVAccessMethod:
166+
case model.WebDAVProtocol:
167167
return share.NewWebDavAccessMethod(
168168
conversions.RoleFromOCSPermissions(conversions.Permissions(m.Permissions)).CS3ResourcePermissions(),
169169
[]string{}) // TODO persist requirements
170-
case model.WebappAccessMethod:
170+
case model.WebappProtocol:
171171
return share.NewWebappAccessMethod(appprovider.ViewMode(m.Permissions))
172-
case model.TransferAccessMethod:
172+
case model.TransferProtocol:
173173
return share.NewTransferAccessMethod()
174174
}
175175
return nil
@@ -189,22 +189,22 @@ func convertToCS3Protocol(p *model.OcmReceivedShareProtocol) *ocm.Protocol {
189189
return nil
190190
}
191191

192-
func convertToCS3ResourceType(t model.OcmItemType) provider.ResourceType {
192+
func convertToCS3ResourceType(t model.ItemType) provider.ResourceType {
193193
switch t {
194-
case model.OcmItemTypeFile:
194+
case model.ItemTypeFile:
195195
return provider.ResourceType_RESOURCE_TYPE_FILE
196-
case model.OcmItemTypeFolder:
196+
case model.ItemTypeFolder:
197197
return provider.ResourceType_RESOURCE_TYPE_CONTAINER
198198
}
199199
return provider.ResourceType_RESOURCE_TYPE_INVALID
200200
}
201201

202-
func convertFromCS3ResourceType(t provider.ResourceType) model.OcmItemType {
202+
func convertFromCS3ResourceType(t provider.ResourceType) model.ItemType {
203203
switch t {
204204
case provider.ResourceType_RESOURCE_TYPE_FILE:
205-
return model.OcmItemTypeFile
205+
return model.ItemTypeFile
206206
case provider.ResourceType_RESOURCE_TYPE_CONTAINER:
207-
return model.OcmItemTypeFolder
207+
return model.ItemTypeFolder
208208
}
209-
return -1
209+
return model.ItemTypeFile
210210
}

0 commit comments

Comments
 (0)