-
Notifications
You must be signed in to change notification settings - Fork 113
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
gateway(sharing-ng): Check for remaing space manager before removing grant #4585
Conversation
fe31e2b
to
996cd56
Compare
…grant This check is already done by the ocs sharing implementaion, but for the move to the graph API base sharing implementation we'd want to have it in a more central place.
996cd56
to
97d80b7
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The code looks fine, but are we really sure we want to do this? This is moving business logic to the gateway service. Previously that was a no-go as gateway should be dumb. Did this change?
cc @butonic
I kind of discussed this already with @butonic . It's not optimal but it is for sure better than the checks duplicated at the higher levels (i.e. ocs and graph). Any idea what would be a better place for those checks. The usersharepovider in the gateway is already full of business logic because it needs to deal with the differences between space permissions and "real" shares. This change falls into the same category. |
Services infront of CS3 should just be protocol adapters. The business logic should be behind the CS3 gateway facade. It can be in the gateway or in a driver. From the outside that should be irrelevant. If we actually split the CS3 API into two parts:
Note that the CS3 API just defines Interfaces it does not say every API should be deployed in a dedicated service. It is meant to swap out implementations of clearly defined APIs. |
This check is already done by the ocs sharing implementaion, but for the move to the graph API base sharing implementation we'd want to have it in a more central place.