Hi, >From AF side we have to provide an API to manage Applications to the platform. This means rather than each and every product using GenericArtifactManager to look for applications they will use a ApplicationArtifactNavigator (which uses GenericaArtifactManager underneath) to CRUD applications.
So underneath we'll have unified data model and we'll have a single API from the Carbon platform to access the Applications. thanks, dimuthu On Wed, Aug 6, 2014 at 5:37 PM, Senaka Fernando <[email protected]> wrote: > 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 <%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 > -- Dimuthu Leelarathne Architect & Product Lead of App Factory WSO2, Inc. (http://wso2.com) email: [email protected] Mobile : 0773661935 Lean . Enterprise . Middleware
_______________________________________________ Architecture mailing list [email protected] https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
