Hi Subash,

Yes, I think so. I think this is implicitly enforced. So, the parent-child
model can't be setup between arbitrary mediatypes. Because if we start
doing that, people can go crazy with it.

Thanks,
Senaka.


On Wed, Aug 6, 2014 at 12:57 PM, Subash Chaturanga <[email protected]> wrote:

> Hi Senaka,
>
>
>
> On Wed, Aug 6, 2014 at 5:01 PM, Senaka Fernando <[email protected]> wrote:
>
>> Hi Subash,
>>
>> Awesome! BTW, I still like to know how this parentKey thing works. I
>> thought that it wasn't required to have a parentKey, because it was
>> deducible from the mediatype of the child. Checked your patch, but that's a
>> binary and not the diff, :(.
>>
>>
> Yes, In fact I am in the process of thinking that too. Initially I did it
> for not users forcing a particular pattern of the mediatype. But with our
> searching model, they have to. +1 for removing parent key as well. Will
> update once done.
>
>
>> Hi Dimuthu,
>>
>> I didn't quite understand what you meant by API for applications and API
>> for services? AFAIU, there is going to be one-single generic API that works
>> for anything.
>>
>> Thanks,
>> Senaka.
>>
>>
>> On Wed, Aug 6, 2014 at 11:22 AM, Dimuthu Leelarathne <[email protected]>
>> wrote:
>>
>>> Hi Subash,
>>>
>>> Thanks for the quick implementation.
>>>
>>> It looks enough from App Factory end to achieve what we want. This will
>>> allow us to start right away with unified governance model for
>>> applications. We'll contribute the Application aspect to the platform.
>>> We'll be defining media types for the following and design the API. We'll
>>> send you + everybody an open invite for the review session.
>>>
>>> Under Application
>>> - Java WebApp
>>> - Jaggery
>>> - WSO2 Data Services
>>>
>>> From Greg end we'll be needing an API for the following because they are
>>> services.
>>>
>>> JAX-WS
>>> JAX-RS
>>>
>>> thanks,
>>> dimuthu
>>>
>>>
>>>
>>>
>>> On Wed, Aug 6, 2014 at 3:37 PM, Subash Chaturanga <[email protected]>
>>> wrote:
>>>
>>>> Hi all,
>>>> This is to give a quick update on this.
>>>>
>>>> I have completed the RXT inheritance with what we have so far
>>>> discussed. Developer tested this on turing and following are the set of
>>>> features. To inherit parent attributes in RXT config, there is a attribute
>>>> called "parentKey" which specifies the parent artifact key.
>>>>
>>>>  mediatype
>>>>                       key                         #artifacts
>>>>
>>>>  application/vnd.wso2.application+json
>>>>   applications                      1
>>>>  application/vnd.wso2.application.mobile+json
>>>> mobileApplications            2
>>>>  application/vnd.wso2.application.mobile.android+json
>>>> androidApplications            4
>>>>
>>>> Features
>>>>
>>>> 1. API level;
>>>> In governance api level once you initiate the governance manager  as
>>>> follows as per above example;
>>>>
>>>>   GenericArtifactManager manager = new GenericArtifactManager(registry,
>>>> "applications");
>>>>
>>>>   - manager.getAllGenericArtifacts();
>>>>   - manager.getAllGenericArtifactsByLifecycle(<lifecycle_name>)
>>>>   -
>>>>  manager.getAllGenericArtifactsByLifecycleStatus(<lifecycle_name,<status>)
>>>>   -  manager.findGenericArtifacts(GenericArtifactFilter criteria)
>>>>   - manager.findGenericArtifacts(Map<String, List<String>> criteria)
>>>>
>>>> all above searching interfaces will respect to parent/child
>>>> relationship and return results based on that.
>>>>
>>>> 2. In Carbon Mgt console UI:
>>>>    - Artifact List UI
>>>>       Applications List UI will list all 7 applications created, while
>>>> Mobile Application List will show 6 and etc.
>>>>
>>>> 3. In API level, if a user tries to add an artifact that has any
>>>> attribute missing compared to it's parent, GovernanceException thrown.
>>>>
>>>> I have not yet implemented the UI for facilitate this. Because we have
>>>> a feature on RXT define Wizard in Jaggery (ongoing GSoC project), hence
>>>> thought of improving the UI on that front. Hence, current RXT config UI
>>>> does not validate the parent inheritance validation.  But this will be
>>>> pushed eventually for 5.0.0 release.
>>>>
>>>>
>>>> Please add anything you think lacking in this impl.
>>>>
>>>> @Dimuthu
>>>> You can find the source patch + binary patch on Turing at [1].
>>>>
>>>> [1] -  https://wso2.org/jira/browse/REGISTRY-2252
>>>>
>>>>
>>>>
>>>> On Mon, Aug 4, 2014 at 4:20 AM, Senaka Fernando <[email protected]>
>>>> wrote:
>>>>
>>>>> Hi Subash,
>>>>>
>>>>> Looks good, but, can we change this to the following format, such that
>>>>> it remains compatible with the naming standards.
>>>>>
>>>>> 1. application/vnd.wso2.application+json > name,version
>>>>> 2. application/vnd.wso2.application.mobile+json > mobileType
>>>>> 3. application/vnd.wso2.application.mobile.android+json > apkPath
>>>>>
>>>>> This will still ensure that "application/vnd.wso2.application%+json"
>>>>> will return all applications, and
>>>>> "application/vnd.wso2.application.mobile%+json" will return all mobile
>>>>> applications and vice versa. And, if we follow the pattern, we really need
>>>>> not care whether it is three levels, four levels, or "n" levels deep.
>>>>>
>>>>> Also, unless the payload will be JSON instead of XML, please keep
>>>>> "+xml" instead of "+json".
>>>>>
>>>>> Thanks,
>>>>> Senaka.
>>>>>
>>>>>
>>>>> On Sun, Aug 3, 2014 at 8:28 PM, Subash Chaturanga <[email protected]>
>>>>> wrote:
>>>>>
>>>>>> Hi,
>>>>>> $subject will allows users to define a parent artifact catalog
>>>>>> through the rxt configuration. This will basically force artifacts to
>>>>>> inherit pre-defined set of upstream parent attributes.
>>>>>>
>>>>>> For example, suppose I have 3 RXTs, application, mobile application
>>>>>> and android application. Following is the media types and it's native
>>>>>> attributes
>>>>>>
>>>>>> 1. application/vnd.wso2.application+json > name,version
>>>>>> 2. application/vnd.wso2.application/vnd.wso2.application.mobile +json
>>>>>> > mobileType
>>>>>> 3.
>>>>>> application/vnd.wso2.application/vnd.wso2.application.mobile/vnd.wso2.application.mobile.android
>>>>>> +json > apkPath
>>>>>>
>>>>>> ( @Senaka/Dimuthu, we need to finalze the way we define media types.
>>>>>> Please give your feedback on above model for media types for inherited
>>>>>> rxts.)
>>>>>>
>>>>>> Artifact denotes from media type #3 should have all 4 attributes;
>>>>>> name,version,mobileType,apkPath. For #2 it should be 3.  From governance
>>>>>> API level and from UI, users will force to inherit all parent attributes.
>>>>>> And if a certain attribute is Required for a parent, it will be applied 
>>>>>> for
>>>>>> the child nodes as well. Also, since the media types can get lengthy and
>>>>>> not kind of human readable, we are planning to stick to the short name
>>>>>> mapping for media types which we already have on governance API level.
>>>>>>
>>>>>> And you can search All types of "applications" through the
>>>>>> "application" governance artifact manager, while "android" governance
>>>>>> artifact manager will return only android artifacts.
>>>>>>
>>>>>>
>>>>>> --
>>>>>> Thanks
>>>>>> /subash
>>>>>>
>>>>>> *Subash Chaturanga*
>>>>>> Senior Software Engineer & Lead WSO2 Governance Registry
>>>>>> Platform TG; WSO2 Inc. http://wso2.com
>>>>>> Contact:
>>>>>> email: [email protected]
>>>>>> blog:  http://subashsdm.blogspot.com/
>>>>>> twitter: @subash89
>>>>>> phone: +9477 2225922
>>>>>> Lean . Enterprise . Middleware
>>>>>>
>>>>>
>>>>>
>>>>>
>>>>> --
>>>>>
>>>>>
>>>>> *[image: http://wso2.com] <http://wso2.com> Senaka Fernando*
>>>>> Software Architect; WSO2 Inc.; http://wso2.com
>>>>>
>>>>>
>>>>>
>>>>> * Member; Apache Software Foundation; http://apache.org
>>>>> <http://apache.org>E-mail: senaka AT wso2.com <http://wso2.com>**P:
>>>>> +1 408 754 7388 <%2B1%20408%20754%207388>; ext: 51736*;
>>>>>
>>>>>
>>>>> *M: +44 782 741 1966 <%2B44%20782%20741%201966> Linked-In:
>>>>> http://linkedin.com/in/senakafernando
>>>>> <http://linkedin.com/in/senakafernando>*
>>>>> Lean . Enterprise . Middleware
>>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> Thanks
>>>> /subash
>>>>
>>>> *Subash Chaturanga*
>>>> Senior Software Engineer & Lead WSO2 Governance Registry
>>>> Platform TG; WSO2 Inc. http://wso2.com
>>>> Contact:
>>>> email: [email protected]
>>>> blog:  http://subashsdm.blogspot.com/
>>>> twitter: @subash89
>>>> phone: +9477 2225922
>>>> Lean . Enterprise . Middleware
>>>>
>>>
>>>
>>>
>>> --
>>> Dimuthu Leelarathne
>>> Architect & Product Lead of App Factory
>>>
>>> WSO2, Inc. (http://wso2.com)
>>> email: [email protected]
>>> Mobile : 0773661935
>>>
>>> Lean . Enterprise . Middleware
>>>
>>
>>
>>
>> --
>>
>>
>> *[image: http://wso2.com] <http://wso2.com> Senaka Fernando*
>> Software Architect; WSO2 Inc.; http://wso2.com
>>
>>
>>
>> * Member; Apache Software Foundation; http://apache.org
>> <http://apache.org>E-mail: senaka AT wso2.com <http://wso2.com>**P: +1
>> 408 754 7388 <%2B1%20408%20754%207388>; ext: 51736*;
>>
>>
>> *M: +44 782 741 1966 <%2B44%20782%20741%201966> Linked-In:
>> http://linkedin.com/in/senakafernando
>> <http://linkedin.com/in/senakafernando>*Lean . Enterprise . Middleware
>>
>
>
>
> --
> Thanks
> /subash
>
> *Subash Chaturanga*
> Senior Software Engineer & Lead WSO2 Governance Registry
> Platform TG; WSO2 Inc. http://wso2.com
> Contact:
> email: [email protected]
> blog:  http://subashsdm.blogspot.com/
> twitter: @subash89
> phone: +9477 2225922
> Lean . Enterprise . Middleware
>



-- 


*[image: http://wso2.com] <http://wso2.com> Senaka Fernando*
Software Architect; WSO2 Inc.; http://wso2.com



* Member; Apache Software Foundation; http://apache.org
<http://apache.org>E-mail: senaka AT wso2.com <http://wso2.com>**P: +1 408
754 7388; ext: 51736*;


*M: +44 782 741 1966 Linked-In: http://linkedin.com/in/senakafernando
<http://linkedin.com/in/senakafernando>*Lean . Enterprise . Middleware
_______________________________________________
Architecture mailing list
[email protected]
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture

Reply via email to