Lalaji, Looks great - Just one comment - Please add a display name to the store definition, which can be localized ( i.e. there is a fixed name used internally and a display name for the UI which can change ) - This will allow for multi-lingual stores names.
Isabelle. __________________________________________________ Isabelle Mauny Director, Product Management; WSO2, Inc.; http://wso2.com/ email: [email protected] - mobile (Spain) : +34 616050684 - mobile (Sri Lanka) +94 (0)774777663 On Aug 2, 2013, at 2:30 PM, Lalaji Sureshika <[email protected]> wrote: > Hi, > > Please find the implementation details,that we are going to do for achieving > above mentioned new approach. > > Below configuration will be added to api-manager.xml [default this config > section will be commented out],to define the external stores,that we are > going to publish from APIPublisher. > > <ExternalAPIStores> > <ExternalAPIStore> > <Name>Store1</Name> > <Type>WSO2</Type> > <Endpoint>http://localhost:9763/store</Endpoint> > <Username>xxxxx</Username> > <Password>xxxxx</Password> > </ExternalAPIStore> > > <ExternalAPIStore> > <Name>ProgrammableWeb</Name> > <Type>xxx</Type> > <Endpoint>xxxxx</Endpoint> > </ExternalAPIStore> > > <ExternalAPIStore> > <Name>Store2</Name> > <Type>WSO2</Type> > <Endpoint>http://localhost:9763/store?tenant=wso2</Endpoint> > <Username>xxxxx</Username> > <Password>xxxxx</Password> > </ExternalAPIStore> > </ExternalAPIStores> > > In above configuration,based on <type> attribute of each external APIStore,it > will be differentiated.Note as the first,we are going to give support for > WSO2 APIStores and later it will be extend to support other types of stores > [eg:programmableweb] as well > > APIPublisher changes > > In APIPublisher UI, there will be only two visibility options as ; > > 1) Allowed Anonymous Access -Visible to anonymous/every user > 2) Restricted by Roles -Restrict by users' roles > > And additionally,if the above 'ExternalAPIStores' configuration is > uncommented,the option called "Publish to External APIStores" will be showed > in UI to share the API across APIStores.These external APIStores could be > WSO2 based APIStores [eg: tenant based stores] or other ones. > > <Screenshot-23.png> > > To publish to external APIStores addition to the embedded APIStore of running > Publisher,we'll be using their specific exposed APIs and first we'll be > focusing only on publishing APIs to WSO2 APIStores.For that we'll be used the > APIPublisher exposed REST API[1]. > > > APIStore changes > > The current logic of iterating tenant registries to get APIs will be removed > and, > If the APIManager running in MT mode, > 1) If try to access /Store as an anonymous user ->the urls for the tenant > stores will be showed in APIStore[/store] > 2) If try to access /Store as a tenant user ->The store will be redirect to > tenant store [/store?tenant=?] > > Else if APIM running in super tenant mode,the permitted APIs will display in > APIStore[/store] based on API visibility. > > Feedbacks welcome.. > > > [1] http://docs.wso2.org/wiki/display/AM140/Publisher+APIs > > Thanks; > > > On Tue, Jul 30, 2013 at 12:44 AM, Nuwan Bandara <[email protected]> wrote: > Hi > > With the new proposal the previous "super tenant store" will be a store of > "stores". If we take an example lets assume there are two tenants WSO2 and > Foo, the super tenant store will just show URLs of WSO2 store and Foo Store, > where users can navigate to. > > When an anonymous user goes to one of these store, (s)he will only see the > public APIs of that tenant. > > Subsequently the older super store will be replaced by a simple OOTB store, > where any tenant can push APIs. its like a public store hosted somewhere, > which anybody can push APIs. > > Regards, > /Nuwan > > > On Tue, Jul 30, 2013 at 1:08 PM, Nuwan Dias <[email protected]> wrote: > On Tue, Jul 30, 2013 at 12:45 PM, Sumedha Rubasinghe <[email protected]> wrote: > This discussion happened as part of *Enterprise Store* discussion. > Participants: Nuwan, Azeez, Sanjiva, Srinath, NuwanD, Lalaji, Sanjeewa, > Sumedha > > Current Functionality: > 1. At the point of publishing an API, publisher can select the visibility > scope (one of Globally visible, selected tenants, tenant only > [private/public]). > 2. Based on selected scope, APIs will be created with correct set of > permission indicators in WSO2 Governance Registry > 3. @ the point of populating a store, based on the store type APIs will be > fetched from tenant registries > > Limitations in this approach: > 1. Assumption of single registry for all tenants (fetching, publishing > criteria fails with tenant partitioning) > 2. High computational cost for populating global tenant store (also known as > super tenant store) > 3. API publishing is only supported for WSO2 API Store type > 4. Tight coupling with WSO2 API Store semantics for API publishing & fetching > > New Approach: > 1. At the point of publishing an API, it can also be published to multiple > (external) stores > 2. These stores will be defined through configuration (run time registration > can be considered for future work, limited by lack of standard API for > publishing API) > > 3. APIs will published to external stores through their APIs. This has > several design considerations: > - Any API store can be integrated to WSO2 API Publisher through this approach > - WSO2 API Store will also be treated as an external one > - Concept of Super Tenant Store will no longer be applicable *** > - If an API is shared with another tenant store, it will be stored in that > tenant's storage (if sharing is removed, relevant removal should follow) > > 4. *** When navigated to http://<IP/Domain>/store (formally known as Super > tenant's store), it will show a list of tenant store URLs only > > Right now we do not allow a tenant user (when logged in) to view other tenant > stores. You can view other tenant stores if you are a super tenant user or > when you are in anonymous mode (not logged in). If this behavior is to remain > as it is, what is the purpose of displaying other tenant's store URLs on the > /store? > > 5. This concept should be supported in WSO2 Generic Store as well > > Feedback welcome. > > Thanks, > NuwanD. > > -- > /sumedha > b : bit.ly/sumedha > > _______________________________________________ > Architecture mailing list > [email protected] > https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture > > > > > -- > Nuwan Dias > > Senior Software Engineer - WSO2, Inc. http://wso2.com > email : [email protected] > Phone : +94 777 775 729 > > > > -- > Thanks & Regards, > > Nuwan Bandara > Technical Lead; WSO2 Inc. > lean . enterprise . middleware | http://wso2.com > blog : http://nuwanbando.com; email: [email protected]; phone: +94 11 763 9629 > > > > > -- > Lalaji Sureshika > WSO2, Inc.; http://wso2.com/ > email: [email protected]; cell: +94 71 608 6811 > blog: http://lalajisureshika.blogspot.com > > > _______________________________________________ > Architecture mailing list > [email protected] > https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
_______________________________________________ Architecture mailing list [email protected] https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
