[Architecture] HTTP Session Persistence feature for WSO2 Application Server

2015-01-26 Thread Pubudu Dissanayake
Hi Azeez/Sameera et al.

​ I've successfully completed HTTP Session Persistence feature[1]  for
Appserver next release. As of now I have a working prototype which it
thoroughly tested with newly implemented Hazelcast based session
replication feature as well. Currently it working as expected. I've
introduced a new Manager element to support tenant aware session
persistence (*CarbonTomcatSessionPersistentManager*). Therefore this
element supports following sample store configurations, and those are as
follows.

   - FileStore based

Manager
className='org.wso2.carbon.webapp.mgt.CarbonTomcatSessionPersistentManager'
  debug=0
  saveOnRestart=true
  maxActiveSessions=-1
  minIdleSwap=-1
  maxIdleSwap=-1
  maxIdleBackup=-1
  Store
className='org.apache.catalina.session.FileStore' directory='Directory
path'/
 /Manager

   - JDBCStore based

Manager
className='org.wso2.carbon.webapp.mgt.CarbonTomcatSessionPersistentManager'
debug=0
saveOnRestart=true
maxActiveSessions=-1
minIdleSwap=-1
maxIdleSwap=-1
maxIdleBackup=-1
   Store
className=org.apache.catalina.session.JDBCStore
  driverName=com.mysql.jdbc.Driver

connectionURL=jdbc:mysql://localhost/tomcat?user=rootamp;password=root
  sessionAppCol=app_name
  sessionDataCol=session_data
  sessionIdCol=session_id
  sessionLastAccessedCol=last_access
  sessionMaxInactiveCol=max_inactive
  sessionTable=tomcat_sessions
  sessionValidCol=valid_session
  checkInterval=60
  debug=99 /
 /Manager
However end users can use any of above mentioned configuration and
appserver supports for persistent Stores via context.xml. If you need a PoC
demonstration, let me know.

[1] slides
https://docs.google.com/a/wso2.com/presentation/d/15YyXzpj877LHmZtPQGIidgh-wnBVStiBTBN5oci6AMk/edit?usp=sharing

Thanks
- Pubudu

-- 
*Pubudu Dissanayake*
 Software Engineer

WSO2 Inc.; http://wso2.com
lean.enterprise.middleware
Mob: + 94 775 503 304

Blog: http://geekdetected.wordpress.com/
Linkedin: *http://lk.linkedin.com/in/pubududissanayake*
http://lk.linkedin.com/in/pubududissanayake
Flickr : https://www.flickr.com/photos/pubudufx/
Twitter: https://twitter.com/GeekInAction
___
Architecture mailing list
Architecture@wso2.org
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture


[Dev] Tenants to be loaded before server ports open.

2014-12-18 Thread Pubudu Dissanayake
I'm working on a feature (will be in carbon.core )which involves tenants to
load when server startup (Tenant eager loading). However all tenants must
be loaded before server serves requests. (which means before ports open).

What is the best way to do that ?

However StartupFinalizerComponent is a valid option to invoke this feature.
I reckon before initialize transport I must invoke necessary tenant eager
loading methods, I found following method in StartupFinalizerComponent

 *TenantAxisUtils.initializeTenantTransports(configCtx);*

How about ESB synapse transports? are those also in the main configuration
? ​

​Please advice ​

-- 
*Pubudu Dissanayake*
 Software Engineer

WSO2 Inc.; http://wso2.com
lean.enterprise.middleware
Mob: + 94 775 503 304

Blog: http://geekdetected.wordpress.com/
Linkedin: *http://lk.linkedin.com/in/pubududissanayake*
http://lk.linkedin.com/in/pubududissanayake
Flickr : https://www.flickr.com/photos/pubudufx/
Twitter: https://twitter.com/GeekInAction
___
Dev mailing list
Dev@wso2.org
http://wso2.org/cgi-bin/mailman/listinfo/dev


Re: [Dev] [VOTE] Release WSO2 Carbon Kernel 4.3.0 RC4

2014-12-16 Thread Pubudu Dissanayake
[x] Stable - go ahead and release

The following areas were covered with testing in both windows and Linux
environments

1. Session Replication

   - Session replication with ELB (EC2 cluster) with and without Ghost
   Deployment
   - Session replication without ELB (directly accessing nodes)
   - performed kill -9 operation on both scenarios


2. Registry Core ( with a sample webapp)

   -  Test add, get and delete of Resources in super tenant
   -  Test add, get and delete of Resources in tenant
   -  Test add, get and delete of Collection in super tenant
   -  Test add, get and delete of Collection in tenant



On Wed, Dec 17, 2014 at 2:01 AM, Kishanthan Thangarajah kishant...@wso2.com
 wrote:

 [x] Stable - go ahead and release

 The following areas were covered with testing.

 1. Carbon kernel samples (feature-management, p2-repo)
 i. Installing sample features using pom
 ii. Installing sample features using a p2-repo.
 2. Usage of caching (with a sample webapp)
  i. Simple cache accessing (random update and access)
  ii. Custom cache expiry value
 3. User management tests on
  i. Creating and managing roles, users (on both ST and Tenant and also
 using a non-admin user)
  ii. Create new tenants and test above (i) again.


 On Mon, Dec 15, 2014 at 9:28 AM, Sameera Jayasoma same...@wso2.com
 wrote:

 Hi Devs,

 This is the *4th* release candidate of WSO2 Carbon Kernel 4.3.0.

 This release fixes the following issues :
 https://wso2.org/jira/issues/?filter=12088

 Please download, test and vote.

 *Binary distribution for Carbon, AS  ESB :*
 http://svn.wso2.org/repos/wso2/scratch/carbon/4.3.0-RC4/

 *Maven staging repository :*
 http://maven.wso2.org/nexus/content/repositories/orgwso2carbon-037/

 *The tag to be voted upon :*
 https://github.com/wso2/carbon4-kernel/releases/tag/4.3.0-RC4


 [ ] Broken - do not release (explain why)
 [ ] Stable - go ahead and release

 Thanks,
 Carbon Team.

 --
 Sameera Jayasoma,
 Software Architect,

 WSO2, Inc. (http://wso2.com)
 email: same...@wso2.com
 blog: http://sameera.adahas.org
 twitter: https://twitter.com/sameerajayasoma
 flickr: http://www.flickr.com/photos/sameera-jayasoma/collections
 Mobile: 0094776364456

 Lean . Enterprise . Middleware



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

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



-- 
*Pubudu Dissanayake*
 Software Engineer

WSO2 Inc.; http://wso2.com
lean.enterprise.middleware
Mob: + 94 775 503 304

Blog: http://geekdetected.wordpress.com/
Linkedin: *http://lk.linkedin.com/in/pubududissanayake*
http://lk.linkedin.com/in/pubududissanayake
Flickr : https://www.flickr.com/photos/pubudufx/
Twitter: https://twitter.com/GeekInAction
___
Dev mailing list
Dev@wso2.org
http://wso2.org/cgi-bin/mailman/listinfo/dev


Re: [Dev] What is the alternative for ServiceMetaData#isCAppArtifactSpecified()

2014-12-11 Thread Pubudu Dissanayake
Hi Jeewantha

It is not removed, *isCAppArtifact* is a newly added property to
service-mgt component. It will be available once it is merged to
carbon-deployment repo [1]
If you are referring to this ESB integration [2] please comment out until
that pull request is merged

[1] https://github.com/wso2-dev/carbon-deployment/pull/57
[2] https://github.com/wso2-dev/product-esb/pull/95

On Thu, Dec 11, 2014 at 6:30 PM, Jeewantha Dharmaparakrama 
jeewan...@wso2.com wrote:

 Hi CarbonTeam,

 Looks like the method is removed from the new carbon-deployment module
 [1]. What is the alternative for this ?

 [1]
 https://github.com/wso2/carbon-deployment/blob/master/components/service-mgt/axis2-service-mgt/org.wso2.carbon.service.mgt/src/main/java/org/wso2/carbon/service/mgt/ServiceMetaData.java

 Thanks,
 Jeewantha

 --
 Jeewantha Dharmaparakrama
 Software Engineer; WSO2, Inc.; http://wso2.com/
 Phone : (+94) 778403757
 Blog: http://jeewanthad.blogspot.com/

 ___
 Dev mailing list
 Dev@wso2.org
 http://wso2.org/cgi-bin/mailman/listinfo/dev




-- 
*Pubudu Dissanayake*
 Software Engineer

WSO2 Inc.; http://wso2.com
lean.enterprise.middleware
Mob: + 94 775 503 304

Blog: http://geekdetected.wordpress.com/
Linkedin: *http://lk.linkedin.com/in/pubududissanayake*
http://lk.linkedin.com/in/pubududissanayake
Flickr : https://www.flickr.com/photos/pubudufx/
Twitter: https://twitter.com/GeekInAction
___
Dev mailing list
Dev@wso2.org
http://wso2.org/cgi-bin/mailman/listinfo/dev


[Dev] [synapse][ESB] syanpse commits required

2014-11-28 Thread Pubudu Dissanayake
Hi Kasun/Isuru

Please apply the patch attached in jira[1]
[1] https://wso2.org/jira/browse/ESBJAVA-3438

-- 
*Pubudu Dissanayake*
 Software Engineer

WSO2 Inc.; http://wso2.com
lean.enterprise.middleware
Mob: + 94 775 503 304

Blog: http://geekdetected.wordpress.com/
Linkedin: *http://lk.linkedin.com/in/pubududissanayake*
http://lk.linkedin.com/in/pubududissanayake
Flickr : https://www.flickr.com/photos/pubudufx/
Twitter: https://twitter.com/GeekInAction
___
Dev mailing list
Dev@wso2.org
http://wso2.org/cgi-bin/mailman/listinfo/dev


[Architecture] [Progress] HTTP Session Persistence for WSO2 Application Server

2014-11-16 Thread Pubudu Dissanayake
Hi Azeez/Sameera and et al.

I'm currently undergoing development of $subject [1]
https://redmine.wso2.com/issues/3417

In the current implementation of embedded tomcat in appserver doesn't
supports Manager[2]
http://tomcat.apache.org/tomcat-7.0-doc/config/manager.html attributes
defines in context.xml which is a big disadvantage for $Subject
implementation. Furthermore we explicitly change Manager element via code
level so no flexibility toward clients to change Manager attributes via
context.xml.

Tomcat provides two Manager element implementations StandardManager and
PersistentManager. PersistentManager has the capability to swap active (but
idle) sessions out to a persistent storage mechanism[2]
http://tomcat.apache.org/tomcat-7.0-doc/config/manager.html, as well as
to save all sessions across a normal restart of Tomcat. Our Appserver has
tenant-aware StandardManager implementation called
CarbonTomcatSessionManager but no PersistenceManager support yet.

I'm proposing we should go ahead and implement tenant-aware
PersistentManager support ( CarbonTomcatSessionPersistentManager ) thus it
will help us to achieve tenant-aware session persistence in future
releases. We should provide support for persistent Stores via context.xml
as well, in result end-users can configure different store elements in
context.xml. On going preliminary test scenarios [4]
https://docs.google.com/a/wso2.com/spreadsheets/d/1XVlYOp6grJKX4qPbk96QlyUN6VlCrPf1xo2fnE4gzvY/edit#gid=0
[3]
https://docs.google.com/a/wso2.com/presentation/d/15YyXzpj877LHmZtPQGIidgh-wnBVStiBTBN5oci6AMk/edit?usp=sharing


WDYT?


[1] https://redmine.wso2.com/issues/3417
[2] http://tomcat.apache.org/tomcat-7.0-doc/config/manager.html
[3]
https://docs.google.com/a/wso2.com/presentation/d/15YyXzpj877LHmZtPQGIidgh-wnBVStiBTBN5oci6AMk/edit?usp=sharing
[4]
https://docs.google.com/a/wso2.com/spreadsheets/d/1XVlYOp6grJKX4qPbk96QlyUN6VlCrPf1xo2fnE4gzvY/edit#gid=0

-- 
*Pubudu Dissanayake*
 Software Engineer

WSO2 Inc.; http://wso2.com
lean.enterprise.middleware
Mob: + 94 775 503 304

Blog: http://geekdetected.wordpress.com/
Linkedin: *http://lk.linkedin.com/in/pubududissanayake*
http://lk.linkedin.com/in/pubududissanayake
Flickr : https://www.flickr.com/photos/pubudufx/
Twitter: https://twitter.com/GeekInAction
___
Architecture mailing list
Architecture@wso2.org
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture


Re: [Architecture] [Progress] HTTP Session Persistence for WSO2 Application Server

2014-11-16 Thread Pubudu Dissanayake
On Mon, Nov 17, 2014 at 10:06 AM, Afkham Azeez az...@wso2.com wrote:


 On Mon, Nov 17, 2014 at 8:53 AM, Pubudu Dissanayake pubu...@wso2.com
 wrote:

 ​​
 CarbonTomcatSessionManager


 What if you simply improve CarbonTomcatSessionManager to support
 persistence as well, rather than writing a new class? If you want to turn
 off persistence, you can have a parameter.

 ​​CarbonTomcatSessionManager [1]
http://svn.wso2.org/repos/wso2/carbon/platform/branches/turing/components/webapp-mgt/org.wso2.carbon.webapp.mgt/4.2.2/src/main/java/org/wso2/carbon/webapp/mgt/CarbonTomcatSessionManager.javadoesn't
support persistence features provided by tomcat, it extends StandardManager
[2]
http://grepcode.com/file/repo1.maven.org/maven2/org.apache.tomcat/tomcat-catalina/7.0.0/org/apache/catalina/session/StandardManager.java?av=f
as its base class.​ However PersistentManager [3]
http://grepcode.com/file/repo1.maven.org/maven2/org.apache.tomcat/tomcat-catalina/7.0.0/org/apache/catalina/session/PersistentManager.java
extends PersistentManagerBase [4]
http://grepcode.com/file/repo1.maven.org/maven2/org.apache.tomcat/tomcat-catalina/7.0.0/org/apache/catalina/session/PersistentManagerBase.java
as its base class thus it contains all persistence related store
configurations. Because StandardManager and PersistentManager are two
different implementations, we can't use ​​CarbonTomcatSessionManager to
support persistence. And we can configure persistence easily by separating
these two implementations.

WDYT?

[1]
http://svn.wso2.org/repos/wso2/carbon/platform/branches/turing/components/webapp-mgt/org.wso2.carbon.webapp.mgt/4.2.2/src/main/java/org/wso2/carbon/webapp/mgt/CarbonTomcatSessionManager.java
[2]
http://grepcode.com/file/repo1.maven.org/maven2/org.apache.tomcat/tomcat-catalina/7.0.0/org/apache/catalina/session/StandardManager.java?av=f
[3]
http://grepcode.com/file/repo1.maven.org/maven2/org.apache.tomcat/tomcat-catalina/7.0.0/org/apache/catalina/session/PersistentManager.java
[4]
http://grepcode.com/file/repo1.maven.org/maven2/org.apache.tomcat/tomcat-catalina/7.0.0/org/apache/catalina/session/PersistentManagerBase.java




-- 
*Pubudu Dissanayake*
 Software Engineer

WSO2 Inc.; http://wso2.com
lean.enterprise.middleware
Mob: + 94 775 503 304

Blog: http://geekdetected.wordpress.com/
Linkedin: *http://lk.linkedin.com/in/pubududissanayake*
http://lk.linkedin.com/in/pubududissanayake
Flickr : https://www.flickr.com/photos/pubudufx/
Twitter: https://twitter.com/GeekInAction
___
Architecture mailing list
Architecture@wso2.org
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture


Re: [Architecture] [Progress] HTTP Session Persistence for WSO2 Application Server

2014-11-16 Thread Pubudu Dissanayake
On Mon, Nov 17, 2014 at 11:52 AM, Afkham Azeez az...@wso2.com wrote:

 Ok, go ahead with your implementation.


​Noted​



 On Mon, Nov 17, 2014 at 11:49 AM, Afkham Azeez az...@wso2.com wrote:

 So globally switching the SessionManager can be done by editing the
 global context.xml file?


Indeed, we can configure it by editing global context.xml​
___
Architecture mailing list
Architecture@wso2.org
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture


Re: [Dev] Integration tests for Hazelcast Session Replication feature

2014-11-03 Thread Pubudu Dissanayake
On Mon, Nov 3, 2014 at 11:05 AM, Kishanthan Thangarajah kishant...@wso2.com
 wrote:

If that's the case, we can go ahead with graceful server shutdown restart
 approach.


​
​+1 for the approach​
 ​



 Also write some integration test cases using HZ Map EntryListener as-well.
 With this, you can test what was the exact values updated for the session
 replication scenario from different nodes.


​Indeed, It will be very useful. BTW I've implemented Hazelcast
EntryListener for hazelcast-map-Persistence feature [1] take a look at it
as well.  ​
​[1] https://github.com/pubudu08/hazelcat-map-persistence​​
___
Dev mailing list
Dev@wso2.org
http://wso2.org/cgi-bin/mailman/listinfo/dev


Re: [Dev] Integration tests for Hazelcast Session Replication feature

2014-10-31 Thread Pubudu Dissanayake
​Thanks for the reply, I'll update our redmine [1] accordingly ​

On Mon, Oct 27, 2014 at 7:33 AM, Krishantha Samaraweera krishan...@wso2.com
 wrote:

Running four nodes in single server is not recommended at integration tests
 phase, so killing a worker node at integration tests run time is not
 possible (Even no admin services exposed in worker nodes to forcefully
 shutdown the instance) I'm not sure whether upcoming operation center will
 facilitate this kind of functionality.

 What is the recommended approach to test my scenario ?


 Thanks,
 Krishantha

 ​[1] https://redmine.wso2.com/issues/2816​ ​

-- 
*Pubudu Dissanayake*
 Software Engineer

WSO2 Inc.; http://wso2.com
lean.enterprise.middleware
Mob: + 94 775 503 304

Blog: http://geekdetected.wordpress.com/
Linkedin: *http://lk.linkedin.com/in/pubududissanayake*
http://lk.linkedin.com/in/pubududissanayake
Flickr : https://www.flickr.com/photos/pubudufx/
Twitter: https://twitter.com/GeekInAction
___
Dev mailing list
Dev@wso2.org
http://wso2.org/cgi-bin/mailman/listinfo/dev


[Dev] Integration tests for Hazelcast Session Replication feature

2014-10-24 Thread Pubudu Dissanayake
Hi Folks,

I've implemented Hazelcast based Tomcat Session Replication feature for
Appserver [1 https://redmine.wso2.com/issues/2816].I have few concerns
over integration tests for this feature.

Following is the basic cluster scenario that I have to be written as
integration tests.
Environment : *WSO2 ELB, 1-Mgt+2-Worker (WSO2 AS) *

Basic scenario ( Assume 'x' webapp deployed in Mgt node and enabled
dep-sync with two worker nodes. )

Say that we have above mentioned setup. Since our ELB is session aware, it
will send the requests to the same node based on the seesionID. And when
that node goes off line, it will route the requests to the other node. But
if we have enabled replication, this routing should work seamlessly where
the session, which was replicated and will be used by the second node.

   - Start Mgt and WorkerNode-1 -- Change session values at WorkerNode-1
   -- Start the WorkerNode-2 -- Perform kill -9 operation on WorkerNode-1
   after Workernode-2 complete it's start up operation. Then check whether
   those session values changes are reflected at WorkerNode-2.


   -  After Change session values at WorkerNode-2 while WorkerNode-1 off
   line -- Start the WorkerNode-1 -- Perform kill -9 operation on
   WorkerNode-2 after Workernode-1 complete it's start up operation. Then
   check whether those session values changes are reflected at WorkerNode-1.

This routing should work seamlessly where session attributes are replicated
among all nodes.

Basically I have to write an integration test to evaluate the feature.
Please guide me through the process how should I carried out and any
references to help me further to achieve this integration test? Let me know
if you need any further suggestions.

- Pubudu

[1] https://redmine.wso2.com/issues/2816


-- 
*Pubudu Dissanayake*
 Software Engineer

WSO2 Inc.; http://wso2.com
lean.enterprise.middleware
Mob: + 94 775 503 304

Blog: http://geekdetected.wordpress.com/
Linkedin: *http://lk.linkedin.com/in/pubududissanayake*
http://lk.linkedin.com/in/pubududissanayake
Flickr : https://www.flickr.com/photos/pubudufx/
Twitter: https://twitter.com/GeekInAction
___
Dev mailing list
Dev@wso2.org
http://wso2.org/cgi-bin/mailman/listinfo/dev


Re: [Dev] WSO2 Committers += Gayashan Amarasinghe

2014-10-20 Thread Pubudu Dissanayake
Congratulations Gayashan. !

On Mon, Oct 20, 2014 at 12:01 PM, Maheeka Jayasuriya mahe...@wso2.com
wrote:

 Congratulations gayashan !


 Maheeka Jayasuriya
 Software Engineer
 Mobile : +9450661

 On Mon, Oct 20, 2014 at 11:57 AM, Sajini De Silva saj...@wso2.com wrote:

 Congratulations Gayashan!!!

 On Mon, Oct 20, 2014 at 11:56 AM, Rajeevan Vimalanathan 
 rajeev...@wso2.com wrote:

 Congratz Gayashan..)

 On Mon, Oct 20, 2014 at 11:50 AM, Sameera Jayasoma same...@wso2.com
 wrote:

 Hi Gayashan,

 It's my pleasure to welcome you to WSO2 Committers club. You've been
 contributing to WSO2 in various forms, hence you deserve this. Please keep
 up with good work you've been doing so far.

 Congratulations!!!

 Thanks,
 Sameera.

 --
 Sameera Jayasoma,
 Software Architect,

 WSO2, Inc. (http://wso2.com)
 email: same...@wso2.com
 blog: http://sameera.adahas.org
 twitter: https://twitter.com/sameerajayasoma
 flickr: http://www.flickr.com/photos/sameera-jayasoma/collections
 Mobile: 0094776364456

 Lean . Enterprise . Middleware


 ___
 Dev mailing list
 Dev@wso2.org
 http://wso2.org/cgi-bin/mailman/listinfo/dev




 --
 Best Regards,
 V.Rajeevan
 Software Engineer,
 WSO2 Inc. :http://wso2.com

 Mobile : +94 773090875
 Email : rajeev...@wso2.com

 ___
 Dev mailing list
 Dev@wso2.org
 http://wso2.org/cgi-bin/mailman/listinfo/dev




 --
 Sajini De SIlva
 Software Engineer; WSO2 Inc.; http://wso2.com ,
 Email: saj...@wso2.com
 Blog: http://sajinid.blogspot.com/
 Git hub profile: https://github.com/sajinidesilva

 Phone: +94 712797729


 ___
 Dev mailing list
 Dev@wso2.org
 http://wso2.org/cgi-bin/mailman/listinfo/dev



 ___
 Dev mailing list
 Dev@wso2.org
 http://wso2.org/cgi-bin/mailman/listinfo/dev




-- 
*Pubudu Dissanayake*
 Software Engineer

WSO2 Inc.; http://wso2.com
lean.enterprise.middleware
Mob: + 94 775 503 304

Blog: http://geekdetected.wordpress.com/
Linkedin: *http://lk.linkedin.com/in/pubududissanayake*
http://lk.linkedin.com/in/pubududissanayake
Flickr : https://www.flickr.com/photos/pubudufx/
Twitter: https://twitter.com/GeekInAction
___
Dev mailing list
Dev@wso2.org
http://wso2.org/cgi-bin/mailman/listinfo/dev


Re: [Architecture] [Dev] Tomcat Session Replication Using Caching

2014-10-14 Thread Pubudu Dissanayake
Thanks for the insight. New implementation is based on the approach of
single Hazelcast cluster shared across all webapps and context param
(similar to /distributer tag) based approach to enable/disable session
replication.

On Tue, Oct 14, 2014 at 11:10 AM, Kishanthan Thangarajah 
kishant...@wso2.com wrote:

 Hi Pubudu,

 Just to be clear, this feature should work on per webapp basis. i.e not
 all webapps' sessions should be replicated, but the selected ones by the
 user. Earlier we used a webapp context property (distributable) to enable
 this at webapp level.


I agree with you, In the current implementation it uses similar approach
and it won't replicate every single web app session. Therefore it only
looks in to the context property of the web.xml file and replicate the
session accordingly. ​



 Also here are the test cases that comes to mind.

 Say that we have a two node cluster (node-1, node-2)
 1. Start both nodes - change session values at node-1, then check whether
 those changes are reflected at node-2 (also check this both ways).
 2. Start node-1 - change session values at node-1 - start node-2 and
 check whether session got replicated to node-2.
 3. Same as #2 above, but after the third step, stop node-1 and change the
 session values at node-2 then start node-1 again and check the session
 state. This should have the latest changes at node-1 even-though that node
 was offline for while.

 ​I've looked in this approach as well and feature works as expected.
Tested failover scenarios as well.
​


 The above tests should make sure that session object was available all the
 time in the cluster, even-though the nodes were not available all the time.

 The next step is to test this with ELB setup.
 Say that we have a 1-Mgt+2-Worker setup fronted by an ELB. Since our ELB
 is session aware, it will send the requests to the same node based on the
 seesionID. And when that node goes offline, it will route the requests to
 the other node. But if we have enabled replication, this routing should
 work seamlessly where the same session object - which was replicated - will
 be used by the second node.

 ​ Majority of the time I've tested this feature using a cluster
environment ( Elb and two AS nodes ). Fail over use cases are also tested.
​


 So lets first do these tests and see.
 ​ ​

 Thanks,
 Kishanthan.


-- 
*Pubudu Dissanayake*
 Software Engineer

WSO2 Inc.; http://wso2.com
lean.enterprise.middleware
Mob: + 94 775 503 304

Blog: http://geekdetected.wordpress.com/
Linkedin: *http://lk.linkedin.com/in/pubududissanayake*
http://lk.linkedin.com/in/pubududissanayake
Flickr : https://www.flickr.com/photos/pubudufx/
Twitter: https://twitter.com/GeekInAction
___
Architecture mailing list
Architecture@wso2.org
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture


Re: [Dev] Tomcat Session Replication Using Caching

2014-10-14 Thread Pubudu Dissanayake
Thanks for the insight. New implementation is based on the approach of
single Hazelcast cluster shared across all webapps and context param
(similar to /distributer tag) based approach to enable/disable session
replication.

On Tue, Oct 14, 2014 at 11:10 AM, Kishanthan Thangarajah 
kishant...@wso2.com wrote:

 Hi Pubudu,

 Just to be clear, this feature should work on per webapp basis. i.e not
 all webapps' sessions should be replicated, but the selected ones by the
 user. Earlier we used a webapp context property (distributable) to enable
 this at webapp level.


I agree with you, In the current implementation it uses similar approach
and it won't replicate every single web app session. Therefore it only
looks in to the context property of the web.xml file and replicate the
session accordingly. ​



 Also here are the test cases that comes to mind.

 Say that we have a two node cluster (node-1, node-2)
 1. Start both nodes - change session values at node-1, then check whether
 those changes are reflected at node-2 (also check this both ways).
 2. Start node-1 - change session values at node-1 - start node-2 and
 check whether session got replicated to node-2.
 3. Same as #2 above, but after the third step, stop node-1 and change the
 session values at node-2 then start node-1 again and check the session
 state. This should have the latest changes at node-1 even-though that node
 was offline for while.

 ​I've looked in this approach as well and feature works as expected.
Tested failover scenarios as well.
​


 The above tests should make sure that session object was available all the
 time in the cluster, even-though the nodes were not available all the time.

 The next step is to test this with ELB setup.
 Say that we have a 1-Mgt+2-Worker setup fronted by an ELB. Since our ELB
 is session aware, it will send the requests to the same node based on the
 seesionID. And when that node goes offline, it will route the requests to
 the other node. But if we have enabled replication, this routing should
 work seamlessly where the same session object - which was replicated - will
 be used by the second node.

 ​ Majority of the time I've tested this feature using a cluster
environment ( Elb and two AS nodes ). Fail over use cases are also tested.
​


 So lets first do these tests and see.
 ​ ​

 Thanks,
 Kishanthan.


-- 
*Pubudu Dissanayake*
 Software Engineer

WSO2 Inc.; http://wso2.com
lean.enterprise.middleware
Mob: + 94 775 503 304

Blog: http://geekdetected.wordpress.com/
Linkedin: *http://lk.linkedin.com/in/pubududissanayake*
http://lk.linkedin.com/in/pubududissanayake
Flickr : https://www.flickr.com/photos/pubudufx/
Twitter: https://twitter.com/GeekInAction
___
Dev mailing list
Dev@wso2.org
http://wso2.org/cgi-bin/mailman/listinfo/dev


Re: [Architecture] [Dev] Tomcat Session Replication Using Caching

2014-10-13 Thread Pubudu Dissanayake
​​
Hi Azeez/Srinath

I've managed to implement Tomcat Session replication using Hazelcast APIs.
As per the off-line chats with Azeez and Sameera,This functionality is
applicable to all web applications which are deploy in WSO2 AS. I've
introduced a global web filter, which is define in the web.xml in the conf/
directory of Tomcat to have it included in all web applications deployed.
As a result I've managed to replicate all the session attributes per web
application. Furthermore I've tested basic auth webapp which works as
expected. And I wrote a jmeter script to test session.setAttribute() by
inserting 100+ records.

Please advice as to how should I thoroughly test this feature.

-Pubudu


On Thu, Oct 2, 2014 at 11:40 AM, Afkham Azeez az...@wso2.com wrote:



 On Thu, Oct 2, 2014 at 9:22 AM, Srinath Perera srin...@wso2.com wrote:

 I am not sure from notes what we decided.

 Cannot we just used hazelcast session replication? does above design you
 mentioned built on top of Hazelcast?


 Yes, the plan is to use what Hazelcast provides. Otherwise, we will anyway
 have to solve all the problems the Hz implementation has solved.



 --Srinath

 On Wed, Oct 1, 2014 at 2:18 PM, Pubudu Dissanayake pubu...@wso2.com
 wrote:

 Hi All,

 Based on the Architecture review of  Tomcat session replication using
 caching , following aspects were discussed.
 Participants

-  Azeez, Sameera , Aruna, Jayanga, Gayashan, SupunM, Niranjan and
Myself

 Proposed solution. - key-val: (CarbonSessionCacheKey, CarbonSessionCache
 )

- Initial implementation was based on javax.caching api's. I've
created CarbonSessionCache and CarbonSessionCacheKey to maintain
HttpSession in the Hazelcast distributed map. Session will be
intercepted by using a Tomcat Valve.
- *Verdict* on the proposed solution. - Cache map Serialization and
Deserialization is very expensive operation due to heavy traffic. 
 Therefore
it is not efficient to replicate the whole session object in the cache 
 map.

 Counter Proposed solution

- Having a Hazelcast map per session object. In that way if an
attribute in the session changes the whole entry should not have to be
replicated, only the changed attribute.
- Have a per-session cache - ( session_id ).
- Issue in this approach as follows
   - How can we acquire the session object from the map ?

 *Final verdict *on the feature implementation

- Instead of using the caching APIs, This needs to fix in
Hazelcast level and do it in the optimal way. [1]
- HazelcastWM
http://docs.hazelcast.org/docs/1.9.4/manual/html/ch08.html [2],
Bring in the filter code level in to the tomcat valve instead

 -Pubudu
 [1] http://hazelcast.com/use-cases/web-session-clustering/
 [2] http://docs.hazelcast.org/docs/1.9.4/manual/html/ch08.html

 On Wed, Oct 1, 2014 at 10:51 AM, Pubudu Dissanayake pubu...@wso2.com
 wrote:

 Hi Srinath

 Hazelcast WM allows us to cluster user http sessions automatically.
 Followings are required for enabling Hazelcast Session Clustering
 http://hazelcast.com/use-cases/web-session-clustering/ [2][3]

- Target application or web server should support Java 1.5+
- Target application or web server should support Servlet 2.4+ spec
- Session objects that needs to be clustered have to be Serializable

 Purpose of web session clustering is to replicate web session state
 across a distributed application servers. Benefits, allow us to scale out
  but also avoid any single point of failure and allow us to dynamically
 handle node failure within the application tier. performance of this
 web session clustering is high according to VP Hazelcast
 https://www.youtube.com/watch?v=8a0LrlOIXq0. Using Hazelcast session
 replication can be achieved in two different ways. Observations as follows.

- *Hazelcast Enterprise* has native web session clustering build in
to Apache Tomcat.
- *Opensource Hazelcast* has provide a web session clustering as an
external filter, basically Hazelcast filter has to be placed before all 
 of
other filters and that will enable us to provide the web session 
 clustering
in opensource. In this use case it doesn't required changes to 
 application
itself.

 [1] https://redmine.wso2.com/issues/2816
 [2] http://hazelcast.com/use-cases/web-session-clustering/
 [3]
 http://hazelcast.org/docs/latest/manual/html/httpsessionclustering.html
 [4] https://www.youtube.com/watch?v=8a0LrlOIXq0

 More info $subject - Web Session Clustering / Session Replication
 using Hazelcast

 -Pubudu


 On Wed, Oct 1, 2014 at 10:41 AM, Srinath Perera srin...@wso2.com
 wrote:

 We need to use Hazelcast

 When implemented we need to test this with multilple nodes (at least
 4) and in high load conditions before it is done done.

 --Srinath

 On Wed, Oct 1, 2014 at 8:52 AM, Dinesh J Weerakkody dine...@wso2.com
 wrote:

 Hi,

 I came across this project [1] and might be useful. It is based on
 memcached library

Re: [Architecture] [Dev] Tomcat Session Replication Using Caching

2014-10-13 Thread Pubudu Dissanayake
I haven't drop the idea of using HttpSessionManager but what i thought was
to evaluate how extent we can use this feature as a global web filter and
HttpSessionListener is already placed in the global filter. In the current
implementation Hazelcast creates a cluster per webapp, but I'm in progress
of make it a single cluster shared across all webapps.

On Mon, Oct 13, 2014 at 10:21 PM, Afkham Azeez az...@wso2.com wrote:

 Is a Hazelcast cluster created per webapp, or is a single cluster shared
 across all webapps? Why did you drop the idea of using a SessionListener 
 SessionManager?

 On Mon, Oct 13, 2014 at 7:57 PM, Pubudu Dissanayake pubu...@wso2.com
 wrote:

 ​​
 Hi Azeez/Srinath

 I've managed to implement Tomcat Session replication using Hazelcast
 APIs. As per the off-line chats with Azeez and Sameera,This functionality
 is applicable to all web applications which are deploy in WSO2 AS. I've
 introduced a global web filter, which is define in the web.xml in the
 conf/ directory of Tomcat to have it included in all web applications
 deployed.
 As a result I've managed to replicate all the session attributes per web
 application. Furthermore I've tested basic auth webapp which works as
 expected. And I wrote a jmeter script to test session.setAttribute() by
 inserting 100+ records.

 Please advice as to how should I thoroughly test this feature.

 -Pubudu


 On Thu, Oct 2, 2014 at 11:40 AM, Afkham Azeez az...@wso2.com wrote:



 On Thu, Oct 2, 2014 at 9:22 AM, Srinath Perera srin...@wso2.com wrote:

 I am not sure from notes what we decided.

 Cannot we just used hazelcast session replication? does above design
 you mentioned built on top of Hazelcast?


 Yes, the plan is to use what Hazelcast provides. Otherwise, we will
 anyway have to solve all the problems the Hz implementation has solved.



 --Srinath

 On Wed, Oct 1, 2014 at 2:18 PM, Pubudu Dissanayake pubu...@wso2.com
 wrote:

 Hi All,

 Based on the Architecture review of  Tomcat session replication using
 caching , following aspects were discussed.
 Participants

-  Azeez, Sameera , Aruna, Jayanga, Gayashan, SupunM, Niranjan and
Myself

 Proposed solution. - key-val: (CarbonSessionCacheKey, Carbon
 SessionCache)

- Initial implementation was based on javax.caching api's. I've
created CarbonSessionCache and CarbonSessionCacheKey to maintain
HttpSession in the Hazelcast distributed map. Session will be
intercepted by using a Tomcat Valve.
- *Verdict* on the proposed solution. - Cache map Serialization
and Deserialization is very expensive operation due to heavy traffic.
Therefore it is not efficient to replicate the whole session object in 
 the
cache map.

 Counter Proposed solution

- Having a Hazelcast map per session object. In that way if an
attribute in the session changes the whole entry should not have to be
replicated, only the changed attribute.
- Have a per-session cache - ( session_id ).
- Issue in this approach as follows
   - How can we acquire the session object from the map ?

 *Final verdict *on the feature implementation

- Instead of using the caching APIs, This needs to fix in
Hazelcast level and do it in the optimal way. [1]
- HazelcastWM
http://docs.hazelcast.org/docs/1.9.4/manual/html/ch08.html [2],
Bring in the filter code level in to the tomcat valve instead

 -Pubudu
 [1] http://hazelcast.com/use-cases/web-session-clustering/
 [2] http://docs.hazelcast.org/docs/1.9.4/manual/html/ch08.html

 On Wed, Oct 1, 2014 at 10:51 AM, Pubudu Dissanayake pubu...@wso2.com
 wrote:

 Hi Srinath

 Hazelcast WM allows us to cluster user http sessions automatically.
 Followings are required for enabling Hazelcast Session Clustering
 http://hazelcast.com/use-cases/web-session-clustering/ [2][3]

- Target application or web server should support Java 1.5+
- Target application or web server should support Servlet 2.4+
spec
- Session objects that needs to be clustered have to be
Serializable

 Purpose of web session clustering is to replicate web session state
 across a distributed application servers. Benefits, allow us to scale out
  but also avoid any single point of failure and allow us to dynamically
 handle node failure within the application tier. performance of this
 web session clustering is high according to VP Hazelcast
 https://www.youtube.com/watch?v=8a0LrlOIXq0. Using Hazelcast
 session replication can be achieved in two different ways. Observations 
 as
 follows.

- *Hazelcast Enterprise* has native web session clustering build
in to Apache Tomcat.
- *Opensource Hazelcast* has provide a web session clustering as
an external filter, basically Hazelcast filter has to be placed 
 before all
of other filters and that will enable us to provide the web session
clustering in opensource. In this use case it doesn't required 
 changes to
application itself.

 [1] https://redmine.wso2.com/issues/2816
 [2

Re: [Dev] Tomcat Session Replication Using Caching

2014-10-13 Thread Pubudu Dissanayake
​​
Hi Azeez/Srinath

I've managed to implement Tomcat Session replication using Hazelcast APIs.
As per the off-line chats with Azeez and Sameera,This functionality is
applicable to all web applications which are deploy in WSO2 AS. I've
introduced a global web filter, which is define in the web.xml in the conf/
directory of Tomcat to have it included in all web applications deployed.
As a result I've managed to replicate all the session attributes per web
application. Furthermore I've tested basic auth webapp which works as
expected. And I wrote a jmeter script to test session.setAttribute() by
inserting 100+ records.

Please advice as to how should I thoroughly test this feature.

-Pubudu


On Thu, Oct 2, 2014 at 11:40 AM, Afkham Azeez az...@wso2.com wrote:



 On Thu, Oct 2, 2014 at 9:22 AM, Srinath Perera srin...@wso2.com wrote:

 I am not sure from notes what we decided.

 Cannot we just used hazelcast session replication? does above design you
 mentioned built on top of Hazelcast?


 Yes, the plan is to use what Hazelcast provides. Otherwise, we will anyway
 have to solve all the problems the Hz implementation has solved.



 --Srinath

 On Wed, Oct 1, 2014 at 2:18 PM, Pubudu Dissanayake pubu...@wso2.com
 wrote:

 Hi All,

 Based on the Architecture review of  Tomcat session replication using
 caching , following aspects were discussed.
 Participants

-  Azeez, Sameera , Aruna, Jayanga, Gayashan, SupunM, Niranjan and
Myself

 Proposed solution. - key-val: (CarbonSessionCacheKey, CarbonSessionCache
 )

- Initial implementation was based on javax.caching api's. I've
created CarbonSessionCache and CarbonSessionCacheKey to maintain
HttpSession in the Hazelcast distributed map. Session will be
intercepted by using a Tomcat Valve.
- *Verdict* on the proposed solution. - Cache map Serialization and
Deserialization is very expensive operation due to heavy traffic. 
 Therefore
it is not efficient to replicate the whole session object in the cache 
 map.

 Counter Proposed solution

- Having a Hazelcast map per session object. In that way if an
attribute in the session changes the whole entry should not have to be
replicated, only the changed attribute.
- Have a per-session cache - ( session_id ).
- Issue in this approach as follows
   - How can we acquire the session object from the map ?

 *Final verdict *on the feature implementation

- Instead of using the caching APIs, This needs to fix in
Hazelcast level and do it in the optimal way. [1]
- HazelcastWM
http://docs.hazelcast.org/docs/1.9.4/manual/html/ch08.html [2],
Bring in the filter code level in to the tomcat valve instead

 -Pubudu
 [1] http://hazelcast.com/use-cases/web-session-clustering/
 [2] http://docs.hazelcast.org/docs/1.9.4/manual/html/ch08.html

 On Wed, Oct 1, 2014 at 10:51 AM, Pubudu Dissanayake pubu...@wso2.com
 wrote:

 Hi Srinath

 Hazelcast WM allows us to cluster user http sessions automatically.
 Followings are required for enabling Hazelcast Session Clustering
 http://hazelcast.com/use-cases/web-session-clustering/ [2][3]

- Target application or web server should support Java 1.5+
- Target application or web server should support Servlet 2.4+ spec
- Session objects that needs to be clustered have to be Serializable

 Purpose of web session clustering is to replicate web session state
 across a distributed application servers. Benefits, allow us to scale out
  but also avoid any single point of failure and allow us to dynamically
 handle node failure within the application tier. performance of this
 web session clustering is high according to VP Hazelcast
 https://www.youtube.com/watch?v=8a0LrlOIXq0. Using Hazelcast session
 replication can be achieved in two different ways. Observations as follows.

- *Hazelcast Enterprise* has native web session clustering build in
to Apache Tomcat.
- *Opensource Hazelcast* has provide a web session clustering as an
external filter, basically Hazelcast filter has to be placed before all 
 of
other filters and that will enable us to provide the web session 
 clustering
in opensource. In this use case it doesn't required changes to 
 application
itself.

 [1] https://redmine.wso2.com/issues/2816
 [2] http://hazelcast.com/use-cases/web-session-clustering/
 [3]
 http://hazelcast.org/docs/latest/manual/html/httpsessionclustering.html
 [4] https://www.youtube.com/watch?v=8a0LrlOIXq0

 More info $subject - Web Session Clustering / Session Replication
 using Hazelcast

 -Pubudu


 On Wed, Oct 1, 2014 at 10:41 AM, Srinath Perera srin...@wso2.com
 wrote:

 We need to use Hazelcast

 When implemented we need to test this with multilple nodes (at least
 4) and in high load conditions before it is done done.

 --Srinath

 On Wed, Oct 1, 2014 at 8:52 AM, Dinesh J Weerakkody dine...@wso2.com
 wrote:

 Hi,

 I came across this project [1] and might be useful. It is based on
 memcached library

Re: [Dev] Tomcat Session Replication Using Caching

2014-10-13 Thread Pubudu Dissanayake
I haven't drop the idea of using HttpSessionManager but what i thought was
to evaluate how extent we can use this feature as a global web filter and
HttpSessionListener is already placed in the global filter. In the current
implementation Hazelcast creates a cluster per webapp, but I'm in progress
of make it a single cluster shared across all webapps.

On Mon, Oct 13, 2014 at 10:21 PM, Afkham Azeez az...@wso2.com wrote:

 Is a Hazelcast cluster created per webapp, or is a single cluster shared
 across all webapps? Why did you drop the idea of using a SessionListener 
 SessionManager?

 On Mon, Oct 13, 2014 at 7:57 PM, Pubudu Dissanayake pubu...@wso2.com
 wrote:

 ​​
 Hi Azeez/Srinath

 I've managed to implement Tomcat Session replication using Hazelcast
 APIs. As per the off-line chats with Azeez and Sameera,This functionality
 is applicable to all web applications which are deploy in WSO2 AS. I've
 introduced a global web filter, which is define in the web.xml in the
 conf/ directory of Tomcat to have it included in all web applications
 deployed.
 As a result I've managed to replicate all the session attributes per web
 application. Furthermore I've tested basic auth webapp which works as
 expected. And I wrote a jmeter script to test session.setAttribute() by
 inserting 100+ records.

 Please advice as to how should I thoroughly test this feature.

 -Pubudu


 On Thu, Oct 2, 2014 at 11:40 AM, Afkham Azeez az...@wso2.com wrote:



 On Thu, Oct 2, 2014 at 9:22 AM, Srinath Perera srin...@wso2.com wrote:

 I am not sure from notes what we decided.

 Cannot we just used hazelcast session replication? does above design
 you mentioned built on top of Hazelcast?


 Yes, the plan is to use what Hazelcast provides. Otherwise, we will
 anyway have to solve all the problems the Hz implementation has solved.



 --Srinath

 On Wed, Oct 1, 2014 at 2:18 PM, Pubudu Dissanayake pubu...@wso2.com
 wrote:

 Hi All,

 Based on the Architecture review of  Tomcat session replication using
 caching , following aspects were discussed.
 Participants

-  Azeez, Sameera , Aruna, Jayanga, Gayashan, SupunM, Niranjan and
Myself

 Proposed solution. - key-val: (CarbonSessionCacheKey, Carbon
 SessionCache)

- Initial implementation was based on javax.caching api's. I've
created CarbonSessionCache and CarbonSessionCacheKey to maintain
HttpSession in the Hazelcast distributed map. Session will be
intercepted by using a Tomcat Valve.
- *Verdict* on the proposed solution. - Cache map Serialization
and Deserialization is very expensive operation due to heavy traffic.
Therefore it is not efficient to replicate the whole session object in 
 the
cache map.

 Counter Proposed solution

- Having a Hazelcast map per session object. In that way if an
attribute in the session changes the whole entry should not have to be
replicated, only the changed attribute.
- Have a per-session cache - ( session_id ).
- Issue in this approach as follows
   - How can we acquire the session object from the map ?

 *Final verdict *on the feature implementation

- Instead of using the caching APIs, This needs to fix in
Hazelcast level and do it in the optimal way. [1]
- HazelcastWM
http://docs.hazelcast.org/docs/1.9.4/manual/html/ch08.html [2],
Bring in the filter code level in to the tomcat valve instead

 -Pubudu
 [1] http://hazelcast.com/use-cases/web-session-clustering/
 [2] http://docs.hazelcast.org/docs/1.9.4/manual/html/ch08.html

 On Wed, Oct 1, 2014 at 10:51 AM, Pubudu Dissanayake pubu...@wso2.com
 wrote:

 Hi Srinath

 Hazelcast WM allows us to cluster user http sessions automatically.
 Followings are required for enabling Hazelcast Session Clustering
 http://hazelcast.com/use-cases/web-session-clustering/ [2][3]

- Target application or web server should support Java 1.5+
- Target application or web server should support Servlet 2.4+
spec
- Session objects that needs to be clustered have to be
Serializable

 Purpose of web session clustering is to replicate web session state
 across a distributed application servers. Benefits, allow us to scale out
  but also avoid any single point of failure and allow us to dynamically
 handle node failure within the application tier. performance of this
 web session clustering is high according to VP Hazelcast
 https://www.youtube.com/watch?v=8a0LrlOIXq0. Using Hazelcast
 session replication can be achieved in two different ways. Observations 
 as
 follows.

- *Hazelcast Enterprise* has native web session clustering build
in to Apache Tomcat.
- *Opensource Hazelcast* has provide a web session clustering as
an external filter, basically Hazelcast filter has to be placed 
 before all
of other filters and that will enable us to provide the web session
clustering in opensource. In this use case it doesn't required 
 changes to
application itself.

 [1] https://redmine.wso2.com/issues/2816
 [2

Re: [Dev] IntelliJ Idea Configure - [for users newer to Intellij Idea]

2014-10-12 Thread Pubudu Dissanayake
Hi folks

Take a look at some useful plugins provided by Idea. [1]
[1] http://blog.afkham.org/2011/10/my-top-10-third-party-intellij-idea.html

On Sun, Oct 12, 2014 at 11:39 AM, Chamila De Alwis chami...@wso2.com
wrote:

 I constantly use ctrl+alt+F7 (show usages) shortcut, but this is the
 shortcut to switch to tty7 in Linux. Changing it to ctrl+alt+7 might help.


 Regards,
 Chamila de Alwis
 Software Engineer | WSO2 | +94772207163
 Blog: code.chamiladealwis.com



 On Fri, Oct 10, 2014 at 9:09 AM, Inosh Perera ino...@wso2.com wrote:

 Hi all,
 Also this[1] is very useful.

 1.
 https://docs.google.com/a/wso2.com/presentation/d/1lU0iIvjYqIMGpLZrgGk7Mx85wF3VuYvM0k2dC117flo/edit#slide=id.i0

 Regards,
 Inosh

 On Thu, Oct 9, 2014 at 8:21 PM, Manoj Gunawardena man...@wso2.com
 wrote:

 Hi Devs,

 Intellij Idea is a keyboard centric IDE and properly configure of the
 IDE is increased coding efficiency. Idea has provided default short
 cuts for most of the essential options. Users can view the default key map
 reference in IDE, help - Default Key Map Reference.

 User can change short cut keys in Idea, by  File -  settings. Type
 'keyMap'  in the search box. The key Map page will open.

 Ubuntu users conflicts few Idea short cut keys with OS short cut keys.
 Better to disable or change OS short cut keys to avoid these conflicts.

 In Ubuntu, users can change or disable OS short cuts as follows

 System settings - KeyBoard - Short Cuts,

 Following link listed short cut keys which conflicts with Idea and needs
 to change in UBUNTU.


 http://askubuntu.com/questions/412046/unable-to-use-intellij-idea-keyboard-shortcuts-on-ubuntu

 How to import Copy Right Info.
 Go to File - Settings- Type copy right in the search box.
 Add copy right text and save.

 Thanks













 --
 Manoj Gunawardena
 Tech Lead
 WSO2, Inc.: http://wso2.com
 lean.enterprise.middleware
 Mobile : +94 77 2291643




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





-- 
*Pubudu Dissanayake*
 Software Engineer

WSO2 Inc.; http://wso2.com
lean.enterprise.middleware
Mob: + 94 775 503 304

Blog: http://geekdetected.wordpress.com/
Linkedin: *http://lk.linkedin.com/in/pubududissanayake*
http://lk.linkedin.com/in/pubududissanayake
Flickr : https://www.flickr.com/photos/pubudufx/
Twitter: https://twitter.com/GeekInAction
___
Dev mailing list
Dev@wso2.org
http://wso2.org/cgi-bin/mailman/listinfo/dev


Re: [Architecture] [Dev] Tomcat Session Replication Using Caching

2014-10-01 Thread Pubudu Dissanayake
Hi All,

Based on the Architecture review of  Tomcat session replication using
caching , following aspects were discussed.
Participants

   -  Azeez, Sameera , Aruna, Jayanga, Gayashan, SupunM, Niranjan and
   Myself

Proposed solution. - key-val: (CarbonSessionCacheKey, CarbonSessionCache)

   - Initial implementation was based on javax.caching api's. I've created
   CarbonSessionCache and CarbonSessionCacheKey to maintain HttpSession in
   the Hazelcast distributed map. Session will be intercepted by using a
   Tomcat Valve.
   - *Verdict* on the proposed solution. - Cache map Serialization and
   Deserialization is very expensive operation due to heavy traffic. Therefore
   it is not efficient to replicate the whole session object in the cache map.

Counter Proposed solution

   - Having a Hazelcast map per session object. In that way if an attribute
   in the session changes the whole entry should not have to be replicated,
   only the changed attribute.
   - Have a per-session cache - ( session_id ).
   - Issue in this approach as follows
  - How can we acquire the session object from the map ?

*Final verdict *on the feature implementation

   - Instead of using the caching APIs, This needs to fix in
   Hazelcast level and do it in the optimal way. [1]
   - HazelcastWM
   http://docs.hazelcast.org/docs/1.9.4/manual/html/ch08.html [2], Bring
   in the filter code level in to the tomcat valve instead

-Pubudu
[1] http://hazelcast.com/use-cases/web-session-clustering/
[2] http://docs.hazelcast.org/docs/1.9.4/manual/html/ch08.html

On Wed, Oct 1, 2014 at 10:51 AM, Pubudu Dissanayake pubu...@wso2.com
wrote:

 Hi Srinath

 Hazelcast WM allows us to cluster user http sessions automatically.
 Followings are required for enabling Hazelcast Session Clustering
 http://hazelcast.com/use-cases/web-session-clustering/ [2][3]

- Target application or web server should support Java 1.5+
- Target application or web server should support Servlet 2.4+ spec
- Session objects that needs to be clustered have to be Serializable

 Purpose of web session clustering is to replicate web session state across
 a distributed application servers. Benefits, allow us to scale out  but
 also avoid any single point of failure and allow us to dynamically handle
 node failure within the application tier. performance of this web session
 clustering is high according to VP Hazelcast
 https://www.youtube.com/watch?v=8a0LrlOIXq0. Using Hazelcast session
 replication can be achieved in two different ways. Observations as follows.

- *Hazelcast Enterprise* has native web session clustering build in to
Apache Tomcat.
- *Opensource Hazelcast* has provide a web session clustering as an
external filter, basically Hazelcast filter has to be placed before all of
other filters and that will enable us to provide the web session clustering
in opensource. In this use case it doesn't required changes to application
itself.

 [1] https://redmine.wso2.com/issues/2816
 [2] http://hazelcast.com/use-cases/web-session-clustering/
 [3]
 http://hazelcast.org/docs/latest/manual/html/httpsessionclustering.html
 [4] https://www.youtube.com/watch?v=8a0LrlOIXq0

 More info $subject - Web Session Clustering / Session Replication using
 Hazelcast

 -Pubudu


 On Wed, Oct 1, 2014 at 10:41 AM, Srinath Perera srin...@wso2.com wrote:

 We need to use Hazelcast

 When implemented we need to test this with multilple nodes (at least 4)
 and in high load conditions before it is done done.

 --Srinath

 On Wed, Oct 1, 2014 at 8:52 AM, Dinesh J Weerakkody dine...@wso2.com
 wrote:

 Hi,

 I came across this project [1] and might be useful. It is based on
 memcached library.

 [1] http://code.google.com/p/memcached-session-manager/

 On Tue, Sep 30, 2014 at 8:01 PM, Pubudu Dissanayake pubu...@wso2.com
 wrote:

 Hi All,

 I am working on an improvement for Carbon to enable tomcat session
 replication support using caching .Our previous implementation was
 based on a Tomcat Valve ( CarbonTomcatSessionReplicationValve.java).And
 it was used to replicate the session and adding it to cluster message.

 Http Session replication in carbon works like this (its quite similar
 to how the same work in a standalone tomcat).

 1. Not every webbapp session will be replicated. You need to set a
 context property (distributable) for the webapp you need.
 2. Once enabled, and when the session is modified on a node, that
 modification is sent to other nodes via a cluster message ( using
 clustering )

 For the new implementation, initial suggestion is to use our caching
 implementation. So we need to store the session object in the cache and
 when session is modified, then we need to update the cache.

 Please guide me through the process what should I carried out and any
 references to help me further to achieve [1].

 [1] https://redmine.wso2.com/issues/2816
 ​

 --
 *Pubudu Dissanayake*
  Software Engineer

 WSO2 Inc.; http://wso2.com

Re: [Dev] Tomcat Session Replication Using Caching

2014-10-01 Thread Pubudu Dissanayake
Hi All,

Based on the Architecture review of  Tomcat session replication using
caching , following aspects were discussed.
Participants

   -  Azeez, Sameera , Aruna, Jayanga, Gayashan, SupunM, Niranjan and
   Myself

Proposed solution. - key-val: (CarbonSessionCacheKey, CarbonSessionCache)

   - Initial implementation was based on javax.caching api's. I've created
   CarbonSessionCache and CarbonSessionCacheKey to maintain HttpSession in
   the Hazelcast distributed map. Session will be intercepted by using a
   Tomcat Valve.
   - *Verdict* on the proposed solution. - Cache map Serialization and
   Deserialization is very expensive operation due to heavy traffic. Therefore
   it is not efficient to replicate the whole session object in the cache map.

Counter Proposed solution

   - Having a Hazelcast map per session object. In that way if an attribute
   in the session changes the whole entry should not have to be replicated,
   only the changed attribute.
   - Have a per-session cache - ( session_id ).
   - Issue in this approach as follows
  - How can we acquire the session object from the map ?

*Final verdict *on the feature implementation

   - Instead of using the caching APIs, This needs to fix in
   Hazelcast level and do it in the optimal way. [1]
   - HazelcastWM
   http://docs.hazelcast.org/docs/1.9.4/manual/html/ch08.html [2], Bring
   in the filter code level in to the tomcat valve instead

-Pubudu
[1] http://hazelcast.com/use-cases/web-session-clustering/
[2] http://docs.hazelcast.org/docs/1.9.4/manual/html/ch08.html

On Wed, Oct 1, 2014 at 10:51 AM, Pubudu Dissanayake pubu...@wso2.com
wrote:

 Hi Srinath

 Hazelcast WM allows us to cluster user http sessions automatically.
 Followings are required for enabling Hazelcast Session Clustering
 http://hazelcast.com/use-cases/web-session-clustering/ [2][3]

- Target application or web server should support Java 1.5+
- Target application or web server should support Servlet 2.4+ spec
- Session objects that needs to be clustered have to be Serializable

 Purpose of web session clustering is to replicate web session state across
 a distributed application servers. Benefits, allow us to scale out  but
 also avoid any single point of failure and allow us to dynamically handle
 node failure within the application tier. performance of this web session
 clustering is high according to VP Hazelcast
 https://www.youtube.com/watch?v=8a0LrlOIXq0. Using Hazelcast session
 replication can be achieved in two different ways. Observations as follows.

- *Hazelcast Enterprise* has native web session clustering build in to
Apache Tomcat.
- *Opensource Hazelcast* has provide a web session clustering as an
external filter, basically Hazelcast filter has to be placed before all of
other filters and that will enable us to provide the web session clustering
in opensource. In this use case it doesn't required changes to application
itself.

 [1] https://redmine.wso2.com/issues/2816
 [2] http://hazelcast.com/use-cases/web-session-clustering/
 [3]
 http://hazelcast.org/docs/latest/manual/html/httpsessionclustering.html
 [4] https://www.youtube.com/watch?v=8a0LrlOIXq0

 More info $subject - Web Session Clustering / Session Replication using
 Hazelcast

 -Pubudu


 On Wed, Oct 1, 2014 at 10:41 AM, Srinath Perera srin...@wso2.com wrote:

 We need to use Hazelcast

 When implemented we need to test this with multilple nodes (at least 4)
 and in high load conditions before it is done done.

 --Srinath

 On Wed, Oct 1, 2014 at 8:52 AM, Dinesh J Weerakkody dine...@wso2.com
 wrote:

 Hi,

 I came across this project [1] and might be useful. It is based on
 memcached library.

 [1] http://code.google.com/p/memcached-session-manager/

 On Tue, Sep 30, 2014 at 8:01 PM, Pubudu Dissanayake pubu...@wso2.com
 wrote:

 Hi All,

 I am working on an improvement for Carbon to enable tomcat session
 replication support using caching .Our previous implementation was
 based on a Tomcat Valve ( CarbonTomcatSessionReplicationValve.java).And
 it was used to replicate the session and adding it to cluster message.

 Http Session replication in carbon works like this (its quite similar
 to how the same work in a standalone tomcat).

 1. Not every webbapp session will be replicated. You need to set a
 context property (distributable) for the webapp you need.
 2. Once enabled, and when the session is modified on a node, that
 modification is sent to other nodes via a cluster message ( using
 clustering )

 For the new implementation, initial suggestion is to use our caching
 implementation. So we need to store the session object in the cache and
 when session is modified, then we need to update the cache.

 Please guide me through the process what should I carried out and any
 references to help me further to achieve [1].

 [1] https://redmine.wso2.com/issues/2816
 ​

 --
 *Pubudu Dissanayake*
  Software Engineer

 WSO2 Inc.; http://wso2.com

[Architecture] Tomcat Session Replication Using Caching

2014-09-30 Thread Pubudu Dissanayake
Hi All,

I am working on an improvement for Carbon to enable tomcat session
replication support using caching .Our previous implementation was based on
a Tomcat Valve ( CarbonTomcatSessionReplicationValve.java).And it was used to
replicate the session and adding it to cluster message.

Http Session replication in carbon works like this (its quite similar to
how the same work in a standalone tomcat).

1. Not every webbapp session will be replicated. You need to set a context
property (distributable) for the webapp you need.
2. Once enabled, and when the session is modified on a node, that
modification is sent to other nodes via a cluster message ( using
clustering )

For the new implementation, initial suggestion is to use our caching
implementation. So we need to store the session object in the cache and
when session is modified, then we need to update the cache.

Please guide me through the process what should I carried out and any
references to help me further to achieve [1].

[1] https://redmine.wso2.com/issues/2816
​

-- 
*Pubudu Dissanayake*
 Software Engineer

WSO2 Inc.; http://wso2.com
lean.enterprise.middleware
Mob: + 94 775 503 304

Blog: http://geekdetected.wordpress.com/
Linkedin: *http://lk.linkedin.com/in/pubududissanayake*
http://lk.linkedin.com/in/pubududissanayake
Flickr : https://www.flickr.com/photos/pubudufx/
Twitter: https://twitter.com/GeekInAction
___
Architecture mailing list
Architecture@wso2.org
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture


Re: [Architecture] [Dev] Tomcat Session Replication Using Caching

2014-09-30 Thread Pubudu Dissanayake
Hi Srinath

Hazelcast WM allows us to cluster user http sessions automatically.
Followings are required for enabling Hazelcast Session Clustering
http://hazelcast.com/use-cases/web-session-clustering/ [2][3]

   - Target application or web server should support Java 1.5+
   - Target application or web server should support Servlet 2.4+ spec
   - Session objects that needs to be clustered have to be Serializable

Purpose of web session clustering is to replicate web session state across
a distributed application servers. Benefits, allow us to scale out  but
also avoid any single point of failure and allow us to dynamically handle
node failure within the application tier. performance of this web session
clustering is high according to VP Hazelcast
https://www.youtube.com/watch?v=8a0LrlOIXq0. Using Hazelcast session
replication can be achieved in two different ways. Observations as follows.

   - *Hazelcast Enterprise* has native web session clustering build in to
   Apache Tomcat.
   - *Opensource Hazelcast* has provide a web session clustering as an
   external filter, basically Hazelcast filter has to be placed before all of
   other filters and that will enable us to provide the web session clustering
   in opensource. In this use case it doesn't required changes to application
   itself.

[1] https://redmine.wso2.com/issues/2816
[2] http://hazelcast.com/use-cases/web-session-clustering/
[3] http://hazelcast.org/docs/latest/manual/html/httpsessionclustering.html
[4] https://www.youtube.com/watch?v=8a0LrlOIXq0

More info $subject - Web Session Clustering / Session Replication using
Hazelcast

-Pubudu


On Wed, Oct 1, 2014 at 10:41 AM, Srinath Perera srin...@wso2.com wrote:

 We need to use Hazelcast

 When implemented we need to test this with multilple nodes (at least 4)
 and in high load conditions before it is done done.

 --Srinath

 On Wed, Oct 1, 2014 at 8:52 AM, Dinesh J Weerakkody dine...@wso2.com
 wrote:

 Hi,

 I came across this project [1] and might be useful. It is based on
 memcached library.

 [1] http://code.google.com/p/memcached-session-manager/

 On Tue, Sep 30, 2014 at 8:01 PM, Pubudu Dissanayake pubu...@wso2.com
 wrote:

 Hi All,

 I am working on an improvement for Carbon to enable tomcat session
 replication support using caching .Our previous implementation was
 based on a Tomcat Valve ( CarbonTomcatSessionReplicationValve.java).And
 it was used to replicate the session and adding it to cluster message.

 Http Session replication in carbon works like this (its quite similar to
 how the same work in a standalone tomcat).

 1. Not every webbapp session will be replicated. You need to set a
 context property (distributable) for the webapp you need.
 2. Once enabled, and when the session is modified on a node, that
 modification is sent to other nodes via a cluster message ( using
 clustering )

 For the new implementation, initial suggestion is to use our caching
 implementation. So we need to store the session object in the cache and
 when session is modified, then we need to update the cache.

 Please guide me through the process what should I carried out and any
 references to help me further to achieve [1].

 [1] https://redmine.wso2.com/issues/2816
 ​

 --
 *Pubudu Dissanayake*
  Software Engineer

 WSO2 Inc.; http://wso2.com
 lean.enterprise.middleware
 Mob: + 94 775 503 304

 Blog: http://geekdetected.wordpress.com/
 Linkedin: *http://lk.linkedin.com/in/pubududissanayake*
 http://lk.linkedin.com/in/pubududissanayake
 Flickr : https://www.flickr.com/photos/pubudufx/
 Twitter: https://twitter.com/GeekInAction


 ___
 Dev mailing list
 d...@wso2.org
 http://wso2.org/cgi-bin/mailman/listinfo/dev




 --

 *Dinesh J. Weerakkody*
 Software Engineer
 WSO2 Inc.
 lean | enterprise | middleware
 M : +94 727 361788 | E : dine...@wso2.com | W : www.wso2.com

 ___
 Dev mailing list
 d...@wso2.org
 http://wso2.org/cgi-bin/mailman/listinfo/dev




 --
 
 Srinath Perera, Ph.D.
http://people.apache.org/~hemapani/
http://srinathsview.blogspot.com/




-- 
*Pubudu Dissanayake*
 Software Engineer

WSO2 Inc.; http://wso2.com
lean.enterprise.middleware
Mob: + 94 775 503 304

Blog: http://geekdetected.wordpress.com/
Linkedin: *http://lk.linkedin.com/in/pubududissanayake*
http://lk.linkedin.com/in/pubududissanayake
Flickr : https://www.flickr.com/photos/pubudufx/
Twitter: https://twitter.com/GeekInAction
___
Architecture mailing list
Architecture@wso2.org
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture


[Dev] Tomcat Session Replication Using Caching

2014-09-30 Thread Pubudu Dissanayake
Hi All,

I am working on an improvement for Carbon to enable tomcat session
replication support using caching .Our previous implementation was based on
a Tomcat Valve ( CarbonTomcatSessionReplicationValve.java).And it was used to
replicate the session and adding it to cluster message.

Http Session replication in carbon works like this (its quite similar to
how the same work in a standalone tomcat).

1. Not every webbapp session will be replicated. You need to set a context
property (distributable) for the webapp you need.
2. Once enabled, and when the session is modified on a node, that
modification is sent to other nodes via a cluster message ( using
clustering )

For the new implementation, initial suggestion is to use our caching
implementation. So we need to store the session object in the cache and
when session is modified, then we need to update the cache.

Please guide me through the process what should I carried out and any
references to help me further to achieve [1].

[1] https://redmine.wso2.com/issues/2816
​

-- 
*Pubudu Dissanayake*
 Software Engineer

WSO2 Inc.; http://wso2.com
lean.enterprise.middleware
Mob: + 94 775 503 304

Blog: http://geekdetected.wordpress.com/
Linkedin: *http://lk.linkedin.com/in/pubududissanayake*
http://lk.linkedin.com/in/pubududissanayake
Flickr : https://www.flickr.com/photos/pubudufx/
Twitter: https://twitter.com/GeekInAction
___
Dev mailing list
Dev@wso2.org
http://wso2.org/cgi-bin/mailman/listinfo/dev


Re: [Dev] Tomcat Session Replication Using Caching

2014-09-30 Thread Pubudu Dissanayake
Hi Srinath

Hazelcast WM allows us to cluster user http sessions automatically.
Followings are required for enabling Hazelcast Session Clustering
http://hazelcast.com/use-cases/web-session-clustering/ [2][3]

   - Target application or web server should support Java 1.5+
   - Target application or web server should support Servlet 2.4+ spec
   - Session objects that needs to be clustered have to be Serializable

Purpose of web session clustering is to replicate web session state across
a distributed application servers. Benefits, allow us to scale out  but
also avoid any single point of failure and allow us to dynamically handle
node failure within the application tier. performance of this web session
clustering is high according to VP Hazelcast
https://www.youtube.com/watch?v=8a0LrlOIXq0. Using Hazelcast session
replication can be achieved in two different ways. Observations as follows.

   - *Hazelcast Enterprise* has native web session clustering build in to
   Apache Tomcat.
   - *Opensource Hazelcast* has provide a web session clustering as an
   external filter, basically Hazelcast filter has to be placed before all of
   other filters and that will enable us to provide the web session clustering
   in opensource. In this use case it doesn't required changes to application
   itself.

[1] https://redmine.wso2.com/issues/2816
[2] http://hazelcast.com/use-cases/web-session-clustering/
[3] http://hazelcast.org/docs/latest/manual/html/httpsessionclustering.html
[4] https://www.youtube.com/watch?v=8a0LrlOIXq0

More info $subject - Web Session Clustering / Session Replication using
Hazelcast

-Pubudu


On Wed, Oct 1, 2014 at 10:41 AM, Srinath Perera srin...@wso2.com wrote:

 We need to use Hazelcast

 When implemented we need to test this with multilple nodes (at least 4)
 and in high load conditions before it is done done.

 --Srinath

 On Wed, Oct 1, 2014 at 8:52 AM, Dinesh J Weerakkody dine...@wso2.com
 wrote:

 Hi,

 I came across this project [1] and might be useful. It is based on
 memcached library.

 [1] http://code.google.com/p/memcached-session-manager/

 On Tue, Sep 30, 2014 at 8:01 PM, Pubudu Dissanayake pubu...@wso2.com
 wrote:

 Hi All,

 I am working on an improvement for Carbon to enable tomcat session
 replication support using caching .Our previous implementation was
 based on a Tomcat Valve ( CarbonTomcatSessionReplicationValve.java).And
 it was used to replicate the session and adding it to cluster message.

 Http Session replication in carbon works like this (its quite similar to
 how the same work in a standalone tomcat).

 1. Not every webbapp session will be replicated. You need to set a
 context property (distributable) for the webapp you need.
 2. Once enabled, and when the session is modified on a node, that
 modification is sent to other nodes via a cluster message ( using
 clustering )

 For the new implementation, initial suggestion is to use our caching
 implementation. So we need to store the session object in the cache and
 when session is modified, then we need to update the cache.

 Please guide me through the process what should I carried out and any
 references to help me further to achieve [1].

 [1] https://redmine.wso2.com/issues/2816
 ​

 --
 *Pubudu Dissanayake*
  Software Engineer

 WSO2 Inc.; http://wso2.com
 lean.enterprise.middleware
 Mob: + 94 775 503 304

 Blog: http://geekdetected.wordpress.com/
 Linkedin: *http://lk.linkedin.com/in/pubududissanayake*
 http://lk.linkedin.com/in/pubududissanayake
 Flickr : https://www.flickr.com/photos/pubudufx/
 Twitter: https://twitter.com/GeekInAction


 ___
 Dev mailing list
 Dev@wso2.org
 http://wso2.org/cgi-bin/mailman/listinfo/dev




 --

 *Dinesh J. Weerakkody*
 Software Engineer
 WSO2 Inc.
 lean | enterprise | middleware
 M : +94 727 361788 | E : dine...@wso2.com | W : www.wso2.com

 ___
 Dev mailing list
 Dev@wso2.org
 http://wso2.org/cgi-bin/mailman/listinfo/dev




 --
 
 Srinath Perera, Ph.D.
http://people.apache.org/~hemapani/
http://srinathsview.blogspot.com/




-- 
*Pubudu Dissanayake*
 Software Engineer

WSO2 Inc.; http://wso2.com
lean.enterprise.middleware
Mob: + 94 775 503 304

Blog: http://geekdetected.wordpress.com/
Linkedin: *http://lk.linkedin.com/in/pubududissanayake*
http://lk.linkedin.com/in/pubududissanayake
Flickr : https://www.flickr.com/photos/pubudufx/
Twitter: https://twitter.com/GeekInAction
___
Dev mailing list
Dev@wso2.org
http://wso2.org/cgi-bin/mailman/listinfo/dev


Re: [Dev] Pull requests for the following issues

2014-09-26 Thread Pubudu Dissanayake
Ping !

On Wed, Sep 10, 2014 at 6:17 PM, Aruna Karunarathna ar...@wso2.com wrote:

 Hi all,

 Please send the pull requests for the following issues.

 https://wso2.org/jira/browse/CARBON-14891
 ​​
 https://wso2.org/jira/browse/CARBON-14850
 https://wso2.org/jira/browse/CARBON-14718
 https://wso2.org/jira/browse/CARBON-14894
 ​

​Please update above mentioned public jira tickets with relevant pull
requests.

 ​

 Regards,
 Aruna

 --

 *Aruna Sujith Karunarathna* | Software Engineer
 WSO2, Inc | lean. enterprise. middleware.
 #20, Palm Grove, Colombo 03, Sri Lanka
 Mobile: +94 71 9040362 | Work: +94 112145345
 Email: ar...@wso2.com | Web: www.wso2.com


 ___
 Dev mailing list
 Dev@wso2.org
 http://wso2.org/cgi-bin/mailman/listinfo/dev




-- 
*Pubudu Dissanayake*
 Software Engineer

WSO2 Inc.; http://wso2.com
lean.enterprise.middleware
Mob: + 94 775 503 304

Blog: http://geekdetected.wordpress.com/
Linkedin: *http://lk.linkedin.com/in/pubududissanayake*
http://lk.linkedin.com/in/pubududissanayake
Flickr : https://www.flickr.com/photos/pubudufx/
Twitter: https://twitter.com/GeekInAction
___
Dev mailing list
Dev@wso2.org
http://wso2.org/cgi-bin/mailman/listinfo/dev


Re: [Dev] Web Session Clustering / Session Replication using Hazelcast

2014-09-23 Thread Pubudu Dissanayake
On Mon, Sep 22, 2014 at 11:03 AM, Afkham Azeez az...@wso2.com wrote:

 Can you simply get this working using a Tomcat valve rather than a filter?
 Call into the Hazelcast APIs the filter calls. Take that code and make it a
 valve.
 ​

​Hazelcast enterprise version has native web session clustering build in to
Apache Tomcat. I presume they are talking about Tomcat Valves. I'll look in
to what you have suggested as well. Yep, It will be a solid implementation
if we use Tomcat Valves rather than filters.

Thanks for the feedback ​

 ​

 Azeez

 ​

-- 
*Pubudu Dissanayake*
 Software Engineer

WSO2 Inc.; http://wso2.com
lean.enterprise.middleware
Mob: + 94 775 503 304

Blog: http://geekdetected.wordpress.com/
Linkedin: *http://lk.linkedin.com/in/pubududissanayake*
http://lk.linkedin.com/in/pubududissanayake
Flickr : https://www.flickr.com/photos/pubudufx/
Twitter: https://twitter.com/GeekInAction
___
Dev mailing list
Dev@wso2.org
http://wso2.org/cgi-bin/mailman/listinfo/dev


[Dev] Exceptions Handling In Carbon

2014-09-23 Thread Pubudu Dissanayake
Hi folks,

I'm in a process of implementing a fix for the CarbonContext.java
https://github.com/wso2-dev/carbon4-kernel/blob/master/core/org.wso2.carbon.utils/src/main/java/org/wso2/carbon/context/CarbonContext.java
[1]
and I found several concerns. Observations as follows,

   - Empty Catch blocks

  if (tenantId != MultitenantConstants.INVALID_TENANT_ID) {

try {
registry =
dataHolder.getRegistryService().getConfigUserRegistry(getUsername(),
tenantId);
return registry;
} catch (Exception e) {
// If we can't obtain an instance of the registry,
we'll simply return null. The
// errors that lead to this situation will be
logged by the Registry Kernel.
}
return null;
}

   - Ignoring of documenting of potential exceptions thrown by methods

 try {

return
CarbonContextDataHolder.getDiscoveryServiceProvider().probe(null, scopes,
null,
getCarbonContextDataHolder().getTenantId());
} catch (Exception ignored) {
// If an exception occurs, simply return no endpoints. The
discovery component will
// be responsible of reporting any errors.
return new String[0];
}

What we normally tend to do is, either log, or throw. Catching the
exception just to log it doesn't make much sense. If we can gather some
additional context, create a new exception with new info and wrap the
cause, and throw it. Also, if we log, and throw, and then the client
catches it, logs, rethrows, and so on,what will happen is we will get the
stack trace with the same exception multiple times.

Please advice as to how I should go about handling this.

Thanks
- Pubudu
​
​[1]
https://github.com/wso2-dev/carbon4-kernel/blob/master/core/org.wso2.carbon.utils/src/main/java/org/wso2/carbon/context/CarbonContext.java​

-- 
*Pubudu Dissanayake*
 Software Engineer

WSO2 Inc.; http://wso2.com
lean.enterprise.middleware
Mob: + 94 775 503 304

Blog: http://geekdetected.wordpress.com/
Linkedin: *http://lk.linkedin.com/in/pubududissanayake*
http://lk.linkedin.com/in/pubududissanayake
Flickr : https://www.flickr.com/photos/pubudufx/
Twitter: https://twitter.com/GeekInAction
___
Dev mailing list
Dev@wso2.org
http://wso2.org/cgi-bin/mailman/listinfo/dev


[Dev] Web Session Clustering / Session Replication using Hazelcast

2014-09-21 Thread Pubudu Dissanayake
Hi Folks,

I'm in the process of implementing 'Tomcat session replication using Caching
https://redmine.wso2.com/issues/2816' [1]. But I've found a very
interesting approach to achieve it out of the box using Hazelcast.

Hazelcast WM allows us to cluster user http sessions automatically.
Followings are required for enabling Hazelcast Session Clustering
http://hazelcast.com/use-cases/web-session-clustering/ [2][3]

   - Target application or web server should support Java 1.5+
   - Target application or web server should support Servlet 2.4+ spec
   - Session objects that needs to be clustered have to be Serializable

Purpose of web session clustering is to replicate web session state across
a distributed application servers. Benefits, allow us to scale out  but
also avoid any single point of failure and allow us to dynamically handle
node failure within the application tier. performance of this web session
clustering is high according to VP Hazelcast
https://www.youtube.com/watch?v=8a0LrlOIXq0. Using Hazelcast session
replication can be achieved in two different ways. Observations as follows.

   - *Hazelcast Enterprise* has native web session clustering build in to
   Apache Tomcat.
   - *Opensource Hazelcast* has provide a web session clustering as an
   external filter, basically Hazelcast filter has to be placed before all of
   other filters and that will enable us to provide the web session clustering
   in opensource. In this use case it doesn't required changes to application
   itself. Example as follows,

*web.xml edit*, Make sure Hazelcast filter is placed before all the other
filters if any

filter

filter-namehazelcast-filter/filter-name

filter-classcom.hazelcast.web.WebFilter/filter-class

!–

Name of the distributed map storing

your web session objects

–

init-param

param-namemap-name/param-name

param-valuemy-sessions/param-value

/init-param

!– How is your load-balancer configured? stick-session means all
requests of a session is routed to the node where the session is first
created. This is excellent for performance. If sticky-session is set to
false, when a session is updated on a node, entry for this session on all
other nodes is invalidated. You have to know how your load-balancer is
configured before setting this parameter. Default is true. –

init-param

param-namesticky-session/param-name

param-valuetrue/param-value

/init-param

!–

Are you debugging? Default is false.

–

init-param

param-namedebug/param-name

param-valuetrue/param-value

/init-param

/filter

filter-mapping

filter-namehazelcast-filter/filter-name

url-pattern/*/url-pattern

dispatcherFORWARD/dispatcher

dispatcherINCLUDE/dispatcher

dispatcherREQUEST/dispatcher

/filter-mapping

listener

listener-classcom.hazelcast.web.SessionListener/listener-class

/listener


All http requests will go through Hazelcast Web Filter and it will put the
session objects into Hazelcast distributed map if needed. So WDYT?

Please advice as to how I should go about handling this.

[1] https://redmine.wso2.com/issues/2816
[2] http://hazelcast.com/use-cases/web-session-clustering/
[3] http://hazelcast.org/docs/latest/manual/html/httpsessionclustering.html
[4] https://www.youtube.com/watch?v=8a0LrlOIXq0
​

-- 
*Pubudu Dissanayake*
 Software Engineer

WSO2 Inc.; http://wso2.com
lean.enterprise.middleware
Mob: + 94 775 503 304

Blog: http://geekdetected.wordpress.com/
Linkedin: *http://lk.linkedin.com/in/pubududissanayake*
http://lk.linkedin.com/in/pubududissanayake
Flickr : https://www.flickr.com/photos/pubudufx/
Twitter: https://twitter.com/GeekInAction
___
Dev mailing list
Dev@wso2.org
http://wso2.org/cgi-bin/mailman/listinfo/dev


Re: [Dev] Carbon component deployment halts due to third party libraries used.

2014-09-10 Thread Pubudu Dissanayake
Hi Supun,

Please make sure that third party jar is in 'resolve' state. Be aware that
importing a package doesn't import its sub-packages and there is no
relationship among nested packages. You have to specifically mention 
Import-Package:
org.apache.commons.math3.stat.descriptive; version=[3.3.0,4.0.0) 

Please attach your pom file as well.

Thanks
-Pubudu



On Wed, Sep 10, 2014 at 1:04 PM, Supun Sethunga sup...@wso2.com wrote:

 Correction :  *CARBON_HOME/repository/components/lib folder*

 On Wed, Sep 10, 2014 at 1:00 PM, Supun Sethunga sup...@wso2.com wrote:

 Hi,

 The imported library *org.apache.commons.math3 *is being not identified.
 (gets the following output in the osgi console)

 *reference:file:../dropins/org.wso2.carbon.ml.dataset-0.1.0.jar [340]*
 *  Direct constraints which are unresolved:*
 *Missing imported package
 org.apache.commons.math3.stat.descriptive_[3.3.0,4.0.0)*


  Tried putting the relevant third-party jar file to the
 CARBON_HOME/repository/components/plugins folder, and deploy. But still
 not resolved.

 Thanks,
 Supun

 On Wed, Sep 10, 2014 at 11:49 AM, Danushka Fernando danush...@wso2.com
 wrote:

 I think best way to figure out this is to start the server with osgi
 console and find out the unsatisfied items.

 Thanks  Regards
 Danushka Fernando
 Software Engineer
 WSO2 inc. http://wso2.com/
 Mobile : +94716332729


 On Wed, Sep 10, 2014 at 10:45 AM, Supun Sethunga sup...@wso2.com
 wrote:

 Hi Sameera / Carbon team,

 Im trying to expose some Machine Learning services as a carbon
 component. The component I wrote builds successfully. But when I try to
 deploy this component (tried deploying in both BAM and ESB), the deployment
 process halts, saying the following.



 *[2014-09-10 10:32:04,915]  INFO
 {org.apache.cassandra.thrift.ThriftServer} -  Listening for thrift
 clients...[2014-09-10 10:33:05,754]  WARN
 {org.wso2.carbon.core.init.CarbonServerManager} -  Carbon initialization is
 delayed due to the following unsatisfied items:[2014-09-10 10:33:05,755]
 WARN {org.wso2.carbon.core.init.CarbonServerManager} -  Waiting for
 required OSGiAxis2Service: org.wso2.carbon.ml.dataset-4.2.0*

 Found out that the reason for this was the logger log4j (when I replace
 log4j with commons-logger, the component got deployed) and a class in a
 third party library
 org.apache.commons.math3.stat.descriptive.DescriptiveStatistics.

 Any idea what causes this issue?

 Thanks,
 Supun

 --
 *Supun Sethunga*
 Software Engineer
 WSO2, Inc.
 lean | enterprise | middleware
 Mobile : +94 716546324

 ___
 Dev mailing list
 Dev@wso2.org
 http://wso2.org/cgi-bin/mailman/listinfo/dev





 --
 *Supun Sethunga*
 Software Engineer
 WSO2, Inc.
 lean | enterprise | middleware
 Mobile : +94 716546324




 --
 *Supun Sethunga*
 Software Engineer
 WSO2, Inc.
 lean | enterprise | middleware
 Mobile : +94 716546324

 ___
 Dev mailing list
 Dev@wso2.org
 http://wso2.org/cgi-bin/mailman/listinfo/dev




-- 
*Pubudu Dissanayake*
 Software Engineer

WSO2 Inc.; http://wso2.com
lean.enterprise.middleware
Mob: + 94 775 503 304

Blog: http://geekdetected.wordpress.com/
Linkedin: *http://lk.linkedin.com/in/pubududissanayake*
http://lk.linkedin.com/in/pubududissanayake
Flickr : https://www.flickr.com/photos/pubudufx/
Twitter: https://twitter.com/GeekInAction
___
Dev mailing list
Dev@wso2.org
http://wso2.org/cgi-bin/mailman/listinfo/dev


Re: [Dev] WSO2 Committers += Rajith Vitharana

2014-08-31 Thread Pubudu Dissanayake
 mailing list
 Dev@wso2.org
 http://wso2.org/cgi-bin/mailman/listinfo/dev




 --
 *Dumidu Handakumbura*
 Software Engineer - QA
 WSO2 Inc; http://www.wso2.com/.
 Mobile;
 *+9406740 %2B9406740 *

 ___
 Dev mailing list
 Dev@wso2.org
 http://wso2.org/cgi-bin/mailman/listinfo/dev




 --
 Suhan Dharmasuriya
 Software Engineer - Test Automation

 *WSO2, Inc. *

 lean . enterprise . middleware
 Tel: +94 112 145345
 Mob: +94 779 869138
 Blog: http://suhancoold.blogspot.com/

 ___
 Dev mailing list
 Dev@wso2.org
 http://wso2.org/cgi-bin/mailman/listinfo/dev




 --
 Thanks  Best Regards,
 *Praneesha Chandrasiri*
 *Technical Writer*
 *WSO2 Inc. *
 *Mobile: +(94) 718156888 %2B%2894%29%20718156888*
 *E-mail: pranee...@wso2.com pranee...@wso2.com*


 ___
 Dev mailing list
 Dev@wso2.org
 http://wso2.org/cgi-bin/mailman/listinfo/dev




 --
 Thushara Kasun Ranawaka
 Software Engineer
 WSO2 Inc.; http://www.wso2.com
 lean.enterprise.middleware
 Mobile : *+94 (0) 773438949 %2B94%20%280%29%20773438949*
 *thusha...@wso2.com thusha...@wso2.com*

 ___
 Dev mailing list
 Dev@wso2.org
 http://wso2.org/cgi-bin/mailman/listinfo/dev




-- 
*Pubudu Dissanayake*
 Software Engineer

WSO2 Inc.; http://wso2.com
lean.enterprise.middleware
Mob: + 94 775 503 304

 Blog: http://geekdetected.wordpress.com/
 Linkedin: *http://lk.linkedin.com/in/pubududissanayake*
http://lk.linkedin.com/in/pubududissanayake
Flickr : https://www.flickr.com/photos/pubudufx/
Twitter: https://twitter.com/GeekInAction
___
Dev mailing list
Dev@wso2.org
http://wso2.org/cgi-bin/mailman/listinfo/dev


Re: [Dev] WSO2 Committers += Kavith Lokuhewage

2014-08-04 Thread Pubudu Dissanayake
 Engineer | Platform TG
 WSO2, Inc. | http://wso2.com
 lean. enterprise. middleware

 Mobile : +94718314517
 Blog : gayashan-a.blogspot.com

 ___
 Dev mailing list
 Dev@wso2.org
 http://wso2.org/cgi-bin/mailman/listinfo/dev



 ___
 Dev mailing list
 Dev@wso2.org
 http://wso2.org/cgi-bin/mailman/listinfo/dev




 --
 Tishan Dahanayakage
 Software Engineer
  WSO2, Inc.
 Mobile:+94 716481328

 Disclaimer: This communication may contain privileged or other
 confidential information and is intended exclusively for the addressee/s.
 If you are not the intended recipient/s, or believe that you may have
 received this communication in error, please reply to the sender indicating
 that fact and delete the copy you received and in addition, you should not
 print, copy, re-transmit, disseminate, or otherwise use the information
 contained in this communication. Internet communications cannot be
 guaranteed to be timely, secure, error or virus-free. The sender does not
 accept liability for any errors or omissions.

 ___
 Dev mailing list
 Dev@wso2.org
 http://wso2.org/cgi-bin/mailman/listinfo/dev




-- 
*Pubudu Dissanayake*
 Software Engineer

WSO2 Inc.; http://wso2.com
lean.enterprise.middleware
Mob: + 94 775 503 304

 Blog: http://geekdetected.wordpress.com/
 Linkedin: *http://lk.linkedin.com/in/pubududissanayake*
http://lk.linkedin.com/in/pubududissanayake
Flickr : https://www.flickr.com/photos/pubudufx/
Twitter: https://twitter.com/GeekInAction
___
Dev mailing list
Dev@wso2.org
http://wso2.org/cgi-bin/mailman/listinfo/dev


Re: [Dev] [Announce] WSO2 Committers += Jayanga Dissanayake

2014-08-04 Thread Pubudu Dissanayake
Congratulations !!


On Tue, Aug 5, 2014 at 11:18 AM, Gayashan Amarasinghe gayas...@wso2.com
wrote:

 Congratulations Jayanga!!!


 On Tue, Aug 5, 2014 at 11:14 AM, Kalpa Welivitigoda kal...@wso2.com
 wrote:

 Congratulations Jayanga !


 On Tue, Aug 5, 2014 at 11:13 AM, Malintha Adikari malin...@wso2.com
 wrote:

 Congratulations 


 On Tue, Aug 5, 2014 at 11:10 AM, Sameera Jayasoma same...@wso2.com
 wrote:

 Hello Folks,

 In recognition of his contributions to WSO2 Carbon as well as to WSO2
 in various forms, we are pleased to announce the WSO2 committership of
 Jayanga Dissanayake.

 Jayanga has contributed in many areas, including Development Governance
 Project for C5, Operation Center. We look forward to his valuable
 involvement as a WSO2 committer.

 Jayanga, welcome to WSO2 Committer's club. Please join us in
 congratulating him.

 Thanks,
 Sameera.

 --
 Sameera Jayasoma,
 Software Architect,

 WSO2, Inc. (http://wso2.com)
 email: same...@wso2.com
 blog: http://sameera.adahas.org
 twitter: https://twitter.com/sameerajayasoma
 flickr: http://www.flickr.com/photos/sameera-jayasoma/collections
 Mobile: 0094776364456

 Lean . Enterprise . Middleware


 ___
 Dev mailing list
 Dev@wso2.org
 http://wso2.org/cgi-bin/mailman/listinfo/dev




 --
 *Malintha Adikari*
  Software Engineer
 WSO2 Inc.; http://wso2.com
 lean.enterprise.middleware

 Mobile: +94 71 2312958
 Blog:http://malinthas.blogspot.com
 Page:   http://about.me/malintha

 ___
 Dev mailing list
 Dev@wso2.org
 http://wso2.org/cgi-bin/mailman/listinfo/dev




 --
 Best Regards,

 Kalpa Welivitigoda
 Software Engineer, WSO2 Inc. http://wso2.com
 Email: kal...@wso2.com
 Mobile: +94776509215

 ___
 Dev mailing list
 Dev@wso2.org
 http://wso2.org/cgi-bin/mailman/listinfo/dev




 --
 *Gayashan Amarasinghe*
 Software Engineer | Platform TG
 WSO2, Inc. | http://wso2.com
 lean. enterprise. middleware

 Mobile : +94718314517
 Blog : gayashan-a.blogspot.com

 ___
 Dev mailing list
 Dev@wso2.org
 http://wso2.org/cgi-bin/mailman/listinfo/dev




-- 
*Pubudu Dissanayake*
 Software Engineer

WSO2 Inc.; http://wso2.com
lean.enterprise.middleware
Mob: + 94 775 503 304

 Blog: http://geekdetected.wordpress.com/
 Linkedin: *http://lk.linkedin.com/in/pubududissanayake*
http://lk.linkedin.com/in/pubududissanayake
Flickr : https://www.flickr.com/photos/pubudufx/
Twitter: https://twitter.com/GeekInAction
___
Dev mailing list
Dev@wso2.org
http://wso2.org/cgi-bin/mailman/listinfo/dev


[Dev] How to upload a file using Apache HttpClient library ?

2014-08-03 Thread Pubudu Dissanayake
Hi Folks,

I wrote a Java application that will upload a file to the WSO2 API Manager
via request. The Java code uses Apache HttpClient library version 4.3.2
I was tried to invoke upload document API call [1
https://docs.wso2.com/display/AM170/Publisher+APIs#PublisherAPIs-Add/UpdateanAPIDocument]
, it seems it won't executing as I expected.
*Source *

import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.entity.mime.MultipartEntity;
import org.apache.http.entity.mime.content.ContentBody;
import org.apache.http.entity.mime.content.FileBody;
import org.apache.http.entity.mime.content.StringBody;
import org.wso2.sample.doc.authentication.AuthenticationAdminServiceClient;
import org.wso2.sample.doc.constants.APIConstantValues;
import org.wso2.sample.doc.singleton.HttpClientSingleton;

public class UploadDocument {

 public static final String ADD_DOC_API_CALL =
https://; + APIConstantValues.HOST_NAME + : +
APIConstantValues.HTTPS_PORT +
 
/publisher/site/blocks/documentation/ajax/docs.jag?action=addDocumentationmode='-'
+
 provider=subscriber1apiName=TestDocAPIversion=1.0.0docName=attachment
+
 docType=how+tosourceType=filedocUrl='-'summary=testing;
 public static final String LOGIN_API_CALL =
https://; + APIConstantValues.HOST_NAME + : +
APIConstantValues.HTTPS_PORT +
 /publisher/site/blocks/user/login/ajax/login.jag?action=loginusername= +
 APIConstantValues.USER_NAME + password= + APIConstantValues.PASSWORD;
public static final String FILE_PATH = /home/pubudu/Desktop/t;

public static void main(String[] args) {

AuthenticationAdminServiceClient
 .setSystemProperties(APIConstantValues.CLIENT_TRUST_STORE_PATH,
 APIConstantValues.KEY_STORE_TYPE,
 APIConstantValues.KEY_STORE_PASSWORD);
HttpClient httpClient = HttpClientSingleton.getHttpClientInstance();
HttpPost request = new HttpPost(LOGIN_API_CALL); HttpPost docRequest = new
HttpPost(ADD_DOC_API_CALL); HttpResponse response =
httpClient.execute(request); System.out.println(Http Status Code :=  +
response.getStatusLine()); for (Header header : response.getAllHeaders()) {
if (header.getName().equals(Set-Cookie)) { docRequest.setHeader(Cookie,
header.getValue().split(;, 2)[0]);
System.out.println(header.getValue().split(;, 2)[0]); }
System.out.println(header); } System.out.println(); File document = new
File(FILE_PATH); MultipartEntity multipartEntity = new MultipartEntity();
System.out.println(document.getAbsolutePath()); System.out.println();
multipartEntity.addPart(docLocation, new
StringBody(document.getAbsolutePath())); ContentBody fileBody = new
FileBody(document, text/plain); multipartEntity.addPart(attachment,
fileBody); docRequest.setEntity(multipartEntity); for (Header header :
docRequest.getAllHeaders()) { System.out.println(header); }
System.out.println(); System.out.println(executing request  +
docRequest.getRequestLine()); HttpResponse docResponse =
httpClient.execute(docRequest); System.out.println(Http Status Code :=  +
docResponse.getStatusLine()); for (Header header :
docResponse.getAllHeaders()) { System.out.println(header); }
System.out.println();

}
 }

*Constants *

public class APIConstantValues {

public static final String CLIENT_TRUST_STORE_PATH =

/home/pubudu/Development/Workspace/Support/Sample/DocumentAPI/src/main/resources/security/client-truststore.jks;
 public static final String HOST_NAME = localhost;
public static final String HTTPS_PORT = 9453;
 public static final String USER_NAME = admin;
public static final String PASSWORD = admin;
 public static final String KEY_STORE_PASSWORD = wso2carbon;
 public static final String KEY_STORE_TYPE = jks;
}

*Response headers*

 Http Status Code := HTTP/1.1 200 OK

JSESSIONID=C912CF9F73C6DC1C04F8BA1C877C6D4D

Set-Cookie: JSESSIONID=C912CF9F73C6DC1C04F8BA1C877C6D4D; Path=/publisher/;
Secure; HttpOnly

Content-Type: application/json;charset=UTF-8

Content-Length: 17

Date: Mon, 04 Aug 2014 05:28:54 GMT

Server: WSO2 Carbon Server


/home/pubudu/Desktop/t


Cookie: JSESSIONID=C912CF9F73C6DC1C04F8BA1C877C6D4D


executing request POST
https://localhost:9453/publisher/site/blocks/documentation/ajax/docs.jag?action=addDocumentationmode='-'provider=subscriber1apiName=TestDocAPIversion=1.0.0docName=attachmentdocType=how+tosourceType=filedocUrl='-'summary=testing
HTTP/1.1

Http Status Code := HTTP/1.1 200 OK

Content-Type: application/json;charset=UTF-8

Content-Length: 53

Date: Mon, 04 Aug 2014 05:28:54 GMT

Server: WSO2 Carbon Server



 Please advice as to how I should go about handling this.

[1]
https://docs.wso2.com/display/AM170/Publisher+APIs#PublisherAPIs-Add/UpdateanAPIDocument

-Pubudu
-- 
*Pubudu Dissanayake*
 Software Engineer
​​


WSO2 Inc.; http://wso2.com
lean.enterprise.middleware
Mob: + 94 775 503 304

Blog: http://geekdetected.wordpress.com/
 Linkedin: *http://lk.linkedin.com/in/pubududissanayake*
http://lk.linkedin.com

Re: [Dev] WSO2 Committers += Waruna Perera

2014-08-01 Thread Pubudu Dissanayake
Congratulations !!


On Fri, Aug 1, 2014 at 2:29 PM, Sohani Weerasinghe soh...@wso2.com wrote:

 Congratulations 

 Regards,
 Sohani

 Sohani Weerasinghe
 Software Engineer
 WSO2, Inc: http://wso2.com

 Mobile  : +94 716439774
 Blog :http://christinetechtips.blogspot.com/
 Twitter  : https://twitter.com/sohanichristine


 On Fri, Aug 1, 2014 at 2:26 PM, Dakshika Jayathilaka daksh...@wso2.com
 wrote:

 Congratulations Waruna !!

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


 On Fri, Aug 1, 2014 at 8:47 AM, Uvindra Dias Jayasinha uvin...@wso2.com
 wrote:

 Congratz Waruna


 On 1 August 2014 13:57, Shazni Nazeer sha...@wso2.com wrote:

 Congratz Waruna!!!

 Shazni Nazeer

 Senior Software Engineer

 Mob : +94 37331
 LinkedIn : http://lk.linkedin.com/in/shazninazeer
 Blog : http://shazninazeer.blogspot.com


 On Fri, Aug 1, 2014 at 1:45 PM, Malintha Adikari malin...@wso2.com
 wrote:

 Congratulations Waruna!!



 On Fri, Aug 1, 2014 at 1:31 PM, Asanka Dissanayake asan...@wso2.com
 wrote:

 Congratz Waruna !!


 On Fri, Aug 1, 2014 at 1:22 PM, Krishantha Samaraweera 
 krishan...@wso2.com wrote:

 Hi all,

 It's my distinct pleasure to welcome Waruna Perera as a WSO2
 Committer. He has been a valuable contributor for test automation and 
 WSO2
 product platform. In acknowledgement of his contributions, he's been 
 voted
 as a WSO2 Committer. Welcome aboard and keep up the good work!

 Thanks,
 Krishantha.

 --
 Krishantha Samaraweera
 Senior Technical Lead - Test Automation
 Mobile: +94 77 7759918
 WSO2, Inc.; http://wso2.com/
 lean . enterprise . middlewear.

 ___
 Dev mailing list
 Dev@wso2.org
 http://wso2.org/cgi-bin/mailman/listinfo/dev




 --


 *Asanka DissanayakeSoftware Engineer*
 *WSO2 Inc. - lean . enterprise . middleware |  wso2.com
 http://wso2.com/*

 *email: asan...@wso2.com ruch...@wso2.com,   blog:
 cyberwaadiya.blogspot.com
 http://cyberwaadiya.blogspot.com, asankastechtalks.wordpress.com
 http://asankastechtalks.wordpress.com  mobile: +94 71 8373821*

 ___
 Dev mailing list
 Dev@wso2.org
 http://wso2.org/cgi-bin/mailman/listinfo/dev




 --
 *Malintha Adikari*
  Software Engineer
 WSO2 Inc.; http://wso2.com
 lean.enterprise.middleware

 Mobile: +94 71 2312958
 Blog:http://malinthas.blogspot.com
 Page:   http://about.me/malintha

 ___
 Dev mailing list
 Dev@wso2.org
 http://wso2.org/cgi-bin/mailman/listinfo/dev



 ___
 Dev mailing list
 Dev@wso2.org
 http://wso2.org/cgi-bin/mailman/listinfo/dev




 --
 Regards,
 Uvindra

 Mobile: 33962

 ___
 Dev mailing list
 Dev@wso2.org
 http://wso2.org/cgi-bin/mailman/listinfo/dev



 ___
 Dev mailing list
 Dev@wso2.org
 http://wso2.org/cgi-bin/mailman/listinfo/dev



 ___
 Dev mailing list
 Dev@wso2.org
 http://wso2.org/cgi-bin/mailman/listinfo/dev




-- 
*Pubudu Dissanayake*
 Software Engineer

WSO2 Inc.; http://wso2.com
lean.enterprise.middleware
Mob: + 94 775 503 304

 Blog: http://geekdetected.wordpress.com/
 Linkedin: *http://lk.linkedin.com/in/pubududissanayake*
http://lk.linkedin.com/in/pubududissanayake
Flickr : https://www.flickr.com/photos/pubudufx/
Twitter: https://twitter.com/GeekInAction
___
Dev mailing list
Dev@wso2.org
http://wso2.org/cgi-bin/mailman/listinfo/dev


Re: [Dev] [dev] BLOCKER https://wso2.org/jira/browse/CARBON-14842

2014-07-03 Thread Pubudu Dissanayake
Will do the needful


On Thu, Jul 3, 2014 at 2:24 PM, Dushan Abeyruwan dus...@wso2.com wrote:

 Tested in recent ESB pack built seems like this has been resolved, anyway
 better recheck


 On Thu, Jul 3, 2014 at 2:04 PM, Kishanthan Thangarajah 
 kishant...@wso2.com wrote:

 @Pubudu, please have a look at this issue.


 On Fri, Jun 27, 2014 at 8:27 PM, Dushan Abeyruwan dus...@wso2.com
 wrote:

 Hi Kishanthan,
  Will you able to looking to this as this due to Carbon changes


 On Thu, Jun 26, 2014 at 5:07 PM, Dushan Abeyruwan dus...@wso2.com
 wrote:

 HI
   We hit with blocker (binding invalid ports when ESB starts windows)
 ,this should be due to carbon changers.

 https://wso2.org/jira/browse/CARBON-14842


 Cheers,
 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




 --
 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




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

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




 --
 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




-- 
*Pubudu Dissanayake*
 Software Engineer
WSO2 Inc.; http://wso2.com
lean.enterprise.middleware
Mobile: 0775503304
___
Dev mailing list
Dev@wso2.org
http://wso2.org/cgi-bin/mailman/listinfo/dev


[Architecture] [Carbon 5] Next-gen Command Line Interface for Carbon. - Meeting minutes 29/05/2104

2014-05-30 Thread Pubudu Dissanayake
Hi folks,

For Carbon 5.0, we are planning to improve our existing CLI tool. Please
find below notes from the meeting held regarding Carbon CLI on 29th May
2014.

​*Participants: *Azeez, SammeraJ, Manoj, Aruna, Jayanga and myself​
​.

Points discussed as follows ​


   - ​*What we learned from our Carbon 4.x.x CLI (Equinox OSGI console
   
http://help.eclipse.org/juno/index.jsp?topic=%2Forg.eclipse.platform.doc.isv%2Fguide%2Fconsole_shell.htm)*
   - Carbon 4.2.0 OSGI Console is based on equinox console. Therefore
  Eclipse equinox console has following dependencies
  - org.eclipse.equinox.console
 - org.apache.felix.gogo.command
 - org.apache.felix.gogo.runtime
 - org.apache.felix.gogo.shell
 - Due to apache felix dependency, equinox will inherit some of the
  gogo commands ( you will be able to see those under scope:gogo)
and custom
  commands were written using equinox *CommandProvider*
  
http://help.eclipse.org/juno/index.jsp?topic=%2Forg.eclipse.platform.doc.isv%2Fguide%2Fconsole_shell.htm
  interface.


   - *What we lack *?
   - UX is not straightforward and it has to be improved
  - ​NO tab completion nor history support
  - ​No in-line editing ​

  - NO UNIX command support
  - No extendability of the console nor custom commands


   - ​*Next-gen Carbon 5 CLI *
   - Carbon 5 runs on top of Eclipse equinox OSGI runtime and equinox
  console as command line interface. But it is the previous (
Carbon 4.2.0 )
  CLI which is needed an upgrade.Our main concern is to upgrade it
to provide
  more flexibility and rich user experience to end users and developers.
   Following requirements are considered as must to have
  - *Requirements*
- ​Tab Completions
- History support
- ​In-line editing​

- Descriptive help
- Extendability of Shell
- ​Solutions
  - ​Annotation based commands, arguments and options support ( e.g.
 introducing  @Command ​@Argument and @Option ) - On going PoC
 - JLine https://github.com/jline/jline2/wiki/JLine-2.x-Wiki 2.x
 based CLI approach - PoC done.
 - Milestone one will be based on two part
 - Extendable Framework
- Basic OSGI Commands ​and custom command support


​Please let us know about your thoughts on our new development, WDYT ? ​


​Thanks
- Pubudu Dissanayake ​

-- 
*Pubudu Dissanayake*
 Software Engineer
WSO2 Inc.; http://wso2.com
lean.enterprise.middleware
Mobile: 0775503304
___
Architecture mailing list
Architecture@wso2.org
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture


Re: [Dev] WSO2 Committers += Lali Devamanthri

2014-05-29 Thread Pubudu Dissanayake
Congratulations !


On Fri, May 30, 2014 at 11:16 AM, Aruna Karunarathna ar...@wso2.com wrote:

 Congratulations..!!!


 On Fri, May 30, 2014 at 11:10 AM, Sohani Weerasinghe soh...@wso2.com
 wrote:

 Congratulations 

 Sohani Weerasinghe
 Software Engineer
 WSO2, Inc: http://wso2.com

 Mobile  : +94 716439774
 Blog :http://christinetechtips.blogspot.com/
 Twitter  : https://twitter.com/sohanichristine


 On Fri, May 30, 2014 at 11:08 AM, Jasintha Dasanayake jasin...@wso2.com
 wrote:

 Hi All,

 It's my distinct pleasure to welcome Lali as a WSO2 Committer.

 Lali has  been a valuable contributor for WSO2 Developer Studio since he
 joined WSO2. In recognition of his contributions to WSO2, he has been voted
 as a WSO2 Committer.

 Lali, Congratulations and Keep up the good work!

 Thanks and Regards,
 /Jasintha

 --

 *Jasintha Dasanayake *

 *Senior Software EngineerWSO2 Inc. | http://wso2.com http://wso2.com/
 lean . enterprise . middleware*


 *mobile :- 0711368118 0711368118 *

 ___
 Dev mailing list
 Dev@wso2.org
 http://wso2.org/cgi-bin/mailman/listinfo/dev



 ___
 Dev mailing list
 Dev@wso2.org
 http://wso2.org/cgi-bin/mailman/listinfo/dev




 --

 * Aruna Sujith Karunarathna* | Software Engineer
 WSO2, Inc | lean. enterprise. middleware.
 #20, Palm Grove, Colombo 03, Sri Lanka
 Mobile: +94 71 9040362 | Work: +94 112145345
 Email: ar...@wso2.com | Web: www.wso2.com


 ___
 Dev mailing list
 Dev@wso2.org
 http://wso2.org/cgi-bin/mailman/listinfo/dev




-- 
*Pubudu Dissanayake*
 Software Engineer
WSO2 Inc.; http://wso2.com
lean.enterprise.middleware
Mobile: 0775503304
___
Dev mailing list
Dev@wso2.org
http://wso2.org/cgi-bin/mailman/listinfo/dev


Re: [Dev] Building a Carbon Component from an existing Axis2 service

2014-05-06 Thread Pubudu Dissanayake
Hi,

Follow these articles
[1]
http://wso2.com/library/tutorials/2014/03/understanding-the-carbon-component-architecture/
[2]
http://wso2.com/library/tutorials/2014/03/how-to-write-a-wso2-carbon-component/
[3]
http://wso2.com/library/tutorials/2014/03/how-to-create-a-feature-from-wso2-carbon-component/

Thanks,
Pubudu


On Tue, May 6, 2014 at 4:28 PM, Amalka Subasinghe ama...@wso2.com wrote:

 This will help
 https://docs.wso2.org/display/Carbon420/C-App+Deployment+Process



 On Tue, May 6, 2014 at 4:10 PM, Supun Sethunga sup...@wso2.com wrote:

  Hi,

 Is there any way of creating a carbon Component using an existing Axis2
 service (which includes both client and server classes) as a library? If
 so, is there any tutorial/article that I can refer to?

 The only method available for reference is [1], but it creates the carbon
 component from the scratch.

 Reference:
 [1]
 http://wso2.com/library/tutorials/2014/03/how-to-write-a-wso2-carbon-component/

 Thanks,

 --
 *Supun Sethunga*
 Software Engineer
 WSO2, Inc.
 lean | enterprise | middleware
 Mobile : +94 716546324

 ___
 Dev mailing list
 Dev@wso2.org
 http://wso2.org/cgi-bin/mailman/listinfo/dev




 --
 Amalka Subasinghe

 Senior Software Engineer, WSO2 Inc.
 Mobile: +94 77 9401267

 ___
 Dev mailing list
 Dev@wso2.org
 http://wso2.org/cgi-bin/mailman/listinfo/dev




-- 
*Pubudu Dissanayake*
 Software Engineer
WSO2 Inc.; http://wso2.com
lean.enterprise.middleware
Mobile: 0775503304
___
Dev mailing list
Dev@wso2.org
http://wso2.org/cgi-bin/mailman/listinfo/dev


Re: [Architecture] Future of Carbon UI Framework - Feedbacks needed !

2014-05-04 Thread Pubudu Dissanayake
Please refer my in-line comment


On Sun, Apr 27, 2014 at 7:37 AM, Joseph Fonseka jos...@wso2.com wrote:

 Hi

 Didn't find tenant management on the list has it been handled separately ?


​It is listed under WSO2 IS configure related UI components. ​



 +1 for moving the UI out of the Kernal but what are the benefits we are
 targeting from this ?





 Thanks
 Jo




-- 
*Pubudu Dissanayake*
 Software Engineer
WSO2 Inc.; http://wso2.com
lean.enterprise.middleware
Mobile: 0775503304
___
Architecture mailing list
Architecture@wso2.org
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture


Re: [Architecture] EMM - UI Design

2014-05-04 Thread Pubudu Dissanayake
Please refer my in-line comment.


On Sun, May 4, 2014 at 9:29 AM, Chanaka Jayasena chan...@wso2.com wrote:

 I agree that we need to unify the look and feel of these UIs. When working
 with WSO2 Cloud the importance of unified look and feel is more visible.
 Considering the top and left menus usability wise both have pros and cons.
 Generally it's good to have a left side menu when there are growing number
 of options for it. In the Cloud UI it's better to have the menu at the top,
 since we have to inject the same menu to the App Factory UI and API
 Store/Publisher UIs.

 @Dilshan, API Store, API Publisher, and App Factory is done with an older
 version of Caramel. This is why there is a significant difference in the
 coding pattern. I don't think Caramel existed when the API Store/Manger
 applications were started developing. The latest version of Caremel we use
 for Stratos Web Console is way better than the older versions. It pushes
 front end developers to write clean code without messing with complex
 jQuery Dom manipulation to present data to the UI. We have handlebars.js
 with Caramel. Even though handebars.js ( Template Engine)  and AngularJS (
 HTML Compiler and data binder )  is completely different things, using them
 together doesn't make sense IMO. Chthura please do a research and find out
 that his need for AngularJS is filled by handebars.js or not.

 To have a consistent look and feel in Carbon products, the way Carbon UI
 initially developed helped. If we can have a similar patten where there is
 a core component with default styles, layout and let each product override
 these styles with there own, it will drive every product to have a common
 look and feel.

 ​Indeed, ​Having unified UI framework is a must and let products to build
their own UI is a bad idea. We should come up with a proper structure (
previous carbon releases has this component.xml based approach ) therefore
we can build on top of it (hence can re-use it for future carbon UI
framework) . IMO consistency has to be there.


 thanks,
 Chanaka

 --
*Pubudu Dissanayake*
 Software Engineer
WSO2 Inc.; http://wso2.com
lean.enterprise.middleware
Mobile: 0775503304
___
Architecture mailing list
Architecture@wso2.org
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture


Re: [Architecture] How we should improve our next gen Carbon UI framework - thoughts/opinions needed

2014-04-28 Thread Pubudu Dissanayake
On Mon, Apr 28, 2014 at 2:30 PM, Pubudu Dissanayake pubu...@wso2.comwrote:

 Hi Folks,

 The idea behind this email is to gather requirements to improve our next
 gen carbon UI framework. Please let us know what we lack in our current
 Carbon 4.x.x versions and What you guys prefer to have in new C5 UI
 framework.

 Please let us know your thoughts/opinions,




 Thank you,
 Pubudu.
 --
 *Pubudu Dissanayake*
  Software Engineer
 WSO2 Inc.; http://wso2.com
 lean.enterprise.middleware
 Mobile: 0775503304




-- 
*Pubudu Dissanayake*
 Software Engineer
WSO2 Inc.; http://wso2.com
lean.enterprise.middleware
Mobile: 0775503304
___
Architecture mailing list
Architecture@wso2.org
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture


Re: [Architecture] How we should improve our next gen Carbon UI framework - thoughts/opinions needed

2014-04-28 Thread Pubudu Dissanayake
Please refer my in-line comment


On Mon, Apr 28, 2014 at 4:50 PM, Senaka Fernando sen...@wso2.com wrote:

 Hi Pubudu,

 How about having a brainstorming meeting to get some initial ideas and
 then follow it up on the mailing list? By doing so we can avoid having a
 lengthy discussion thread.


​Yes It is a good idea and feel free to post your thoughts/opinions  here
so we can address those in the brainstorming session. ​


 Thanks,
 Senaka.



-- 
*Pubudu Dissanayake*
 Software Engineer
WSO2 Inc.; http://wso2.com
lean.enterprise.middleware
Mobile: 0775503304
___
Architecture mailing list
Architecture@wso2.org
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture


Re: [Architecture] Future of Carbon UI Framework - Feedbacks needed !

2014-04-27 Thread Pubudu Dissanayake
Please see my In-line comment.


On Sun, Apr 27, 2014 at 7:23 AM, Chan duli...@wso2.com wrote:

 +1 for building a light weight modern UI framework on top of carbon.
 Actually for EMM 1.1.0 release we are in the process of using jaggery-fiber
 [1] which aims to build a component sharing framework. I was thinking of
 building a feature's layer on top of the jaggery-fiber where we have the
 ability to dynamically drop a UI feature bundle. One of the flaws in
 building a unified framework is the user experience element. One of the
 things Carbon UI has got right is the uniformed UI.

 [1] - https://github.com/splinter/jaggery-fiber



​Excellent, Yes this address most of our concerns. Thanks for the resource
​I'll look in to this and get back to you.


-- 
*Pubudu Dissanayake*
 Software Engineer
WSO2 Inc.; http://wso2.com
lean.enterprise.middleware
Mobile: 0775503304
___
Architecture mailing list
Architecture@wso2.org
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture


Re: [Architecture] Future of Carbon UI Framework - Feedbacks needed !

2014-04-25 Thread Pubudu Dissanayake
 copied to Architecture mailing list


On Fri, Apr 25, 2014 at 6:08 PM, Samisa Abeysinghe sam...@wso2.com wrote:

 Why is this thread private?

  Thanks,
 Samisa...


 Samisa Abeysinghe

 Vice President Delivery

 WSO2 Inc.
 http://wso2.com



 On Fri, Apr 25, 2014 at 5:30 PM, Pubudu Dissanayake pubu...@wso2.comwrote:

 Hi folks,

 The idea behind this email is to describe Pros/Cons of Carbon UI
 framework if we decide not to make this part of kernel. based on the
 previous discussion regarding C5 UI framework, Internal research has been
 conducted regarding usage of management console UI of each product.

 Mgt Console UI usage -
 https://docs.google.com/a/wso2.com/document/d/1o73UcdmiGgTURnpasVuJ6ekslQGlttXdywKaJYh-Dz0/edit

 Following Pros/Cons were extracted according to the research results.
 Here are some facts ,

 Pros

- Light weight kernel ( without  UI framework )

 Cons

- At the moment ( Carbon 4.2.0 ) following functionalities shipped
with admin UI
   - Deploying an artifact ( Development stuffs are removed from
   admin UI)
   - Seeing the statistics ( Service stats and system stats)
   - User, role , permission management
   - Registry UI related components
   - WSO2 MB is heavily coupled with admin UI


 ​It would be better if we can discuss these things and finalize decision
 whether we need the management console (and hence framework), WDYT ? ​


 --
 *Pubudu Dissanayake*
  Software Engineer
 WSO2 Inc.; http://wso2.com
 lean.enterprise.middleware
 Mobile: 0775503304





-- 
*Pubudu Dissanayake*
 Software Engineer
WSO2 Inc.; http://wso2.com
lean.enterprise.middleware
Mobile: 0775503304
___
Architecture mailing list
Architecture@wso2.org
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture


Re: [Dev] WSO2 Committers += Amal Gunatilake

2014-04-20 Thread Pubudu Dissanayake
Congratulation Amal !



On Mon, Apr 21, 2014 at 10:31 AM, Chathurika Mahaarachchi 
chathur...@wso2.com wrote:

 Congratulations Amal !


 On Mon, Apr 21, 2014 at 10:26 AM, Aruna Karunarathna ar...@wso2.comwrote:

 Congratulations Amal...!!!


 On Mon, Apr 21, 2014 at 10:20 AM, Pamod Sylvester pa...@wso2.com wrote:

 Congratulations Amal !!


 On Mon, Apr 21, 2014 at 10:00 AM, Harshan Liyanage hars...@wso2.comwrote:

 Congradz Amal!

 Best Regards,

 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 Sat, Apr 19, 2014 at 10:43 PM, Gayan Yalpathwala gay...@wso2.comwrote:

 Congratulations on your achievement Amal !!


 On Sat, Apr 19, 2014 at 10:08 PM, Manoj Kumara ma...@wso2.com wrote:

 Congratulation Amal !!!


 *Manoj Kumara*
 Software Engineer
 WSO2 Inc. http://wso2.com/
 *lean.enterprise.middleware*
 Mobile: +94713448188


 On Sat, Apr 19, 2014 at 8:27 AM, Nandika Jayawardana 
 nand...@wso2.com wrote:

 Hi All,

 It's my  pleasure to announce Amal Gunatilake as a WSO2 Committer.
 Amal has  been a valuable contributor for WSO2 BPS product and in
 recognition of his contributions to WSO2, he has been voted as a WSO2
 Committer.

 Amal, Congratulations and Keep up the good work!

 Thanks and Regards,
 Nandika

 --
 Nandika Jayawardana
 Senior Technical Lead
 WSO2 Inc ; http://wso2.com
 lean.enterprise.middleware

 ___
 Dev mailing list
 Dev@wso2.org
 http://wso2.org/cgi-bin/mailman/listinfo/dev



 ___
 Dev mailing list
 Dev@wso2.org
 http://wso2.org/cgi-bin/mailman/listinfo/dev




 --
 *Gayan Kaushalya Yalpathwala*
  Software Engineer

 WSO2 Inc.; http://wso2.com
 lean.enterprise.middleware

 mobile: +94 71 8682704 http://asia14.wso2con.com/

  http://asia14.wso2con.com/

 ___
 Dev mailing list
 Dev@wso2.org
 http://wso2.org/cgi-bin/mailman/listinfo/dev



 ___
 Dev mailing list
 Dev@wso2.org
 http://wso2.org/cgi-bin/mailman/listinfo/dev




 --
 *Pamod Sylvester *
  * Software Engineer *
 Integration Technologies Team, WSO2 Inc.; http://wso2.com
 email: pa...@wso2.com cell: +94 77 7779495

 ___
 Dev mailing list
 Dev@wso2.org
 http://wso2.org/cgi-bin/mailman/listinfo/dev




 --

 * Aruna Sujith Karunarathna* | Software Engineer
 WSO2, Inc | lean. enterprise. middleware.
 #20, Palm Grove, Colombo 03, Sri Lanka
 Mobile: +94 71 9040362 | Work: +94 112145345
 Email: ar...@wso2.com | Web: www.wso2.com


 ___
 Dev mailing list
 Dev@wso2.org
 http://wso2.org/cgi-bin/mailman/listinfo/dev




 --
 *Chathurika Mahaarachchi*
 Software Engineer, QA.
 WSO2 Inc.: http://wso2.com/
 lean.enterprise.middleware
 Mobile: +94718223950

 ___
 Dev mailing list
 Dev@wso2.org
 http://wso2.org/cgi-bin/mailman/listinfo/dev




-- 
*Pubudu Dissanayake*
 Software Engineer
WSO2 Inc.; http://wso2.com
lean.enterprise.middleware
Mobile: 0775503304
___
Dev mailing list
Dev@wso2.org
http://wso2.org/cgi-bin/mailman/listinfo/dev


Re: [jira] [Updated] (PHOTARK-77) Developing a Photark metadata model to manage photos.

2012-04-01 Thread Pubudu Dissanayake
Hi Suho

I have few clarifications ,Is this idea (updated version) similar to the
https://issues.apache.org/jira/browse/PHOTARK-76 according to the suggested
proposal your feature will be included that means { E.g show all pictures
taken within Jan/2010 to Dec/2010, show all pictures where Mr.Jone is
present }. it can fetch data according to the time scale (please correct me
if i'm wrong)  Are we going to implement the same feature on the web
application as well ? feature is much more convenient if we can implement
it on the web server as well because it will produce more social
interaction to the users :)




On Mon, Apr 2, 2012 at 2:30 AM, Sriskandarajah Suhothayan (Updated) (JIRA) 
j...@apache.org wrote:


 [
 https://issues.apache.org/jira/browse/PHOTARK-77?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel]

 Sriskandarajah Suhothayan updated PHOTARK-77:
 -

Description:
 As Photark means Photo Archive, it needs a proper way to manage photos by
 structurally maintaining the meta information of the photos (in xml or
 Json).
 This can be achieved by storing various meta informations such as
 description of the photo (in different locals), info on when and where the
 photo was taken, people in the photo, tags, etc.
 This meta info should not only be collected per photos but also in per
 album basis where by containing information regarding albums
 With all these information we can identify various correlations among
 photos and that can be used to develop more attractive and useful
 applications.

 In this project the expectation of the student is to build a meta-data
 model, a proper UI to manually enter the informations that cannot be
 automatically gathered by the phone,
 and implement a gallery UI to show different pictures according to user
 selections.
 E.g show all pictures taken within Jan/2010 to Dec/2010, show all pictures
 where Mr.Jone is present.

  was:
 As Photark means Photo Archive, it needs a proper way to manage photos by
 structurally maintaining the meta information of the photos,
 such as when and where the photo was taken, people in the photo and the
 x,y coordination of there positions, tags, description (in different
 locals), etc.
 This meta info should not only be collected per photos but also for album
 collections, and correlations among photos.
 I believe by building a metadata model that capture all these information,
 we will be able to develop attractive applications.

  Labels: android gsoc2012  (was: gsoc2012)

  Developing a Photark metadata model to manage photos.
  --
 
  Key: PHOTARK-77
  URL: https://issues.apache.org/jira/browse/PHOTARK-77
  Project: PhotArk
   Issue Type: New Feature
 Reporter: Sriskandarajah Suhothayan
   Labels: android, gsoc2012
 
  As Photark means Photo Archive, it needs a proper way to manage photos
 by structurally maintaining the meta information of the photos (in xml or
 Json).
  This can be achieved by storing various meta informations such as
 description of the photo (in different locals), info on when and where the
 photo was taken, people in the photo, tags, etc.
  This meta info should not only be collected per photos but also in per
 album basis where by containing information regarding albums
  With all these information we can identify various correlations among
 photos and that can be used to develop more attractive and useful
 applications.
  In this project the expectation of the student is to build a meta-data
 model, a proper UI to manually enter the informations that cannot be
 automatically gathered by the phone,
  and implement a gallery UI to show different pictures according to user
 selections.
  E.g show all pictures taken within Jan/2010 to Dec/2010, show all
 pictures where Mr.Jone is present.

 --
 This message is automatically generated by JIRA.
 If you think it was sent incorrectly, please contact your JIRA
 administrators:
 https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
 For more information on JIRA, see: http://www.atlassian.com/software/jira





-- 
Best Regards,
Pubudu Dissanayake,

LinkedIn -  http://www.linkedin.com/in/pubududissanayake
Photostream -http://www.flickr.com/photos/pubudufx/
Blog -  http://pubudu08.blogspot.com/
Twitter -  https://twitter.com/#!/GeekInAction

 ~~~Whatever past has gone ,Best is always yet to come~~~


Re: [jira] [Created] (PHOTARK-77) Developing a Photark metadata model to manage photos.

2012-03-26 Thread Pubudu Dissanayake
Hi Suho
Seems like this an interesting idea.Building a meta data model for the
existing photo library is a very important and more flexible as well. I
have few questions regarding about your suggestions
1. As i understood you are referring to the  EXIF information of the photo
is that correct ??
2. following data tags can be retrieve form a single image itself
* Embed image information include Exif tags, Tiff tags and Gps
tags.
3. x,y coordination of there positions what did u mean by that ?? (GPS
Tags) ??

if u can collateralize more on this idea that would be really helpful :)

On Sun, Mar 25, 2012 at 11:53 PM, Sriskandarajah Suhothayan (Created)
(JIRA) j...@apache.org wrote:

 Developing a Photark metadata model to manage photos.
 --

 Key: PHOTARK-77
 URL: https://issues.apache.org/jira/browse/PHOTARK-77
 Project: PhotArk
  Issue Type: New Feature
Reporter: Sriskandarajah Suhothayan


 As Photark means Photo Archive, it needs a proper way to manage photos by
 structurally maintaining the meta information of the photos,
 such as when and where the photo was taken, people in the photo and the
 x,y coordination of there positions, tags, description (in different
 locals), etc.
 This meta info should not only be collected per photos but also for album
 collections, and correlations among photos.
 I believe by building a metadata model that capture all these information,
 we will be able to develop attractive applications.

 --
 This message is automatically generated by JIRA.
 If you think it was sent incorrectly, please contact your JIRA
 administrators:
 https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
 For more information on JIRA, see: http://www.atlassian.com/software/jira





-- 
Best Regards,
Pubudu Dissanayake,

LinkedIn -  http://www.linkedin.com/in/pubududissanayake
Photostream -http://www.flickr.com/photos/pubudufx/
Twitter -  https://twitter.com/#!/GeekInAction

 ~~~Whatever past has gone ,Best is always yet to come~~~


Re: GSOC 2012 project ideas

2012-03-25 Thread Pubudu Dissanayake
Hi  Suho

Its being a great pleasure to be a part of the Open Source project . As a 3rd
year undergraduate student i have gain lot of experiences in java related
technologies. I will take that as an advantage for development on Apache
Photark Project and contribute my self as a GSoC 2012 student to take this
project to the next level.

Looks like an interesting idea to start with :). I'm very interested on
development using PhoneGap if u can please collaborate more on the hybrid
development that would be really appreciate and i'm looking forward to GSoC
2012 as well :)

I also have an idea of designing the UI mock-ups for the hybrid
application because still mobile development not yet in progress we
should have to have a clear scope about the development.I'm looking
forward to go with this idea as my GSoC project and hoping to
contribute more in advance :)



On Sun, Mar 25, 2012 at 11:26 PM, Suhothayan Sriskandarajah 
suhotha...@gmail.com wrote:

 I found one idea for Photark by Luciano on
 Hybrid HTML5 Mobile Application using Apache Cordova (a.k.a PhoneGap)



 I also have an idea of developing a metadata model for photos.
 As Photark means Photo Archive it needs a proper way to manage photos by
 structurally maintaining the meta information of the photos, such as when
 and where the photo was taken, people in the photo and the x,y coordination
 of there positions, tags, description (in different locals), etc.
 This meta info should not only be collected per photos but also for album
 collections and correlations among photos
 I believe by building a metadata model that capture all these information
 we will be able to develop attractive applications

 Regards,
 Suho



 On 10 January 2012 01:26, Luciano Resende luckbr1...@gmail.com wrote:

  Hopefully you guys had a nice holidays and are ready to get hacking on
  PhotArk again.
 
  It would be good if we could start discussing what are some projects
  we could start doing for GSoC 2012, as students are already doing
  their research and looking around.
 
  Please respond to this thread with projects ideas
 
  Thanks
 
  --
  Luciano Resende
  http://people.apache.org/~lresende
  http://twitter.com/lresende1975
  http://lresende.blogspot.com/
 




-- 
Best Regards,
Pubudu Dissanayake,

LinkedIn -  http://www.linkedin.com/in/pubududissanayake
Photostream -http://www.flickr.com/photos/pubudufx/
Twitter -  https://twitter.com/#!/GeekInAction

 ~~~Whatever past has gone ,Best is always yet to come~~~


[no subject]

2012-03-25 Thread Pubudu Dissanayake

___
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice


Re: GSoC 2012

2012-03-04 Thread Pubudu Dissanayake
Hi Luciano

Its being a great pleasure to be a part of the Open Source project . As a
3rd year undergraduate student i have gain lot of experiences in java
related technologies. I will take that as an advantage for development on
Apache Photark Project and contribute my self as a GSoC 2012 student to
take this project to the next level.

I'm very interested on how you're all going to change the project path (+1
) and very interested on development using PhoneGap ,any updates ?
Last i checked mobile trunk was empty , any progress on REST branch ?

I'm very enthusiastic and happy continue contribute to the project in
advance.


On Mon, Mar 5, 2012 at 11:14 AM, Luciano Resende luckbr1...@gmail.comwrote:

 It's that time again for us to build a list of project ideas and start
 attracting students for GSoC. If you have specific ideas, please go
 ahead and create a JIRA with the appropriate tag.


 -- Forwarded message --
 From: Ulrich Stärk u...@apache.org
 Date: Sun, Mar 4, 2012 at 9:01 AM
 Subject: Google Summer of Code 2012 upcoming
 To: p...@apache.org
 Cc: d...@community.apache.org


 Hello PMCs,

 Google Summer of Code is the ideal opportunity for you to attract new
 contributors to your projects.

 If you want to participate with your project you NOW need to

 - understand what it means to be a mentor [1]
 - propose your project ideas. Just label your issues with gsoc2012 in JIRA
 and
  they will show up at [2]. See also [1].
 - subscribe to code-awa...@apache.org (restricted to potential
 mentors, meant to be used
  as a private list - general discussions on the public
  d...@community.apache.org list as much as possible please)

 The ASF will apply as a participating organization with GSoC, your project
 doesn't need to do that. See [3] for more information. Note that the ASF
 isn't
 accepted yet, nevertheless you *really* should start recording your ideas
 now.

 Last year we had 38 students completing GSoC successfully, some of which
 are
 now active contributors to the projects they worked on. Let's make this a
 success again this year!

 On behalf of the GSoC 2012 admins,

 Uli

 [1] http://community.apache.org/guide-to-being-a-mentor.html
 [2] http://s.apache.org/gsoc2012tasks
 [3] http://community.apache.org/gsoc.html


 --
 Luciano Resende
 http://people.apache.org/~lresende
 http://twitter.com/lresende1975
 http://lresende.blogspot.com/



 --
 Luciano Resende
 http://people.apache.org/~lresende
 http://twitter.com/lresende1975
 http://lresende.blogspot.com/




-- 
Best Regards,
Pubudu Dissanayake,
LinkedIn -  http://www.linkedin.com/in/pubududissanayake