Re: [Architecture] EMM - Android : Writing Test Cases

2015-01-28 Thread Sameera Perera
Can't we mock the ones that use the SDK?

On Thu, Jan 29, 2015 at 10:05 AM, Inosh Perera ino...@wso2.com wrote:

 Hi all,
 Yes, From what I read so far, if the functions doesn't use any Android SDK
 methods, we can use normal JUnit test case. Some research  has to be done
 about the best approach to take when writing test case that requires
 Android SDK. Following might be useful as a start.

 [1]. http://www.vogella.com/tutorials/AndroidTesting/article.html

 Regards,
 Inosh



 On Wed, Jan 28, 2015 at 5:17 PM, Prabath Abeysekera praba...@wso2.com
 wrote:

 Hi Guys,

 We need to get this rolling again. Let's focus on getting some good test
 cases written around Android agent and the related functionalities some
 time soon. Also, please make sure that the same is done for the other
 applicable platforms as well.

 Cheers,
 Prabath

 On Mon, May 5, 2014 at 3:15 PM, Krishanthi Samarasinghe 
 krishant...@wso2.com wrote:

 Hi Dilshan,

 We need to cover following test cases.

 1. Unit test cases
 2. Functional test cases
 3. Integration test cases
 4. UI test cases

 Since I have already started to implement test cases using Android
 Testing API and it is possible to cover all test cases we need, I have
 decided to user Android Testing API.

 That is the same API[1] which is used for Activity Testing you have
 mentioned above.


 [1] - http://developer.android.com/tools/testing/index.html


 Thank you.


 On Sun, May 4, 2014 at 2:39 PM, Dilshan Edirisuriya dils...@wso2.com
 wrote:

 Hi Krishanthi,

 What exactly do we cover under testing? Is it unit and integration? I
 believe you have to write unit test cases, integration test cases,
 functional tests for UI and test cases for activities. In coming releases
 there could be more apps coming on to cover containerization usecase. Hence
 better to take them also in to consideration when selecting a testing API.
 For me Monkeyrunner is best suited for all above needs. Also look at
 activity testing found at [1].


 [1] - http://developer.android.com/tools/testing/activity_testing.html


 Regards,

 Dilshan


 On Fri, May 2, 2014 at 11:23 PM, Krishanthi Samarasinghe 
 krishant...@wso2.com wrote:

 Hi Shan,

 I have started to working on writing test cases for Android.

 Currently I am working on writing Test Cases for UI components by
 using Android Testing API.

 We can also use the Monkeyrunner API for Android testing. For that we
 need to run python script. I am planing to do a research on best approach
 for integration testing.

 Thank you.

 --
 Best Regards,
 Krishanthi Bhagya Samarasinghe
 Senior Software engineer

 Mobile: +94 716028280


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




 --
 Dilshan Edirisuriya
 Senior Software Engineer - WSO2
 Mob: + 94 777878905
 http://wso2.com/

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




 --
 Best Regards,
 Krishanthi Bhagya Samarasinghe
 Senior Software engineer

 Mobile: +94 716028280


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




 --
 Prabath Abeysekara
 Associate Technical Lead, Data TG.
 WSO2 Inc.
 Email: praba...@wso2.com
 Mobile: +94774171471




 --
 Inosh Perera
 Software Engineer, WSO2 Inc.
 Tel: 0785293686

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




-- 

--

*Sameera Perera*
Director of Engineering
gtalk: samee...@wso2.com
Tel : 94 11 214 5345
Fax :94 11 2145300
*WSO2, Inc.* http://wso2.com/
lean.enterprise.middleware
___
Architecture mailing list
Architecture@wso2.org
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture


Re: [Architecture] Invitation: CDM Hackathon @ Mon Dec 1, 2014 1:30pm - 5:30pm (Sameera Perera)

2014-12-01 Thread Sameera Perera
Appending

Day 1 Notes:

*Goals*

   1. Identify a CDM Core that's device/platform agnostic
   2. Properly modularize the product (continuing the discussion in the
   thread [1])
   3. Evaluate how CDM can able to support Dynamic policies and policy
   merging which are frequently requested features

*Terminology*

   - Feature (more accurately Device Management Feature): This is an
   operation that the CDM can instruct the device to perform. A MDM example of
   this would be to Put ringer in silent mode. On a smart thermostat, this
   could be Reduce Air Conditioning
   - Policy: A policy is a collection of features. The CDM Core, maintains
   the policy in a canonical format. Platform bundles may translate the policy
   in to a device dependent format.

Both terms (feature and policy) are misnomers and may better termed as
operations and profiles. However, we decided to stick to the terms as these
are standard across the MDM industry.


   - Platform Bundle: Refer [1]


*CDM Core*

   - Instructs the platform bundle to apply a policy to the device
   - The core determines which policy needs to be applied to the device
   through a Trigger. EMM 1.0 used 3 types of triggers: Platform, User and
   Role. CDM will introduce Location and Time.
   - When device calls back to the CDM, validates whether the device is
   violating its policy

The Core will contain policy management and policy enforcement components
as well as a policy editor.

*MDM Module*

   - A MDM Module will sit on top of the core to enable feature parity with
   EMM 1.1. It will be written specifically with the knowledge that platform
   bundles for Android, iOS are available.
   - The MDM will define a common set of features that are available across
   all phones.

By introducing this layer of abstraction we are able to keep manage mobile
devices across mobile platforms as we've done in EMM without complicating
the device agnostic capabilities of the core. Similar modules can be built
by 3rd parties to manage other device categories such as thermostats, smart
TVs etc. from different vendors/platforms.

*Other notes*

   - We have demoted the following concepts to second class citizens and
   pulled them out of the core
  1. OS Platform, version
  2. Device Platform, version
  3. Roles

1 and 2 only matter to the extend that they help us define a set of
available features. Bundles will be responsible for managing this set based
on these factors. The core will only be aware of the set.
Roles were used in the EMM only to select the policy to apply on a user's
device. We have moved this responsibility to the Trigger (or handler)
chain. The core will only be aware of the chain, not what logic is applied
to generate the policy.

*For further discussions:*

   - More discussion around Trigger concept
   - Policy merging
   - Feature permissions

[1] Proposed Architecture of CDM - architecture@


On Tue, Dec 2, 2014 at 10:10 AM, Asok Perera as...@wso2.com wrote:

 Hi All,

 Please find the meeting minutes for the yesterday meeting.

 *Attendees* : Sameera Perera, Kasun Dananjaya, Prabath Abeysekera, Asok
 Perera, Afkham Azeez, Geeth Munasinghe, Inosh Perera, Harshan Liyanage, 
 Niranjan
 Karunanandham, Sumedha Rubasinghe, Srinath Perera, Manoj Dilshan


- Knowledge transfer of the current EMM architecture
- Moving all the device specific entries from Core EER to bundles
(bundles will have their own EERs)
- Checked the possibility of separating Mobile phone devices
implementation from IoT as too much generalisation seems to make the
architecture too complex (Not finalised yet)
- Checked the possibility of moving device specific feature
information to bundles, and keeping only the definition of features in core
for managing policy information (Not finalised yet)
- generalising core EER by removing/moving entries like IMEI, MAC etc
- Checked the possibility of renaming some entries(role, policy,
feature etc) according to the standard

 Kindly append if I have missed anything here.

 Regards

 *Asok Aravinda Perera*
 Software Engineer
 WSO2, Inc.;http://wso2.com/
 http://www.google.com/url?q=http%3A%2F%2Fwso2.com%2Fsa=Dsntz=1usg=AFQjCNGJuLRux6KkJwXKVUCYOtEsNCmIAQ
 lean.enterprise.middleware

 Mobile: +94722241032

 On Mon, Dec 1, 2014 at 12:25 PM, Sameera Perera samee...@wso2.com wrote:

 more details »
 https://www.google.com/calendar/event?action=VIEWeid=cjdjYmFnamZjdWY5dTFqYTEzdm5ibDlzaDAgZW5naW5lZXJpbmctZ3JvdXBAd3NvMi5jb20tok=MTcjc2FtZWVyYXBAd3NvMi5jb201OTJhZGJmZWMzM2Q4NmViNDczZWFiYzRmNzYyZTFhOTk4MjFhMWJjctz=Asia/Colombohl=en
 CDM Hackathon
 *When*
 Mon Dec 1, 2014 1:30pm – 5:30pm Colombo
 *Where*
 LK 3rd Floor Meeting Room - Kernel (map
 https://maps.google.lk/maps?q=LK+3rd+Floor+Meeting+Room+-+Kernelhl=en)
 *Video call*
 https://plus.google.com/hangouts/_/wso2.com/cdm-hackathon
 https://plus.google.com/hangouts/_/wso2.com/cdm-hackathon?hceid=c2FtZWVyYXBAd3NvMi5jb20

Re: [Architecture] Proposed Device Operations Flow of CDM

2014-11-24 Thread Sameera Perera
All,
We've been working on this architecture for a long time now. Lets have a
comprehensive review on Friday. I've already sent out the invite.

On Mon, Nov 24, 2014 at 7:00 AM, Shan s...@wso2.com wrote:

 Hi all,
 Just to add some points .

 That depends on whether an agent is involved or not

 3 criteria  :

 1 agent based
 2 agent less
 3 hybrid ( this is also based on feature )

 If u look at
 Android   It is 1
 iOS 3
 Windows 2 ( there is another option  )

 Some iot device its 1
 Any Cpe device its 2 since for example routers use tr069

 Things we need to consider

 1 enrollment , de-enrollment (ui or non ui based , active or passive ,
 ownership)
 2 DM
 3 transport
 4 device stream


 Also the dmml - a new markup language to define the device feature which
 can be defined at the client agent or at the server based on os , platform
 , version . This can be based on some combination as well. The first one is
 based on the device itself the use case for that is an arduino which has
 some sensors connected .

 Sent from my iPhone

 On Nov 22, 2014, at 10:41 PM, Dilan Udara Ariyaratne dil...@wso2.com
 wrote:

 Hi Sameera,

 I am not exactly getting the point.

 It should be because I am not exactly aware of the actual use case of
 Windows and iOS.

 Do you mean that they are using different transport (or connectivity)
 protocols?

 Regards.




 *Dilan U. Ariyaratne*
 Software Engineer
 WSO2 Inc. http://wso2.com/
 Mobile: +94775149066
 lean . enterprise . middleware

 On Sat, Nov 22, 2014 at 9:29 PM, Sameera Perera samee...@wso2.com wrote:

 Hi Dilan
 On Windows and iOS we need to use the specific protocols and rely on the
 OS to execute the command. This is why we have to use this approach.

 (Sent from a mobile device)
 On 22 Nov 2014 19:29, Dilan Udara Ariyaratne dil...@wso2.com wrote:

 Hi All,

 Why do we need to construct a Platform-specific-payload at the server
 level?

 Cannot we just send the Platform-independent-payload to the device
 agent and invoke the corresponding feature operation at the client side?

 I might not be right because I am not exactly aware of all the use-cases.

 Appreciate if some valid use-cases can be provided on this regard.

 Thanks.



 *Dilan U. Ariyaratne*
 Software Engineer
 WSO2 Inc. http://wso2.com/
 Mobile: +94775149066
 lean . enterprise . middleware

 On Tue, Nov 18, 2014 at 8:32 AM, Harshan Liyanage hars...@wso2.com
 wrote:

 Hi Dilan,

 Yes. you are correct.

 Thanks,

 Lakshitha Harshan
 Software Engineer
 Mobile: *+94724423048*
 Email: hars...@wso2.com
 Blog : http://harshanliyanage.blogspot.com/
 *WSO2, Inc. :** wso2.com http://wso2.com/*
 lean.enterprise.middleware.

 On Tue, Nov 18, 2014 at 7:20 AM, Dilan Udara Ariyaratne 
 dil...@wso2.com wrote:

 Hi Harshan,

 This is with reference to the two merging options that you have
 mentioned in your previous reply to the thread.

 As I understood, with the 1st Option:

 You suggest to

 [1] convert platform-independent-payload to platform-specific-payload,
 save it and when another request comes in,
 [2] convert the platform-specific-payload back into its
 platform-independent-form and merge it with the
 platform-independent-payload for the new request and
 [3] convert that back to a platform-specific-payload. (Please correct
 me if I am wrong)

 So with this option, you suggest not to save a
 platform-independent-payload for the pending requests and deal with it 
 only
 at run-time.

 As I understood, with the 2nd Option:

 You suggest to

 [1] Keep the platform-independent-payload saved along with its
 platform-specific-payload and when ever another request comes in,
 [2] Get the existing platform-independent-payload and merge it with
 new platform-independent-payload of the incoming request, save it and
 [3] Convert that to a new platform-specific-payload and overwrite the
 existing platform-specific-payload with the new one. (Please correct me if
 I am wrong)

 Thanks.







 *Dilan U. Ariyaratne*
 Software Engineer
 WSO2 Inc. http://wso2.com/
 Mobile: +94775149066
 lean . enterprise . middleware

 On Mon, Nov 17, 2014 at 8:16 AM, Harshan Liyanage hars...@wso2.com
 wrote:

 Hi,

 *Platform-specific payload *is the actual payload which will be
 delivered to the device when the device contacts the server for
 pending-operations. *Platform-independent *form is used to construct
 the *Platform-specific payload * communicate device operations
 internally within CDM. For example when an user sends a device operation
 using CDM web-console, *platform-independent *message will be sent
 from the console - CDM API - CDM Core - Device-platform bundle. Then 
 the *device-platform
 bundle *will use it to construct the *platform-specific payload.*
 But there might be situation where some device operation payloads
 might not delivered to the device when another operation for that device
 comes-in. IMO in such cases its not good to have many pending 
 *platform-specific
 payloads *for a single device. If we

Re: [Architecture] Proposed Device Operations Flow of CDM

2014-11-22 Thread Sameera Perera
Hi Dilan
On Windows and iOS we need to use the specific protocols and rely on the OS
to execute the command. This is why we have to use this approach.

(Sent from a mobile device)
On 22 Nov 2014 19:29, Dilan Udara Ariyaratne dil...@wso2.com wrote:

 Hi All,

 Why do we need to construct a Platform-specific-payload at the server
 level?

 Cannot we just send the Platform-independent-payload to the device agent
 and invoke the corresponding feature operation at the client side?

 I might not be right because I am not exactly aware of all the use-cases.

 Appreciate if some valid use-cases can be provided on this regard.

 Thanks.



 *Dilan U. Ariyaratne*
 Software Engineer
 WSO2 Inc. http://wso2.com/
 Mobile: +94775149066
 lean . enterprise . middleware

 On Tue, Nov 18, 2014 at 8:32 AM, Harshan Liyanage hars...@wso2.com
 wrote:

 Hi Dilan,

 Yes. you are correct.

 Thanks,

 Lakshitha Harshan
 Software Engineer
 Mobile: *+94724423048*
 Email: hars...@wso2.com
 Blog : http://harshanliyanage.blogspot.com/
 *WSO2, Inc. :** wso2.com http://wso2.com/*
 lean.enterprise.middleware.

 On Tue, Nov 18, 2014 at 7:20 AM, Dilan Udara Ariyaratne dil...@wso2.com
 wrote:

 Hi Harshan,

 This is with reference to the two merging options that you have
 mentioned in your previous reply to the thread.

 As I understood, with the 1st Option:

 You suggest to

 [1] convert platform-independent-payload to platform-specific-payload,
 save it and when another request comes in,
 [2] convert the platform-specific-payload back into its
 platform-independent-form and merge it with the
 platform-independent-payload for the new request and
 [3] convert that back to a platform-specific-payload. (Please correct me
 if I am wrong)

 So with this option, you suggest not to save a
 platform-independent-payload for the pending requests and deal with it only
 at run-time.

 As I understood, with the 2nd Option:

 You suggest to

 [1] Keep the platform-independent-payload saved along with its
 platform-specific-payload and when ever another request comes in,
 [2] Get the existing platform-independent-payload and merge it with new
 platform-independent-payload of the incoming request, save it and
 [3] Convert that to a new platform-specific-payload and overwrite the
 existing platform-specific-payload with the new one. (Please correct me if
 I am wrong)

 Thanks.







 *Dilan U. Ariyaratne*
 Software Engineer
 WSO2 Inc. http://wso2.com/
 Mobile: +94775149066
 lean . enterprise . middleware

 On Mon, Nov 17, 2014 at 8:16 AM, Harshan Liyanage hars...@wso2.com
 wrote:

 Hi,

 *Platform-specific payload *is the actual payload which will be
 delivered to the device when the device contacts the server for
 pending-operations. *Platform-independent *form is used to construct
 the *Platform-specific payload * communicate device operations
 internally within CDM. For example when an user sends a device operation
 using CDM web-console, *platform-independent *message will be sent
 from the console - CDM API - CDM Core - Device-platform bundle. Then 
 the *device-platform
 bundle *will use it to construct the *platform-specific payload.*
 But there might be situation where some device operation payloads might
 not delivered to the device when another operation for that device 
 comes-in.
  IMO in such cases its not good to have many pending *platform-specific
 payloads *for a single device. If we are to deliver multiple payloads
 that might introduce an additional overhead in network. In such situations
 what I suggest is to merge the new payload with the existing payload. To do
 that we have two options.

 1. Use the existing *platform-specific payload * merge it with the
 new operation request
 2. Use the *platform-independent *form  merge it with new operation
 request (platform-independent form)  construct a new payload

 Going through the 1st approach will be harder because then the
 device-platform bundle will have to have the all the conversion logic need
 to convert payloads ( *platform-independent - platform-specific * 
 *platform-specific
 - platform-independent). *In some platforms converting back the 
 *platform-specific
 payload* might not be possible because the device-platform bundle
 might use a 3rd party library to do the conversion. So we had to opt out
 1st approach.
 If we follow the 2nd approach, CDM server itself can do the merging of
 the operation requests because it does not need any platform-specific
 knowledge to do so. Then the merged *platform-independent payload *can
 be send to the device-platform bundle to get the corresponding 
 *platform-specific
 payload.* For do that we need to save the *platform-independent
 payload *along with the *platform-specific payload.*
 This approach will reduce the workload of device-platform implementer,
 which will make easier integration of new platforms.

 Regards,

 Lakshitha Harshan
 Software Engineer
 Mobile: *+94724423048*
 Email: hars...@wso2.com
 Blog : 

Re: [Architecture] Unified Governance Metadata models and APIs for WSO2 Platform

2014-11-06 Thread Sameera Perera
On Wed, Nov 5, 2014 at 7:33 PM, Subash Chaturanga sub...@wso2.com wrot
​​
e:

 @SameeraP, shall we give it to a trainee/intern project and get it done ?

​+1. Isuruwan, can you create a Redmine for this?​




-- 

--

*Sameera Perera*
Director of Engineering
gtalk: samee...@wso2.com
Tel : 94 11 214 5345
Fax :94 11 2145300
*WSO2, Inc.* http://wso2.com/
lean.enterprise.middleware
___
Architecture mailing list
Architecture@wso2.org
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture


Re: [Architecture] Proposed Architecture of CDM

2014-10-30 Thread Sameera Perera
On Fri, Oct 31, 2014 at 8:46 AM, Dilshan Edirisuriya dils...@wso2.com
wrote:

 Will this be scalable? I mean have multiple APIs for the same purpose?


​Multiple APIs? How will we end up with multiple APIs?​


 Even if its done by connectors console needs to know in advance that it
 could execute specific operations on specific devices. I think we only show
 the appropriate functionality under each device rather having all of them
 together in the UI.


​Correct; the console should query the connector for supported actions and
only display them.​




-- 

--

*Sameera Perera*
Director of Engineering
gtalk: samee...@wso2.com
Tel : 94 11 214 5345
Fax :94 11 2145300
*WSO2, Inc.* http://wso2.com/
lean.enterprise.middleware
___
Architecture mailing list
Architecture@wso2.org
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture


Re: [Architecture] Invitation: ES API 2.0.0 Review @ Mon Jul 21, 2014 11:30am - 12:30pm (samee...@wso2.com)

2014-07-21 Thread Sameera Perera
Hi SameeraJ,
Can you share the notes please?

SameeraM,
Please share the doc.


On Mon, Jul 21, 2014 at 10:50 AM, Sameera Medagammaddegedara 
samee...@wso2.com wrote:

  more details »
 https://www.google.com/calendar/event?action=VIEWeid=OXMzanYzNG4zZDUxb2ZmMDlidTkwODZqaTggYXJjaGl0ZWN0dXJlQHdzbzIub3Jntok=MTcjc2FtZWVyYW1Ad3NvMi5jb21lZTMwMGUxNmNiYzcwODk4NWFhZTlhMzZmMDJhOTRmNzhjYjUwM2Nhctz=Asia/Colombohl=en
 ES API 2.0.0 Review
 *When*
 Mon Jul 21, 2014 11:30am – 12:30pm Colombo
 *Where*
 LK 1st Floor Meeting Room (map
 http://maps.google.lk/maps?q=LK+1st+Floor+Meeting+Roomhl=en)
 *Video call*
 https://plus.google.com/hangouts/_/wso2.com/sameeram
 https://plus.google.com/hangouts/_/wso2.com/sameeram?hceid=c2FtZWVyYW1Ad3NvMi5jb20.9s3jv34n3d51off09bu9086ji8
 *Calendar*
 samee...@wso2.com
 *Who*
  •
 Sameera Medagammaddegedara - organizer
 •
 Udara Rathnayake
 •
 Ruchira Wageesha
 •
 Dulitha Wijewantha
 •
 Tanya Madurapperuma
 •
 architecture@wso2.org
 •
 Sameera Jayaratna
 •
 Ayesha Dissanayaka
 •
 Manuranga Perera

 Going?   *Yes
 https://www.google.com/calendar/event?action=RESPONDeid=OXMzanYzNG4zZDUxb2ZmMDlidTkwODZqaTggYXJjaGl0ZWN0dXJlQHdzbzIub3Jnrst=1tok=MTcjc2FtZWVyYW1Ad3NvMi5jb21lZTMwMGUxNmNiYzcwODk4NWFhZTlhMzZmMDJhOTRmNzhjYjUwM2Nhctz=Asia/Colombohl=en
 - Maybe
 https://www.google.com/calendar/event?action=RESPONDeid=OXMzanYzNG4zZDUxb2ZmMDlidTkwODZqaTggYXJjaGl0ZWN0dXJlQHdzbzIub3Jnrst=3tok=MTcjc2FtZWVyYW1Ad3NvMi5jb21lZTMwMGUxNmNiYzcwODk4NWFhZTlhMzZmMDJhOTRmNzhjYjUwM2Nhctz=Asia/Colombohl=en
 - No
 https://www.google.com/calendar/event?action=RESPONDeid=OXMzanYzNG4zZDUxb2ZmMDlidTkwODZqaTggYXJjaGl0ZWN0dXJlQHdzbzIub3Jnrst=2tok=MTcjc2FtZWVyYW1Ad3NvMi5jb21lZTMwMGUxNmNiYzcwODk4NWFhZTlhMzZmMDJhOTRmNzhjYjUwM2Nhctz=Asia/Colombohl=en*
 more options »
 https://www.google.com/calendar/event?action=VIEWeid=OXMzanYzNG4zZDUxb2ZmMDlidTkwODZqaTggYXJjaGl0ZWN0dXJlQHdzbzIub3Jntok=MTcjc2FtZWVyYW1Ad3NvMi5jb21lZTMwMGUxNmNiYzcwODk4NWFhZTlhMzZmMDJhOTRmNzhjYjUwM2Nhctz=Asia/Colombohl=en

 Invitation from Google Calendar https://www.google.com/calendar/

 You are receiving this courtesy email at the account architecture@wso2.org
 because you are an attendee of this event.

 To stop receiving future notifications for this event, decline this event.
 Alternatively you can sign up for a Google account at
 https://www.google.com/calendar/ and control your notification settings
 for your entire calendar.

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




-- 

--

*Sameera Perera*
Director of Engineering
gtalk: samee...@wso2.com
Tel : 94 11 214 5345
Fax :94 11 2145300
*WSO2, Inc.* http://wso2.com/
lean.enterprise.middleware
___
Architecture mailing list
Architecture@wso2.org
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture


Re: [Architecture] Connector:NetSuite

2014-06-05 Thread Sameera Perera
Yes, sorry I missed that. +1 to final list.

[Sent from a mobile device]
On Jun 5, 2014 3:11 PM, Rasika Hettige rasi...@gmail.com wrote:

Hi All,

Small amendment to the method list.

*getCustomizaton * method is depreciated. According to the documentation
/This operation has been removed as of WSDL version 2010.1. If you choose
to upgrade to the 2010.1 or later WSDL, you must update existing
getCustomization code to use the getCustomizationId operation. Note that
getCustomization will continue to be supported in WSDL versions 2009.2 and
older./

So we may need to remove this from the method list as *getCustomizationId *
would do the needful as per the documentation of Netsuite.

Hence the final method list will be as follows:

*addList *- Use to add one or more records into the system. The system
returns a NetSuite identifier (internalId) that is unique for each record
created within a record type.
*attach *- Use to attach another record or file to/from another record
*detach *- Use to detach another record or file to/from another record
*deleteList *- Use to delete one or more records in the system. The records
to be deleted are identified by either the internal or external ID and the
record type.
*getList *- Use to query the system for one or more records. You must
provide either the internal or external ID and the record type for each
query item.
*getAll *- Use to return a list of records that do not have a search
interface.
*getItemAvailability *- Use to retrieve the inventory availability for a
given list of items.
*updateList *- Use to update one or more existing records in the system by
providing new values for the fields to be updated for each record. The
records to be updated are identified by either the internal or external ID
and the record type.
*getDataCenterUrls *- Use for dynamic discovery of data-center-specific URLs
for partner applications' access to NetSuite.
*search *- Use to search for a set of records based on specific search
criteria.
*getCustomizationId *- Use to retrieve the internalIds, externalIds, and/or
scriptIds of all custom objects of a specified type.
*getSelectValue *- Use the getSelectValue operation to retrieve valid select
options for a given RecordRef, CustomRecordRef, or enumerated static field.
*initialize/initializeList* - Use the initialize operation to emulate the UI
workflow by prepopulating fields on transaction line items with values from
a related record. Your Web services application can then modify only the
values it needs to before submitting the record.

Thanks  Regards
Rasika



--
View this message in context:
http://wso2-oxygen-tank.10903.n7.nabble.com/Connector-NetSuite-tp97380p97871.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] Connector:NetSuite

2014-06-04 Thread Sameera Perera
Also, what's the selection criteria for the supported operations.


   - searchMoreWithId is not useful on it's own. search function must be
   supported for this to be useful.
   - Following methods are frequently used in NetSuite integration projects
   as most NS accounts carry customization or addons
  - getCustomizaton
  - getCustomizationId
  - getSelectValue
   - initialize/initializeList is required for integration using most
   transaction record types

Also, the following operations aren't as frequently used (they are actually
recent additions to the API and not widely adopted yet):

   - *getBudgetExchangeRate*
   - *getCurrencyRate *
   - *getConsolidatedExchangeRate*

*getPostingTransactionSummary * is useful for generating reports, but
should be lower priority as well due to the limited use cases it'll support


On Wed, Jun 4, 2014 at 11:10 AM, Shevan Goonetilleke she...@wso2.com
wrote:

 Can you please list out the methods that were not selected (don't have
 access to the API documentation).

 Thanks
 Shevan


 On Wed, May 28, 2014 at 6:38 PM, Rasika Hettige rasi...@gmail.com wrote:

 *Introduction*

 SuiteTalk exposes NetSuite as a data source for programmatic access, hence
 most of the data operations developers expect, such as insert, update,
 delete, and select/search are supported. There are also a number of
 operations that are available as supporting operations for data read/write
 operations.

 *API (SOAP)*
 https://system.na1.netsuite.com/app/help/helpcenter.nl?topic=CARD_-29

 *Netsuite Connector Summary*
 • Connector Name:  netsuiteconnector-1.0.0
 • Version: 1.0.0
 • Technology:  SOAP

 *Authentication*

 Use Request Level Credentials which are sent in SOAP header while
 maintaining https proxy.

 *Methods*

 *addList *- Use to add one or more records into the system. The system
 returns a NetSuite identifier (internalId) that is unique for each record
 created within a record type.
 *attach *- Use to attach another record or file to/from another record
 *detach *- Use to detach another record or file to/from another record
 *deleteList *- Use to delete one or more records in the system. The
 records
 to be deleted are identified by either the internal or external ID and the
 record type.
 *getList *- Use to query the system for one or more records. You must
 provide either the internal or external ID and the record type for each
 query item.
 *getAll *- Use to return a list of records that do not have a search
 interface.
 *getBudgetExchangeRate*- Use to get and filter all data related to the
 Budget Exchange Rates table.
 *getCurrencyRate *-  Use to get currency exchange rates from the Currency
 Exchange Rate table.
 *getConsolidatedExchangeRate* - Use to get and filter all data related to
 the Consolidated Exchange Rates table.
 *getItemAvailability *- Use to retrieve the inventory availability for a
 given list of items.
 *getPostingTransactionSummary *- Use to retrieve a summary of the actual
 data in an account.
 *searchMoreWithId *- Used to retrieve more records after an initial search
 operation is invoked.
 *updateList *- Use to update one or more existing records in the system by
 providing new values for the fields to be updated for each record. The
 records to be updated are identified by either the internal or external ID
 and the record type.
 *getDataCenterUrls *- Use for dynamic discovery of data-center-specific
 URLs
 for partner applications' access to NetSuite.

 Thanks  Regards
 Rasika



 --
 View this message in context:
 http://wso2-oxygen-tank.10903.n7.nabble.com/Connector-NetSuite-tp97380.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




-- 

--

*Sameera Perera*
Director of Engineering
gtalk: samee...@wso2.com
Tel : 94 11 214 5345
Fax :94 11 2145300
*WSO2, Inc.* http://wso2.com/
lean.enterprise.middleware
___
Architecture mailing list
Architecture@wso2.org
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture


[Architecture] Invitation: Re: EMM - UI Design @ Tue May 6, 2014 3pm - 5pm (samee...@wso2.com)

2014-05-05 Thread Sameera Perera
BEGIN:VCALENDAR
PRODID:-//Google Inc//Google Calendar 70.9054//EN
VERSION:2.0
CALSCALE:GREGORIAN
METHOD:REQUEST
BEGIN:VEVENT
DTSTART:20140506T093000Z
DTEND:20140506T113000Z
DTSTAMP:20140505T071547Z
ORGANIZER;CN=Sameera Perera:mailto:samee...@wso2.com
UID:kctimb6vca7facd85jq2ddk...@google.com
ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;PARTSTAT=NEEDS-ACTION;RSVP=
 TRUE;CN=architecture@wso2.org;X-NUM-GUESTS=0:mailto:architecture@wso2.org
ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;PARTSTAT=NEEDS-ACTION;RSVP=
 TRUE;CN=Chathura Dilan;X-NUM-GUESTS=0:mailto:chathu...@wso2.com
ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;PARTSTAT=NEEDS-ACTION;RSVP=
 TRUE;CN=Sumedha Rubasinghe;X-NUM-GUESTS=0:mailto:sume...@wso2.com
ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;PARTSTAT=NEEDS-ACTION;RSVP=
 TRUE;CN=Ruchira Wageesha;X-NUM-GUESTS=0:mailto:ruch...@wso2.com
ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;PARTSTAT=NEEDS-ACTION;RSVP=
 TRUE;CN=Chanaka Jayasena;X-NUM-GUESTS=0:mailto:chan...@wso2.com
ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;PARTSTAT=NEEDS-ACTION;RSVP=
 TRUE;CN=Nadeesha Cabral;X-NUM-GUESTS=0:mailto:nadees...@wso2.com
ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;PARTSTAT=NEEDS-ACTION;RSVP=
 TRUE;CN=Dulitha Wijewantha;X-NUM-GUESTS=0:mailto:duli...@wso2.com
ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;PARTSTAT=ACCEPTED;RSVP=TRUE
 ;CN=Sameera Perera;X-NUM-GUESTS=0:mailto:samee...@wso2.com
CREATED:20140505T071547Z
DESCRIPTION:View your event at http://www.google.com/calendar/event?action=
 VIEWeid=a2N0aW1iNnZjYTdmYWNkODVqcTJkZGtjb3MgYXJjaGl0ZWN0dXJlQHdzbzIub3Jnt
 ok=MTcjc2FtZWVyYXBAd3NvMi5jb205MzUxOTVkNTFkMjMzYzZhZWE0Yjk0Yzg0MmY1MTA1YWQ4
 MzRmZTk4ctz=Asia/Colombohl=en.
LAST-MODIFIED:20140505T071547Z
LOCATION:5th Floor Meeting Room
SEQUENCE:0
STATUS:CONFIRMED
SUMMARY:Re: [Architecture] EMM - UI Design
TRANSP:OPAQUE
END:VEVENT
END:VCALENDAR


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


[Architecture] Fwd: C5 - Mid-milestone sync-up notes

2014-01-17 Thread Sameera Perera
We had a sync up today to review the current state of milestone 3,
scheduled for 23rd January.

Following were the deliverable
s

o
riginally planned for M3

   - Carbon Clustering API and Implementation - Phase 02
   - Pluggable Runtime Framework - Phase 02
   - Configuration and Context Model - Phase 03
   - Repository API and Implementation - Phase 03

Current status of these deliverables:

Carbon Clustering API and Implementation

   - Being discussed in archi@
   - Will not be released in M3


Pluggable Runtime Framework

   - Pending review (Scheldued for 2014/1/20)
   - Will be ready for M3

Configuration and Context model

   - Not started. Will be repriorized (see below)

Repository API and Implementation

   - The team is running the refactored implementation through existing
   registry test cases
   - Architecture and code reviews pending
   - Further changes to the API may happen
   - Will not be ready in M3

As the original milestone plan was set out to meet a March deadline and had
some assumptions that were revised at the off site meeting, after 23rd the
team will revise the milestone plan and reprioritize the deliverables
accordingly. This will be used as an opportunity to document the user
stories for C5 features as well as introduce development governance as
discussed with product management this week.

--

*Sameera Perera*
Senior Manager, Engineering (Platform TG)
gtalk: samee...@wso2.com
Tel : 94 11 214 5345
Fax :94 11 2145300
*WSO2, Inc.* http://wso2.com/
lean.enterprise.middleware





-- 

--

*Sameera Perera*
Senior Manager, Engineering (Platform TG)
gtalk: samee...@wso2.com
Tel : 94 11 214 5345
Fax :94 11 2145300
*WSO2, Inc.* http://wso2.com/
lean.enterprise.middleware
___
Architecture mailing list
Architecture@wso2.org
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture


Re: [Architecture] Meeting Notes { was : Re: Invitation: Carbon 5 User API Design Review}

2013-12-22 Thread Sameera Perera
IS Team,

IIRC, one point that was mentioned during the meeting was a chained login
mechanism: where a user logging in was checked against each user store
until he's authenticated by one. Did I note this down correctly?

If so, and if we utilize this in, say WSO2 Cloud or in a massive App
Factory deployment, this may end up being a performance issue; especially
if you keep hitting it with invalid credentials.

Can we optimize this? Say using a key-value store where key= username, value
= array of user stores. Perhaps if the no. of keys is an issue, it could
also be a hash of the user name (collisions are not a concern). The goal is
to minimize the number of stores checked and to know immediately when a
username is invalid.


On Thu, Dec 19, 2013 at 1:26 PM, Prabath Siriwardena prab...@wso2.comwrote:

 Participants : Azeez, Srinath, Sameera,SameeraP Manoj, Kishanthan,Johann,
 Venura, Ishara, Chamath, Darshana, Pradeep, Prabath

 - Overall we agreed on the design.
 - Separate out IdentityService API in to tow top level APIs - one for
 store administration and another for user/group/role/permission
 administration
 - Authenticated user should be independent from the Authorization Store
 - JAAS implementation

 Next steps :

 - Commit the API code to Git
 - File based implementation for C5
 - Validate the API with further implementations with LDAP/AD
 - Documentation

 Will schedule another review in January.

 Thanks a lot everyone for your time..!

 Thanks  regards,
 -Prabath


 On Tue, Dec 17, 2013 at 3:15 PM, Johann Nallathamby joh...@wso2.comwrote:

  more details 
 »https://www.google.com/calendar/event?action=VIEWeid=bTh1ZmxrY2p0YmlhaDcwZm51MDJvYnJoaWsgcHJhYmF0aEB3c28yLmNvbQtok=MTUjam9oYW5uQHdzbzIuY29tZjI0MmRkYzUxYWI1ZGViMWRlZDU4ZjdkZWZiNzkzODdiNzNmMWQ4Nwctz=Asia/Colombohl=en
 Carbon 5 User API Design Review
 Carbon 5 User Core API Design - Public Review
 *When*
 Thu Dec 19, 2013 11am – 12pm Colombo
 *Where*
 LK 5th Floor Meeting Room - Garage 
 (maphttp://maps.google.lk/maps?q=LK+5th+Floor+Meeting+Room+-+Garagehl=en
 )
 *Calendar*
 prab...@wso2.com
 *Who*
  •
 Johann Nallathamby - organizer
 •
 Chamath Gunawardana
 •
 architecture@wso2.org
 •
 Paul Fremantle
 •
 Dimuthu Leelarathne
 •
 Darshana Gunawardana
 •
 Sameera Jayasoma
 •
 Asela Pathberiya
 •
 Prabath Siriwardana
 •
 Srinath Perera
 •
 Afkham Azeez
 •
 Sanjiva Weerawarana
 •
 Dulanja Liyanage
 •
 Sumedha Rubasinghe
 •
 Ishara Karunarathna
 *Attachments*
  
 c5-user-core-api-highlevel-design.pnghttps://lh6.googleusercontent.com/DiBqCFm-4bjETgEgayV1xMMJ9zxe-NWrMl2MLEzcBhjGjCf3foc2nDDo8dcHorwC9MdBBBREPSmKrtxsbP-FDMo=s400

 Going?   *Yes
 https://www.google.com/calendar/event?action=RESPONDeid=bTh1ZmxrY2p0YmlhaDcwZm51MDJvYnJoaWsgcHJhYmF0aEB3c28yLmNvbQrst=1tok=MTUjam9oYW5uQHdzbzIuY29tZjI0MmRkYzUxYWI1ZGViMWRlZDU4ZjdkZWZiNzkzODdiNzNmMWQ4Nwctz=Asia/Colombohl=en
 - Maybe
 https://www.google.com/calendar/event?action=RESPONDeid=bTh1ZmxrY2p0YmlhaDcwZm51MDJvYnJoaWsgcHJhYmF0aEB3c28yLmNvbQrst=3tok=MTUjam9oYW5uQHdzbzIuY29tZjI0MmRkYzUxYWI1ZGViMWRlZDU4ZjdkZWZiNzkzODdiNzNmMWQ4Nwctz=Asia/Colombohl=en
 - No
 https://www.google.com/calendar/event?action=RESPONDeid=bTh1ZmxrY2p0YmlhaDcwZm51MDJvYnJoaWsgcHJhYmF0aEB3c28yLmNvbQrst=2tok=MTUjam9oYW5uQHdzbzIuY29tZjI0MmRkYzUxYWI1ZGViMWRlZDU4ZjdkZWZiNzkzODdiNzNmMWQ4Nwctz=Asia/Colombohl=en*
 more options 
 »https://www.google.com/calendar/event?action=VIEWeid=bTh1ZmxrY2p0YmlhaDcwZm51MDJvYnJoaWsgcHJhYmF0aEB3c28yLmNvbQtok=MTUjam9oYW5uQHdzbzIuY29tZjI0MmRkYzUxYWI1ZGViMWRlZDU4ZjdkZWZiNzkzODdiNzNmMWQ4Nwctz=Asia/Colombohl=en

 Invitation from Google Calendar https://www.google.com/calendar/

 You are receiving this email at the account prab...@wso2.com because you
 are subscribed for invitations on calendar prab...@wso2.com.

 To stop receiving these notifications, please log in to
 https://www.google.com/calendar/ and change your notification settings
 for this calendar.




 --
 Thanks  Regards,
 Prabath

 Twitter : @prabath
 LinkedIn : http://www.linkedin.com/in/prabathsiriwardena

 Mobile : +94 71 809 6732

 http://blog.facilelogin.com
 http://blog.api-security.org

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




-- 

--

*Sameera Perera*
Senior Manager, Engineering (Platform TG)
gtalk: samee...@wso2.com
Tel : 94 11 214 5345
Fax :94 11 2145300
*WSO2, Inc.* http://wso2.com/
lean.enterprise.middleware
___
Architecture mailing list
Architecture@wso2.org
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture


Re: [Architecture] [Meeting Notes] jaggery Test Framework Review on HTML Reporter 12/04/2013

2013-12-04 Thread Sameera Perera
On Wed, Dec 4, 2013 at 4:01 PM, Madhuka Udantha madh...@wso2.com wrote:

 ID was not validate  as we integrate with automation test framework. We
 drop above pattern and come with

-

 http://localhost:9763/automobile/test[/{folderName}]*[/{fileName}][/{fullName 
 }]

 FullName contains 'SpecName' and 'TestSuite Name'.
 JSON API will upgrade API where can be passed test Suite rather fullName,
 with 'it_'

-

 http://localhost:9763/automobile/test[/{folderName}]*[/{fileName}][/it_{testSpecName
  }]


Hi Madhuka,
This isn't what I meant during our offline meeting. Rather, both of the
following should be supported:

http://localhost:9763/automobile/test[/{folderName}]*[/{fileName}][/{testSpecName}]
http://localhost:9763/automobile/test[/{folderName}]*[/{fileName}][/{testSpecName}]
[/{testName}]

2nd pattern can wait for v1.1

IIUC, you are proposing {fullName} = {testSpecName}+{testName}. I don't
understand what value we gain from this.

-- 

--

*Sameera Perera*
Senior Manager, Engineering (Platform TG)
gtalk: samee...@wso2.com
Tel : 94 11 214 5345
Fax :94 11 2145300
*WSO2, Inc.* http://wso2.com/
lean.enterprise.middleware
___
Architecture mailing list
Architecture@wso2.org
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture


Re: [Architecture] Next steps to aPaaS Application version support and rest of the integration points from AS side

2013-09-08 Thread Sameera Perera
Hi Supun,
I can't make it today. Please move it to later this week. Please add Azeez
to the meeting as well.

Thanks


On Wed, Sep 4, 2013 at 9:45 PM, Supun Malinga sup...@wso2.com wrote:

 Hi All,

 Pls note that meeting is re-scheduled to Monday 3.00-3.30 pm.

 thanks,


 On Wed, Sep 4, 2013 at 5:08 PM, Amila Maha Arachchi ami...@wso2.comwrote:

 Hi Supun,

 Lets have this this week. Friday would be fine. Can you arrange a meeting
 please?

 AmilaM.


 On Wed, Sep 4, 2013 at 2:37 PM, Supun Malinga sup...@wso2.com wrote:

 Hi Dimuthu/ All,

 As you may know AS  5.2.0 is released now with the support to have
 application versions and set default version. So now we would need to see
 how we can integrate this to aPaaS usage. If there are any improvements
 needed from AS side we need to decide on the early on. Shall we have a
 meeting/ session sometime to see how this fits into aPaaS story?.
 Also  this would be helpful in deciding next AS release action items..

 thanks,
 --
 Supun Malinga,

 Senior Software Engineer,
 WSO2 Inc.
 http://wso2.com
 http://wso2.org
 email - sup...@wso2.com sup...@wso2.com
 mobile - 071 56 91 321

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




 --
 *Amila Maharachchi*
 Senior Technical Lead
 WSO2, Inc.; http://wso2.com

 Blog: http://maharachchi.blogspot.com
 Mobile: +94719371446


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




 --
 Supun Malinga,

 Senior Software Engineer,
 WSO2 Inc.
 http://wso2.com
 http://wso2.org
 email - sup...@wso2.com sup...@wso2.com
 mobile - 071 56 91 321

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




-- 

--

*Sameera Perera*
Senior Manager, Cloud Technology Group
gtalk: samee...@wso2.com
*WSO2, Inc.* http://wso2.com/
lean.enterprise.middleware
___
Architecture mailing list
Architecture@wso2.org
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture


Re: [Architecture] Application default version management for AS ( aPaaS)

2013-08-26 Thread Sameera Perera
Hi Sagara,

From our last meeting, what I understood was that with Option 4, achieving
(c) requires that the WAR is deployed twice (as mycapp.war and mycapp#v2.war
IIRC). If not, if version 2 is set as default, /mycapp/2 would fail.
And the problem with the double deployment was that now, the default
version and v2 don't actually share the same sessions.

Have you been able to workaround these problems so that we Option 4 is
still viable?


On Wed, Aug 21, 2013 at 6:00 PM, Sagara Gunathunga sag...@wso2.com wrote:


 As per thread[1] we have implemented multiple version deployment support
 for web applications ( including JAX-WS/JAX-RS)  and will be available with
 AS 5.2.0 release.  The original plan was to leave default  version handling
 to the ELB  using some kind of a  URL rewriting mechanism but during the
 architectural review we decided to bring default version handing into AS
 level to keep ELB lightweight.

 Here under default version management concept we need to support
 following requirements.

 a.) Change default version through admin UI.

 b.) Any incoming request which does not mention specific version number in
 it's request URL should dispatch to current default version. Further
 response messages or page rendered should hide actual application version
 instead they should contains default app context .

(As an example if mvcapp/2 is the current default version then
 requests with mvcapp request URL should dispatch to application version
 named mvcapp/2. )



 c.) Regardless of default version management, if the incoming request URL
 contains a valid version number (e.g - mvcapp/XY) it should dispatch to
 specific application version (e.g  - mvcapp/XY version) not to the default
 version.


 I have done few POCs and pros/cons of each approach are given below.



 1. ) *Option -1 * - Extend Tomcat's dispatching logic so that request
 which does not mention specific version number to current default version,
 this can be done by modifying Tomcat's Mapper[2] class. The main limitation
 of this approach is after dispatching to default version response message
 or rendered web pages contains actual context path (e.g - Response URL is
 mvcapp/XY not mvcapp)  With this approach a.) and c.) possible but b.)
 is not possible.


 2.) * Option -2 * - Instead of deploying each version with unique context
 path deploy all versions in a single context path and use  Tomcat's version
 numbering support [3]( based on ## ) to handle different application
 versions.  Still we need to modify Mapper[2] class in order to dispatch
 request which does not mention specific version number to current default
 version (e.g mvcapp into mvcapp/XY Context). Main drawback of this
 approach is each version of a application won't get unique context path and
 all of them share single context path hence it is not possible to uniquely
 refer to each application version.   In this approach  a.) and b.) are
 possible but c.) is not possible.

 3.)  * Option -3*- Implement  URL rewrite  module and invoke it
 before message reach to Tomcat Connectors,  this rewrite module aware about
 default version management  and can rewrite URLs accordingly.  Further when
 rendering web pages this module should rewrite all the links according to
 default version management logic. Basically this is something similar to
 mod-proxy module for Apache2. As this involves lot of effort and can affect
 to performance I haven't  look into this and keep it as the final option
 but with this we can support all of above a.), b.) and c.).   This option
 also involved modification on Tomcat Connector level but I haven't look
 into this further.


 4.) *Option - 4 *-  When changing the default application from UI simply
 rename the .WAR file so that web app will redeploy in the new context path.
 This is the simplest option and we don't need to modify or extend any
 Tomcat classes also this supports for our existing DepSync architecture as
 well.  Only drawback is when changing the version of a specific .WAR file
 it's required to redeploy the app with new context path but in production
 systems changing the default version is not a everyday activity hence IMO
 not a very big issue. With this approach above a.), b.) and c.) are
 possible.


 Any comments ?




 [1] -  AS Webapp versioning for aPaaS
 [2] -
 http://grepcode.com/file/repo1.maven.org/maven2/org.apache.tomcat.embed/tomcat-embed-core/7.0.34/org/apache/tomcat/util/http/mapper/Mapper.java
 [3] -  http://tomcat.apache.org/tomcat-7.0-doc/config/context.html



 Thanks !


 --
 Sagara Gunathunga

 Senior Technical Lead; WSO2, Inc.;  http://wso2.com
 V.P Apache Web Services;http://ws.apache.org/
 Linkedin; http://www.linkedin.com/in/ssagara
 Blog ;  http://ssagara.blogspot.com


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




-- 

--

*Sameera

Re: [Architecture] aPaaS - Users of an Organization

2013-08-15 Thread Sameera Perera
Thanks for the clarification Dimuthu.
+1 this is fine for first-cut.


On Fri, Aug 16, 2013 at 8:09 AM, Dimuthu Leelarathne dimut...@wso2.comwrote:


 Hi Sameera,

 On Thu, Aug 15, 2013 at 9:27 PM, Sameera Perera samee...@wso2.com wrote:

 Hi Dimuthu,
 Can you please explain the actual implication of not doing application
 level roles (I'm not clear as to which roles you are referring to by this)?
 What use cases are disabled by not doing this?


 The third point will not be done - the application roles. The implication
 would be an all-friendly environment within the tenant. Meaning if someone
 creates an application, to others in the same tenant can perform actions on
 the applications. We are not checking application level permissions.

 thanks,
 dimuthu


 On Thu, Aug 15, 2013 at 4:31 PM, Dimuthu Leelarathne 
 dimut...@wso2.comwrote:

 Hi all,

 Implementing application level roles within tenant is complex, because
 there is no straight forward way to implement it. So we have decided not to
 do it for the first cut.

 thanks,
 dimuthu



 On Tue, Aug 13, 2013 at 9:29 AM, Dimuthu Leelarathne 
 dimut...@wso2.comwrote:

 Hi Shiro,


 On Tue, Aug 13, 2013 at 6:42 AM, Shiroshica Kulatilake 
 sh...@wso2.comwrote:

 Hi,

 1. Should the word team be used for application team when an app owner
 creates a team and hence use the word organisation in this page ?
 2. CXO and Tenant Admin should be two separate roles - from a
 dashboard point of view users of these two roles would see different
 dashboards.


 We have never mixed up CXO and Tenant Admin, and they MUST be two
 different roles. For dashboards we can add any of number of roles as
 desired.


 3. Do we need another AppOwner role or can it be taken that admins are
 those who are privileged to create apps ?

 These are two separate roles.


 3. Should there be a default tenant role for all who belong to the
 organisation ?

 The platform already provides it. It is called Everyone


  4. When an app owner creates an application and adds team members
 would it be restricted to the organisation members added ?

 Yes for the first cut.


 5. AppUser seems to be a more general role than AppDev - and shouldn't
 we have at least the Dev/QA/DevOps categories that were used for other
 sections e.g. governance ?



 If we are using a more elaborative role scheme, it would make more
 sense to use Dev/QA/AppOwner as oppose to AppUser/Dev/QA/AppOwner. I think
 we can leave out the DevOps in the OOTB configuration. Why?

 1 - Our AF automatically does ALM and deployment. It is a automated
 DevOps platform and in the cloud deployment it makes sense to take out
 DevOps role, because AF provides it for you.
 2 - We have taken out Staging for the cloud deployment. So DevOps
 role played a major role in Staging. Since we have taken out staging it
 make sense to take the role out.

 thanks,
 dimuthu


 All of these are configurations we can alter them anytime once the code
 is in place. But it is good to decide on the OOTB configuration.

 thanks,
 dimuthu



 The above are some questions that came to mind.

 Thank you,
 Shiro


 On Tue, Aug 13, 2013 at 5:51 AM, Dimuthu Leelarathne 
 dimut...@wso2.com wrote:

 Hi all,

 This is what we (Sameera and AF team) have discusses so far.

 1) A person creates an organization. He becomes the admin of that
 organization. The default set of roles are AppOwners and CXO. These are 
 the
 tenant roles.

 2) He add people to his organization and specify who are AppOwners.
 Please see screenshot. This is a new page that comes under
 organization/settings. How do we add users to organization? By sending
 email invites. Later on we'll add bulk invites as well.

 When AppOwners login they see the Create App button but others
 don't see it.


 3) AppOwners can create applications. When an application is created
 there are a set of default roles created for the Application. Lets call
 them - Application Roles. We need to define what are the default set of
 Application Roles. How about AppDevs OOTB ? The person who creates 
 the
 app is also in it.

 Underlying implementation - Tenant roles with ApplicationKey appended.

 WDYT?

 thanks,
 dimuthu

 --
 Dimuthu Leelarathne
 Architect  Product Lead of App Factory

 WSO2, Inc. (http://wso2.com)
 email: dimut...@wso2.com
 Mobile : 0773661935

 Lean . Enterprise . Middleware

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




 --
 Shiroshica Kulatilake

 Architect,
 WSO2, Inc. http://wso2.com/
 Phone: +94 776523867

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




 --
 Dimuthu Leelarathne
  Architect  Product Lead of App Factory

 WSO2, Inc. (http://wso2.com)
 email: dimut...@wso2.com
 Mobile : 0773661935

 Lean . Enterprise . Middleware




 --
 Dimuthu Leelarathne
 Architect

Re: [Architecture] aPaaS - Users of an Organization

2013-08-12 Thread Sameera Perera
Hi Shiro,
Please see comments in line:


On Tue, Aug 13, 2013 at 6:42 AM, Shiroshica Kulatilake sh...@wso2.comwrote:

 Hi,

 1. Should the word team be used for application team when an app owner
 creates a team and hence use the word organisation in this page ?

I agree that Team is confusing on this page because of the existance of
the subset 'Team' at the app level. Organization would be a good
alternative term to use on this page; but, we wanted to reserve that term
for Organization level setttings/actions page which may include:
- Changing Organization name
- Deleting Organization
etc.
Another term, we looked at was Employees. We can't be used because this may
(in future) include Contractors.

Suggestions for a term are welcome.


 2. CXO and Tenant Admin should be two separate roles - from a dashboard
 point of view users of these two roles would see different dashboards.

This is correct. Dimuthu, can you clarify what you meant by The default
set of roles are AppOwners and CXO

 3. Do we need another AppOwner role or can it be taken that admins are
 those who are privileged to create apps ?

App Owner and Admin are two roles. The self-signup Tenant Admin
automatically has App Owner role added to him ase well. There can be any
number of App Owners in the Org and any number of App Owners per app.



 3. Should there be a default tenant role for all who belong to the
 organisation ?

We should address this when we implement the advanced use case of bulk user
import. By default, for now, they'll not be assigned any role.



 4. When an app owner creates an application and adds team members would it
 be restricted to the organisation members added ?

 For the first release, this would be the case.
In this release, we will not build the tenant-specific login page (
cloud.wso2.com/tenantname) and instead use the generic login page. Doing so
means that all users login with a @tenantname username/email.
We have a roadmap item for Inviting External Users (#741) for the next
release. We should tackle this at that point.



 5. AppUser seems to be a more general role than AppDev - and shouldn't we
 have at least the Dev/QA/DevOps categories that were used for other
 sections e.g. governance ?

+1. All 3 should be created. Not AppUser though; that sounds like one
that's for Application's runtime; not for App management.


 The above are some questions that came to mind.

 Thank you,
 Shiro


 On Tue, Aug 13, 2013 at 5:51 AM, Dimuthu Leelarathne dimut...@wso2.comwrote:

 Hi all,

 This is what we (Sameera and AF team) have discusses so far.

 1) A person creates an organization. He becomes the admin of that
 organization. The default set of roles are AppOwners and CXO. These are
 the tenant roles.

 2) He add people to his organization and specify who are AppOwners.
 Please see screenshot. This is a new page that comes under
 organization/settings. How do we add users to organization? By sending
 email invites. Later on we'll add bulk invites as well.

 When AppOwners login they see the Create App button but others don't
 see it.


 3) AppOwners can create applications. When an application is createdthere 
 are a set of default
 roles created for the Application. Lets call them - Application Roles.
 We need to define what are the default set of Application Roles. How
 about AppDevs OOTB ? The person who creates the app is also in it.

 Underlying implementation - Tenant roles with ApplicationKey appended.

 WDYT?

 thanks,
 dimuthu

 --
 Dimuthu Leelarathne
 Architect  Product Lead of App Factory

 WSO2, Inc. (http://wso2.com)
 email: dimut...@wso2.com
 Mobile : 0773661935

 Lean . Enterprise . Middleware

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




 --
 Shiroshica Kulatilake

 Architect,
 WSO2, Inc. http://wso2.com/
 Phone: +94 776523867

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




-- 

--

*Sameera Perera*
Senior Manager, Cloud Technology Group
gtalk: samee...@wso2.com
*WSO2, Inc.* http://wso2.com/
lean.enterprise.middleware
___
Architecture mailing list
Architecture@wso2.org
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture


Re: [Architecture] Organization registration - aPaaS

2013-08-07 Thread Sameera Perera
Hi Ashansa,

After understanding the need to hold the user/tenant data temporarily
(until verification), I'd like to propose the following changes to the UI
and flow:

   - Signup form should only ask for the Email and Tenant domain (no f/
   lnames, password, org etc).
   - Include the email and tenant domain in the verification link so that
   those could be extracted upon verificaiton
   - Prompt for First name, last name, company and password on the
   verification page. Proceed with tenant creation when this form is submitted.






On Tue, Aug 6, 2013 at 12:37 PM, Ashansa Perera asha...@wso2.com wrote:

 Hi all,

 The flow of current tenant registration in SLive is that it creates the
 tenant, send the activation email to the user and once user clicks on the
 activation link we activate the already created tenant.

 For aPaaS we discussed a bit different approach where we send the email
 for the organization creation confirmation first and once confirmed we
 create the tenant for the organization and activate the tenant which
 basically avoid the unnecessary tenant creations.

 [1] shows the basic template of organization creation page and Praveena is
 working on this.

 Please share any thoughts/ concerns on the tenant creation approach and
 the registration UI

 [1] https://moqups.com/praveenas/c2egfjSk

 --
 Thanks  Regards,

 Ashansa Perera
 Software Engineer
 WSO2, Inc

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




-- 

--

*Sameera Perera*
Senior Manager, Cloud Technology Group
gtalk: samee...@wso2.com
*WSO2, Inc.* http://wso2.com/
lean.enterprise.middleware
___
Architecture mailing list
Architecture@wso2.org
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture


Re: [Architecture] Leveraging Product Profiles with Carbon 4.2

2013-07-31 Thread Sameera Perera
Can we create aPaaS, iPaaS, API, Mobile etc. profiles for App Factory?
We've initially thought of these as App Types and solution bundles. Sounds
like profiles makes much more sense (though Integration, API, etc. App
Types will still be present).


On Wed, Jul 31, 2013 at 8:47 PM, Afkham Azeez az...@wso2.com wrote:

 It is good to think about profiles at a product level. It is also possible
 to host new profiles after we ship the product. For example, let's say we
 come across a use case or customer scenario where a subset of the features
 is needed in certain runtimes. We can create profiles for that. We also
 need to create a guide on how to create your own profile, since I feel that
 our users themselves will be writing these for their use cases, as was
 evident during the Carbon BoF at WSO2 Con UK.

 Azeez


 On Wed, Jul 31, 2013 at 7:51 AM, Samisa Abeysinghe sam...@wso2.comwrote:

 Profiles support is a major feature that comes with Carbon 4.2.0.

 What I understood from the stand-up meetings we had on Carbon release
 progress yesterday is that, products have not yet thought
 about properly making use of this feature.

 Front end / back end separation is just scratching the surface using
 this capability.

 The real use is to make use of that to run the product pack in a specific
 mode. The most obvious is the API-M case, where you can have the three
 profiles of:
 store
 publisher
 gateway

 But even products like AS can make effective use of this.
 e.g.
 DS, WebApp, Jaggery, Services profiles for AS

 Please think through this with with respect to each product.


 --

 Thanks,
 Samisa...

 Samisa Abeysinghe
 VP Engineering
 WSO2 Inc.
 http://wso2.com
 http://wso2.org

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




 --
 *Afkham Azeez*
 Director of Architecture; WSO2, Inc.; http://wso2.com
 Member; Apache Software Foundation; http://www.apache.org/
 * http://www.apache.org/**
 email: **az...@wso2.com* az...@wso2.com* cell: +94 77 3320919
 blog: **http://blog.afkham.org* http://blog.afkham.org*
 twitter: **http://twitter.com/afkham_azeez*http://twitter.com/afkham_azeez
 *
 linked-in: **http://lk.linkedin.com/in/afkhamazeez*

 *
 *
 *Lean . Enterprise . Middleware*

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




-- 

--

*Sameera Perera*
Senior Manager, Cloud Technology Group
gtalk: samee...@wso2.com
*WSO2, Inc.* http://wso2.com/
lean.enterprise.middleware
___
Architecture mailing list
Architecture@wso2.org
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture


Re: [Architecture] Social features for WOS2 products : commenting system

2013-07-28 Thread Sameera Perera
Hi Manu,

One question regarding the Comment on Comment use case.
How deep of a nesting are you planning to support? Multiple levles (as in
CodeProject) or just a single level below the initial comment?


On Sun, Jul 28, 2013 at 12:00 AM, Manuranga Perera m...@wso2.com wrote:

 As the first step of implementing social features for WOS2 products we are
 planning to implement a commenting system. It will be integrated to store
 first and subsequently to the AF. Italicized terms are used in the meaning
 as it’s defined by the Activity Stream specification [0]. A PoC will be
 done based on the architecture described below, and we shall re-review this
 architecture after that.
 *
 Implementation details*


- Each input will be an activity including comments and ratings. this
will be extendible to receive activities form the host application (i.e.
WSO2 ES/AF)  as well as from third party systems (such as JIRA).
- Cassandra will be used as the database. this will allow us to
plug-in BAM and CEP for analyzing and event generation later-on. we will
reuse the BAM’s Event Stream architecture to store data. but we will try to
retrieve data (at least most of it) directly via CQL interface rather than
going through HIVE to avoid update delays.
- UI will be a separate Jaggery app, and it will be integrated to the
host application UI via a HTML IFrame. UI will be SSOed with the host
application.
- Permission will be handled using existing carbon user role system.
we plan to be aligned with  AF’s future model, since we should be able to
use AF’s team concept.To do this, we define a  UI-visible sub set of user’s
roles. each action of the user will be published against one of these
roles. any action published to a role will be visible to all the users in
that role.
- A REST API will be available for publishing activities to roles.

 *
 Use-cases to be implemented in first release (with Store 1.0 and AF APasS)
 *


- View
   - View commnet stream for an object. an object can be a Store
   asset, API, AF application, etc.
   - View my activity stream - this will show all activities that are
   visible for me including relevant comments.


- Comment
   - Comment on an object
   - Comment on comments
- Rate
   - Rate objects
   - Rate comments

 *
 Possible future use-cases*

- Real time updating the UI when events occur
- Extend the same back-end to a forum
- Integrate with a platform wide friend/circles concept

 [0] http://activitystrea.ms/specs/json/1.0/

 --
 With regards,
 *Manu*ranga Perera.


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




-- 

--

*Sameera Perera*
Senior Manager, Cloud Technology Group
gtalk: samee...@wso2.com
*WSO2, Inc.* http://wso2.com/
lean.enterprise.middleware
___
Architecture mailing list
Architecture@wso2.org
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture


Re: [Architecture] [AF] Need for multiple users in App Owner role

2013-07-18 Thread Sameera Perera
*
 *
 *

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




 --
 Shiroshica Kulatilake

 Architect,
 WSO2, Inc. http://wso2.com/
 Phone: +94 776523867

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




 --

 *Asanka Dissanayake
 Software Engineer*
 *WSO2 Inc. - lean . enterprise . middleware |  wso2.com*
 *
 email: asan...@wso2.com ruch...@wso2.com,   blog:
 cyberwaadiya.blogspot.com, asankastechtalks.wordpress.com  mobile: +94 71
 8373821*

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




-- 

--

*Sameera Perera*
Senior Manager, Cloud Technology Group
gtalk: samee...@wso2.com
*WSO2, Inc.* http://wso2.com/
lean.enterprise.middleware
___
Architecture mailing list
Architecture@wso2.org
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture


Re: [Architecture] Supporting multiple environments for the API Gateway

2013-07-18 Thread Sameera Perera
On Fri, Jul 19, 2013 at 5:05 AM, Afkham Azeez az...@wso2.com wrote:

 Let me put this another way. Has anybody come across any system which
 provides a sandbox API  production API offer a third option?


I have: NetSuite SuiteTalk API

Production: https://webservices.netsuite.com/../v2010_2_0/ (sorry, don't
remember the exact path in between)
Sandbox: https://webservices.sandbox.netsuite.com/../v2010_2_0/
Alpha: https://webservices.alpha.netsuite.com/../v2010_2_0/

Alpha is a pre-release channel for Integrators to check their integration
apps.
Each of these endpoints connects to the similarly named environments of the
SaaS.


-- 

--

*Sameera Perera*
Senior Manager, Cloud Technology Group
gtalk: samee...@wso2.com
*WSO2, Inc.* http://wso2.com/
lean.enterprise.middleware
___
Architecture mailing list
Architecture@wso2.org
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture


Re: [Architecture] Supporting multiple environments for the API Gateway

2013-07-18 Thread Sameera Perera
Yes, that's how it works. An alpha environment goes live twice a year and
live for couple of months until that version goes into production.


On Fri, Jul 19, 2013 at 10:19 AM, Afkham Azeez az...@wso2.com wrote:




 On Fri, Jul 19, 2013 at 9:30 AM, Sameera Perera samee...@wso2.com wrote:


 On Fri, Jul 19, 2013 at 5:05 AM, Afkham Azeez az...@wso2.com wrote:

 Let me put this another way. Has anybody come across any system which
 provides a sandbox API  production API offer a third option?


 I have: NetSuite SuiteTalk API

 Production: https://webservices.netsuite.com/../v2010_2_0/ (sorry, don't
 remember the exact path in between)
 Sandbox: https://webservices.sandbox.netsuite.com/../v2010_2_0/
 Alpha: https://webservices.alpha.netsuite.com/../v2010_2_0/


 Alpha would be staging, which would be removed after that particular API
 moves into production. But the production  sandbox would continue to live
 on for each production version of the API. So, alpha is not an environment
 in production. It is staging or pre-production. They would have exposed
 this for early adopters or people who are considering moving to the new API
 to test their apps against.




 Alpha is a pre-release channel for Integrators to check their integration
 apps.
 Each of these endpoints connects to the similarly named environments of
 the SaaS.


 --

 --

 *Sameera Perera*
 Senior Manager, Cloud Technology Group
 gtalk: samee...@wso2.com
 *WSO2, Inc.* http://wso2.com/
 lean.enterprise.middleware



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




 --
 *Afkham Azeez*
 Director of Architecture; WSO2, Inc.; http://wso2.com
 Member; Apache Software Foundation; http://www.apache.org/
 * http://www.apache.org/**
 email: **az...@wso2.com* az...@wso2.com* cell: +94 77 3320919
 blog: **http://blog.afkham.org* http://blog.afkham.org*
 twitter: **http://twitter.com/afkham_azeez*http://twitter.com/afkham_azeez
 *
 linked-in: **http://lk.linkedin.com/in/afkhamazeez*
 *
 *
 *Lean . Enterprise . Middleware*

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




-- 

--

*Sameera Perera*
Senior Manager, Cloud Technology Group
gtalk: samee...@wso2.com
*WSO2, Inc.* http://wso2.com/
lean.enterprise.middleware
___
Architecture mailing list
Architecture@wso2.org
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture


[Architecture] Operations Center API for a ChaosMonkey type use case

2013-06-11 Thread Sameera Perera
It occurred to me that we could probably leverage the OC APIs/CLI to
implement something similar to Netflix's ChaosMonkey [1] for on-premise
deployments. Maybe use something like this along with JMeter scripts to
automate testing on Fault Tolerance, load balancing etc..
Thoughts?

[1] http://techblog.netflix.com/2012/07/chaos-monkey-released-into-wild.html

-- 

--

*Sameera Perera*
Senior Manager, API Solutions
gtalk: samee...@wso2.com
*WSO2, Inc.* http://wso2.com/
lean.enterprise.middleware
___
Architecture mailing list
Architecture@wso2.org
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture