[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: Re: [camp] creating things in CAMP
Comments inline . . . On 3/20/2013 8:27 PM, Adrian Otto
wrote:
As per Section 6.11 (WD08)
As per Section 6.12.
I don't see this in the spec anywhere. If you try this on the nCAMP POC you get back a 405, "Method Not Allowed".
In my view there are two ways a PlatformComponent is created. For static PlatformComponents (like a free DB instance that is shared by trial users), the PC is created by some behind-the-scenes magic that CAMP is silent about. For dynamic PCs that are spun up for the sole use of an application, the PC is instantiated from the PCT as a part of the process of creating the Assembly.
I'm not sure what isn't clear. Section 6.11 tells you that URL of the newly created Assembly Template will be supplied to the client in the Location header of the HTTP response. Section 6.123 tells you that the URL of the newly created Assembly will be supplied to the client in the Location header of the HTTP response.
Sending a POST to an Application Component Template has nothing to do with access control - it's simply not defined in the spec. For (0), I would expect any compliant CAMP implementation to return a 403 on an authz failure, but I don't think we need to document this as that is what HTTP defines.
I would say that this feeling of unnaturalness stems from the fact that Application Components and Application Component Templates, as we currently define them, are somewhat unnatural. Although they exist as separate resources with their own URL, etc., they are completely contained by their Assembly or Assembly Template. You cannot have an Application Component Template without its containing Assembly Template and you cannot have an Application Component without its containing Assembly. Therefore, you cannot allow the creation of an independent Application Component outside the context of an Assembly - what Assembly would reference it?
I've been thinking that we need to add to the definition of a PCT to surface this distinction between PCs that are dynamically created when the Assembly tree is instantiated and PCs that exist outside the lifecycle of a particular Assembly. It should be possible for a PCT to declare "I am a template for an existing PC and here is a Link to that PC".
|
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]