[Architecture] Using Siddhi Event processor to implement/evaluate some clustering algorithms

2014-06-16 Thread Lahiru Gunathilake
Hi All,

I am planning to evaluate different event stream clustering algorithms as part 
of my studies(I am a graduate student at indiana University). I think Siddhi is 
a good place to experiment this, As per my understanding based on the docs 
Siddhi doesn't have a stream clustering interface I can use directly to plug my 
own algorithm. So I am thinking of first come up an interface for different 
clustering algorithms and add implementation of algorithms for each event 
stream by invoking an operation like SiddhiManager.addQuery. Or I can make the 
algorithm configure as part of query language. If the second option is more 
consistent with current model I can wrap-up the work in that way but initially 
focussing on first approach will be easier for me. So each algorithm can be 
associated to a desired event Stream or can be associated globally. If its 
associated with each stream algorithm will run local to each stream otherwise 
it will run in global context. Based on the algorithm I can provide a way to 
configure it with parameters.

To start this I hope to implement a frequent item set mining algorithm which 
can be used to find out most frequent items of an event stream. Search engines 
use these kind of data to find out most frequent searches in a given time 
window and optimize the search queries. I can start with some algorithms like 
Misra-Gries algorithm[1] and Manku and  Motwani [2] and then move towards 
more of data clustering algorithms. For the time being I will write the 
clustering results in to a file and later I think I can use more stable storage 
(either wso2 registry or other prefered way in wso2 product stack). If Siddhi 
or WSO2 CEP already have the capability of frequent item mining I will start 
with a more classification type algorithm.

Your feedback will be very useful for my work. If you have requirement for any 
specific type of algorithms based on the real client interactions you have, I 
would like to know them and implement them with Siddhi and do the comparison.

Thanks
Lahiru___
Architecture mailing list
Architecture@wso2.org
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture


Re: [Architecture] Connector:BrainTree

2014-06-16 Thread krishantha
Following methods seems to be more relevant with CRM while others for
payment. i think we can use payment section with out following methods.  I
think we should remove those as those are less priority. isn't it? what is
ur idea Rasika/Dushan ???

*Customers*
createCustomer - Create a Customer on Server-To-Server
deleteCustomer- Delete a customer
getCustomer - Get customer details
searchCustomers - Search through existing customers
updateCustomer - Update an existing customer

*Addresses*
createAddress - Create a new address
deleteAddress - Delete an address
getAddressDetails - Get details of an address
updateAddress - Update address detail

cloneTransaction - Clone an existing transaction
searchCreditCards - Search through existing Credit Cards




--
View this message in context: 
http://wso2-oxygen-tank.10903.n7.nabble.com/Connector-BrainTree-tp98062p98244.html
Sent from the WSO2 Architecture mailing list archive at Nabble.com.
___
Architecture mailing list
Architecture@wso2.org
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture


Re: [Architecture] Connector:BitBucket

2014-06-16 Thread Shevan Goonetilleke
Hi Rasika, Let's proceed without these two methods

Thanks
Shevan


On Mon, Jun 16, 2014 at 2:43 PM, Rasika Hettige  wrote:

> Hi Shevan,
>
> We have not considered the following 2 methods because they do not cover
> the
> major functionality.
>
>
> *revokePullRequestByID *- Revoke your approval on a pull request. (You can
> remove approvals on behalf of the authenticated account)
> *aprovePullRequestByID *-  Give your approval on a pull request. (You can
> only approve a request on behalf of the authenticated account.)
>
> But if you feel above two are important, we can include. Please let us
> know.
>
> Thanks & Regards
> Rasika
>
>
>
>
>
> --
> View this message in context:
> http://wso2-oxygen-tank.10903.n7.nabble.com/Connector-BitBucket-tp98058p98217.html
> Sent from the WSO2 Architecture mailing list archive at Nabble.com.
> ___
> Architecture mailing list
> Architecture@wso2.org
> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
>



-- 
Shevan Goonetilleke
Director of Engineering
WSO2, Inc.
lean.enterprise.middleware
m: +94777340680
w: http://wso2.com
___
Architecture mailing list
Architecture@wso2.org
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture


Re: [Architecture] Connector:Magento

2014-06-16 Thread Rasika Hettige
Hi Dakshika,

As you suggested will include following methods under the "*Sales Order
Credit Memo*". 
Sorry,  we have missed out that functionality :(

*getCreditMemoInfo *-  Retrieve the credit memo information
*createCreditMemo *-   Create a new credit memo for order
*cancelCreditMemo *-   Cancel the credit memo
*addCommentToCreditMemo *-  Add a new comment to the credit memo

Please let us know, if you have any other suggestions on the given list. 

Thanks & Regards
Rasika

 



--
View this message in context: 
http://wso2-oxygen-tank.10903.n7.nabble.com/Connector-Magento-tp97825p98238.html
Sent from the WSO2 Architecture mailing list archive at Nabble.com.
___
Architecture mailing list
Architecture@wso2.org
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture


Re: [Architecture] ESB Connector | SoundCloud

2014-06-16 Thread Gagani Amarathunga
Hi Malaka,

Yes, we have covered everything.

Best Regards,
Gagani Amarathunga


On Tue, Jun 17, 2014 at 6:44 AM, Malaka Silva  wrote:

> Hi Gagani,
>
> This looks good. I guess you have covered almost everything?
>
> Best Regards,
> Malaka
>
>
> On Mon, Jun 16, 2014 at 2:21 AM, Gagani Amarathunga <
> gagani.amarathu...@gmail.com> wrote:
>
>> Hi All,
>>
>> We have reviewed the functions for the API based on its current
>> availability. Could anyone please be kind enough to review the soundcloud
>> connector details.
>>
>>
>>
>> *Introduction*
>>
>> SoundCloud is an audio platform that enables sound creators to upload,
>> record, promote and share their originally-created sounds.In SoundCloud we
>> can follow favorite artists, labels and friends and see every track they
>> post.
>>
>> The SoundCloud API exposes SoundCloud resources like sounds, sets and
>> users. These resources can be accessed and manipulated using the HTTP
>> methods GET, POST, PUT and DELETE. Basically SoundCloud API supports us to
>> maintain information about users, tracks, playlists, sounds, sets,etc.
>>
>>
>> *SoundCloud Connector Summary*
>>
>> • Connector Name:  souncloud-connector-1.0.0
>> • Version: 1.0.0
>> • Technology:  REST
>>
>>
>> *Authentication*
>>
>> SoundCloud API uses OAuth2 based authentication
>>
>>
>> *Selected API Methods*
>>
>> *users*
>> get user
>> list of tracks of the user
>> list of playlists (sets) of the user
>> list of users who are followed by the user
>> list of users who are following the user
>> list of comments from this user
>> list of tracks favorited by the user
>> list of joined groups
>> list of web profiles
>>
>> *tracks*
>> get a track
>> comments for the track
>> a comment for the track
>> users who favorited the track
>>
>> *playlists* - A SoundCloud Set is internally called playlists due to
>> some naming restrictions.
>> get a playlist
>>
>> *groups* - Groups have members and contributed tracks.
>> get a group
>> list of users who moderate the group
>> list of users who joined the group
>> list of users who contributed a track to the group
>> list of users who contributed to, joined or moderate the group
>> list of contributed and approved tracks
>>
>> *comments* - Comments can be made on tracks by any user who has access
>> to a track.
>>
>> *me* -  Get information about the authenticated user and easily access
>> related subresources like tracks, followings, followers, groups.
>>  get self information
>>
>>
>> *connections* - Connections represent the external profiles (like
>> twitter, tumblr or facebook profiles and pages) that are connected to a
>> SoundCloud user.
>>
>> *activities* - The newest activities for the logged-in user.
>>
>> *apps* - All tracks that are created and uploaded using a published app.
>>
>> *resolve* - The resolve resource allows to lookup and access API
>> resources when only know the SoundCloud.com URL.
>>
>> *oembed* - oEmbed is an open standard to easily embed content from
>> oEmbed providers into the site.
>>
>>
>> Above are the methods that is going to be implemented in the soundcloud
>> connector. We have taken all the methods that are supported by the current
>> soundclound API.[1]
>>
>> [1]http://developers.soundcloud.com/docs/api/reference
>>  [2]http://developers.soundcloud.com/console
>>
>> Thank you.
>>
>>
>>
>> On Fri, Jun 13, 2014 at 3:08 PM, Gagani Amarathunga <
>> gagani.amarathu...@gmail.com> wrote:
>>
>>> Looping in Malaka, Dushan, Shevan
>>>
>>>
>>> On Fri, Jun 13, 2014 at 11:42 AM, Gagani Amarathunga <
>>> gagani.amarathu...@gmail.com> wrote:
>>>
 *Introduction*

 SoundCloud is an audio platform that enables sound creators to upload,
 record, promote and share their originally-created sounds.In SoundCloud we
 can follow favorite artists, labels and friends and see every track they
 post.

 The SoundCloud API exposes SoundCloud resources like sounds, sets and
 users. These resources can be accessed and manipulated using the HTTP
 methods GET, POST, PUT and DELETE. Basically SoundCloud API supports us to
 maintain information about users, tracks, playlists, sounds, sets,etc.


 *SoundCloud Connector Summary*

 • Connector Name:  souncloud-connector-1.0.0
 • Version: 1.0.0
 • Technology:  REST


 *Authentication*

 SoundCloud API uses OAuth2 based authentication


 *Selected API Methods*

 *users*
 get user
 list of tracks of the user
 list of playlists (sets) of the user
 list of users who are followed by the user
 a user who is followed by the user
 list of users who are following the user
 user who is following the user
 list of comments from this user
 list of tracks favorited by the user
 track favorited by the user
 list of joined groups
 list of web p

Re: [Architecture] Connector:BrainTree

2014-06-16 Thread Dushan Abeyruwan
Hi
  It looks good to me, unless if no obligations to the license (FYI :Shevan
please go through and confirm), also during implementation please pay
special attention on handling responses (decline codes, and error codes).

https://www.braintreepayments.com/docs/java/reference/processor_responses

Cheers,
dushan


On Mon, Jun 16, 2014 at 3:54 PM, Rasika Hettige  wrote:

> Hi All
>
> As there are no suggestions, we will consider following as the final method
> list for the connector.
>
> *Transactions*
> cloneTransaction - Clone an existing transaction.
> createTransaction - Create a Server-To-Server Transaction
> getTransaction - Get details of a Transaction
> refundTransaction - Refund a completed transaction
> searchTransactions - Search through existing transactions
> voidTransaction - Void a transaction (cancel).
> submitTransactionForSettlement - Submit a transaction for settlement.
>
> *Customers*
> createCustomer - Create a Customer on Server-To-Server
> deleteCustomer- Delete a customer
> getCustomer - Get customer details
> searchCustomers - Search through existing customers
> updateCustomer - Update an existing customer
>
> *Credit Cards*
> createCreditCard - Create Credit Card
> deleteCreditCard - Delete Credit Card
> getCreditCard - Get details of a credit card
> searchCreditCards - Search through existing Credit Cards
> updateCreditCard - Update Credit Card Details
>
> *Addresses*
> createAddress - Create a new address
> deleteAddress - Delete an address
> getAddressDetails - Get details of an address
> updateAddress - Update address details
>
> *Plans*
> getPlanDetails - Get details of a single pricing plan
>
> *Add-Ons*
> getAddOnDetails - Get details for a single add-on
>
> *Discounts*
> getDiscountDetails - Get details for single discount
>
> *Merchant Accounts*
> createMerchantAccount - Create a new merchant account
> getMerchantAccountDetails -Get details of an individual merchant account
> updateMerchantAccount -Update a Merchant Account
>
> *Settlement Batch Summaries*
> getSettlementBatchSummary - Get details of settlements on a particular day
>
> *Subscriptions*
> createSubscription - Create Subscription
> cancelSubscription - Cancel Subscription
> searchSubscriptions - Search Subscriptions
> updateSubscription - Update Subscriptions
> retrySubscriptionCharge - Retry Subscription charge
> getSubscription - Get Subscription Details
>
> Thanks & Regards
> Rasika
>
>
>
> --
> View this message in context:
> http://wso2-oxygen-tank.10903.n7.nabble.com/Connector-BrainTree-tp98062p98219.html
> Sent from the WSO2 Architecture mailing list archive at Nabble.com.
> ___
> Architecture mailing list
> Architecture@wso2.org
> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
>



-- 
Dushan Abeyruwan | Associate Tech Lead
Integration Technologies Team
PMC Member Apache Synpase
WSO2 Inc. http://wso2.com/
Blog:http://dushansview.blogspot.com/
Mobile:(0094)713942042
___
Architecture mailing list
Architecture@wso2.org
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture


Re: [Architecture] ESB Connector | SoundCloud

2014-06-16 Thread Malaka Silva
Hi Gagani,

This looks good. I guess you have covered almost everything?

Best Regards,
Malaka


On Mon, Jun 16, 2014 at 2:21 AM, Gagani Amarathunga <
gagani.amarathu...@gmail.com> wrote:

> Hi All,
>
> We have reviewed the functions for the API based on its current
> availability. Could anyone please be kind enough to review the soundcloud
> connector details.
>
>
>
> *Introduction*
>
> SoundCloud is an audio platform that enables sound creators to upload,
> record, promote and share their originally-created sounds.In SoundCloud we
> can follow favorite artists, labels and friends and see every track they
> post.
>
> The SoundCloud API exposes SoundCloud resources like sounds, sets and
> users. These resources can be accessed and manipulated using the HTTP
> methods GET, POST, PUT and DELETE. Basically SoundCloud API supports us to
> maintain information about users, tracks, playlists, sounds, sets,etc.
>
>
> *SoundCloud Connector Summary*
>
> • Connector Name:  souncloud-connector-1.0.0
> • Version: 1.0.0
> • Technology:  REST
>
>
> *Authentication*
>
> SoundCloud API uses OAuth2 based authentication
>
>
> *Selected API Methods*
>
> *users*
> get user
> list of tracks of the user
> list of playlists (sets) of the user
> list of users who are followed by the user
> list of users who are following the user
> list of comments from this user
> list of tracks favorited by the user
> list of joined groups
> list of web profiles
>
> *tracks*
> get a track
> comments for the track
> a comment for the track
> users who favorited the track
>
> *playlists* - A SoundCloud Set is internally called playlists due to some
> naming restrictions.
> get a playlist
>
> *groups* - Groups have members and contributed tracks.
> get a group
> list of users who moderate the group
> list of users who joined the group
> list of users who contributed a track to the group
> list of users who contributed to, joined or moderate the group
> list of contributed and approved tracks
>
> *comments* - Comments can be made on tracks by any user who has access to
> a track.
>
> *me* -  Get information about the authenticated user and easily access
> related subresources like tracks, followings, followers, groups.
> get self information
>
>
> *connections* - Connections represent the external profiles (like
> twitter, tumblr or facebook profiles and pages) that are connected to a
> SoundCloud user.
>
> *activities* - The newest activities for the logged-in user.
>
> *apps* - All tracks that are created and uploaded using a published app.
>
> *resolve* - The resolve resource allows to lookup and access API
> resources when only know the SoundCloud.com URL.
>
> *oembed* - oEmbed is an open standard to easily embed content from oEmbed
> providers into the site.
>
>
> Above are the methods that is going to be implemented in the soundcloud
> connector. We have taken all the methods that are supported by the current
> soundclound API.[1]
>
> [1]http://developers.soundcloud.com/docs/api/reference
> [2]http://developers.soundcloud.com/console
>
> Thank you.
>
>
>
> On Fri, Jun 13, 2014 at 3:08 PM, Gagani Amarathunga <
> gagani.amarathu...@gmail.com> wrote:
>
>> Looping in Malaka, Dushan, Shevan
>>
>>
>> On Fri, Jun 13, 2014 at 11:42 AM, Gagani Amarathunga <
>> gagani.amarathu...@gmail.com> wrote:
>>
>>> *Introduction*
>>>
>>> SoundCloud is an audio platform that enables sound creators to upload,
>>> record, promote and share their originally-created sounds.In SoundCloud we
>>> can follow favorite artists, labels and friends and see every track they
>>> post.
>>>
>>> The SoundCloud API exposes SoundCloud resources like sounds, sets and
>>> users. These resources can be accessed and manipulated using the HTTP
>>> methods GET, POST, PUT and DELETE. Basically SoundCloud API supports us to
>>> maintain information about users, tracks, playlists, sounds, sets,etc.
>>>
>>>
>>> *SoundCloud Connector Summary*
>>>
>>> • Connector Name:  souncloud-connector-1.0.0
>>> • Version: 1.0.0
>>> • Technology:  REST
>>>
>>>
>>> *Authentication*
>>>
>>> SoundCloud API uses OAuth2 based authentication
>>>
>>>
>>> *Selected API Methods*
>>>
>>> *users*
>>> get user
>>> list of tracks of the user
>>> list of playlists (sets) of the user
>>> list of users who are followed by the user
>>> a user who is followed by the user
>>> list of users who are following the user
>>> user who is following the user
>>> list of comments from this user
>>> list of tracks favorited by the user
>>> track favorited by the user
>>> list of joined groups
>>> list of web profiles
>>>
>>> *tracks*
>>> get a track
>>> comments for the track
>>> a comment for the track
>>> users who favorited the track
>>> a user who has favorited to the track
>>> users who have access to the track
>>> email addresses who are invited to the track
>>> secret

Re: [Architecture] Connector:Magento

2014-06-16 Thread Dakshika Jayathilaka
Sales Order Credit Memo is important functionality, why you always removing
it. :(

*Dakshika Jayathilaka*
Software Engineer
WSO2, Inc.
lean.enterprise.middleware
0771100911


On Mon, Jun 16, 2014 at 5:12 PM, Rasika Hettige  wrote:

> Hi All
>
> When we go through the final method list, we thought that following methods
> under "Sales Order Invoice" should also be included as they add a
> significant value to version 1.
>
> getInvoiceInfo - Retrieve information about the invoice
> createInvoice - Create a new invoice for an order
> captureInvoice - Capture an invoice
> cancelInvoice - Cancel an invoice
>
> Thanks & Regards
> Rasika
>
>
>
>
>
>
>
>
>
>
>
> --
> View this message in context:
> http://wso2-oxygen-tank.10903.n7.nabble.com/Connector-Magento-tp97825p98222.html
> Sent from the WSO2 Architecture mailing list archive at Nabble.com.
> ___
> Architecture mailing list
> Architecture@wso2.org
> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
>
___
Architecture mailing list
Architecture@wso2.org
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture


Re: [Architecture] [C5] OSGi Multi-Tenancy

2014-06-16 Thread Kishanthan Thangarajah
On Mon, Jun 16, 2014 at 5:59 PM, Samisa Abeysinghe  wrote:

> So we have both of:
> - a tenant having specific bundles only available to that tenant
>  - a bundle available for multiple tenants, where the respective
> tenant's use of the bundle is tenant aware
>

Yes, but the latter will only be available for kernel region (core) bundles.

>
> am I right?
>
>
> Thanks,
> Samisa...
>
>
> Samisa Abeysinghe
>
> Vice President Delivery
>
> WSO2 Inc.
> http://wso2.com
>
>
>
> On Fri, May 9, 2014 at 12:08 AM, Kishanthan Thangarajah <
> kishant...@wso2.com> wrote:
>
>>
>>
>>
>> On Thu, May 8, 2014 at 10:45 PM, Nuwan Bandara  wrote:
>>
>>> Hi Kishanthan,
>>>
>>> A useful feature indeed, does this mean a tenant can install bundle for
>>> his own space ?
>>>
>>
>> Yes, each tenant will have a separate space (Region) and they can install
>> bundles on to it. Other tenants will not be aware of this (bundle and
>> service life-cycle events will be filtered) and cannot access those bundles
>> (import package requirements will be filtered) .
>>
>> Also a bundle, with same symbolic name and version, can be installed on
>> multiple tenant regions. This is handled using the BundleCollsionHook.
>>
>>>
>>> Regards,
>>> /Nuwan
>>>
>>>
>>> On Thu, May 8, 2014 at 5:35 AM, Suresh Attanayaka 
>>> wrote:
>>>
 HI Kishanthan,

 This is indeed a very helpful to have, one advantage I would see is we
 can let the tenants to have deployed their own Authenticators,
 UserStoreManagers and various other extensions without interfering the
 system. But how would be expose a Core service such as RealmService
 or RegistryService ?

 For example, each tenant will want to access their RealmService to load
 their configured user-store in their custom Authenticator. How would we
 make sure the RealmService would return only that tenant's RealmService or
 it's corresponding user store manager ?

 Thanks,
 -Suresh


 On Thu, May 8, 2014 at 2:45 PM, Kishanthan Thangarajah <
 kishant...@wso2.com> wrote:

> This is one of the core areas of C5 kernel. In previous carbon
> versions, the multi-tenancy aspect was limited to run-time execution only.
> In there, we used the Axis2 Configuration & Context model to achieve the
> multi-tenancy where each tenant got its own execution space during
> run-time. But the OSGi environment was not partitioned for tenants and was
> visible to all, where a bundle (the library and its packages) installed by
> a tenant was visible to other tenants as well.
>
> The idea here is to implement Multi-Tenancy at OSGi framework level
> also, so that each tenant gets its totally isolated run-time environment.
> We are planning to use OSGi "Regions" [1] concept to achieve this with the
> usage of OSGi framework hooks. A region is a grouping of bundles in an 
> OSGi
> run-time, which is governed by controls when accessing resources 
> (packages,
> services) from other regions.
>
> Each tenant gets its own region and there will be a separate "Kernel"
> region where the core bundles/packages/service resides and will be exposed
> to tenant regions. We can still limit/decide on what to expose from kernel
> region. Each tenant region will be isolated from each other. They will not
> see any events (related to bundle, service) or package visibility from
> other regions, but only see from it self and kernel. Below image is high
> level view of this concept.
>
> [image: Inline image 1]
>
> An overview of the framework hooks.
>
> *RegionResolverHook* - manages the package resolve process for
> requirements from bundles in regions.
> *RegionBundleFindHook* - manages/filters the BundleContext.getBundle
> lookups from region bundles.
> *RegionBundleEventHook* - manages/filters the bundle's life-cycle
> events for regions.
> *RegionBundleCollisionHook* - manages the duplicate bundle resolving
> in multiple regions. This will facilitate to have same bundles in 
> different
> regions.
> *RegionServiceFindHook* and *RegionServiceEventHook* -
> manages/filters the service lookup and life-cycle events for regions.
>
> Thoughts suggestions are welcome.
>
> Thanks,
> Kishanthan.
> [1] http://wiki.eclipse.org/Virgo/Concepts#Regions
>
> --
> *Kishanthan Thangarajah*
> Senior Software Engineer,
> Platform Technologies Team,
> WSO2, Inc.
> lean.enterprise.middleware
>
> Mobile - +94773426635
> Blog - *http://kishanthan.wordpress.com
> *
> Twitter - *http://twitter.com/kishanthan
> *
>
> ___
> Architecture mailing list
> Architecture@wso2.org
> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
>
>>

Re: [Architecture] [C5] OSGi Multi-Tenancy

2014-06-16 Thread Samisa Abeysinghe
So we have both of:
- a tenant having specific bundles only available to that tenant
- a bundle available for multiple tenants, where the respective
tenant's use of the bundle is tenant aware

am I right?


Thanks,
Samisa...


Samisa Abeysinghe

Vice President Delivery

WSO2 Inc.
http://wso2.com



On Fri, May 9, 2014 at 12:08 AM, Kishanthan Thangarajah  wrote:

>
>
>
> On Thu, May 8, 2014 at 10:45 PM, Nuwan Bandara  wrote:
>
>> Hi Kishanthan,
>>
>> A useful feature indeed, does this mean a tenant can install bundle for
>> his own space ?
>>
>
> Yes, each tenant will have a separate space (Region) and they can install
> bundles on to it. Other tenants will not be aware of this (bundle and
> service life-cycle events will be filtered) and cannot access those bundles
> (import package requirements will be filtered) .
>
> Also a bundle, with same symbolic name and version, can be installed on
> multiple tenant regions. This is handled using the BundleCollsionHook.
>
>>
>> Regards,
>> /Nuwan
>>
>>
>> On Thu, May 8, 2014 at 5:35 AM, Suresh Attanayaka 
>> wrote:
>>
>>> HI Kishanthan,
>>>
>>> This is indeed a very helpful to have, one advantage I would see is we
>>> can let the tenants to have deployed their own Authenticators,
>>> UserStoreManagers and various other extensions without interfering the
>>> system. But how would be expose a Core service such as RealmService
>>> or RegistryService ?
>>>
>>> For example, each tenant will want to access their RealmService to load
>>> their configured user-store in their custom Authenticator. How would we
>>> make sure the RealmService would return only that tenant's RealmService or
>>> it's corresponding user store manager ?
>>>
>>> Thanks,
>>> -Suresh
>>>
>>>
>>> On Thu, May 8, 2014 at 2:45 PM, Kishanthan Thangarajah <
>>> kishant...@wso2.com> wrote:
>>>
 This is one of the core areas of C5 kernel. In previous carbon
 versions, the multi-tenancy aspect was limited to run-time execution only.
 In there, we used the Axis2 Configuration & Context model to achieve the
 multi-tenancy where each tenant got its own execution space during
 run-time. But the OSGi environment was not partitioned for tenants and was
 visible to all, where a bundle (the library and its packages) installed by
 a tenant was visible to other tenants as well.

 The idea here is to implement Multi-Tenancy at OSGi framework level
 also, so that each tenant gets its totally isolated run-time environment.
 We are planning to use OSGi "Regions" [1] concept to achieve this with the
 usage of OSGi framework hooks. A region is a grouping of bundles in an OSGi
 run-time, which is governed by controls when accessing resources (packages,
 services) from other regions.

 Each tenant gets its own region and there will be a separate "Kernel"
 region where the core bundles/packages/service resides and will be exposed
 to tenant regions. We can still limit/decide on what to expose from kernel
 region. Each tenant region will be isolated from each other. They will not
 see any events (related to bundle, service) or package visibility from
 other regions, but only see from it self and kernel. Below image is high
 level view of this concept.

 [image: Inline image 1]

 An overview of the framework hooks.

 *RegionResolverHook* - manages the package resolve process for
 requirements from bundles in regions.
 *RegionBundleFindHook* - manages/filters the BundleContext.getBundle
 lookups from region bundles.
 *RegionBundleEventHook* - manages/filters the bundle's life-cycle
 events for regions.
 *RegionBundleCollisionHook* - manages the duplicate bundle resolving
 in multiple regions. This will facilitate to have same bundles in different
 regions.
 *RegionServiceFindHook* and *RegionServiceEventHook* - manages/filters
 the service lookup and life-cycle events for regions.

 Thoughts suggestions are welcome.

 Thanks,
 Kishanthan.
 [1] http://wiki.eclipse.org/Virgo/Concepts#Regions

 --
 *Kishanthan Thangarajah*
 Senior Software Engineer,
 Platform Technologies Team,
 WSO2, Inc.
 lean.enterprise.middleware

 Mobile - +94773426635
 Blog - *http://kishanthan.wordpress.com
 *
 Twitter - *http://twitter.com/kishanthan
 *

 ___
 Architecture mailing list
 Architecture@wso2.org
 https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture


>>>
>>>
>>> --
>>> Suresh Attanayake
>>> Senior Software Engineer; WSO2 Inc. http://wso2.com/
>>> Blog : http://sureshatt.blogspot.com/
>>> Web : http://www.ssoarcade.com/
>>> Facebook : https://www.facebook.com/IdentityWorld
>>> Twitter : https://twitter.com/sureshatt
>>> LinkedIn : http://lk.linkedin.com/in/sureshatt
>>> Mobi

Re: [Architecture] Connector:Magento

2014-06-16 Thread Rasika Hettige
Hi All

When we go through the final method list, we thought that following methods
under "Sales Order Invoice" should also be included as they add a
significant value to version 1.

getInvoiceInfo - Retrieve information about the invoice
createInvoice - Create a new invoice for an order
captureInvoice - Capture an invoice
cancelInvoice - Cancel an invoice

Thanks & Regards
Rasika











--
View this message in context: 
http://wso2-oxygen-tank.10903.n7.nabble.com/Connector-Magento-tp97825p98222.html
Sent from the WSO2 Architecture mailing list archive at Nabble.com.
___
Architecture mailing list
Architecture@wso2.org
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture


Re: [Architecture] Connector:Magento

2014-06-16 Thread Rasika Hettige
Hi All,

Please find the correct method list (SOAP API) that will considered as
final. (By mistakenly I have included the REST method list in my previous
reply)

*Initialization*
login - Start the API session, return the session ID, and authorize the API
user. 

*Catalog Product Tier Price*
getCatalogProductTierPriceInfo - Retrieve information about product tier
prices 
updateCatalogProductTierPrice - Update the product tier prices 

*Catalog Inventory*
listStockData - Retrieve the list of stock data by product IDs 
updateStockData- Update the stock data for a list of products 

*Cart Customer*
setCustomerInformation - Add customer information into a shopping cart 
setCustomerAddresses - Set the customer addresses (shipping and billing)
into a shopping cart 

*Cart Payment*
setCartPaymentMethod - Set a payment method for a shopping cart 
listAvailableCartPaymentMethods- Get the list of available payment
methods for a shopping cart 

*Cart Product*
addCartProduct- Add one or more products to a shopping cart 
updateCartProduct - Update one or more products in a shopping cart 
removeCartProduct - Remove one or more products from a shopping cart 
listCartProducts - Get a list of products in a shopping cart 
moveProductFromQuoteToCart -Move one or more products from the quote to the
customer shopping cart 

*Cart Shipping*
setCartShippingMethod - Set a shipping method for a shopping cart 
listAvailableCartShippingMethods - Retrieve the list of available shipping
methods for a shopping cart 

*Shopping Cart*
createShoppingCart - Create a blank shopping cart 
createOrderFromShoppingCart - Create an order from a shopping cart 
getShoppingCartInfo - Get full information about the current shopping cart 
getShoppingCartTotals - Get all available prices for items in shopping cart,
using additional parameters 

*Customer*
createCustomer - Create a new customer 
getCustomerInfo - Retrieve the customer data 
updateCustomer  - Update the customer data 
deleteCustomer  - Delete a required customer 

*Customer Address*
createCustomerAddress - Create a new address for a customer 
getCustomerAddressInfo - Retrieve the specified customer address 
updateCustomerAddress - Update the customer address 
deleteCustomerAddress - Delete the customer address 

*Sales Order*
getOrderInfo - Retrieve the order information 
addCommentToOrder - Add a comment to an order 
cancelOrder - Cancel an order 

*Sales Order Invoice*
getShipmentInfo - Retrieve information about the shipment 
createShipment  - Create a new shipment for an order 
addCommentToShipment - Add a new comment to a shipment 

Thanks & Regards
Rasika



--
View this message in context: 
http://wso2-oxygen-tank.10903.n7.nabble.com/Connector-Magento-tp97825p98220.html
Sent from the WSO2 Architecture mailing list archive at Nabble.com.
___
Architecture mailing list
Architecture@wso2.org
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture


Re: [Architecture] Connector:BrainTree

2014-06-16 Thread Rasika Hettige
Hi All

As there are no suggestions, we will consider following as the final method
list for the connector.

*Transactions*
cloneTransaction - Clone an existing transaction. 
createTransaction - Create a Server-To-Server Transaction 
getTransaction - Get details of a Transaction 
refundTransaction - Refund a completed transaction 
searchTransactions - Search through existing transactions 
voidTransaction - Void a transaction (cancel). 
submitTransactionForSettlement - Submit a transaction for settlement. 

*Customers*
createCustomer - Create a Customer on Server-To-Server 
deleteCustomer- Delete a customer 
getCustomer - Get customer details 
searchCustomers - Search through existing customers 
updateCustomer - Update an existing customer 

*Credit Cards*
createCreditCard - Create Credit Card 
deleteCreditCard - Delete Credit Card 
getCreditCard - Get details of a credit card 
searchCreditCards - Search through existing Credit Cards 
updateCreditCard - Update Credit Card Details 

*Addresses*
createAddress - Create a new address 
deleteAddress - Delete an address 
getAddressDetails - Get details of an address 
updateAddress - Update address details 

*Plans*
getPlanDetails - Get details of a single pricing plan 

*Add-Ons*
getAddOnDetails - Get details for a single add-on 

*Discounts*
getDiscountDetails - Get details for single discount 

*Merchant Accounts*
createMerchantAccount - Create a new merchant account 
getMerchantAccountDetails -Get details of an individual merchant account 
updateMerchantAccount -Update a Merchant Account 

*Settlement Batch Summaries*
getSettlementBatchSummary - Get details of settlements on a particular day 

*Subscriptions*
createSubscription - Create Subscription 
cancelSubscription - Cancel Subscription 
searchSubscriptions - Search Subscriptions 
updateSubscription - Update Subscriptions 
retrySubscriptionCharge - Retry Subscription charge 
getSubscription - Get Subscription Details 

Thanks & Regards
Rasika 



--
View this message in context: 
http://wso2-oxygen-tank.10903.n7.nabble.com/Connector-BrainTree-tp98062p98219.html
Sent from the WSO2 Architecture mailing list archive at Nabble.com.
___
Architecture mailing list
Architecture@wso2.org
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture


[Architecture] Connector : Instagram

2014-06-16 Thread Sampath Amarakoon
*Introduction*
The Instagram API allows users to have access to user authentication,
photos, friend connections, and other elements of the iPhone & Android
application.

*API*
Instagram API v1 using the REST [1].

*Instagram API v1 Connector Summary*

   - Connector Name:  instagram-connector-1.0.0
   - Version: 1.0.0
   - Technology:  REST


*Authentication*
OAuth 2.0 protocol will be used for the authentication [2].

*Operations*
Below listed methods are the operations that we are going to use from API.
So, please let me know if you have any concerns on the below listed
operations.

1. Users

   - getUserInfo -Get basic information about a user
   - getSelfFeed - Get the authenticated user's feed
   - getUserMediaRecent -Get the most recent media published by a user
   - getSelfMediaLiked -  Get the authenticated user's list of media
   they've liked.
   - userSearch -Search for a user by name


2. Relationships


   - getUserFollows -Get the list of users this user follows.
   - getUserFollowedBy -Get the list of users this user is followed by.
   - getSelfRequestedBy -List the users who have requested this user's
   permission to follow.
   - getUserRelationship -Get information about a relationship to another
   user.
   - setUserRelationship -Modify the relationship between the current user
   and the target user.


3. Media


   - getMediaInfo -Get information about a media object.
   - mediaSearch -Search for media in a given area. (The time span is set
   to 7 days)
   - getMediaPopular -Get a list of what media is most popular at the moment


4. Comments


   - getMediaComment -Get a full list of comments on a media.
   - setMediaComment -Create a comment on a media.
   - deleteMediaComment -Remove a comment


5. Likes


   - getMediaLike - Get a list of users who have liked this media.
   - setMediaLike - Set a like on this media by the currently authenticated
   user.
   - deleteMediaLike - Remove a like on this media by the currently
   authenticated user.


6. Tags


   - getTagInfo -Get information about a tag object.
   - getTagRecent -Get a list of recently tagged media.
   - tagSearch -Search for tags by name.


7. Location


   - getLocationInfo -Get information about a location.
   - getLocationRecent -Get a list of recent media objects from a given
   location.
   - locationSearch -Search for a location by geographic coordinate.


8. Subcription


   - getSubscriptionRecent -Get recent media from a geography subscription
   that you created.
   - deleteSubscription - Delete recent media from a geography subscription
   that you created.
   - setSubscriptionUser - creates a subscriptions to receive notifications
   when users have registered with your appliction post new photos.
   - setSubscriptionTag - creates a subscription to receive notifications
   when a new photo is tagged with tags of your choosing.
   - setSubscriptionLocation - creates a subscription to receive
   notifications when new photos are posted and tagged with a specific
   location.
   - setSubscriptionGeography -  creates a subscription to receive
   notifications when new photos are posted in an arbitary geographical
   location as defined by a center point and radius.


[1]. http://instagram.com/developer/endpoints
[2]. http://instagram.com/developer/authentication



*Thanks & RegardsSampath Amarakoon*
___
Architecture mailing list
Architecture@wso2.org
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture


Re: [Architecture] Connector:BitBucket

2014-06-16 Thread Rasika Hettige
Hi Shevan,

We have not considered the following 2 methods because they do not cover the
major functionality. 


*revokePullRequestByID *- Revoke your approval on a pull request. (You can
remove approvals on behalf of the authenticated account)
*aprovePullRequestByID *-  Give your approval on a pull request. (You can
only approve a request on behalf of the authenticated account.)

But if you feel above two are important, we can include. Please let us know.

Thanks & Regards
Rasika





--
View this message in context: 
http://wso2-oxygen-tank.10903.n7.nabble.com/Connector-BitBucket-tp98058p98217.html
Sent from the WSO2 Architecture mailing list archive at Nabble.com.
___
Architecture mailing list
Architecture@wso2.org
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture