Skip to content

Commit 4fc6852

Browse files
committed
Update CS3API and add support for updating share expiration
1 parent ff0643c commit 4fc6852

File tree

4 files changed

+31
-11
lines changed

4 files changed

+31
-11
lines changed

go.mod

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,10 @@ toolchain go1.24.2
77
require (
88
github.com/Masterminds/sprig v2.22.0+incompatible
99
github.com/bluele/gcache v0.0.2
10-
github.com/cs3org/go-cs3apis v0.0.0-20250218144737-544dd3919658
10+
github.com/cs3org/go-cs3apis v0.0.0-20250626104136-a0b31b323c48
1111
github.com/cs3org/reva v1.27.0
1212
github.com/disintegration/imaging v1.6.2
13-
github.com/go-chi/chi/v5 v5.2.1
13+
github.com/go-chi/chi/v5 v5.2.2
1414
github.com/go-sql-driver/mysql v1.9.3
1515
github.com/gomodule/redigo v1.9.2
1616
github.com/juliangruber/go-intersect v1.1.0
@@ -43,7 +43,7 @@ require (
4343
github.com/go-playground/universal-translator v0.18.1 // indirect
4444
github.com/go-playground/validator/v10 v10.26.0 // indirect
4545
github.com/gofrs/uuid v4.4.0+incompatible // indirect
46-
github.com/golang-jwt/jwt v3.2.2+incompatible // indirect
46+
github.com/golang-jwt/jwt/v5 v5.2.2 // indirect
4747
github.com/golang/protobuf v1.5.4 // indirect
4848
github.com/google/uuid v1.6.0 // indirect
4949
github.com/huandu/xstrings v1.5.0 // indirect

go.sum

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -24,8 +24,8 @@ github.com/coreos/go-systemd/v22 v22.5.0/go.mod h1:Y58oyj3AT4RCenI/lSvhwexgC+NSV
2424
github.com/creack/pty v1.1.9/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E=
2525
github.com/creasty/defaults v1.8.0 h1:z27FJxCAa0JKt3utc0sCImAEb+spPucmKoOdLHvHYKk=
2626
github.com/creasty/defaults v1.8.0/go.mod h1:iGzKe6pbEHnpMPtfDXZEr0NVxWnPTjb1bbDy08fPzYM=
27-
github.com/cs3org/go-cs3apis v0.0.0-20250218144737-544dd3919658 h1:CmH7twDuNUrHQXChZMafWjsEp1V47KutJlOAt6FjzGA=
28-
github.com/cs3org/go-cs3apis v0.0.0-20250218144737-544dd3919658/go.mod h1:DedpcqXl193qF/08Y04IO0PpxyyMu8+GrkD6kWK2MEQ=
27+
github.com/cs3org/go-cs3apis v0.0.0-20250626104136-a0b31b323c48 h1:ia8WkfK+9quVDRZzEXmjV9vmdwVbVyX26uVTIJlJm0o=
28+
github.com/cs3org/go-cs3apis v0.0.0-20250626104136-a0b31b323c48/go.mod h1:DedpcqXl193qF/08Y04IO0PpxyyMu8+GrkD6kWK2MEQ=
2929
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
3030
github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=
3131
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
@@ -39,8 +39,8 @@ github.com/glpatcern/go-mime v0.0.0-20221026162842-2a8d71ad17a9 h1:3um08ooi0/lyR
3939
github.com/glpatcern/go-mime v0.0.0-20221026162842-2a8d71ad17a9/go.mod h1:EJaddanP+JfU3UkVvn0rYYF3b/gD7eZRejbTHqiQExA=
4040
github.com/go-asn1-ber/asn1-ber v1.5.8-0.20250403174932-29230038a667 h1:BP4M0CvQ4S3TGls2FvczZtj5Re/2ZzkV9VwqPHH/3Bo=
4141
github.com/go-asn1-ber/asn1-ber v1.5.8-0.20250403174932-29230038a667/go.mod h1:hEBeB/ic+5LoWskz+yKT7vGhhPYkProFKoKdwZRWMe0=
42-
github.com/go-chi/chi/v5 v5.2.1 h1:KOIHODQj58PmL80G2Eak4WdvUzjSJSm0vG72crDCqb8=
43-
github.com/go-chi/chi/v5 v5.2.1/go.mod h1:L2yAIGWB3H+phAw1NxKwWM+7eUH/lU8pOMm5hHcoops=
42+
github.com/go-chi/chi/v5 v5.2.2 h1:CMwsvRVTbXVytCk1Wd72Zy1LAsAh9GxMmSNWLHCG618=
43+
github.com/go-chi/chi/v5 v5.2.2/go.mod h1:L2yAIGWB3H+phAw1NxKwWM+7eUH/lU8pOMm5hHcoops=
4444
github.com/go-ldap/ldap/v3 v3.4.11 h1:4k0Yxweg+a3OyBLjdYn5OKglv18JNvfDykSoI8bW0gU=
4545
github.com/go-ldap/ldap/v3 v3.4.11/go.mod h1:bY7t0FLK8OAVpp/vV6sSlpz3EQDGcQwc8pF0ujLgKvM=
4646
github.com/go-logr/logr v1.4.2 h1:6pFjapn8bFcIbiKo3XT4j/BhANplGihG6tvd+8rYgrY=
@@ -60,8 +60,8 @@ github.com/go-sql-driver/mysql v1.9.3/go.mod h1:qn46aNg1333BRMNU69Lq93t8du/dwxI6
6060
github.com/godbus/dbus/v5 v5.0.4/go.mod h1:xhWf0FNVPg57R7Z0UbKHbJfkEywrmjJnf7w5xrFpKfA=
6161
github.com/gofrs/uuid v4.4.0+incompatible h1:3qXRTX8/NbyulANqlc0lchS1gqAVxRgsuW1YrTJupqA=
6262
github.com/gofrs/uuid v4.4.0+incompatible/go.mod h1:b2aQJv3Z4Fp6yNu3cdSllBxTCLRxnplIgP/c0N/04lM=
63-
github.com/golang-jwt/jwt v3.2.2+incompatible h1:IfV12K8xAKAnZqdXVzCZ+TOjboZ2keLg81eXfW3O+oY=
64-
github.com/golang-jwt/jwt v3.2.2+incompatible/go.mod h1:8pz2t5EyA70fFQQSrl6XZXzqecmYZeUEB8OUGHkxJ+I=
63+
github.com/golang-jwt/jwt/v5 v5.2.2 h1:Rl4B7itRWVtYIHFrSNd7vhTiz9UpLdi6gZhZ3wEeDy8=
64+
github.com/golang-jwt/jwt/v5 v5.2.2/go.mod h1:pqrtFR0X4osieyHYxtmOUWsAWrfe1Q5UVIyoH402zdk=
6565
github.com/golang-sql/civil v0.0.0-20220223132316-b832511892a9 h1:au07oEsX2xN0ktxqI+Sida1w446QrXBRJ0nee3SNZlA=
6666
github.com/golang-sql/civil v0.0.0-20220223132316-b832511892a9/go.mod h1:8vg3r2VgvsThLBIFL93Qb5yWzgyZWhEmBwUJWevAkK0=
6767
github.com/golang-sql/sqlexp v0.1.0 h1:ZCD6MBpcuOVfGVqsEmY5/4FtYiKz6tSyUv9LPEDei6A=

share/sql/share.go

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -195,6 +195,20 @@ func (m *ShareMgr) UpdateShare(ctx context.Context, ref *collaboration.ShareRefe
195195
}
196196
case *collaboration.UpdateShareRequest_UpdateField_DisplayName:
197197
// Our shares don't support display names at the moment ...
198+
case *collaboration.UpdateShareRequest_UpdateField_Expiration:
199+
expiration := req.Field.GetExpiration()
200+
if expiration == nil {
201+
res := m.db.Model(&share).Where("id = ?", share.Id).Update("expiration", nil)
202+
if res.Error != nil {
203+
return nil, res.Error
204+
}
205+
} else {
206+
res := m.db.Model(&share).Where("id = ?", share.Id).Update("expiration", time.Unix(int64(expiration.Seconds), 0))
207+
if res.Error != nil {
208+
return nil, res.Error
209+
}
210+
}
211+
198212
}
199213

200214
return m.GetShare(ctx, ref)

share/sql/share_test.go

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -481,8 +481,14 @@ func TestUpdateShare(t *testing.T) {
481481
Spec: &collaboration.ShareReference_Id{
482482
Id: share.Id,
483483
},
484-
}, &collaboration.SharePermissions{
485-
Permissions: conversions.IntTosharePerm(newPermissions, "file"),
484+
}, &collaboration.UpdateShareRequest{
485+
Field: &collaboration.UpdateShareRequest_UpdateField{
486+
Field: &collaboration.UpdateShareRequest_UpdateField_Permissions{
487+
Permissions: &collaboration.SharePermissions{
488+
Permissions: conversions.IntTosharePerm(newPermissions, "file"),
489+
},
490+
},
491+
},
486492
})
487493
if err != nil {
488494
t.Error(err)

0 commit comments

Comments
 (0)