Open bblfish opened 8 years ago
This is actually quite difficult to do with the current architecture. I tried a simple hack for this but came across the following issues:
PUT
can create a resource it requires the ACL to either be on the container if the resource does not exist, or for it to be on the resource if it exists. If-Then-Match
etag calculation needs to be on the object if it exists. But fetching the meta data of the resource that does not exist is going to lead to an error. This suggests that all requests should go first to the container, which should forward them to the relevant actor.
If we allow a PUT
to also create subdirectories in one go, then we also need to containers to create subcontainers, etc... This suggests that we may need all requests to move very quickly down the actor hierarchy. This would be good in that it would also save memory, no actor needing to be created if a request for it was not made. Creating intermediate actors would also allow one to determine if a request holder were allowed to create resources containers, as each container actor could determine if the actor had write or append access to it.
So this should be moved to issue 167: requiring a rewrite of the actors
This is useful for subdomain creation, and also when clients want to make sure they have the right name for an LDPC. Also currently PUT is allowed only for Graphs, extend to allow for any type of content.
See: