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
