Commit graph

26 commits

Author SHA1 Message Date
Roeland Jago Douma
a24e7f6558 Add path filter to OCS Share API ?shared_with_me=true
This allows all clients to quickly get the share info for a given path.
Instead of returning everything and filtering it then manually on the
client side.
2016-01-29 15:36:23 +01:00
Roeland Jago Douma
8d44e537ac [Share 2.0] Remove setId and setProviderId from the interface
Those should only ever be set by the providers
2016-01-28 07:54:16 +01:00
Roeland Jago Douma
34e912ab6b [Share 2.0] Fix interfaces and comments
* Made comments more clear
* Removed unneeded methods
* IShares shareTime is now a proper DateTime object
* IShares getPath -> getNode & setPath -> setNode
* Fix unit tests
2016-01-28 07:54:09 +01:00
Roeland Jago Douma
357b271cb4 [Share 2.0] Create IManger interface for share manager 2016-01-27 22:04:37 +01:00
Roeland Jago Douma
185b9c6edd [Share 2.0] Move IShare to OCP 2016-01-27 22:04:37 +01:00
Roeland Jago Douma
d11682dcb4 Fix comments from Thomas 2016-01-26 15:31:52 +01:00
Roeland Jago Douma
e508bcb7a7 [Share 2.0] Fire off hook 2016-01-26 13:59:58 +01:00
Roeland Jago Douma
46045ecc52 [Share 2.0] Add update share 2016-01-26 13:59:58 +01:00
Roeland Jago Douma
a6600e95dc [Share 2.0] Add deleteFromSelf method
This allows recipient to delete a share. For user shares this is the
same as deleting (at least for now).
But for group shares this means creating a new share with type 2. With
permissions set to 0.
2016-01-22 15:06:50 +01:00
Roeland Jago Douma
0a9cd91e1d [Share 2.0] Add subfiles=x 2016-01-21 15:56:44 +01:00
Roeland Jago Douma
3666c34a19 [Sharing 2.0] Start with getShares 2016-01-21 15:56:44 +01:00
Roeland Jago Douma
e40d21673e [Share 2.0] Add fetching link shares to share manager 2016-01-20 21:12:26 +01:00
Roeland Jago Douma
4cc2230c58 [Share 2.0] Fix pre_share and post_share hooks 2016-01-13 21:56:04 +01:00
Roeland Jago Douma
5f5951c8cf [Share 2.0] Let the factory do the factory stuff
* Updated unit tests (bit cleaner now)
2016-01-13 16:35:15 +01:00
Roeland Jago Douma
cbd3050f4c [Share 2.0] Use full share id (providerId:shareId)
Now that we support multiple managers we communicate shares to the
outside as 'providerId:shareId'. This makes sures that id's are unique
when references from the OCS API.

However, since we do not want to break the OCS API v1 we need to
somewhat hack around this.

When we switch to OCS API v2 (which we should when we support more
custom providers). We will change the id to always be the fullShareId.
2016-01-13 16:35:15 +01:00
Roeland Jago Douma
67b7ebccd1 [Share 2.0] Add share provider factory
* Add providers
* Add share manager to server container
* Use share manager from server container
* Properly get the share manager
2016-01-13 16:35:14 +01:00
Roeland Jago Douma
b4de427c1e [Share 2.0] Allow registering of share providers
* Properly register the default share provider
2016-01-13 16:35:07 +01:00
Thomas Müller
682821c71e Happy new year! 2016-01-12 15:02:18 +01:00
Roeland Jago Douma
1358e5dcd9 [Sharing 2.0] Some error cases report 404 instead of 403 2016-01-06 15:25:29 +01:00
Roeland Jago Douma
26280e1f19 [Sharing 2.0] Add L10N instance to manager for translated errors 2016-01-06 14:53:43 +01:00
Roeland Jago Douma
b15be8f96f [Share 2.0] Make the share manager ready for share creation 2016-01-06 14:53:43 +01:00
Roeland Jago Douma
85976b7293 [Sharing 2.0] Fix phpdoc etc 2015-11-24 10:26:36 +01:00
Roeland Jago Douma
aeae73b364 [Sharing 2.0] Removed unused DI stuff
The share manager etc should not care about filtering stuff. They should
return what is asked for them.
2015-11-24 10:26:36 +01:00
Roeland Jago Douma
1360e22d7c [Sharing 2.0] Move hook and delete children logic to share manager
To make sure hooks are always fired and child entries are always
cleaned. This logic is moved to the share manager.

* Updated unit tests
2015-11-23 12:28:54 +01:00
Roeland Jago Douma
6624fa212a The new sharing code now handles deletion
OCS -> ShareManager -> DefaultShareProvider
2015-11-05 15:59:09 +01:00
Roeland Jago Douma
9567fa1194 Initial setup of shareing 2.0 sharemanager and share
* Added sharemanager class

This is the central class where all API calls talk to (OCS/Activity).
This in turn talks to the share providers to get the actual sharing
done.

It uses all ShareObjects

* Added share class

Simple class to hold all the share properties that is passed around

* Added IShareProvider interface

Interface that providers os a share have to implement.
2015-11-05 15:59:08 +01:00