Skip to content

Commit 63cd968

Browse files
authored
fix open by default app and expose default app (#2230)
1 parent 2ca63c8 commit 63cd968

File tree

4 files changed

+31
-10
lines changed

4 files changed

+31
-10
lines changed
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
Bugfix: Fix open by default app and expose default app
2+
3+
We've fixed the open by default app name behaviour which previously only worked, if the default app was configured by the provider address.
4+
We also now expose the default app on the `/app/list` endpoint to clients.
5+
6+
https://github.com/cs3org/reva/issues/2230
7+
https://github.com/cs3org/cs3apis/pull/157

go.mod

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ require (
1717
github.com/cheggaaa/pb v1.0.29
1818
github.com/coreos/go-oidc v2.2.1+incompatible
1919
github.com/cs3org/cato v0.0.0-20200828125504-e418fc54dd5e
20-
github.com/cs3org/go-cs3apis v0.0.0-20211018122138-391b29bd7803
20+
github.com/cs3org/go-cs3apis v0.0.0-20211104090126-8e972dca8304
2121
github.com/cubewise-code/go-mime v0.0.0-20200519001935-8c5762b177d8
2222
github.com/eventials/go-tus v0.0.0-20200718001131-45c7ec8f5d59
2323
github.com/gdexlab/go-render v1.0.1

go.sum

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -111,8 +111,12 @@ github.com/coreos/go-systemd/v22 v22.3.2/go.mod h1:Y58oyj3AT4RCenI/lSvhwexgC+NSV
111111
github.com/creack/pty v1.1.9/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E=
112112
github.com/cs3org/cato v0.0.0-20200828125504-e418fc54dd5e h1:tqSPWQeueWTKnJVMJffz4pz0o1WuQxJ28+5x5JgaHD8=
113113
github.com/cs3org/cato v0.0.0-20200828125504-e418fc54dd5e/go.mod h1:XJEZ3/EQuI3BXTp/6DUzFr850vlxq11I6satRtz0YQ4=
114+
github.com/cs3org/go-cs3apis v0.0.0-20210325133324-32b03d75a535 h1:555D8A3ddKqb4OyK9v5mdphw2zDLWKGXOkcnf1RQwTA=
115+
github.com/cs3org/go-cs3apis v0.0.0-20210325133324-32b03d75a535/go.mod h1:UXha4TguuB52H14EMoSsCqDj7k8a/t7g4gVP+bgY5LY=
114116
github.com/cs3org/go-cs3apis v0.0.0-20211018122138-391b29bd7803 h1:R/6llgTNKxQQ7GaSTgFn6Fp8N50wIlagmdR7WY5LntM=
115117
github.com/cs3org/go-cs3apis v0.0.0-20211018122138-391b29bd7803/go.mod h1:UXha4TguuB52H14EMoSsCqDj7k8a/t7g4gVP+bgY5LY=
118+
github.com/cs3org/go-cs3apis v0.0.0-20211104090126-8e972dca8304 h1:e/nIPR518vyvrulo9goAZTtYD6gFfu/2/9MDe6mTGcw=
119+
github.com/cs3org/go-cs3apis v0.0.0-20211104090126-8e972dca8304/go.mod h1:UXha4TguuB52H14EMoSsCqDj7k8a/t7g4gVP+bgY5LY=
116120
github.com/cubewise-code/go-mime v0.0.0-20200519001935-8c5762b177d8 h1:Z9lwXumT5ACSmJ7WGnFl+OMLLjpz5uR2fyz7dC255FI=
117121
github.com/cubewise-code/go-mime v0.0.0-20200519001935-8c5762b177d8/go.mod h1:4abs/jPXcmJzYoYGF91JF9Uq9s/KL5n1jvFDix8KcqY=
118122
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=

pkg/app/registry/static/static.go

Lines changed: 19 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -227,13 +227,14 @@ func (m *manager) ListSupportedMimeTypes(ctx context.Context) ([]*registrypb.Mim
227227
mime := pair.Value.(*mimeTypeConfig)
228228

229229
res = append(res, &registrypb.MimeTypeInfo{
230-
MimeType: mime.MimeType,
231-
Ext: mime.Extension,
232-
Name: mime.Name,
233-
Description: mime.Description,
234-
Icon: mime.Icon,
235-
AppProviders: mime.apps,
236-
AllowCreation: mime.AllowCreation,
230+
MimeType: mime.MimeType,
231+
Ext: mime.Extension,
232+
Name: mime.Name,
233+
Description: mime.Description,
234+
Icon: mime.Icon,
235+
AppProviders: mime.apps,
236+
AllowCreation: mime.AllowCreation,
237+
DefaultApplication: mime.DefaultApp,
237238
})
238239

239240
}
@@ -300,11 +301,20 @@ func (m *manager) GetDefaultProviderForMimeType(ctx context.Context, mimeType st
300301
m.RLock()
301302
defer m.RUnlock()
302303

303-
mime, ok := m.mimetypes.Get(mimeType)
304+
mimeInterface, ok := m.mimetypes.Get(mimeType)
304305
if ok {
305-
if p, ok := m.providers[mime.(*mimeTypeConfig).DefaultApp]; ok {
306+
mime := mimeInterface.(*mimeTypeConfig)
307+
// default by provider address
308+
if p, ok := m.providers[mime.DefaultApp]; ok {
306309
return p, nil
307310
}
311+
312+
// default by provider name
313+
for _, p := range m.providers {
314+
if p.Name == mime.DefaultApp {
315+
return p, nil
316+
}
317+
}
308318
}
309319

310320
return nil, errtypes.NotFound("default application provider not set for mime type " + mimeType)

0 commit comments

Comments
 (0)