[kune-commits] r1271 - in trunk: . script src/main/java src/main/java/cc/kune/chat/client src/main/java/cc/kune/client src/main/java/cc/kune/core/client src/main/java/cc/kune/core/client/resources src/main/java/cc/kune/core/client/rpcservices src/main/java/cc/kune/core/client/sitebar src/main/java/cc/kune/core/client/sn src/main/java/cc/kune/core/client/sn/actions src/main/java/cc/kune/core/client/sn/actions/registry src/main/java/cc/kune/core/client/state src/main/java/cc/kune/core/public src/main/java/cc/kune/core/shared/domain src/main/java/cc/kune/core/shared/dto src/main/java/cc/kune/domain src/main/java/cc/kune/domain/finders src/main/java/cc/kune/domain/utils src/main/java/com src/main/java/com/example src/main/java/com/example/client src/main/java/com/example/server src/main/java/org/ourproject/kune/platf/client/services src/main/java/org/ourproject/kune/platf/server/init src/main/java/org/ourproject/kune/platf/server/manager src/main/java/org/ourproject/kune/platf/server/manager/impl src/main/java/org/ourproject/kune/platf/server/rpc src/main/java/org/ourproject/kune/workspace/client/oldsn src/test/java/cc/kune/core/client/state src/test/java/org/ourproject/kune/platf/integration/site src/test/java/org/ourproject/kune/platf/server/manager src/test/java/org/ourproject/kune/platf/server/mapper

Vicente J. Ruiz Jurado vjrj_ at ourproject.org
Sat Mar 12 23:13:28 CET 2011


Author: vjrj_
Date: 2011-03-12 23:13:28 +0100 (Sat, 12 Mar 2011)
New Revision: 1271

Added:
   trunk/script/kune server debug.launch
   trunk/script/kune server via mvn with debug.launch
   trunk/src/main/java/cc/kune/core/client/sitebar/SitebarActions.java
   trunk/src/main/java/cc/kune/core/client/state/ContentCache.java
   trunk/src/main/java/cc/kune/core/client/state/ContentCacheDefault.java
   trunk/src/main/java/cc/kune/core/shared/domain/UserSNetVisibility.java
   trunk/src/main/java/com/
   trunk/src/main/java/com/example/
   trunk/src/main/java/com/example/client/
   trunk/src/main/java/com/example/client/HelloWordGinModule.java
   trunk/src/main/java/com/example/client/HelloWorldActions.java
   trunk/src/main/java/com/example/client/HelloWorldPanel.java
   trunk/src/main/java/com/example/client/HelloWorldPanel.ui.xml
   trunk/src/main/java/com/example/client/HelloWorldPresenter.java
   trunk/src/main/java/com/example/server/
   trunk/src/main/java/com/example/server/CustomGuiceFilter.java
Removed:
   trunk/src/main/java/cc/kune/core/client/state/ContentProvider.java
   trunk/src/main/java/cc/kune/core/client/state/ContentProviderDefault.java
   trunk/src/main/java/cc/kune/core/shared/domain/UserBuddiesVisibility.java
Modified:
   trunk/.classpath
   trunk/INSTALL
   trunk/TODO
   trunk/TROUBLESHOOT
   trunk/pom.xml
   trunk/script/server.sh
   trunk/src/main/java/cc/kune/chat/client/ChatClientDefault.java
   trunk/src/main/java/cc/kune/client/KuneGinjector.java
   trunk/src/main/java/cc/kune/core/client/CoreGinModule.java
   trunk/src/main/java/cc/kune/core/client/resources/CoreMessages.java
   trunk/src/main/java/cc/kune/core/client/rpcservices/UserService.java
   trunk/src/main/java/cc/kune/core/client/rpcservices/UserServiceAsync.java
   trunk/src/main/java/cc/kune/core/client/sitebar/SitebarActionsPresenter.java
   trunk/src/main/java/cc/kune/core/client/sn/UserSNPanel.java
   trunk/src/main/java/cc/kune/core/client/sn/actions/GotoGroupAction.java
   trunk/src/main/java/cc/kune/core/client/sn/actions/UserSNVisibilityAction.java
   trunk/src/main/java/cc/kune/core/client/sn/actions/UserSNVisibilityMenuItem.java
   trunk/src/main/java/cc/kune/core/client/sn/actions/registry/GroupMembersConfActions.java
   trunk/src/main/java/cc/kune/core/client/sn/actions/registry/GroupSNAdminsMenuItemsRegistry.java
   trunk/src/main/java/cc/kune/core/client/sn/actions/registry/UserSNConfActions.java
   trunk/src/main/java/cc/kune/core/client/sn/actions/registry/UserSNMenuItemsRegistry.java
   trunk/src/main/java/cc/kune/core/client/state/StateManagerDefault.java
   trunk/src/main/java/cc/kune/core/public/ws.css
   trunk/src/main/java/cc/kune/core/shared/dto/SocialNetworkDataDTO.java
   trunk/src/main/java/cc/kune/domain/GroupList.java
   trunk/src/main/java/cc/kune/domain/SocialNetwork.java
   trunk/src/main/java/cc/kune/domain/User.java
   trunk/src/main/java/cc/kune/domain/finders/UserFinder.java
   trunk/src/main/java/cc/kune/domain/utils/SocialNetworkData.java
   trunk/src/main/java/org/ourproject/kune/platf/client/services/CoreModule.java
   trunk/src/main/java/org/ourproject/kune/platf/server/init/DatabaseInitializer.java
   trunk/src/main/java/org/ourproject/kune/platf/server/manager/UserManager.java
   trunk/src/main/java/org/ourproject/kune/platf/server/manager/impl/SocialNetworkManagerDefault.java
   trunk/src/main/java/org/ourproject/kune/platf/server/manager/impl/UserManagerDefault.java
   trunk/src/main/java/org/ourproject/kune/platf/server/rpc/SiteRPC.java
   trunk/src/main/java/org/ourproject/kune/platf/server/rpc/UserRPC.java
   trunk/src/main/java/org/ourproject/kune/workspace/client/oldsn/BuddiesSummaryPresenter.java
   trunk/src/test/java/cc/kune/core/client/state/StateManagerTest.java
   trunk/src/test/java/org/ourproject/kune/platf/integration/site/UserServiceTest.java
   trunk/src/test/java/org/ourproject/kune/platf/server/manager/UserManagerTest.java
   trunk/src/test/java/org/ourproject/kune/platf/server/mapper/MapperTest.java
Log:
NEW - # 25: Social Net refactorization 
http://kune.ourproject.org/issues/ticket/25

Modified: trunk/.classpath
===================================================================
--- trunk/.classpath	2011-03-10 16:58:36 UTC (rev 1270)
+++ trunk/.classpath	2011-03-12 22:13:28 UTC (rev 1271)
@@ -1,112 +1,122 @@
+<?xml version="1.0" encoding="UTF-8"?>
 <classpath>
-  <classpathentry kind="src" path="src/test/java" output="target/test-classes" including="**/*.java"/>
-  <classpathentry kind="src" path="src/main/java" including="**/*.java"/>
-  <classpathentry kind="src" path="src/main/resources" excluding="**/*.java"/>
-  <classpathentry kind="output" path="target/kune-0.0.7/WEB-INF/classes"/>
-  <classpathentry kind="var" path="M2_REPO/javax/inject/javax.inject/1/javax.inject-1.jar" sourcepath="M2_REPO/javax/inject/javax.inject/1/javax.inject-1-sources.jar"/>
-  <classpathentry kind="var" path="M2_REPO/javax/transaction/jta/1.1/jta-1.1.jar" sourcepath="M2_REPO/javax/transaction/jta/1.1/jta-1.1-sources.jar"/>
-  <classpathentry kind="var" path="M2_REPO/javax/persistence/persistence-api/1.0/persistence-api-1.0.jar" sourcepath="M2_REPO/javax/persistence/persistence-api/1.0/persistence-api-1.0-sources.jar"/>
-  <classpathentry kind="var" path="M2_REPO/javax/servlet/servlet-api/2.5/servlet-api-2.5.jar" sourcepath="M2_REPO/javax/servlet/servlet-api/2.5/servlet-api-2.5-sources.jar"/>
-  <classpathentry kind="var" path="M2_REPO/antlr/antlr/2.7.6/antlr-2.7.6.jar" sourcepath="M2_REPO/antlr/antlr/2.7.6/antlr-2.7.6-sources.jar"/>
-  <classpathentry kind="var" path="M2_REPO/aopalliance/aopalliance/1.0/aopalliance-1.0.jar" sourcepath="M2_REPO/aopalliance/aopalliance/1.0/aopalliance-1.0-sources.jar"/>
-  <classpathentry kind="var" path="M2_REPO/com/google/appengine/appengine-api-1.0-sdk/1.3.1/appengine-api-1.0-sdk-1.3.1.jar"/>
-  <classpathentry kind="var" path="M2_REPO/avalon-framework/avalon-framework/4.1.3/avalon-framework-4.1.3.jar"/>
-  <classpathentry kind="var" path="M2_REPO/org/beanshell/bsh/2.0b4/bsh-2.0b4.jar"/>
-  <classpathentry kind="var" path="M2_REPO/c3p0/c3p0/0.9.1/c3p0-0.9.1.jar" sourcepath="M2_REPO/c3p0/c3p0/0.9.1/c3p0-0.9.1-sources.jar"/>
-  <classpathentry kind="var" path="M2_REPO/classworlds/classworlds/1.1-alpha-2/classworlds-1.1-alpha-2.jar"/>
-  <classpathentry kind="var" path="M2_REPO/org/cobogw/gwt/cobogw/1.3.1/cobogw-1.3.1.jar"/>
-  <classpathentry kind="var" path="M2_REPO/commons-beanutils/commons-beanutils/1.7.0/commons-beanutils-1.7.0.jar" sourcepath="M2_REPO/commons-beanutils/commons-beanutils/1.7.0/commons-beanutils-1.7.0-sources.jar"/>
-  <classpathentry kind="var" path="M2_REPO/commons-cli/commons-cli/1.2/commons-cli-1.2.jar" sourcepath="M2_REPO/commons-cli/commons-cli/1.2/commons-cli-1.2-sources.jar"/>
-  <classpathentry kind="var" path="M2_REPO/commons-codec/commons-codec/1.4/commons-codec-1.4.jar" sourcepath="M2_REPO/commons-codec/commons-codec/1.4/commons-codec-1.4-sources.jar"/>
-  <classpathentry kind="var" path="M2_REPO/commons-collections/commons-collections/3.2/commons-collections-3.2.jar" sourcepath="M2_REPO/commons-collections/commons-collections/3.2/commons-collections-3.2-sources.jar"/>
-  <classpathentry kind="var" path="M2_REPO/commons-fileupload/commons-fileupload/1.1.1/commons-fileupload-1.1.1.jar"/>
-  <classpathentry kind="var" path="M2_REPO/commons-io/commons-io/1.2/commons-io-1.2.jar" sourcepath="M2_REPO/commons-io/commons-io/1.2/commons-io-1.2-sources.jar"/>
-  <classpathentry kind="var" path="M2_REPO/commons-lang/commons-lang/2.5/commons-lang-2.5.jar" sourcepath="M2_REPO/commons-lang/commons-lang/2.5/commons-lang-2.5-sources.jar"/>
-  <classpathentry kind="var" path="M2_REPO/commons-logging/commons-logging/1.1/commons-logging-1.1.jar" sourcepath="M2_REPO/commons-logging/commons-logging/1.1/commons-logging-1.1-sources.jar"/>
-  <classpathentry kind="var" path="M2_REPO/net/sourceforge/htmlunit/crawl_htmlunit/r5662-gae/crawl_htmlunit-r5662-gae.jar"/>
-  <classpathentry kind="var" path="M2_REPO/dom4j/dom4j/1.6.1/dom4j-1.6.1.jar" sourcepath="M2_REPO/dom4j/dom4j/1.6.1/dom4j-1.6.1-sources.jar"/>
-  <classpathentry kind="var" path="M2_REPO/net/sf/dozer/dozer/4.0/dozer-4.0.jar" sourcepath="M2_REPO/net/sf/dozer/dozer/4.0/dozer-4.0-sources.jar"/>
-  <classpathentry kind="var" path="M2_REPO/org/hibernate/ejb3-persistence/1.0.2.GA/ejb3-persistence-1.0.2.GA.jar" sourcepath="M2_REPO/org/hibernate/ejb3-persistence/1.0.2.GA/ejb3-persistence-1.0.2.GA-sources.jar"/>
-  <classpathentry kind="var" path="M2_REPO/com/calclab/emite/emite/r1694/emite-r1694.jar"/>
-  <classpathentry kind="var" path="M2_REPO/com/calclab/emite/emite-proxy/0.1/emite-proxy-0.1.jar"/>
-  <classpathentry kind="var" path="M2_REPO/net/sf/ezmorph/ezmorph/1.0.3/ezmorph-1.0.3.jar" sourcepath="M2_REPO/net/sf/ezmorph/ezmorph/1.0.3/ezmorph-1.0.3-sources.jar"/>
-  <classpathentry kind="var" path="M2_REPO/freemarker/freemarker/2.3.8/freemarker-2.3.8.jar"/>
-  <classpathentry kind="var" path="M2_REPO/com/google/guava/guava-gwt/r07/guava-gwt-r07.jar"/>
-  <classpathentry kind="var" path="M2_REPO/com/google/inject/guice/3.0-rc2/guice-3.0-rc2.jar" sourcepath="M2_REPO/com/google/inject/guice/3.0-rc2/guice-3.0-rc2-sources.jar"/>
-  <classpathentry kind="var" path="M2_REPO/com/google/inject/extensions/guice-assisted-inject/2.0/guice-assisted-inject-2.0.jar"/>
-  <classpathentry kind="var" path="M2_REPO/com/google/inject/extensions/guice-persist/3.0-rc2/guice-persist-3.0-rc2.jar" sourcepath="M2_REPO/com/google/inject/extensions/guice-persist/3.0-rc2/guice-persist-3.0-rc2-sources.jar"/>
-  <classpathentry kind="var" path="M2_REPO/com/google/inject/extensions/guice-servlet/3.0-rc2/guice-servlet-3.0-rc2.jar" sourcepath="M2_REPO/com/google/inject/extensions/guice-servlet/3.0-rc2/guice-servlet-3.0-rc2-sources.jar"/>
-  <classpathentry kind="var" path="M2_REPO/org/adamtacy/gwt-fx/r464/gwt-fx-r464.jar"/>
-  <classpathentry kind="var" path="M2_REPO/com/google/gwt/gwt-gin/1.0-r137/gwt-gin-1.0-r137.jar"/>
-  <classpathentry kind="var" path="M2_REPO/com/allen_sauer/gwt/log/gwt-log/gwt-log/3.0.1/gwt-log-3.0.1.jar"/>
-  <classpathentry kind="var" path="M2_REPO/com/google/gwt/gwt-servlet/2.1.1/gwt-servlet-2.1.1.jar" sourcepath="M2_REPO/com/google/gwt/gwt-servlet/2.1.1/gwt-servlet-2.1.1-sources.jar"/>
-  <classpathentry kind="var" path="M2_REPO/com/google/gwt/gwt-user/2.1.1/gwt-user-2.1.1.jar" sourcepath="M2_REPO/com/google/gwt/gwt-user/2.1.1/gwt-user-2.1.1-sources.jar"/>
-  <classpathentry kind="var" path="M2_REPO/org/waveprotocol/gwt-util-src/0.3.0/gwt-util-src-0.3.0.jar"/>
-  <classpathentry kind="var" path="M2_REPO/com/allen_sauer/gwt/voices/gwt-voices/gwt-voices/1.6.0/gwt-voices-1.6.0.jar"/>
-  <classpathentry kind="var" path="M2_REPO/com/gwtext/gwtext/2.0.5/gwtext-2.0.5.jar"/>
-  <classpathentry kind="var" path="M2_REPO/com/gwtextux/gwtextux/0.4.0.924/gwtextux-0.4.0.924.jar"/>
-  <classpathentry kind="var" path="M2_REPO/com/gwtplatform/gwtp-all/0.5/gwtp-all-0.5.jar" sourcepath="M2_REPO/com/gwtplatform/gwtp-all/0.5/gwtp-all-0.5-sources.jar"/>
-  <classpathentry kind="var" path="M2_REPO/com/gwtplatform/gwtp-clients-common/0.5/gwtp-clients-common-0.5.jar" sourcepath="M2_REPO/com/gwtplatform/gwtp-clients-common/0.5/gwtp-clients-common-0.5-sources.jar"/>
-  <classpathentry kind="var" path="M2_REPO/com/gwtplatform/gwtp-crawler/0.5/gwtp-crawler-0.5.jar" sourcepath="M2_REPO/com/gwtplatform/gwtp-crawler/0.5/gwtp-crawler-0.5-sources.jar"/>
-  <classpathentry kind="var" path="M2_REPO/com/gwtplatform/gwtp-dispatch-client/0.5/gwtp-dispatch-client-0.5.jar" sourcepath="M2_REPO/com/gwtplatform/gwtp-dispatch-client/0.5/gwtp-dispatch-client-0.5-sources.jar"/>
-  <classpathentry kind="var" path="M2_REPO/com/gwtplatform/gwtp-dispatch-server/0.5/gwtp-dispatch-server-0.5.jar" sourcepath="M2_REPO/com/gwtplatform/gwtp-dispatch-server/0.5/gwtp-dispatch-server-0.5-sources.jar"/>
-  <classpathentry kind="var" path="M2_REPO/com/gwtplatform/gwtp-dispatch-shared/0.5/gwtp-dispatch-shared-0.5.jar" sourcepath="M2_REPO/com/gwtplatform/gwtp-dispatch-shared/0.5/gwtp-dispatch-shared-0.5-sources.jar"/>
-  <classpathentry kind="var" path="M2_REPO/com/gwtplatform/gwtp-mvp-client/0.5/gwtp-mvp-client-0.5.jar" sourcepath="M2_REPO/com/gwtplatform/gwtp-mvp-client/0.5/gwtp-mvp-client-0.5-sources.jar"/>
-  <classpathentry kind="var" path="M2_REPO/com/gwtplatform/gwtp-processors/0.5/gwtp-processors-0.5.jar" sourcepath="M2_REPO/com/gwtplatform/gwtp-processors/0.5/gwtp-processors-0.5-sources.jar"/>
-  <classpathentry kind="var" path="M2_REPO/com/gwtplatform/gwtp-tester/0.5/gwtp-tester-0.5.jar" sourcepath="M2_REPO/com/gwtplatform/gwtp-tester/0.5/gwtp-tester-0.5-sources.jar"/>
-  <classpathentry kind="var" path="M2_REPO/com/extjs/gxt/2.2.1/gxt-2.2.1.jar"/>
-  <classpathentry kind="var" path="M2_REPO/com/h2database/h2/1.0.20070617/h2-1.0.20070617.jar"/>
-  <classpathentry kind="var" path="M2_REPO/com/calclab/emite/hablar/r1697/hablar-r1697.jar"/>
-  <classpathentry kind="var" path="M2_REPO/org/hamcrest/hamcrest-core/1.1/hamcrest-core-1.1.jar" sourcepath="M2_REPO/org/hamcrest/hamcrest-core/1.1/hamcrest-core-1.1-sources.jar"/>
-  <classpathentry kind="var" path="M2_REPO/org/hibernate/hibernate-annotations/3.4.0.GA/hibernate-annotations-3.4.0.GA.jar" sourcepath="M2_REPO/org/hibernate/hibernate-annotations/3.4.0.GA/hibernate-annotations-3.4.0.GA-sources.jar"/>
-  <classpathentry kind="var" path="M2_REPO/org/hibernate/hibernate-c3p0/3.3.1.GA/hibernate-c3p0-3.3.1.GA.jar" sourcepath="M2_REPO/org/hibernate/hibernate-c3p0/3.3.1.GA/hibernate-c3p0-3.3.1.GA-sources.jar"/>
-  <classpathentry kind="var" path="M2_REPO/org/hibernate/hibernate-commons-annotations/3.3.0.ga/hibernate-commons-annotations-3.3.0.ga.jar" sourcepath="M2_REPO/org/hibernate/hibernate-commons-annotations/3.3.0.ga/hibernate-commons-annotations-3.3.0.ga-sources.jar"/>
-  <classpathentry kind="var" path="M2_REPO/org/hibernate/hibernate-core/3.3.1.GA/hibernate-core-3.3.1.GA.jar" sourcepath="M2_REPO/org/hibernate/hibernate-core/3.3.1.GA/hibernate-core-3.3.1.GA-sources.jar"/>
-  <classpathentry kind="var" path="M2_REPO/org/hibernate/hibernate-entitymanager/3.4.0.GA/hibernate-entitymanager-3.4.0.GA.jar" sourcepath="M2_REPO/org/hibernate/hibernate-entitymanager/3.4.0.GA/hibernate-entitymanager-3.4.0.GA-sources.jar"/>
-  <classpathentry kind="var" path="M2_REPO/org/hibernate/hibernate-search/3.1.0.GA/hibernate-search-3.1.0.GA.jar" sourcepath="M2_REPO/org/hibernate/hibernate-search/3.1.0.GA/hibernate-search-3.1.0.GA-sources.jar"/>
-  <classpathentry kind="var" path="M2_REPO/org/hibernate/hibernate-tools/3.2.3.GA/hibernate-tools-3.2.3.GA.jar"/>
-  <classpathentry kind="var" path="M2_REPO/org/hibernate/hibernate-validator/3.1.0.GA/hibernate-validator-3.1.0.GA.jar" sourcepath="M2_REPO/org/hibernate/hibernate-validator/3.1.0.GA/hibernate-validator-3.1.0.GA-sources.jar"/>
-  <classpathentry kind="var" path="M2_REPO/javassist/javassist/3.4.GA/javassist-3.4.GA.jar"/>
-  <classpathentry kind="var" path="M2_REPO/org/slf4j/jcl-over-slf4j/1.6.1/jcl-over-slf4j-1.6.1.jar" sourcepath="M2_REPO/org/slf4j/jcl-over-slf4j/1.6.1/jcl-over-slf4j-1.6.1-sources.jar"/>
-  <classpathentry kind="var" path="M2_REPO/org/codehaus/jettison/jettison/1.0-RC2/jettison-1.0-RC2.jar" sourcepath="M2_REPO/org/codehaus/jettison/jettison/1.0-RC2/jettison-1.0-RC2-sources.jar"/>
-  <classpathentry kind="var" path="M2_REPO/jmagick/jmagick/6.2.6-0/jmagick-6.2.6-0.jar"/>
-  <classpathentry kind="var" path="M2_REPO/org/jruby/jruby-complete/1.2.0/jruby-complete-1.2.0.jar"/>
-  <classpathentry kind="var" path="M2_REPO/org/jruby/rack/jruby-rack/0.9.4/jruby-rack-0.9.4.jar"/>
-  <classpathentry kind="var" path="M2_REPO/net/sf/json-lib/json-lib/2.1/json-lib-2.1-jdk15.jar" sourcepath="M2_REPO/net/sf/json-lib/json-lib/2.1/json-lib-2.1-jdk15-sources.jar"/>
-  <classpathentry kind="var" path="M2_REPO/net/sourceforge/findbugs/jsr-305/v0r47/jsr-305-v0r47.jar" sourcepath="M2_REPO/net/sourceforge/findbugs/jsr-305/v0r47/jsr-305-v0r47-sources.jar"/>
-  <classpathentry kind="var" path="M2_REPO/org/hibernate/jtidy/r8-20060801/jtidy-r8-20060801.jar"/>
-  <classpathentry kind="var" path="M2_REPO/org/jukito/jukito/1.0/jukito-1.0.jar" sourcepath="M2_REPO/org/jukito/jukito/1.0/jukito-1.0-sources.jar"/>
-  <classpathentry kind="var" path="M2_REPO/junit/junit/4.8.1/junit-4.8.1.jar" sourcepath="M2_REPO/junit/junit/4.8.1/junit-4.8.1-sources.jar"/>
-  <classpathentry kind="var" path="M2_REPO/org/liquibase/liquibase-core/1.7.0/liquibase-core-1.7.0.jar"/>
-  <classpathentry kind="var" path="M2_REPO/org/liquibase/liquibase-plugin/1.7.0.0/liquibase-plugin-1.7.0.0.jar"/>
-  <classpathentry kind="var" path="M2_REPO/log4j/log4j/1.2.16/log4j-1.2.16.jar" sourcepath="M2_REPO/log4j/log4j/1.2.16/log4j-1.2.16-sources.jar"/>
-  <classpathentry kind="var" path="M2_REPO/logkit/logkit/1.0.1/logkit-1.0.1.jar" sourcepath="M2_REPO/logkit/logkit/1.0.1/logkit-1.0.1-sources.jar"/>
-  <classpathentry kind="var" path="M2_REPO/org/apache/lucene/lucene-core/2.4.0/lucene-core-2.4.0.jar" sourcepath="M2_REPO/org/apache/lucene/lucene-core/2.4.0/lucene-core-2.4.0-sources.jar"/>
-  <classpathentry kind="var" path="M2_REPO/org/apache/maven/maven-artifact/2.0/maven-artifact-2.0.jar" sourcepath="M2_REPO/org/apache/maven/maven-artifact/2.0/maven-artifact-2.0-sources.jar"/>
-  <classpathentry kind="var" path="M2_REPO/org/apache/maven/maven-artifact-manager/2.0/maven-artifact-manager-2.0.jar" sourcepath="M2_REPO/org/apache/maven/maven-artifact-manager/2.0/maven-artifact-manager-2.0-sources.jar"/>
-  <classpathentry kind="var" path="M2_REPO/org/apache/maven/maven-model/2.0/maven-model-2.0.jar" sourcepath="M2_REPO/org/apache/maven/maven-model/2.0/maven-model-2.0-sources.jar"/>
-  <classpathentry kind="var" path="M2_REPO/org/apache/maven/maven-plugin-api/2.0/maven-plugin-api-2.0.jar" sourcepath="M2_REPO/org/apache/maven/maven-plugin-api/2.0/maven-plugin-api-2.0-sources.jar"/>
-  <classpathentry kind="var" path="M2_REPO/org/apache/maven/maven-profile/2.0/maven-profile-2.0.jar" sourcepath="M2_REPO/org/apache/maven/maven-profile/2.0/maven-profile-2.0-sources.jar"/>
-  <classpathentry kind="var" path="M2_REPO/org/apache/maven/maven-project/2.0/maven-project-2.0.jar" sourcepath="M2_REPO/org/apache/maven/maven-project/2.0/maven-project-2.0-sources.jar"/>
-  <classpathentry kind="var" path="M2_REPO/org/apache/maven/maven-repository-metadata/2.0/maven-repository-metadata-2.0.jar" sourcepath="M2_REPO/org/apache/maven/maven-repository-metadata/2.0/maven-repository-metadata-2.0-sources.jar"/>
-  <classpathentry kind="var" path="M2_REPO/org/mockito/mockito-core/1.8.5/mockito-core-1.8.5.jar" sourcepath="M2_REPO/org/mockito/mockito-core/1.8.5/mockito-core-1.8.5-sources.jar"/>
-  <classpathentry kind="var" path="M2_REPO/mysql/mysql-connector-java/5.1.13/mysql-connector-java-5.1.13.jar"/>
-  <classpathentry kind="var" path="M2_REPO/org/objenesis/objenesis/1.0/objenesis-1.0.jar" sourcepath="M2_REPO/org/objenesis/objenesis/1.0/objenesis-1.0-sources.jar"/>
-  <classpathentry kind="var" path="M2_REPO/org/codehaus/plexus/plexus-container-default/1.0-alpha-8/plexus-container-default-1.0-alpha-8.jar" sourcepath="M2_REPO/org/codehaus/plexus/plexus-container-default/1.0-alpha-8/plexus-container-default-1.0-alpha-8-sources.jar"/>
-  <classpathentry kind="var" path="M2_REPO/org/codehaus/plexus/plexus-utils/1.0.4/plexus-utils-1.0.4.jar" sourcepath="M2_REPO/org/codehaus/plexus/plexus-utils/1.0.4/plexus-utils-1.0.4-sources.jar"/>
-  <classpathentry kind="var" path="M2_REPO/org/waveprotocol/proto-gwt/0.3.7/proto-gwt-0.3.7.jar"/>
-  <classpathentry kind="var" path="M2_REPO/org/slf4j/slf4j-api/1.6.1/slf4j-api-1.6.1.jar" sourcepath="M2_REPO/org/slf4j/slf4j-api/1.6.1/slf4j-api-1.6.1-sources.jar"/>
-  <classpathentry kind="var" path="M2_REPO/org/slf4j/slf4j-log4j12/1.6.1/slf4j-log4j12-1.6.1.jar" sourcepath="M2_REPO/org/slf4j/slf4j-log4j12/1.6.1/slf4j-log4j12-1.6.1-sources.jar"/>
-  <classpathentry kind="var" path="M2_REPO/org/jivesoftware/smack/smack/3.0.4/smack-3.0.4.jar"/>
-  <classpathentry kind="var" path="M2_REPO/org/jivesoftware/smackx/smackx/3.0.4/smackx-3.0.4.jar"/>
-  <classpathentry kind="var" path="M2_REPO/org/jivesoftware/smackx/debugger/smackx-debugger/3.0.4/smackx-debugger-3.0.4.jar"/>
-  <classpathentry kind="var" path="M2_REPO/stax/stax-api/1.0.1/stax-api-1.0.1.jar"/>
-  <classpathentry kind="var" path="M2_REPO/org/apache/maven/wagon/wagon-provider-api/1.0-alpha-5/wagon-provider-api-1.0-alpha-5.jar" sourcepath="M2_REPO/org/apache/maven/wagon/wagon-provider-api/1.0-alpha-5/wagon-provider-api-1.0-alpha-5-sources.jar"/>
-  <classpathentry kind="var" path="M2_REPO/org/waveprotocol/waveinabox-server-custom/0.3.7/waveinabox-server-custom-0.3.7.jar"/>
-  <classpathentry kind="var" path="M2_REPO/xml-apis/xml-apis/1.0.b2/xml-apis-1.0.b2.jar" sourcepath="M2_REPO/xml-apis/xml-apis/1.0.b2/xml-apis-1.0.b2-sources.jar"/>
-  <classpathentry kind="var" path="M2_REPO/xpp3/xpp3_min/1.1.3.4.O/xpp3_min-1.1.3.4.O.jar"/>
-  <classpathentry kind="var" path="M2_REPO/com/thoughtworks/xstream/xstream/1.2.2/xstream-1.2.2.jar" sourcepath="M2_REPO/com/thoughtworks/xstream/xstream/1.2.2/xstream-1.2.2-sources.jar"/>
-  <classpathentry kind="var" path="M2_REPO/org/xwiki/platform/xwiki-web-gwt-dom/2.3-rc-1/xwiki-web-gwt-dom-2.3-rc-1.jar" sourcepath="M2_REPO/org/xwiki/platform/xwiki-web-gwt-dom/2.3-rc-1/xwiki-web-gwt-dom-2.3-rc-1-sources.jar"/>
-  <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
-  <classpathentry kind="src" path="target/generated-sources/apt" including="**/*.java"/>  <classpathentry kind="con" path="com.google.gwt.eclipse.core.GWT_CONTAINER"/>
-</classpath>
\ No newline at end of file
+	<classpathentry including="**/*.java" kind="src" output="target/test-classes" path="src/test/java"/>
+	<classpathentry including="**/*.java" kind="src" path="src/main/java"/>
+	<classpathentry excluding="**/*.java" kind="src" path="src/main/resources"/>
+	<classpathentry kind="var" path="M2_REPO/javax/inject/javax.inject/1/javax.inject-1.jar" sourcepath="M2_REPO/javax/inject/javax.inject/1/javax.inject-1-sources.jar"/>
+	<classpathentry kind="var" path="M2_REPO/javax/transaction/jta/1.1/jta-1.1.jar" sourcepath="M2_REPO/javax/transaction/jta/1.1/jta-1.1-sources.jar"/>
+	<classpathentry kind="var" path="M2_REPO/javax/persistence/persistence-api/1.0/persistence-api-1.0.jar" sourcepath="M2_REPO/javax/persistence/persistence-api/1.0/persistence-api-1.0-sources.jar"/>
+	<classpathentry kind="var" path="M2_REPO/javax/servlet/servlet-api/2.5/servlet-api-2.5.jar" sourcepath="M2_REPO/javax/servlet/servlet-api/2.5/servlet-api-2.5-sources.jar"/>
+	<classpathentry kind="var" path="M2_REPO/antlr/antlr/2.7.6/antlr-2.7.6.jar" sourcepath="M2_REPO/antlr/antlr/2.7.6/antlr-2.7.6-sources.jar"/>
+	<classpathentry kind="var" path="M2_REPO/aopalliance/aopalliance/1.0/aopalliance-1.0.jar" sourcepath="M2_REPO/aopalliance/aopalliance/1.0/aopalliance-1.0-sources.jar"/>
+	<classpathentry kind="var" path="M2_REPO/com/google/appengine/appengine-api-1.0-sdk/1.3.1/appengine-api-1.0-sdk-1.3.1.jar"/>
+	<classpathentry kind="var" path="M2_REPO/avalon-framework/avalon-framework/4.1.3/avalon-framework-4.1.3.jar"/>
+	<classpathentry kind="var" path="M2_REPO/org/beanshell/bsh/2.0b4/bsh-2.0b4.jar"/>
+	<classpathentry kind="var" path="M2_REPO/c3p0/c3p0/0.9.1/c3p0-0.9.1.jar" sourcepath="M2_REPO/c3p0/c3p0/0.9.1/c3p0-0.9.1-sources.jar"/>
+	<classpathentry kind="var" path="M2_REPO/classworlds/classworlds/1.1-alpha-2/classworlds-1.1-alpha-2.jar"/>
+	<classpathentry kind="var" path="M2_REPO/org/cobogw/gwt/cobogw/1.3.1/cobogw-1.3.1.jar"/>
+	<classpathentry kind="var" path="M2_REPO/commons-beanutils/commons-beanutils/1.7.0/commons-beanutils-1.7.0.jar" sourcepath="M2_REPO/commons-beanutils/commons-beanutils/1.7.0/commons-beanutils-1.7.0-sources.jar"/>
+	<classpathentry kind="var" path="M2_REPO/commons-cli/commons-cli/1.2/commons-cli-1.2.jar" sourcepath="M2_REPO/commons-cli/commons-cli/1.2/commons-cli-1.2-sources.jar"/>
+	<classpathentry kind="var" path="M2_REPO/commons-codec/commons-codec/1.4/commons-codec-1.4.jar" sourcepath="M2_REPO/commons-codec/commons-codec/1.4/commons-codec-1.4-sources.jar"/>
+	<classpathentry kind="var" path="M2_REPO/commons-collections/commons-collections/3.2/commons-collections-3.2.jar" sourcepath="M2_REPO/commons-collections/commons-collections/3.2/commons-collections-3.2-sources.jar"/>
+	<classpathentry kind="var" path="M2_REPO/commons-fileupload/commons-fileupload/1.1.1/commons-fileupload-1.1.1.jar"/>
+	<classpathentry kind="var" path="M2_REPO/commons-io/commons-io/1.2/commons-io-1.2.jar" sourcepath="M2_REPO/commons-io/commons-io/1.2/commons-io-1.2-sources.jar"/>
+	<classpathentry kind="var" path="M2_REPO/commons-lang/commons-lang/2.5/commons-lang-2.5.jar" sourcepath="M2_REPO/commons-lang/commons-lang/2.5/commons-lang-2.5-sources.jar"/>
+	<classpathentry kind="var" path="M2_REPO/commons-logging/commons-logging/1.1/commons-logging-1.1.jar" sourcepath="M2_REPO/commons-logging/commons-logging/1.1/commons-logging-1.1-sources.jar"/>
+	<classpathentry kind="var" path="M2_REPO/net/sourceforge/htmlunit/crawl_htmlunit/r5662-gae/crawl_htmlunit-r5662-gae.jar"/>
+	<classpathentry kind="var" path="M2_REPO/dom4j/dom4j/1.6.1/dom4j-1.6.1.jar" sourcepath="M2_REPO/dom4j/dom4j/1.6.1/dom4j-1.6.1-sources.jar"/>
+	<classpathentry kind="var" path="M2_REPO/net/sf/dozer/dozer/4.0/dozer-4.0.jar" sourcepath="M2_REPO/net/sf/dozer/dozer/4.0/dozer-4.0-sources.jar"/>
+	<classpathentry kind="var" path="M2_REPO/org/hibernate/ejb3-persistence/1.0.2.GA/ejb3-persistence-1.0.2.GA.jar" sourcepath="M2_REPO/org/hibernate/ejb3-persistence/1.0.2.GA/ejb3-persistence-1.0.2.GA-sources.jar"/>
+	<classpathentry kind="var" path="M2_REPO/com/calclab/emite/emite/r1694/emite-r1694.jar"/>
+	<classpathentry kind="var" path="M2_REPO/com/calclab/emite/emite-proxy/0.1/emite-proxy-0.1.jar"/>
+	<classpathentry kind="var" path="M2_REPO/net/sf/ezmorph/ezmorph/1.0.3/ezmorph-1.0.3.jar" sourcepath="M2_REPO/net/sf/ezmorph/ezmorph/1.0.3/ezmorph-1.0.3-sources.jar"/>
+	<classpathentry kind="var" path="M2_REPO/freemarker/freemarker/2.3.8/freemarker-2.3.8.jar"/>
+	<classpathentry kind="var" path="M2_REPO/com/google/guava/guava-gwt/r07/guava-gwt-r07.jar"/>
+	<classpathentry kind="var" path="M2_REPO/com/google/inject/guice/3.0-rc2/guice-3.0-rc2.jar" sourcepath="M2_REPO/com/google/inject/guice/3.0-rc2/guice-3.0-rc2-sources.jar"/>
+	<classpathentry kind="var" path="M2_REPO/com/google/inject/extensions/guice-assisted-inject/2.0/guice-assisted-inject-2.0.jar"/>
+	<classpathentry kind="var" path="M2_REPO/com/google/inject/extensions/guice-persist/3.0-rc2/guice-persist-3.0-rc2.jar" sourcepath="M2_REPO/com/google/inject/extensions/guice-persist/3.0-rc2/guice-persist-3.0-rc2-sources.jar"/>
+	<classpathentry kind="var" path="M2_REPO/com/google/inject/extensions/guice-servlet/3.0-rc2/guice-servlet-3.0-rc2.jar" sourcepath="M2_REPO/com/google/inject/extensions/guice-servlet/3.0-rc2/guice-servlet-3.0-rc2-sources.jar"/>
+	<classpathentry kind="var" path="M2_REPO/org/adamtacy/gwt-fx/r464/gwt-fx-r464.jar"/>
+	<classpathentry kind="var" path="M2_REPO/com/google/gwt/gwt-gin/1.0-r137/gwt-gin-1.0-r137.jar"/>
+	<classpathentry kind="var" path="M2_REPO/com/allen_sauer/gwt/log/gwt-log/gwt-log/3.0.1/gwt-log-3.0.1.jar"/>
+	<classpathentry kind="var" path="M2_REPO/com/google/gwt/gwt-user/2.1.1/gwt-user-2.1.1.jar" sourcepath="M2_REPO/com/google/gwt/gwt-user/2.1.1/gwt-user-2.1.1-sources.jar"/>
+	<classpathentry kind="var" path="M2_REPO/org/waveprotocol/gwt-util-src/0.3.0/gwt-util-src-0.3.0.jar"/>
+	<classpathentry kind="var" path="M2_REPO/com/allen_sauer/gwt/voices/gwt-voices/gwt-voices/1.6.0/gwt-voices-1.6.0.jar"/>
+	<classpathentry kind="var" path="M2_REPO/com/gwtext/gwtext/2.0.5/gwtext-2.0.5.jar"/>
+	<classpathentry kind="var" path="M2_REPO/com/gwtextux/gwtextux/0.4.0.924/gwtextux-0.4.0.924.jar"/>
+	<classpathentry kind="var" path="M2_REPO/com/gwtplatform/gwtp-all/0.5/gwtp-all-0.5.jar" sourcepath="M2_REPO/com/gwtplatform/gwtp-all/0.5/gwtp-all-0.5-sources.jar"/>
+	<classpathentry kind="var" path="M2_REPO/com/gwtplatform/gwtp-clients-common/0.5/gwtp-clients-common-0.5.jar" sourcepath="M2_REPO/com/gwtplatform/gwtp-clients-common/0.5/gwtp-clients-common-0.5-sources.jar"/>
+	<classpathentry kind="var" path="M2_REPO/com/gwtplatform/gwtp-crawler/0.5/gwtp-crawler-0.5.jar" sourcepath="M2_REPO/com/gwtplatform/gwtp-crawler/0.5/gwtp-crawler-0.5-sources.jar"/>
+	<classpathentry kind="var" path="M2_REPO/com/gwtplatform/gwtp-dispatch-client/0.5/gwtp-dispatch-client-0.5.jar" sourcepath="M2_REPO/com/gwtplatform/gwtp-dispatch-client/0.5/gwtp-dispatch-client-0.5-sources.jar"/>
+	<classpathentry kind="var" path="M2_REPO/com/gwtplatform/gwtp-dispatch-server/0.5/gwtp-dispatch-server-0.5.jar" sourcepath="M2_REPO/com/gwtplatform/gwtp-dispatch-server/0.5/gwtp-dispatch-server-0.5-sources.jar"/>
+	<classpathentry kind="var" path="M2_REPO/com/gwtplatform/gwtp-dispatch-shared/0.5/gwtp-dispatch-shared-0.5.jar" sourcepath="M2_REPO/com/gwtplatform/gwtp-dispatch-shared/0.5/gwtp-dispatch-shared-0.5-sources.jar"/>
+	<classpathentry kind="var" path="M2_REPO/com/gwtplatform/gwtp-mvp-client/0.5/gwtp-mvp-client-0.5.jar" sourcepath="M2_REPO/com/gwtplatform/gwtp-mvp-client/0.5/gwtp-mvp-client-0.5-sources.jar"/>
+	<classpathentry kind="var" path="M2_REPO/com/gwtplatform/gwtp-processors/0.5/gwtp-processors-0.5.jar" sourcepath="M2_REPO/com/gwtplatform/gwtp-processors/0.5/gwtp-processors-0.5-sources.jar"/>
+	<classpathentry kind="var" path="M2_REPO/com/gwtplatform/gwtp-tester/0.5/gwtp-tester-0.5.jar" sourcepath="M2_REPO/com/gwtplatform/gwtp-tester/0.5/gwtp-tester-0.5-sources.jar"/>
+	<classpathentry kind="var" path="M2_REPO/com/extjs/gxt/2.2.1/gxt-2.2.1.jar"/>
+	<classpathentry kind="var" path="M2_REPO/com/h2database/h2/1.0.20070617/h2-1.0.20070617.jar"/>
+	<classpathentry kind="var" path="M2_REPO/com/calclab/emite/hablar/r1697/hablar-r1697.jar"/>
+	<classpathentry kind="var" path="M2_REPO/org/hamcrest/hamcrest-core/1.1/hamcrest-core-1.1.jar" sourcepath="M2_REPO/org/hamcrest/hamcrest-core/1.1/hamcrest-core-1.1-sources.jar"/>
+	<classpathentry kind="var" path="M2_REPO/org/hibernate/hibernate-annotations/3.4.0.GA/hibernate-annotations-3.4.0.GA.jar" sourcepath="M2_REPO/org/hibernate/hibernate-annotations/3.4.0.GA/hibernate-annotations-3.4.0.GA-sources.jar"/>
+	<classpathentry kind="var" path="M2_REPO/org/hibernate/hibernate-c3p0/3.3.1.GA/hibernate-c3p0-3.3.1.GA.jar" sourcepath="M2_REPO/org/hibernate/hibernate-c3p0/3.3.1.GA/hibernate-c3p0-3.3.1.GA-sources.jar"/>
+	<classpathentry kind="var" path="M2_REPO/org/hibernate/hibernate-commons-annotations/3.3.0.ga/hibernate-commons-annotations-3.3.0.ga.jar" sourcepath="M2_REPO/org/hibernate/hibernate-commons-annotations/3.3.0.ga/hibernate-commons-annotations-3.3.0.ga-sources.jar"/>
+	<classpathentry kind="var" path="M2_REPO/org/hibernate/hibernate-core/3.3.1.GA/hibernate-core-3.3.1.GA.jar" sourcepath="M2_REPO/org/hibernate/hibernate-core/3.3.1.GA/hibernate-core-3.3.1.GA-sources.jar"/>
+	<classpathentry kind="var" path="M2_REPO/org/hibernate/hibernate-entitymanager/3.4.0.GA/hibernate-entitymanager-3.4.0.GA.jar" sourcepath="M2_REPO/org/hibernate/hibernate-entitymanager/3.4.0.GA/hibernate-entitymanager-3.4.0.GA-sources.jar"/>
+	<classpathentry kind="var" path="M2_REPO/org/hibernate/hibernate-search/3.1.0.GA/hibernate-search-3.1.0.GA.jar" sourcepath="M2_REPO/org/hibernate/hibernate-search/3.1.0.GA/hibernate-search-3.1.0.GA-sources.jar"/>
+	<classpathentry kind="var" path="M2_REPO/org/hibernate/hibernate-tools/3.2.3.GA/hibernate-tools-3.2.3.GA.jar"/>
+	<classpathentry kind="var" path="M2_REPO/org/hibernate/hibernate-validator/3.1.0.GA/hibernate-validator-3.1.0.GA.jar" sourcepath="M2_REPO/org/hibernate/hibernate-validator/3.1.0.GA/hibernate-validator-3.1.0.GA-sources.jar"/>
+	<classpathentry kind="var" path="M2_REPO/javassist/javassist/3.4.GA/javassist-3.4.GA.jar"/>
+	<classpathentry kind="var" path="M2_REPO/org/slf4j/jcl-over-slf4j/1.6.1/jcl-over-slf4j-1.6.1.jar" sourcepath="M2_REPO/org/slf4j/jcl-over-slf4j/1.6.1/jcl-over-slf4j-1.6.1-sources.jar"/>
+	<classpathentry kind="var" path="M2_REPO/org/codehaus/jettison/jettison/1.0-RC2/jettison-1.0-RC2.jar" sourcepath="M2_REPO/org/codehaus/jettison/jettison/1.0-RC2/jettison-1.0-RC2-sources.jar"/>
+	<classpathentry kind="var" path="M2_REPO/jmagick/jmagick/6.2.6-0/jmagick-6.2.6-0.jar"/>
+	<classpathentry kind="var" path="M2_REPO/org/jruby/jruby-complete/1.2.0/jruby-complete-1.2.0.jar"/>
+	<classpathentry kind="var" path="M2_REPO/org/jruby/rack/jruby-rack/0.9.4/jruby-rack-0.9.4.jar"/>
+	<classpathentry kind="var" path="M2_REPO/net/sf/json-lib/json-lib/2.1/json-lib-2.1-jdk15.jar" sourcepath="M2_REPO/net/sf/json-lib/json-lib/2.1/json-lib-2.1-jdk15-sources.jar"/>
+	<classpathentry kind="var" path="M2_REPO/net/sourceforge/findbugs/jsr-305/v0r47/jsr-305-v0r47.jar" sourcepath="M2_REPO/net/sourceforge/findbugs/jsr-305/v0r47/jsr-305-v0r47-sources.jar"/>
+	<classpathentry kind="var" path="M2_REPO/org/hibernate/jtidy/r8-20060801/jtidy-r8-20060801.jar"/>
+	<classpathentry kind="var" path="M2_REPO/org/jukito/jukito/1.0/jukito-1.0.jar" sourcepath="M2_REPO/org/jukito/jukito/1.0/jukito-1.0-sources.jar"/>
+	<classpathentry kind="var" path="M2_REPO/junit/junit/4.8.1/junit-4.8.1.jar" sourcepath="M2_REPO/junit/junit/4.8.1/junit-4.8.1-sources.jar"/>
+	<classpathentry kind="var" path="M2_REPO/org/liquibase/liquibase-core/1.7.0/liquibase-core-1.7.0.jar"/>
+	<classpathentry kind="var" path="M2_REPO/org/liquibase/liquibase-plugin/1.7.0.0/liquibase-plugin-1.7.0.0.jar"/>
+	<classpathentry kind="var" path="M2_REPO/log4j/log4j/1.2.16/log4j-1.2.16.jar" sourcepath="M2_REPO/log4j/log4j/1.2.16/log4j-1.2.16-sources.jar"/>
+	<classpathentry kind="var" path="M2_REPO/logkit/logkit/1.0.1/logkit-1.0.1.jar" sourcepath="M2_REPO/logkit/logkit/1.0.1/logkit-1.0.1-sources.jar"/>
+	<classpathentry kind="var" path="M2_REPO/org/apache/lucene/lucene-core/2.4.0/lucene-core-2.4.0.jar" sourcepath="M2_REPO/org/apache/lucene/lucene-core/2.4.0/lucene-core-2.4.0-sources.jar"/>
+	<classpathentry kind="var" path="M2_REPO/org/apache/maven/maven-artifact/2.0/maven-artifact-2.0.jar" sourcepath="M2_REPO/org/apache/maven/maven-artifact/2.0/maven-artifact-2.0-sources.jar"/>
+	<classpathentry kind="var" path="M2_REPO/org/apache/maven/maven-artifact-manager/2.0/maven-artifact-manager-2.0.jar" sourcepath="M2_REPO/org/apache/maven/maven-artifact-manager/2.0/maven-artifact-manager-2.0-sources.jar"/>
+	<classpathentry kind="var" path="M2_REPO/org/apache/maven/maven-model/2.0/maven-model-2.0.jar" sourcepath="M2_REPO/org/apache/maven/maven-model/2.0/maven-model-2.0-sources.jar"/>
+	<classpathentry kind="var" path="M2_REPO/org/apache/maven/maven-plugin-api/2.0/maven-plugin-api-2.0.jar" sourcepath="M2_REPO/org/apache/maven/maven-plugin-api/2.0/maven-plugin-api-2.0-sources.jar"/>
+	<classpathentry kind="var" path="M2_REPO/org/apache/maven/maven-profile/2.0/maven-profile-2.0.jar" sourcepath="M2_REPO/org/apache/maven/maven-profile/2.0/maven-profile-2.0-sources.jar"/>
+	<classpathentry kind="var" path="M2_REPO/org/apache/maven/maven-project/2.0/maven-project-2.0.jar" sourcepath="M2_REPO/org/apache/maven/maven-project/2.0/maven-project-2.0-sources.jar"/>
+	<classpathentry kind="var" path="M2_REPO/org/apache/maven/maven-repository-metadata/2.0/maven-repository-metadata-2.0.jar" sourcepath="M2_REPO/org/apache/maven/maven-repository-metadata/2.0/maven-repository-metadata-2.0-sources.jar"/>
+	<classpathentry kind="var" path="M2_REPO/org/mockito/mockito-core/1.8.5/mockito-core-1.8.5.jar" sourcepath="M2_REPO/org/mockito/mockito-core/1.8.5/mockito-core-1.8.5-sources.jar"/>
+	<classpathentry kind="var" path="M2_REPO/mysql/mysql-connector-java/5.1.13/mysql-connector-java-5.1.13.jar"/>
+	<classpathentry kind="var" path="M2_REPO/org/objenesis/objenesis/1.0/objenesis-1.0.jar" sourcepath="M2_REPO/org/objenesis/objenesis/1.0/objenesis-1.0-sources.jar"/>
+	<classpathentry kind="var" path="M2_REPO/org/codehaus/plexus/plexus-container-default/1.0-alpha-8/plexus-container-default-1.0-alpha-8.jar" sourcepath="M2_REPO/org/codehaus/plexus/plexus-container-default/1.0-alpha-8/plexus-container-default-1.0-alpha-8-sources.jar"/>
+	<classpathentry kind="var" path="M2_REPO/org/codehaus/plexus/plexus-utils/1.0.4/plexus-utils-1.0.4.jar" sourcepath="M2_REPO/org/codehaus/plexus/plexus-utils/1.0.4/plexus-utils-1.0.4-sources.jar"/>
+	<classpathentry kind="var" path="M2_REPO/org/waveprotocol/proto-gwt/0.3.7/proto-gwt-0.3.7.jar"/>
+	<classpathentry kind="var" path="M2_REPO/org/slf4j/slf4j-api/1.6.1/slf4j-api-1.6.1.jar" sourcepath="M2_REPO/org/slf4j/slf4j-api/1.6.1/slf4j-api-1.6.1-sources.jar"/>
+	<classpathentry kind="var" path="M2_REPO/org/slf4j/slf4j-log4j12/1.6.1/slf4j-log4j12-1.6.1.jar" sourcepath="M2_REPO/org/slf4j/slf4j-log4j12/1.6.1/slf4j-log4j12-1.6.1-sources.jar"/>
+	<classpathentry kind="var" path="M2_REPO/org/jivesoftware/smack/smack/3.0.4/smack-3.0.4.jar"/>
+	<classpathentry kind="var" path="M2_REPO/org/jivesoftware/smackx/smackx/3.0.4/smackx-3.0.4.jar"/>
+	<classpathentry kind="var" path="M2_REPO/org/jivesoftware/smackx/debugger/smackx-debugger/3.0.4/smackx-debugger-3.0.4.jar"/>
+	<classpathentry kind="var" path="M2_REPO/stax/stax-api/1.0.1/stax-api-1.0.1.jar"/>
+	<classpathentry kind="var" path="M2_REPO/org/apache/maven/wagon/wagon-provider-api/1.0-alpha-5/wagon-provider-api-1.0-alpha-5.jar" sourcepath="M2_REPO/org/apache/maven/wagon/wagon-provider-api/1.0-alpha-5/wagon-provider-api-1.0-alpha-5-sources.jar"/>
+	<classpathentry kind="var" path="M2_REPO/org/waveprotocol/waveinabox-server-custom/0.3.7/waveinabox-server-custom-0.3.7.jar"/>
+	<classpathentry kind="var" path="M2_REPO/xml-apis/xml-apis/1.0.b2/xml-apis-1.0.b2.jar" sourcepath="M2_REPO/xml-apis/xml-apis/1.0.b2/xml-apis-1.0.b2-sources.jar"/>
+	<classpathentry kind="var" path="M2_REPO/xpp3/xpp3_min/1.1.3.4.O/xpp3_min-1.1.3.4.O.jar"/>
+	<classpathentry kind="var" path="M2_REPO/com/thoughtworks/xstream/xstream/1.2.2/xstream-1.2.2.jar" sourcepath="M2_REPO/com/thoughtworks/xstream/xstream/1.2.2/xstream-1.2.2-sources.jar"/>
+	<classpathentry kind="var" path="M2_REPO/org/xwiki/platform/xwiki-web-gwt-dom/2.3-rc-1/xwiki-web-gwt-dom-2.3-rc-1.jar" sourcepath="M2_REPO/org/xwiki/platform/xwiki-web-gwt-dom/2.3-rc-1/xwiki-web-gwt-dom-2.3-rc-1-sources.jar"/>
+	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+	<classpathentry including="**/*.java" kind="src" path="target/generated-sources/apt"/>
+	<classpathentry kind="lib" path="/home/vjrj/bin/eclipse64-hel-new/plugins/com.google.gwt.eclipse.sdkbundle.2.1.1_2.1.1.v201012170127/gwt-2.1.1/gwt-user.jar">
+		<attributes>
+			<attribute name="javadoc_location" value="file:/home/vjrj/bin/eclipse64-hel-new/plugins/com.google.gwt.eclipse.sdkbundle.2.1.1_2.1.1.v201012170127/gwt-2.1.1/doc/javadoc/"/>
+		</attributes>
+	</classpathentry>
+	<classpathentry kind="lib" path="/home/vjrj/bin/eclipse64-hel-new/plugins/com.google.gwt.eclipse.sdkbundle.2.1.1_2.1.1.v201012170127/gwt-2.1.1/gwt-dev.jar">
+		<attributes>
+			<attribute name="javadoc_location" value="file:/home/vjrj/bin/eclipse64-hel-new/plugins/com.google.gwt.eclipse.sdkbundle.2.1.1_2.1.1.v201012170127/gwt-2.1.1/doc/javadoc/"/>
+		</attributes>
+	</classpathentry>
+	<classpathentry kind="output" path="target/kune-0.0.7/WEB-INF/classes"/>
+</classpath>

Modified: trunk/INSTALL
===================================================================
--- trunk/INSTALL	2011-03-10 16:58:36 UTC (rev 1270)
+++ trunk/INSTALL	2011-03-12 22:13:28 UTC (rev 1271)
@@ -101,23 +101,26 @@
 
 Not verified: in Windows you need to do something similar (copy the jmagick .dll of the same version in the Windows directory)
 
-===Run jetty server===
+===Run the server for the first time ===
 
-Run jetty:
+Run the server for the first time and initialize the db:
 
- mvn jetty:run -Dliquibase.should.run=false -Dgwt.compiler.skip=true
+ mvn exec:java -Dliquibase.should.run=false
 
-Once started (and initialized the db), you should stop (Ctrl-C). In the next start the db migrator will run and insert the initial data.
+Once started for the first time the db is initialized. Then you should stop (Ctrl-C) and start the db migration process: 
 
+ ./script/liquibase-migrate.sh
+
+=== Normal kune server start (after initialization) === 
+
 After that, as a norma, you can start the server using the script:
+
  ./script/server.sh
 
-or directly (w$):
+or running:
 
- mvn jetty:run -Dorg.mortbay.util.FileResource.checkAliases=False -Dgwt.compiler.skip=true
+ mvn exec:java
 
-TODO: put the aliases stuff into a jetty config file
-
 ===Connecting to the server===
 
 Open your browser and connect to http://yourIP:8080/kune

Modified: trunk/TODO
===================================================================
--- trunk/TODO	2011-03-10 16:58:36 UTC (rev 1270)
+++ trunk/TODO	2011-03-12 22:13:28 UTC (rev 1271)
@@ -65,6 +65,7 @@
 - 
 ** wave client integration
 *** Documentation
+**** Debug: client / server (see launch confs)
 **** Hosted Mode support for websocket
 ***** Test that websocket is supported in your GWT Hosted Mode browser:
 http://www.websockets.org/

Modified: trunk/TROUBLESHOOT
===================================================================
--- trunk/TROUBLESHOOT	2011-03-10 16:58:36 UTC (rev 1270)
+++ trunk/TROUBLESHOOT	2011-03-12 22:13:28 UTC (rev 1271)
@@ -2,14 +2,20 @@
 
 == Server debug ==
 
-Server: debug with jetty in eclipse:
+You can debug the server running from eclipse as external tool:
+   'script/kune server via mvn with debug.launch'
+and after this the debug launch:
+   'script/kune server debug.launch'
+that connects the debugger to the port 8001 of the running server.
+
+Related: debug with jetty in eclipse:
 http://docs.codehaus.org/display/JETTY/Debugging+with+the+Maven+Jetty+Plugin+inside+Eclipse
 
 Also for different logging levels you can play with -Dorg.eclipse.jetty.util.log.DEBUG=true (or similars)
 
 == Client debug ==
 
-Client code: you can debug with gwt hosted mode in eclipse (see DEV-GUIDE for hosted mode instructions).
+You can debug the client with the eclipse launch configuration 'script/kune client -no-server.launch'.
 
 == Firebug and client log levels ==
 

Modified: trunk/pom.xml
===================================================================
--- trunk/pom.xml	2011-03-10 16:58:36 UTC (rev 1270)
+++ trunk/pom.xml	2011-03-12 22:13:28 UTC (rev 1271)
@@ -726,6 +726,7 @@
         </executions>
         <configuration>
           <mainClass>cc.kune.wave.server.WaveMain</mainClass>
+					<commandlineArgs>-Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8001</commandlineArgs>
           <systemProperties>
             <systemProperty>
               <key>wave.server.config</key>

Added: trunk/script/kune server debug.launch
===================================================================
--- trunk/script/kune server debug.launch	                        (rev 0)
+++ trunk/script/kune server debug.launch	2011-03-12 22:13:28 UTC (rev 1271)
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<launchConfiguration type="org.eclipse.jdt.launching.remoteJavaApplication">
+<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS">
+<listEntry value="/kune"/>
+</listAttribute>
+<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES">
+<listEntry value="4"/>
+</listAttribute>
+<listAttribute key="org.eclipse.debug.ui.favoriteGroups">
+<listEntry value="org.eclipse.debug.ui.launchGroup.debug"/>
+</listAttribute>
+<booleanAttribute key="org.eclipse.jdt.launching.ALLOW_TERMINATE" value="false"/>
+<mapAttribute key="org.eclipse.jdt.launching.CONNECT_MAP">
+<mapEntry key="hostname" value="localhost"/>
+<mapEntry key="port" value="8001"/>
+</mapAttribute>
+<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="kune"/>
+<stringAttribute key="org.eclipse.jdt.launching.VM_CONNECTOR_ID" value="org.eclipse.jdt.launching.socketAttachConnector"/>
+</launchConfiguration>

Added: trunk/script/kune server via mvn with debug.launch
===================================================================
--- trunk/script/kune server via mvn with debug.launch	                        (rev 0)
+++ trunk/script/kune server via mvn with debug.launch	2011-03-12 22:13:28 UTC (rev 1271)
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<launchConfiguration type="org.eclipse.ui.externaltools.ProgramLaunchConfigurationType">
+<mapAttribute key="org.eclipse.debug.core.environmentVariables">
+<mapEntry key="MAVEN_OPTS" value="-Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8001"/>
+</mapAttribute>
+<listAttribute key="org.eclipse.debug.ui.favoriteGroups">
+<listEntry value="org.eclipse.ui.externaltools.launchGroup"/>
+</listAttribute>
+<stringAttribute key="org.eclipse.ui.externaltools.ATTR_LOCATION" value="/usr/bin/mvn"/>
+<stringAttribute key="org.eclipse.ui.externaltools.ATTR_TOOL_ARGUMENTS" value="exec:java"/>
+<stringAttribute key="org.eclipse.ui.externaltools.ATTR_WORKING_DIRECTORY" value="${workspace_loc:/kune}"/>
+</launchConfiguration>

Modified: trunk/script/server.sh
===================================================================
--- trunk/script/server.sh	2011-03-10 16:58:36 UTC (rev 1270)
+++ trunk/script/server.sh	2011-03-12 22:13:28 UTC (rev 1271)
@@ -1,5 +1,3 @@
 #!/bin/bash
 
-mvn jetty:run -Dorg.mortbay.util.FileResource.checkAliases=False -Djava.security.auth.login.config=src/main/resources/jaas.config
- # -Dorg.eclipse.jetty.util.log.INFO=true
- # -Dorg.eclipse.jetty.util.log.DEBUG=true
+mvn exec:java

Modified: trunk/src/main/java/cc/kune/chat/client/ChatClientDefault.java
===================================================================
--- trunk/src/main/java/cc/kune/chat/client/ChatClientDefault.java	2011-03-10 16:58:36 UTC (rev 1270)
+++ trunk/src/main/java/cc/kune/chat/client/ChatClientDefault.java	2011-03-12 22:13:28 UTC (rev 1271)
@@ -40,6 +40,7 @@
 import cc.kune.common.client.utils.WindowUtils;
 import cc.kune.core.client.init.AppStartEvent;
 import cc.kune.core.client.init.AppStopEvent;
+import cc.kune.core.client.sitebar.SitebarActions;
 import cc.kune.core.client.sitebar.SitebarActionsPresenter;
 import cc.kune.core.client.state.Session;
 import cc.kune.core.client.state.UserSignInEvent;
@@ -121,15 +122,14 @@
     private final XmppRoster roster;
     private final Session session;
     private final GlobalShortcutRegister shorcutRegister;
-    private final SitebarActionsPresenter siteActions;
+    private final SitebarActions siteActions;
 
     private final XmppSession xmppSession;
 
     @Inject
     public ChatClientDefault(final EventBus eventBus, final I18nTranslationService i18n,
-            final SitebarActionsPresenter siteActions, final Session session,
-            final GlobalShortcutRegister shorcutRegister, final ChatOptions chatOptions,
-            final ChatResources chatResources) {
+            final SitebarActions siteActions, final Session session, final GlobalShortcutRegister shorcutRegister,
+            final ChatOptions chatOptions, final ChatResources chatResources) {
 
         this.eventBus = eventBus;
         this.i18n = i18n;

Modified: trunk/src/main/java/cc/kune/client/KuneGinjector.java
===================================================================
--- trunk/src/main/java/cc/kune/client/KuneGinjector.java	2011-03-10 16:58:36 UTC (rev 1270)
+++ trunk/src/main/java/cc/kune/client/KuneGinjector.java	2011-03-12 22:13:28 UTC (rev 1271)
@@ -40,8 +40,8 @@
 import cc.kune.core.client.sitebar.SitebarActionsPresenter;
 import cc.kune.core.client.sitebar.logo.SiteLogoPresenter;
 import cc.kune.core.client.sitebar.spaces.SpaceSelectorPresenter;
+import cc.kune.core.client.sn.GroupSNPresenter;
 import cc.kune.core.client.sn.UserSNPresenter;
-import cc.kune.core.client.sn.GroupSNPresenter;
 import cc.kune.core.client.state.SiteTokenListeners;
 import cc.kune.core.client.state.StateManager;
 import cc.kune.core.client.ui.footer.license.EntityLicensePresenter;

Modified: trunk/src/main/java/cc/kune/core/client/CoreGinModule.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/CoreGinModule.java	2011-03-10 16:58:36 UTC (rev 1270)
+++ trunk/src/main/java/cc/kune/core/client/CoreGinModule.java	2011-03-12 22:13:28 UTC (rev 1271)
@@ -58,6 +58,7 @@
 import cc.kune.core.client.notify.spiner.SpinerViewImpl;
 import cc.kune.core.client.sitebar.SiteUserOptions;
 import cc.kune.core.client.sitebar.SiteUserOptionsPresenter;
+import cc.kune.core.client.sitebar.SitebarActions;
 import cc.kune.core.client.sitebar.SitebarActionsPanel;
 import cc.kune.core.client.sitebar.SitebarActionsPresenter;
 import cc.kune.core.client.sitebar.SitebarNewGroupLink;
@@ -79,8 +80,8 @@
 import cc.kune.core.client.sn.actions.registry.UserSNBottomActionsRegistry;
 import cc.kune.core.client.sn.actions.registry.UserSNMenuItemsRegistry;
 import cc.kune.core.client.state.AccessRightsClientManager;
-import cc.kune.core.client.state.ContentProvider;
-import cc.kune.core.client.state.ContentProviderDefault;
+import cc.kune.core.client.state.ContentCache;
+import cc.kune.core.client.state.ContentCacheDefault;
 import cc.kune.core.client.state.HistoryWrapper;
 import cc.kune.core.client.state.HistoryWrapperDefault;
 import cc.kune.core.client.state.Session;
@@ -139,8 +140,11 @@
                 SpaceSelectorViewImpl.class, SpaceSelectorPresenter.SpaceSelectorProxy.class);
         bindPresenter(SiteLogoPresenter.class, SiteLogoPresenter.SiteLogoView.class, SiteLogoViewImpl.class,
                 SiteLogoPresenter.SiteLogoProxy.class);
+
         bindPresenter(SitebarActionsPresenter.class, SitebarActionsPresenter.SitebarActionsView.class,
                 SitebarActionsPanel.class, SitebarActionsPresenter.SitebarActionsProxy.class);
+        bind(SitebarActions.class).to(SitebarActionsPresenter.class).in(Singleton.class);
+
         bindPresenter(NewGroupPresenter.class, NewGroupView.class, NewGroupPanel.class,
                 NewGroupPresenter.NewGroupProxy.class);
         bindPresenter(GroupSNPresenter.class, GroupSNPresenter.GroupSNView.class, GroupSNPanel.class,
@@ -183,7 +187,7 @@
         bind(StateManagerDefault.class).in(Singleton.class);
         bind(StateManager.class).to(StateManagerDefault.class).in(Singleton.class);
         bind(AccessRightsClientManager.class).in(Singleton.class);
-        bind(ContentProvider.class).to(ContentProviderDefault.class).in(Singleton.class);
+        bind(ContentCache.class).to(ContentCacheDefault.class).in(Singleton.class);
         bind(HistoryWrapper.class).to(HistoryWrapperDefault.class).in(Singleton.class);
         bind(PrefetchUtilities.class).in(Singleton.class);
         bind(AppStarter.class).to(AppStarterDefault.class).in(Singleton.class);

Modified: trunk/src/main/java/cc/kune/core/client/resources/CoreMessages.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/resources/CoreMessages.java	2011-03-10 16:58:36 UTC (rev 1270)
+++ trunk/src/main/java/cc/kune/core/client/resources/CoreMessages.java	2011-03-12 22:13:28 UTC (rev 1271)
@@ -20,7 +20,7 @@
 package cc.kune.core.client.resources;
 
 public final class CoreMessages {
-    public final static String BUDDIES_NOT_PUBLIC = "The buddies and group participation of this user are not public";
+    public final static String BUDDIES_NOT_PUBLIC = "The social network of this user is not public";
     public final static String EMAIL_IN_USE = "This email address is being used by another user. Please, try with another one";
     public final static String ENT_LOGO_SELECTOR_NORMAL_TITLE = "Logo";
     public final static String ENT_LOGO_SELECTOR_PERSON_TITLE = "Avatar";

Modified: trunk/src/main/java/cc/kune/core/client/rpcservices/UserService.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/rpcservices/UserService.java	2011-03-10 16:58:36 UTC (rev 1270)
+++ trunk/src/main/java/cc/kune/core/client/rpcservices/UserService.java	2011-03-12 22:13:28 UTC (rev 1271)
@@ -20,7 +20,7 @@
 package cc.kune.core.client.rpcservices;
 
 import cc.kune.core.client.errors.DefaultException;
-import cc.kune.core.shared.domain.UserBuddiesVisibility;
+import cc.kune.core.shared.domain.UserSNetVisibility;
 import cc.kune.core.shared.domain.utils.StateToken;
 import cc.kune.core.shared.dto.UserDTO;
 import cc.kune.core.shared.dto.UserInfoDTO;
@@ -43,6 +43,6 @@
 
     UserInfoDTO reloadUserInfo(String userHash) throws DefaultException;
 
-    void setBuddiesVisibility(String userHash, StateToken groupToken, UserBuddiesVisibility visibility);
+    void setBuddiesVisibility(String userHash, StateToken groupToken, UserSNetVisibility visibility);
 
 }

Modified: trunk/src/main/java/cc/kune/core/client/rpcservices/UserServiceAsync.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/rpcservices/UserServiceAsync.java	2011-03-10 16:58:36 UTC (rev 1270)
+++ trunk/src/main/java/cc/kune/core/client/rpcservices/UserServiceAsync.java	2011-03-12 22:13:28 UTC (rev 1271)
@@ -19,7 +19,7 @@
  */
 package cc.kune.core.client.rpcservices;
 
-import cc.kune.core.shared.domain.UserBuddiesVisibility;
+import cc.kune.core.shared.domain.UserSNetVisibility;
 import cc.kune.core.shared.domain.utils.StateToken;
 import cc.kune.core.shared.dto.UserDTO;
 import cc.kune.core.shared.dto.UserInfoDTO;
@@ -40,7 +40,7 @@
 
     void reloadUserInfo(String userHash, AsyncCallback<UserInfoDTO> asyncCallback);
 
-    void setBuddiesVisibility(String userHash, StateToken groupToken, UserBuddiesVisibility visibility,
+    void setBuddiesVisibility(String userHash, StateToken groupToken, UserSNetVisibility visibility,
             AsyncCallback<Void> asyncCallback);
 
 }

Added: trunk/src/main/java/cc/kune/core/client/sitebar/SitebarActions.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/sitebar/SitebarActions.java	                        (rev 0)
+++ trunk/src/main/java/cc/kune/core/client/sitebar/SitebarActions.java	2011-03-12 22:13:28 UTC (rev 1271)
@@ -0,0 +1,11 @@
+package cc.kune.core.client.sitebar;
+
+import cc.kune.common.client.actions.ui.IsActionExtensible;
+
+public interface SitebarActions {
+
+    IsActionExtensible getLeftToolbar();
+
+    IsActionExtensible getRightToolbar();
+
+}

Modified: trunk/src/main/java/cc/kune/core/client/sitebar/SitebarActionsPresenter.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/sitebar/SitebarActionsPresenter.java	2011-03-10 16:58:36 UTC (rev 1270)
+++ trunk/src/main/java/cc/kune/core/client/sitebar/SitebarActionsPresenter.java	2011-03-12 22:13:28 UTC (rev 1271)
@@ -48,7 +48,8 @@
 import com.gwtplatform.mvp.client.proxy.RevealRootContentEvent;
 
 public class SitebarActionsPresenter extends
-        Presenter<SitebarActionsPresenter.SitebarActionsView, SitebarActionsPresenter.SitebarActionsProxy> {
+        Presenter<SitebarActionsPresenter.SitebarActionsView, SitebarActionsPresenter.SitebarActionsProxy> implements
+        SitebarActions {
 
     @ProxyCodeSplit
     public interface SitebarActionsProxy extends Proxy<SitebarActionsPresenter> {

Modified: trunk/src/main/java/cc/kune/core/client/sn/UserSNPanel.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/sn/UserSNPanel.java	2011-03-10 16:58:36 UTC (rev 1270)
+++ trunk/src/main/java/cc/kune/core/client/sn/UserSNPanel.java	2011-03-12 22:13:28 UTC (rev 1271)
@@ -23,7 +23,7 @@
         mainTitle.setTitle(i18n.t("This user buddies and groups where participes"));
         firstCategoryLabel.setText(i18n.t("Buddies"));
         firstCategoryPanel.setTitle(i18n.t("This user buddies"));
-        sndCategoryLabel.setText(i18n.t("and participates in"));
+        sndCategoryLabel.setText(i18n.t("Participates in"));
         sndCategoryPanel.setTitle(i18n.t("Groups in which this user participates"));
         firstDeckLabel.setText(i18n.t(CoreMessages.BUDDIES_NOT_PUBLIC));
         trdCategoryLabel.setText("NOT USED");

Modified: trunk/src/main/java/cc/kune/core/client/sn/actions/GotoGroupAction.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/sn/actions/GotoGroupAction.java	2011-03-10 16:58:36 UTC (rev 1270)
+++ trunk/src/main/java/cc/kune/core/client/sn/actions/GotoGroupAction.java	2011-03-12 22:13:28 UTC (rev 1271)
@@ -5,7 +5,9 @@
 import cc.kune.common.client.actions.ActionEvent;
 import cc.kune.core.client.resources.CoreResources;
 import cc.kune.core.client.state.StateManager;
+import cc.kune.core.shared.domain.utils.StateToken;
 import cc.kune.core.shared.dto.GroupDTO;
+import cc.kune.core.shared.dto.UserSimpleDTO;
 import cc.kune.core.shared.i18n.I18nTranslationService;
 
 import com.google.inject.Inject;
@@ -23,7 +25,14 @@
 
     @Override
     public void actionPerformed(final ActionEvent event) {
-        stateManager.gotoToken(((GroupDTO) event.getTarget()).getStateToken());
+        StateToken token;
+        final Object target = event.getTarget();
+        if (target instanceof GroupDTO) {
+            token = ((GroupDTO) target).getStateToken();
+        } else {
+            token = ((UserSimpleDTO) target).getStateToken();
+        }
+        stateManager.gotoToken(token);
     }
 
 }

Modified: trunk/src/main/java/cc/kune/core/client/sn/actions/UserSNVisibilityAction.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/sn/actions/UserSNVisibilityAction.java	2011-03-10 16:58:36 UTC (rev 1270)
+++ trunk/src/main/java/cc/kune/core/client/sn/actions/UserSNVisibilityAction.java	2011-03-12 22:13:28 UTC (rev 1271)
@@ -7,7 +7,7 @@
 import cc.kune.core.client.rpcservices.UserServiceAsync;
 import cc.kune.core.client.state.Session;
 import cc.kune.core.client.state.StateManager;
-import cc.kune.core.shared.domain.UserBuddiesVisibility;
+import cc.kune.core.shared.domain.UserSNetVisibility;
 import cc.kune.core.shared.i18n.I18nTranslationService;
 
 import com.google.inject.Inject;
@@ -18,7 +18,7 @@
     private final Session session;
     private final StateManager stateManager;
     private final Provider<UserServiceAsync> userServiceAsync;
-    private UserBuddiesVisibility visibility;
+    private UserSNetVisibility visibility;
 
     @Inject
     public UserSNVisibilityAction(final Session session, final StateManager stateManager,
@@ -35,15 +35,16 @@
                 session.getCurrentState().getGroup().getStateToken(), visibility, new AsyncCallbackSimple<Void>() {
                     @Override
                     public void onSuccess(final Void result) {
-                        NotifyUser.info(i18n.t("Visibility of your network changed to " + visibility.toString()));
-                        // NotifyUser.info(i18n.t("Visibility of your network changed"));
+                        // NotifyUser.info(i18n.t("Visibility of your network changed to "
+                        // + visibility.toString()));
+                        NotifyUser.info(i18n.t("Visibility of your network changed"));
                         stateManager.reload();
                     }
                 });
 
     }
 
-    public void setVisibility(final UserBuddiesVisibility visibility) {
+    public void setVisibility(final UserSNetVisibility visibility) {
         this.visibility = visibility;
     }
 

Modified: trunk/src/main/java/cc/kune/core/client/sn/actions/UserSNVisibilityMenuItem.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/sn/actions/UserSNVisibilityMenuItem.java	2011-03-10 16:58:36 UTC (rev 1270)
+++ trunk/src/main/java/cc/kune/core/client/sn/actions/UserSNVisibilityMenuItem.java	2011-03-12 22:13:28 UTC (rev 1271)
@@ -2,7 +2,7 @@
 
 import cc.kune.common.client.actions.ui.descrip.MenuDescriptor;
 import cc.kune.common.client.actions.ui.descrip.MenuRadioItemDescriptor;
-import cc.kune.core.shared.domain.UserBuddiesVisibility;
+import cc.kune.core.shared.domain.UserSNetVisibility;
 
 import com.google.inject.Inject;
 
@@ -15,7 +15,7 @@
         super(parent, action, USER_BUDDIES_VISIBILITY_GROUP);
     }
 
-    public MenuRadioItemDescriptor withVisibility(final UserBuddiesVisibility visibility) {
+    public MenuRadioItemDescriptor withVisibility(final UserSNetVisibility visibility) {
         ((UserSNVisibilityAction) getAction()).setVisibility(visibility);
         return this;
     }

Modified: trunk/src/main/java/cc/kune/core/client/sn/actions/registry/GroupMembersConfActions.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/sn/actions/registry/GroupMembersConfActions.java	2011-03-10 16:58:36 UTC (rev 1270)
+++ trunk/src/main/java/cc/kune/core/client/sn/actions/registry/GroupMembersConfActions.java	2011-03-12 22:13:28 UTC (rev 1271)
@@ -10,6 +10,8 @@
 import cc.kune.core.client.sn.actions.MembersVisibilityMenuItem;
 import cc.kune.core.client.sn.actions.UnJoinGroupAction;
 import cc.kune.core.client.sn.actions.conditions.IsGroupCondition;
+import cc.kune.core.client.sn.actions.conditions.IsLoggedCondition;
+import cc.kune.core.client.state.Session;
 import cc.kune.core.client.state.StateChangedEvent;
 import cc.kune.core.client.state.StateChangedEvent.StateChangedHandler;
 import cc.kune.core.client.state.StateManager;
@@ -29,11 +31,12 @@
     public static final SubMenuDescriptor VISIBILITY_SUBMENU = new SubMenuDescriptor();
 
     @Inject
-    public GroupMembersConfActions(final StateManager stateManager, final I18nTranslationService i18n,
-            final GroupSNBottomActionsRegistry registry, final Provider<MembersVisibilityMenuItem> membersVisibility,
+    public GroupMembersConfActions(final Session session, final StateManager stateManager,
+            final I18nTranslationService i18n, final GroupSNBottomActionsRegistry registry,
+            final Provider<MembersVisibilityMenuItem> membersVisibility,
             final Provider<MembersModerationMenuItem> membersModeration, final CoreResources res,
-            final JoinGroupAction joinGroupAction, final IsGroupCondition isGroupCondition,
-            final UnJoinGroupAction unJoinGroupAction) {
+            final IsLoggedCondition isLoggedCondition, final JoinGroupAction joinGroupAction,
+            final IsGroupCondition isGroupCondition, final UnJoinGroupAction unJoinGroupAction) {
         OPTIONS_MENU.withToolTip(i18n.t("Options")).withIcon(res.arrowDownSitebar()).withStyles("k-sn-options-menu");
         final MenuRadioItemDescriptor anyoneItem = membersVisibility.get().withVisibility(
                 SocialNetworkVisibility.anyone);
@@ -57,6 +60,7 @@
 
         final ButtonDescriptor joinBtn = new ButtonDescriptor(joinGroupAction);
         final ButtonDescriptor unJoinBtn = new ButtonDescriptor(unJoinGroupAction);
+        unJoinBtn.add(isLoggedCondition);
         registry.add(joinBtn.withStyles("k-no-backimage"));
         registry.add(unJoinBtn.withStyles("k-no-backimage"));
 
@@ -92,6 +96,7 @@
                     closedItem.setChecked(true);
                     break;
                 }
+                unJoinBtn.setVisible(session.isLogged());
             }
         });
     }

Modified: trunk/src/main/java/cc/kune/core/client/sn/actions/registry/GroupSNAdminsMenuItemsRegistry.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/sn/actions/registry/GroupSNAdminsMenuItemsRegistry.java	2011-03-10 16:58:36 UTC (rev 1270)
+++ trunk/src/main/java/cc/kune/core/client/sn/actions/registry/GroupSNAdminsMenuItemsRegistry.java	2011-03-12 22:13:28 UTC (rev 1271)
@@ -33,49 +33,48 @@
         add(new Provider<MenuItemDescriptor>() {
             @Override
             public MenuItemDescriptor get() {
-                final MenuItemDescriptor item = new MenuItemDescriptor(changeToCollabAction);
-                item.add(isAdministrableCondition);
+                final MenuItemDescriptor item = new MenuItemDescriptor(gotoMemberAction);
+                item.add(isPersonCondition);
                 item.add(isNotMe);
-                item.add(isLogged);
                 return item;
             }
         });
         add(new Provider<MenuItemDescriptor>() {
             @Override
             public MenuItemDescriptor get() {
-                final MenuItemDescriptor item = new MenuItemDescriptor(removeMemberAction);
-                item.add(isAdministrableCondition);
-                item.add(isNotMe);
-                item.add(isLogged);
+                final MenuItemDescriptor item = new MenuItemDescriptor(gotoYourHomePageAction);
+                item.add(isPersonCondition);
+                item.add(isMe);
                 return item;
             }
         });
         add(new Provider<MenuItemDescriptor>() {
             @Override
             public MenuItemDescriptor get() {
-                final MenuItemDescriptor item = new MenuItemDescriptor(gotoMemberAction);
-                item.add(isPersonCondition);
-                item.add(isNotMe);
+                final MenuItemDescriptor item = new MenuItemDescriptor(gotoGroupAction);
+                item.add(isGroupCondition);
                 return item;
             }
         });
         add(new Provider<MenuItemDescriptor>() {
             @Override
             public MenuItemDescriptor get() {
-                final MenuItemDescriptor item = new MenuItemDescriptor(gotoYourHomePageAction);
-                item.add(isPersonCondition);
-                item.add(isMe);
+                final MenuItemDescriptor item = new MenuItemDescriptor(changeToCollabAction);
+                item.add(isAdministrableCondition);
+                item.add(isNotMe);
+                item.add(isLogged);
                 return item;
             }
         });
         add(new Provider<MenuItemDescriptor>() {
             @Override
             public MenuItemDescriptor get() {
-                final MenuItemDescriptor item = new MenuItemDescriptor(gotoGroupAction);
-                item.add(isGroupCondition);
+                final MenuItemDescriptor item = new MenuItemDescriptor(removeMemberAction);
+                item.add(isAdministrableCondition);
+                item.add(isNotMe);
+                item.add(isLogged);
                 return item;
             }
         });
     }
-
 }

Modified: trunk/src/main/java/cc/kune/core/client/sn/actions/registry/UserSNConfActions.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/sn/actions/registry/UserSNConfActions.java	2011-03-10 16:58:36 UTC (rev 1270)
+++ trunk/src/main/java/cc/kune/core/client/sn/actions/registry/UserSNConfActions.java	2011-03-12 22:13:28 UTC (rev 1271)
@@ -12,7 +12,7 @@
 import cc.kune.core.client.state.StateChangedEvent;
 import cc.kune.core.client.state.StateChangedEvent.StateChangedHandler;
 import cc.kune.core.client.state.StateManager;
-import cc.kune.core.shared.domain.UserBuddiesVisibility;
+import cc.kune.core.shared.domain.UserSNetVisibility;
 import cc.kune.core.shared.dto.GroupDTO;
 import cc.kune.core.shared.dto.StateAbstractDTO;
 import cc.kune.core.shared.i18n.I18nTranslationService;
@@ -33,11 +33,11 @@
         OPTIONS_MENU.withToolTip(i18n.t("Options")).withIcon(res.arrowDownSitebar()).withStyles("k-sn-options-menu");
 
         final MenuRadioItemDescriptor anyoneItem = userBuddiesVisibility.get().withVisibility(
-                UserBuddiesVisibility.anyone);
+                UserSNetVisibility.anyone);
         final MenuRadioItemDescriptor onlyYourBuddiesItem = userBuddiesVisibility.get().withVisibility(
-                UserBuddiesVisibility.yourbuddies);
+                UserSNetVisibility.yourbuddies);
         final MenuRadioItemDescriptor onlyYou = userBuddiesVisibility.get().withVisibility(
-                UserBuddiesVisibility.onlyyou);
+                UserSNetVisibility.onlyyou);
         assert anyoneItem.getAction() != onlyYourBuddiesItem.getAction();
         assert anyoneItem.getAction() != onlyYou.getAction();
         registry.add(OPTIONS_MENU);
@@ -59,7 +59,7 @@
                 OPTIONS_MENU.setEnabled(administrable);
                 final GroupDTO currentGroup = state.getGroup();
                 if (currentGroup.isPersonal()) {
-                    final UserBuddiesVisibility visibility = state.getSocialNetworkData().getUserBuddiesVisibility();
+                    final UserSNetVisibility visibility = state.getSocialNetworkData().getUserBuddiesVisibility();
                     switch (visibility) {
                     case anyone:
                         anyoneItem.setChecked(true);

Modified: trunk/src/main/java/cc/kune/core/client/sn/actions/registry/UserSNMenuItemsRegistry.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/sn/actions/registry/UserSNMenuItemsRegistry.java	2011-03-10 16:58:36 UTC (rev 1270)
+++ trunk/src/main/java/cc/kune/core/client/sn/actions/registry/UserSNMenuItemsRegistry.java	2011-03-12 22:13:28 UTC (rev 1271)
@@ -12,6 +12,7 @@
 import cc.kune.core.client.sn.actions.UnJoinGroupAction;
 import cc.kune.core.client.sn.actions.conditions.IsAdministrableCondition;
 import cc.kune.core.client.sn.actions.conditions.IsGroupCondition;
+import cc.kune.core.client.sn.actions.conditions.IsLoggedCondition;
 import cc.kune.core.client.sn.actions.conditions.IsMeCondition;
 import cc.kune.core.client.sn.actions.conditions.IsNotMeCondition;
 import cc.kune.core.client.sn.actions.conditions.IsPersonCondition;
@@ -26,32 +27,34 @@
     @Inject
     public UserSNMenuItemsRegistry(final Session session, final IsAdministrableCondition isAdministrableCondition,
             final IsPersonCondition isPersonCondition, final IsGroupCondition isGroupCondition,
-            final IsMeCondition isMe, final IsNotMeCondition isNotMe, final ChangeToCollabAction changeToCollabAction,
-            final ChangeToAdminAction changeToAdminAction, final RemoveMemberAction removeMemberAction,
-            final AcceptJoinGroupAction acceptJoinGroupAction, final DenyJoinGroupAction denyJoinGroupAction,
-            final GotoGroupAction gotoGroupAction, final GotoPersonAction gotoPersonAction,
-            final UnJoinGroupAction unjoinAction, final GotoYourHomePageAction gotoYourHomePageAction) {
+            final IsLoggedCondition isLoggedCondition, final IsMeCondition isMe, final IsNotMeCondition isNotMe,
+            final ChangeToCollabAction changeToCollabAction, final ChangeToAdminAction changeToAdminAction,
+            final RemoveMemberAction removeMemberAction, final AcceptJoinGroupAction acceptJoinGroupAction,
+            final DenyJoinGroupAction denyJoinGroupAction, final GotoGroupAction gotoGroupAction,
+            final GotoPersonAction gotoPersonAction, final UnJoinGroupAction unjoinAction,
+            final GotoYourHomePageAction gotoYourHomePageAction) {
         add(new Provider<MenuItemDescriptor>() {
             @Override
             public MenuItemDescriptor get() {
-                final MenuItemDescriptor item = new MenuItemDescriptor(unjoinAction);
-                item.add(isGroupCondition);
+                final MenuItemDescriptor item = new MenuItemDescriptor(gotoPersonAction);
+                item.add(isPersonCondition);
+                item.add(isNotMe);
                 return item;
             }
         });
         add(new Provider<MenuItemDescriptor>() {
             @Override
             public MenuItemDescriptor get() {
-                final MenuItemDescriptor item = new MenuItemDescriptor(gotoPersonAction);
-                item.add(isPersonCondition);
-                item.add(isNotMe);
+                final MenuItemDescriptor item = new MenuItemDescriptor(gotoGroupAction);
+                item.add(isGroupCondition);
                 return item;
             }
         });
         add(new Provider<MenuItemDescriptor>() {
             @Override
             public MenuItemDescriptor get() {
-                final MenuItemDescriptor item = new MenuItemDescriptor(gotoGroupAction);
+                final MenuItemDescriptor item = new MenuItemDescriptor(unjoinAction);
+                item.add(isLoggedCondition);
                 item.add(isGroupCondition);
                 return item;
             }

Copied: trunk/src/main/java/cc/kune/core/client/state/ContentCache.java (from rev 1262, trunk/src/main/java/cc/kune/core/client/state/ContentProvider.java)
===================================================================
--- trunk/src/main/java/cc/kune/core/client/state/ContentCache.java	                        (rev 0)
+++ trunk/src/main/java/cc/kune/core/client/state/ContentCache.java	2011-03-12 22:13:28 UTC (rev 1271)
@@ -0,0 +1,34 @@
+/*
+ *
+ * Copyright (C) 2007-2011 The kune development team (see CREDITS for details)
+ * This file is part of kune.
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+package cc.kune.core.client.state;
+
+
+import cc.kune.core.shared.domain.utils.StateToken;
+import cc.kune.core.shared.dto.StateAbstractDTO;
+
+import com.google.gwt.user.client.rpc.AsyncCallback;
+
+public interface ContentCache {
+
+    void cache(StateToken encodeState, StateAbstractDTO content);
+
+    void getContent(String user, StateToken newState, AsyncCallback<StateAbstractDTO> callback);
+
+}

Copied: trunk/src/main/java/cc/kune/core/client/state/ContentCacheDefault.java (from rev 1262, trunk/src/main/java/cc/kune/core/client/state/ContentProviderDefault.java)
===================================================================
--- trunk/src/main/java/cc/kune/core/client/state/ContentCacheDefault.java	                        (rev 0)
+++ trunk/src/main/java/cc/kune/core/client/state/ContentCacheDefault.java	2011-03-12 22:13:28 UTC (rev 1271)
@@ -0,0 +1,68 @@
+/*
+ *
+ * Copyright (C) 2007-2011 The kune development team (see CREDITS for details)
+ * This file is part of kune.
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+package cc.kune.core.client.state;
+
+import java.util.HashMap;
+
+import cc.kune.core.client.notify.spiner.ProgressShowEvent;
+import cc.kune.core.client.rpcservices.ContentServiceAsync;
+import cc.kune.core.shared.domain.utils.StateToken;
+import cc.kune.core.shared.dto.StateAbstractDTO;
+
+import com.google.gwt.event.shared.EventBus;
+import com.google.gwt.user.client.rpc.AsyncCallback;
+import com.google.inject.Inject;
+
+public class ContentCacheDefault implements ContentCache {
+    private final HashMap<StateToken, StateAbstractDTO> cache;
+    private final EventBus eventBus;
+    private final ContentServiceAsync server;
+
+    @Inject
+    public ContentCacheDefault(final ContentServiceAsync server, final EventBus eventBus) {
+        this.server = server;
+        this.eventBus = eventBus;
+        this.cache = new HashMap<StateToken, StateAbstractDTO>();
+    }
+
+    @Override
+    public void cache(final StateToken encodeState, final StateAbstractDTO content) {
+        // Disabled by now
+        // cache.put(encodeState, content);
+    }
+
+    private StateAbstractDTO getCached(final StateToken newState) {
+        return null;
+        // Disabled by now
+        // return cache.remove(newState);
+    }
+
+    @Override
+    public void getContent(final String user, final StateToken newState, final AsyncCallback<StateAbstractDTO> callback) {
+        eventBus.fireEvent(new ProgressShowEvent(""));
+        final StateAbstractDTO catched = getCached(newState);
+        if (catched != null) {
+            callback.onSuccess(catched);
+        } else {
+            server.getContent(user, newState, callback);
+        }
+    }
+
+}

Deleted: trunk/src/main/java/cc/kune/core/client/state/ContentProvider.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/state/ContentProvider.java	2011-03-10 16:58:36 UTC (rev 1270)
+++ trunk/src/main/java/cc/kune/core/client/state/ContentProvider.java	2011-03-12 22:13:28 UTC (rev 1271)
@@ -1,34 +0,0 @@
-/*
- *
- * Copyright (C) 2007-2011 The kune development team (see CREDITS for details)
- * This file is part of kune.
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Affero General Public License as
- * published by the Free Software Foundation, either version 3 of the
- * License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU Affero General Public License for more details.
- *
- * You should have received a copy of the GNU Affero General Public License
- * along with this program.  If not, see <http://www.gnu.org/licenses/>.
- *
- */
-package cc.kune.core.client.state;
-
-
-import cc.kune.core.shared.domain.utils.StateToken;
-import cc.kune.core.shared.dto.StateAbstractDTO;
-
-import com.google.gwt.user.client.rpc.AsyncCallback;
-
-public interface ContentProvider {
-
-    void cache(StateToken encodeState, StateAbstractDTO content);
-
-    void getContent(String user, StateToken newState, AsyncCallback<StateAbstractDTO> callback);
-
-}

Deleted: trunk/src/main/java/cc/kune/core/client/state/ContentProviderDefault.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/state/ContentProviderDefault.java	2011-03-10 16:58:36 UTC (rev 1270)
+++ trunk/src/main/java/cc/kune/core/client/state/ContentProviderDefault.java	2011-03-12 22:13:28 UTC (rev 1271)
@@ -1,65 +0,0 @@
-/*
- *
- * Copyright (C) 2007-2011 The kune development team (see CREDITS for details)
- * This file is part of kune.
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Affero General Public License as
- * published by the Free Software Foundation, either version 3 of the
- * License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU Affero General Public License for more details.
- *
- * You should have received a copy of the GNU Affero General Public License
- * along with this program.  If not, see <http://www.gnu.org/licenses/>.
- *
- */
-package cc.kune.core.client.state;
-
-import java.util.HashMap;
-
-import cc.kune.core.client.notify.spiner.ProgressShowEvent;
-import cc.kune.core.client.rpcservices.ContentServiceAsync;
-import cc.kune.core.shared.domain.utils.StateToken;
-import cc.kune.core.shared.dto.StateAbstractDTO;
-
-import com.google.gwt.event.shared.EventBus;
-import com.google.gwt.user.client.rpc.AsyncCallback;
-import com.google.inject.Inject;
-
-public class ContentProviderDefault implements ContentProvider {
-    private final ContentServiceAsync server;
-    private final HashMap<StateToken, StateAbstractDTO> cache;
-    private final EventBus eventBus;
-
-    @Inject
-    public ContentProviderDefault(final ContentServiceAsync server, final EventBus eventBus) {
-        this.server = server;
-        this.eventBus = eventBus;
-        this.cache = new HashMap<StateToken, StateAbstractDTO>();
-    }
-
-    @Override
-    public void cache(final StateToken encodeState, final StateAbstractDTO content) {
-        cache.put(encodeState, content);
-    }
-
-    @Override
-    public void getContent(final String user, final StateToken newState, final AsyncCallback<StateAbstractDTO> callback) {
-        eventBus.fireEvent(new ProgressShowEvent(""));
-        final StateAbstractDTO catched = getCached(newState);
-        if (catched != null) {
-            callback.onSuccess(catched);
-        } else {
-            server.getContent(user, newState, callback);
-        }
-    }
-
-    private StateAbstractDTO getCached(final StateToken newState) {
-        return cache.remove(newState);
-    }
-
-}

Modified: trunk/src/main/java/cc/kune/core/client/state/StateManagerDefault.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/state/StateManagerDefault.java	2011-03-10 16:58:36 UTC (rev 1270)
+++ trunk/src/main/java/cc/kune/core/client/state/StateManagerDefault.java	2011-03-12 22:13:28 UTC (rev 1271)
@@ -45,7 +45,7 @@
 
 public class StateManagerDefault implements StateManager, ValueChangeHandler<String> {
     private final BeforeActionCollection beforeStateChangeCollection;
-    private final ContentProvider contentProvider;
+    private final ContentCache contentProvider;
     private final EventBus eventBus;
     private final HistoryWrapper history;
     private StateToken previousToken;
@@ -58,7 +58,7 @@
     private final HashMap<String, HistoryTokenCallback> siteTokens;
 
     @Inject
-    public StateManagerDefault(final ContentProvider contentProvider, final Session session,
+    public StateManagerDefault(final ContentCache contentProvider, final Session session,
             final HistoryWrapper history, final EventBus eventBus) {
         this.eventBus = eventBus;
         this.contentProvider = contentProvider;

Modified: trunk/src/main/java/cc/kune/core/public/ws.css
===================================================================
--- trunk/src/main/java/cc/kune/core/public/ws.css	2011-03-10 16:58:36 UTC (rev 1270)
+++ trunk/src/main/java/cc/kune/core/public/ws.css	2011-03-12 22:13:28 UTC (rev 1271)
@@ -866,7 +866,7 @@
 }
 
 .k-sn-collabspanel {
-
+    background-color: #d38d5f;
 }
 
 .k-sn-pendingspanel { /* background-color: #a05a2c; */

Deleted: trunk/src/main/java/cc/kune/core/shared/domain/UserBuddiesVisibility.java
===================================================================
--- trunk/src/main/java/cc/kune/core/shared/domain/UserBuddiesVisibility.java	2011-03-10 16:58:36 UTC (rev 1270)
+++ trunk/src/main/java/cc/kune/core/shared/domain/UserBuddiesVisibility.java	2011-03-12 22:13:28 UTC (rev 1271)
@@ -1,26 +0,0 @@
-/*
- *
- * Copyright (C) 2007-2009 The kune development team (see CREDITS for details)
- * This file is part of kune.
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Affero General Public License as
- * published by the Free Software Foundation, either version 3 of the
- * License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU Affero General Public License for more details.
- *
- * You should have received a copy of the GNU Affero General Public License
- * along with this program.  If not, see <http://www.gnu.org/licenses/>.
- *
- */
-package cc.kune.core.shared.domain;
-
-import com.google.gwt.user.client.rpc.IsSerializable;
-
-public enum UserBuddiesVisibility implements IsSerializable {
-    anyone, yourbuddies, onlyyou
-}

Copied: trunk/src/main/java/cc/kune/core/shared/domain/UserSNetVisibility.java (from rev 1262, trunk/src/main/java/cc/kune/core/shared/domain/UserBuddiesVisibility.java)
===================================================================
--- trunk/src/main/java/cc/kune/core/shared/domain/UserSNetVisibility.java	                        (rev 0)
+++ trunk/src/main/java/cc/kune/core/shared/domain/UserSNetVisibility.java	2011-03-12 22:13:28 UTC (rev 1271)
@@ -0,0 +1,26 @@
+/*
+ *
+ * Copyright (C) 2007-2009 The kune development team (see CREDITS for details)
+ * This file is part of kune.
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+package cc.kune.core.shared.domain;
+
+import com.google.gwt.user.client.rpc.IsSerializable;
+
+public enum UserSNetVisibility implements IsSerializable {
+    anyone, yourbuddies, onlyyou
+}

Modified: trunk/src/main/java/cc/kune/core/shared/dto/SocialNetworkDataDTO.java
===================================================================
--- trunk/src/main/java/cc/kune/core/shared/dto/SocialNetworkDataDTO.java	2011-03-10 16:58:36 UTC (rev 1270)
+++ trunk/src/main/java/cc/kune/core/shared/dto/SocialNetworkDataDTO.java	2011-03-12 22:13:28 UTC (rev 1271)
@@ -20,7 +20,7 @@
 package cc.kune.core.shared.dto;
 
 import cc.kune.core.shared.domain.SocialNetworkVisibility;
-import cc.kune.core.shared.domain.UserBuddiesVisibility;
+import cc.kune.core.shared.domain.UserSNetVisibility;
 import cc.kune.core.shared.domain.utils.AccessRights;
 
 import com.google.gwt.user.client.rpc.IsSerializable;
@@ -33,7 +33,7 @@
     private boolean isMembersVisible;
     private SocialNetworkVisibility socialNetworkVisibility;
     private UserBuddiesDataDTO userBuddies;
-    private UserBuddiesVisibility userBuddiesVisibility;
+    private UserSNetVisibility userBuddiesVisibility;
     private ParticipationDataDTO userParticipation;
 
     public SocialNetworkDataDTO() {
@@ -42,7 +42,7 @@
 
     public SocialNetworkDataDTO(final SocialNetworkVisibility socialNetworkVisibility,
             final SocialNetworkDTO groupMembers, final ParticipationDataDTO userParticipation,
-            final UserBuddiesVisibility userBuddiesVisibility, final UserBuddiesDataDTO userBuddies,
+            final UserSNetVisibility userBuddiesVisibility, final UserBuddiesDataDTO userBuddies,
             final AccessRights groupRights, final boolean isBuddiesVisible, final boolean isMembersVisible) {
         this.socialNetworkVisibility = socialNetworkVisibility;
         this.groupMembers = groupMembers;
@@ -78,7 +78,7 @@
         return userBuddies;
     }
 
-    public UserBuddiesVisibility getUserBuddiesVisibility() {
+    public UserSNetVisibility getUserBuddiesVisibility() {
         return userBuddiesVisibility;
     }
 
@@ -126,7 +126,7 @@
         this.userBuddies = userBuddies;
     }
 
-    public void setUserBuddiesVisibility(final UserBuddiesVisibility userBuddiesVisibility) {
+    public void setUserBuddiesVisibility(final UserSNetVisibility userBuddiesVisibility) {
         this.userBuddiesVisibility = userBuddiesVisibility;
     }
 

Modified: trunk/src/main/java/cc/kune/domain/GroupList.java
===================================================================
--- trunk/src/main/java/cc/kune/domain/GroupList.java	2011-03-10 16:58:36 UTC (rev 1270)
+++ trunk/src/main/java/cc/kune/domain/GroupList.java	2011-03-12 22:13:28 UTC (rev 1271)
@@ -41,15 +41,15 @@
 @Table(name = "group_list")
 @Inheritance(strategy = InheritanceType.SINGLE_TABLE)
 public class GroupList {
+    @Id
+    @GeneratedValue
+    private Long id;
+
     @OrderBy("shortName ASC")
     @ManyToMany(cascade = { CascadeType.PERSIST, CascadeType.MERGE })
     List<Group> list;
 
-    @Id
-    @GeneratedValue
-    private Long id;
-
-    @Enumerated(EnumType.ORDINAL)
+    @Enumerated(EnumType.STRING)
     @Basic
     private GroupListMode mode;
 

Modified: trunk/src/main/java/cc/kune/domain/SocialNetwork.java
===================================================================
--- trunk/src/main/java/cc/kune/domain/SocialNetwork.java	2011-03-10 16:58:36 UTC (rev 1270)
+++ trunk/src/main/java/cc/kune/domain/SocialNetwork.java	2011-03-12 22:13:28 UTC (rev 1271)
@@ -21,6 +21,8 @@
 
 import javax.persistence.CascadeType;
 import javax.persistence.Entity;
+import javax.persistence.EnumType;
+import javax.persistence.Enumerated;
 import javax.persistence.GeneratedValue;
 import javax.persistence.Id;
 import javax.persistence.OneToOne;
@@ -33,16 +35,17 @@
 public class SocialNetwork {
     public static final SocialNetwork EMPTY = new SocialNetwork(SocialNetworkVisibility.onlyadmins);
 
+    @OneToOne(cascade = CascadeType.ALL)
+    AccessLists accessLists;
+
     @Id
     @GeneratedValue
     Long id;
 
     @OneToOne(cascade = CascadeType.ALL)
-    AccessLists accessLists;
-
-    @OneToOne(cascade = CascadeType.ALL)
     GroupList pendingCollaborators;
 
+    @Enumerated(EnumType.STRING)
     SocialNetworkVisibility visibility;
 
     public SocialNetwork() {
@@ -51,7 +54,7 @@
         visibility = SocialNetworkVisibility.anyone;
     }
 
-    public SocialNetwork(SocialNetworkVisibility visibility) {
+    public SocialNetwork(final SocialNetworkVisibility visibility) {
         accessLists = new AccessLists();
         pendingCollaborators = new GroupList();
         this.visibility = visibility;
@@ -133,7 +136,7 @@
         this.pendingCollaborators = pendingCollaborators;
     }
 
-    public void setVisibility(SocialNetworkVisibility visibility) {
+    public void setVisibility(final SocialNetworkVisibility visibility) {
         this.visibility = visibility;
     }
 

Modified: trunk/src/main/java/cc/kune/domain/User.java
===================================================================
--- trunk/src/main/java/cc/kune/domain/User.java	2011-03-10 16:58:36 UTC (rev 1270)
+++ trunk/src/main/java/cc/kune/domain/User.java	2011-03-12 22:13:28 UTC (rev 1271)
@@ -25,6 +25,8 @@
 import javax.persistence.CascadeType;
 import javax.persistence.Column;
 import javax.persistence.Entity;
+import javax.persistence.EnumType;
+import javax.persistence.Enumerated;
 import javax.persistence.GeneratedValue;
 import javax.persistence.Id;
 import javax.persistence.Lob;
@@ -43,7 +45,7 @@
 import org.hibernate.validator.NotNull;
 import org.hibernate.validator.Pattern;
 
-import cc.kune.core.shared.domain.UserBuddiesVisibility;
+import cc.kune.core.shared.domain.UserSNetVisibility;
 import cc.kune.core.shared.domain.utils.StateToken;
 import cc.kune.domain.utils.HasId;
 
@@ -61,7 +63,8 @@
         return !user.equals(UNKNOWN_USER);
     }
 
-    private UserBuddiesVisibility buddiesVisibility;
+    @Enumerated(EnumType.STRING)
+    private UserSNetVisibility sNetVisibility;
 
     @ManyToOne
     @NotNull
@@ -153,14 +156,14 @@
         this.country = country;
         this.timezone = timezone;
         // customProperties = new CustomProperties();
-        buddiesVisibility = UserBuddiesVisibility.anyone;
+        sNetVisibility = UserSNetVisibility.anyone;
         this.createdOn = System.currentTimeMillis();
         this.lastLogin = null;
         // this.properties = properties;
     }
 
-    public UserBuddiesVisibility getBuddiesVisibility() {
-        return buddiesVisibility;
+    public UserSNetVisibility getSNetVisibility() {
+        return sNetVisibility;
     }
 
     public I18nCountry getCountry() {
@@ -238,8 +241,8 @@
         return getUserGroup().hasLogo();
     }
 
-    public void setBuddiesVisibility(final UserBuddiesVisibility buddiesVisibility) {
-        this.buddiesVisibility = buddiesVisibility;
+    public void setSNetVisibility(final UserSNetVisibility sNetVisibility) {
+        this.sNetVisibility = sNetVisibility;
     }
 
     public void setCountry(final I18nCountry country) {

Modified: trunk/src/main/java/cc/kune/domain/finders/UserFinder.java
===================================================================
--- trunk/src/main/java/cc/kune/domain/finders/UserFinder.java	2011-03-10 16:58:36 UTC (rev 1270)
+++ trunk/src/main/java/cc/kune/domain/finders/UserFinder.java	2011-03-12 22:13:28 UTC (rev 1271)
@@ -35,6 +35,9 @@
     @Finder(query = "from User where email = :email")
     public User getByEmail(@Named("email") final String email);
 
+    @Finder(query = "from User where id = :id")
+    public User getById(@Named("id") final Long id);
+
     @Finder(query = "from User where shortName = :shortName")
     public User getByShortName(@Named("shortName") final String shortName);
 

Modified: trunk/src/main/java/cc/kune/domain/utils/SocialNetworkData.java
===================================================================
--- trunk/src/main/java/cc/kune/domain/utils/SocialNetworkData.java	2011-03-10 16:58:36 UTC (rev 1270)
+++ trunk/src/main/java/cc/kune/domain/utils/SocialNetworkData.java	2011-03-12 22:13:28 UTC (rev 1271)
@@ -20,7 +20,7 @@
 package cc.kune.domain.utils;
 
 import cc.kune.core.shared.domain.SocialNetworkVisibility;
-import cc.kune.core.shared.domain.UserBuddiesVisibility;
+import cc.kune.core.shared.domain.UserSNetVisibility;
 import cc.kune.core.shared.domain.utils.AccessRights;
 import cc.kune.domain.SocialNetwork;
 
@@ -28,7 +28,7 @@
     private SocialNetworkVisibility socialNetworkVisibility;
     private SocialNetwork groupMembers;
     private ParticipationData userParticipation;
-    private UserBuddiesVisibility userBuddiesVisibility;
+    private UserSNetVisibility userBuddiesVisibility;
     private UserBuddiesData userBuddies;
     private AccessRights groupRights;
     private boolean isBuddiesVisible;
@@ -39,7 +39,7 @@
     }
 
     public SocialNetworkData(SocialNetworkVisibility socialNetworkVisibility, SocialNetwork groupMembers,
-            ParticipationData userParticipation, UserBuddiesVisibility userBuddiesVisibility,
+            ParticipationData userParticipation, UserSNetVisibility userBuddiesVisibility,
             UserBuddiesData userBuddies, AccessRights groupRights, boolean isBuddiesVisible, boolean isMembersVisible) {
         this.socialNetworkVisibility = socialNetworkVisibility;
         this.groupMembers = groupMembers;
@@ -75,7 +75,7 @@
         return userBuddies;
     }
 
-    public UserBuddiesVisibility getUserBuddiesVisibility() {
+    public UserSNetVisibility getUserBuddiesVisibility() {
         return userBuddiesVisibility;
     }
 
@@ -123,7 +123,7 @@
         this.userBuddies = userBuddies;
     }
 
-    public void setUserBuddiesVisibility(UserBuddiesVisibility userBuddiesVisibility) {
+    public void setUserBuddiesVisibility(UserSNetVisibility userBuddiesVisibility) {
         this.userBuddiesVisibility = userBuddiesVisibility;
     }
 

Added: trunk/src/main/java/com/example/client/HelloWordGinModule.java
===================================================================
--- trunk/src/main/java/com/example/client/HelloWordGinModule.java	                        (rev 0)
+++ trunk/src/main/java/com/example/client/HelloWordGinModule.java	2011-03-12 22:13:28 UTC (rev 1271)
@@ -0,0 +1,29 @@
+package com.example.client;
+
+import com.google.gwt.inject.client.AsyncProvider;
+import com.google.gwt.inject.client.Ginjector;
+import com.google.inject.Singleton;
+import com.gwtplatform.mvp.client.gin.AbstractPresenterModule;
+
+/**
+ * Sample of GinModule (but with GWTPlatform)
+ * 
+ */
+public class HelloWordGinModule extends AbstractPresenterModule {
+
+    /*
+     * You have to add here all the GWTPresenters (as Provider or AsyncProvider)
+     * in the injector. See the GWTPlatform doc
+     */
+    public interface HelloWordGinjector extends Ginjector {
+        AsyncProvider<HelloWorldPresenter> getHelloWorldPresenter();
+    }
+
+    @Override
+    protected void configure() {
+        bindPresenter(HelloWorldPresenter.class, HelloWorldPresenter.HelloWorldView.class, HelloWorldPanel.class,
+                HelloWorldPresenter.HelloWorldProxy.class);
+        bind(HelloWorldActions.class).in(Singleton.class);
+    }
+
+}

Added: trunk/src/main/java/com/example/client/HelloWorldActions.java
===================================================================
--- trunk/src/main/java/com/example/client/HelloWorldActions.java	                        (rev 0)
+++ trunk/src/main/java/com/example/client/HelloWorldActions.java	2011-03-12 22:13:28 UTC (rev 1271)
@@ -0,0 +1,57 @@
+package com.example.client;
+
+import cc.kune.common.client.actions.AbstractExtendedAction;
+import cc.kune.common.client.actions.ActionEvent;
+import cc.kune.common.client.actions.ui.descrip.ButtonDescriptor;
+import cc.kune.common.client.actions.ui.descrip.MenuItemDescriptor;
+import cc.kune.common.client.noti.NotifyUser;
+import cc.kune.core.client.resources.CoreResources;
+import cc.kune.core.client.sitebar.SiteUserOptions;
+import cc.kune.core.client.sitebar.SitebarActions;
+
+import com.google.inject.Inject;
+
+public class HelloWorldActions {
+
+    public class HelloWorldAction extends AbstractExtendedAction {
+
+        @Override
+        public void actionPerformed(final ActionEvent event) {
+            NotifyUser.info("Hello world!");
+        }
+
+    }
+
+    @Inject
+    public HelloWorldActions(final CoreResources coreResources, final SitebarActions sitebarActions,
+            final SiteUserOptions siteUserOptions) {
+
+        // We can share the action if we don't want to create several (and for
+        // instance it doesn't store any value)
+        final HelloWorldAction sharedAction = new HelloWorldAction();
+
+        // An action in the sitebar
+        final ButtonDescriptor siteBarBtn = new ButtonDescriptor(sharedAction);
+        siteBarBtn.withText("HWorld!").withIcon(coreResources.info());
+        // FIXME setParent as in siteUsOp
+        sitebarActions.getLeftToolbar().addAction(siteBarBtn);
+
+        // Other action in the sitebar options menu
+
+        // An action in the user options menu
+        final MenuItemDescriptor menuItem = new MenuItemDescriptor(sharedAction);
+        menuItem.withText("HWorld!").withIcon(coreResources.alert());
+        siteUserOptions.addAction(menuItem);
+
+        // Another action in the SocialNet menu
+
+        // Something added directly in the Skeleton (esto en el Panel)
+
+        // IMPORTANT: If you want to add something in a part a don't find how,
+        // please ask! Maybe we need a extension point or we need to document
+        // better
+
+        // Do something with Chat
+
+    }
+}

Added: trunk/src/main/java/com/example/client/HelloWorldPanel.java
===================================================================
--- trunk/src/main/java/com/example/client/HelloWorldPanel.java	                        (rev 0)
+++ trunk/src/main/java/com/example/client/HelloWorldPanel.java	2011-03-12 22:13:28 UTC (rev 1271)
@@ -0,0 +1,57 @@
+package com.example.client;
+
+import cc.kune.common.client.noti.NotifyUser;
+
+import com.example.client.HelloWorldPresenter.HelloWorldView;
+import com.google.gwt.core.client.GWT;
+import com.google.gwt.event.dom.client.ClickEvent;
+import com.google.gwt.uibinder.client.UiBinder;
+import com.google.gwt.uibinder.client.UiField;
+import com.google.gwt.uibinder.client.UiHandler;
+import com.google.gwt.user.client.ui.Button;
+import com.google.gwt.user.client.ui.HasText;
+import com.google.gwt.user.client.ui.Widget;
+import com.gwtplatform.mvp.client.ViewImpl;
+
+public class HelloWorldPanel extends ViewImpl implements HasText, HelloWorldView {
+
+    interface HelloWorldPanelUiBinder extends UiBinder<Widget, HelloWorldPanel> {
+    }
+
+    private static HelloWorldPanelUiBinder uiBinder = GWT.create(HelloWorldPanelUiBinder.class);
+
+    @UiField
+    Button button;
+
+    private final Widget widget;
+
+    public HelloWorldPanel() {
+        widget = uiBinder.createAndBindUi(this);
+    }
+
+    public HelloWorldPanel(final String firstName) {
+        widget = uiBinder.createAndBindUi(this);
+        button.setText(firstName);
+    }
+
+    @Override
+    public Widget asWidget() {
+        return widget;
+    }
+
+    @Override
+    public String getText() {
+        return button.getText();
+    }
+
+    @UiHandler("button")
+    void onClick(final ClickEvent e) {
+        NotifyUser.info("Hello world!");
+    }
+
+    @Override
+    public void setText(final String text) {
+        button.setText(text);
+    }
+
+}

Added: trunk/src/main/java/com/example/client/HelloWorldPanel.ui.xml
===================================================================
--- trunk/src/main/java/com/example/client/HelloWorldPanel.ui.xml	                        (rev 0)
+++ trunk/src/main/java/com/example/client/HelloWorldPanel.ui.xml	2011-03-12 22:13:28 UTC (rev 1271)
@@ -0,0 +1,13 @@
+<!DOCTYPE ui:UiBinder SYSTEM "http://dl.google.com/gwt/DTD/xhtml.ent">
+<ui:UiBinder xmlns:ui="urn:ui:com.google.gwt.uibinder"
+  xmlns:g="urn:import:com.google.gwt.user.client.ui">
+  <ui:style>
+    .important {
+        font-weight: bold;
+    }
+  </ui:style>
+  <g:HTMLPanel>
+    Hello world,
+    <g:Button styleName="{style.important}" ui:field="button" />
+  </g:HTMLPanel>
+</ui:UiBinder>
\ No newline at end of file

Added: trunk/src/main/java/com/example/client/HelloWorldPresenter.java
===================================================================
--- trunk/src/main/java/com/example/client/HelloWorldPresenter.java	                        (rev 0)
+++ trunk/src/main/java/com/example/client/HelloWorldPresenter.java	2011-03-12 22:13:28 UTC (rev 1271)
@@ -0,0 +1,30 @@
+package com.example.client;
+
+import com.google.gwt.event.shared.EventBus;
+import com.google.inject.Inject;
+import com.gwtplatform.mvp.client.Presenter;
+import com.gwtplatform.mvp.client.View;
+import com.gwtplatform.mvp.client.annotations.ProxyCodeSplit;
+import com.gwtplatform.mvp.client.proxy.Proxy;
+import com.gwtplatform.mvp.client.proxy.RevealRootContentEvent;
+
+public class HelloWorldPresenter extends
+        Presenter<HelloWorldPresenter.HelloWorldView, HelloWorldPresenter.HelloWorldProxy> {
+
+    @ProxyCodeSplit
+    public interface HelloWorldProxy extends Proxy<HelloWorldPresenter> {
+    }
+
+    public interface HelloWorldView extends View {
+    }
+
+    @Inject
+    public HelloWorldPresenter(final EventBus eventBus, final HelloWorldView view, final HelloWorldProxy proxy) {
+        super(eventBus, view, proxy);
+    }
+
+    @Override
+    protected void revealInParent() {
+        RevealRootContentEvent.fire(this, this);
+    }
+}
\ No newline at end of file

Added: trunk/src/main/java/com/example/server/CustomGuiceFilter.java
===================================================================
--- trunk/src/main/java/com/example/server/CustomGuiceFilter.java	                        (rev 0)
+++ trunk/src/main/java/com/example/server/CustomGuiceFilter.java	2011-03-12 22:13:28 UTC (rev 1271)
@@ -0,0 +1,95 @@
+package com.example.server;
+
+import java.io.PrintWriter;
+import java.util.List;
+
+import javax.servlet.FilterConfig;
+import javax.servlet.ServletException;
+import javax.servlet.http.HttpServlet;
+
+import org.waveprotocol.box.server.CoreSettings;
+import org.waveprotocol.box.server.rpc.AuthenticationServlet;
+import org.waveprotocol.box.server.rpc.ServerRpcProvider;
+import org.waveprotocol.box.server.rpc.SignOutServlet;
+
+import com.google.inject.AbstractModule;
+import com.google.inject.Inject;
+import com.google.inject.Injector;
+import com.google.inject.Singleton;
+import com.google.inject.name.Named;
+import com.google.inject.servlet.GuiceFilter;
+import com.google.inject.servlet.ServletModule;
+
+public class CustomGuiceFilter extends GuiceFilter {
+
+    public static class HelloWorldInjected {
+
+        private final List<String> httpAddresses;
+
+        /**
+         * A Constructor with some sample WIAB instances and params injected
+         */
+        @Inject
+        public HelloWorldInjected(final AuthenticationServlet auth, final SignOutServlet signOut,
+                @Named(CoreSettings.HTTP_FRONTEND_ADDRESSES) final List<String> httpAddresses) {
+            this.httpAddresses = httpAddresses;
+        }
+
+        public List<String> getHttpAddresses() {
+            return httpAddresses;
+        }
+    }
+
+    /**
+     * An additional sample Guice Module
+     * 
+     */
+    public static class HelloWorldModule extends AbstractModule {
+        @Override
+        protected void configure() {
+            bind(HelloWorldInjected.class).in(Singleton.class);
+        }
+    }
+
+    /**
+     * A sample servlet that uses {@link HelloWorldModule} and
+     * {@link HelloWorldInjected}
+     * 
+     */
+    @Singleton
+    @SuppressWarnings("serial")
+    public static class HelloWorldServlet extends HttpServlet {
+
+        private final HelloWorldInjected hw;
+
+        @Inject
+        public HelloWorldServlet(final HelloWorldInjected hw) {
+            this.hw = hw;
+        }
+
+        @Override
+        protected void doGet(final javax.servlet.http.HttpServletRequest req,
+                final javax.servlet.http.HttpServletResponse resp) throws ServletException, java.io.IOException {
+            final PrintWriter writer = resp.getWriter();
+            writer.println("Hello world " + hw.getHttpAddresses().get(0) + "!");
+            writer.close();
+        };
+
+    }
+
+    @Override
+    public void init(final FilterConfig filterConfig) throws ServletException {
+        super.init(filterConfig);
+        // We retrieve the WIAB injector from the context
+        final Injector injector = (Injector) filterConfig.getServletContext().getAttribute(
+                ServerRpcProvider.INJECTOR_ATTRIBUTE);
+        // We register additional Guice modules
+        injector.createChildInjector(new HelloWorldModule(), new ServletModule() {
+            @Override
+            protected void configureServlets() {
+                // Additional servlets
+                serve("/hw/*").with(HelloWorldServlet.class);
+            }
+        });
+    }
+}

Modified: trunk/src/main/java/org/ourproject/kune/platf/client/services/CoreModule.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/client/services/CoreModule.java	2011-03-10 16:58:36 UTC (rev 1270)
+++ trunk/src/main/java/org/ourproject/kune/platf/client/services/CoreModule.java	2011-03-12 22:13:28 UTC (rev 1271)
@@ -35,7 +35,7 @@
 import cc.kune.core.client.rpcservices.SiteServiceAsync;
 import cc.kune.core.client.rpcservices.UserService;
 import cc.kune.core.client.rpcservices.UserServiceAsync;
-import cc.kune.core.client.state.ContentProvider;
+import cc.kune.core.client.state.ContentCache;
 import cc.kune.core.client.state.HistoryWrapper;
 import cc.kune.core.client.state.HistoryWrapperDefault;
 import cc.kune.core.client.state.Session;
@@ -107,9 +107,9 @@
             public HistoryWrapper create() {
                 return new HistoryWrapperDefault();
             }
-        }, new Factory<ContentProvider>(ContentProvider.class) {
+        }, new Factory<ContentCache>(ContentCache.class) {
             @Override
-            public ContentProvider create() {
+            public ContentCache create() {
                 return null; // new
                              // ContentProviderDefault(i(ContentServiceAsync.class));
             }

Modified: trunk/src/main/java/org/ourproject/kune/platf/server/init/DatabaseInitializer.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/server/init/DatabaseInitializer.java	2011-03-10 16:58:36 UTC (rev 1270)
+++ trunk/src/main/java/org/ourproject/kune/platf/server/init/DatabaseInitializer.java	2011-03-12 22:13:28 UTC (rev 1271)
@@ -24,6 +24,7 @@
 import cc.kune.domain.I18nTranslation;
 import cc.kune.domain.License;
 import cc.kune.domain.User;
+import cc.kune.wave.server.CustomUserRegistrationServlet;
 
 import com.google.inject.Inject;
 import com.google.inject.persist.Transactional;
@@ -37,12 +38,14 @@
     private final DatabaseProperties properties;
     private final I18nTranslationManager translationManager;
     private final UserManager userManager;
+    private final CustomUserRegistrationServlet waveUserRegister;
 
     @Inject
     public DatabaseInitializer(final DatabaseProperties properties, final UserManager userManager,
             final GroupManager groupManager, final LicenseManager licenseManager,
             final I18nLanguageManager languageManager, final I18nCountryManager countryManager,
-            final I18nTranslationManager translationManager, final ContentManager contentManager) {
+            final I18nTranslationManager translationManager, final ContentManager contentManager,
+            final CustomUserRegistrationServlet waveUserRegister) {
         this.properties = properties;
         this.userManager = userManager;
         this.groupManager = groupManager;
@@ -51,6 +54,7 @@
         this.countryManager = countryManager;
         this.translationManager = translationManager;
         this.contentManager = contentManager;
+        this.waveUserRegister = waveUserRegister;
     }
 
     private void createDefUsersGroup() throws Exception, UserMustBeLoggedException {
@@ -58,9 +62,9 @@
         final String adminShortName = properties.getAdminShortName();
         final String adminEmail = properties.getAdminEmail();
         final String adminPassword = properties.getAdminPassword();
-        // FIXME:
 
         final PasswordDigest passwdDigest = new PasswordDigest(adminPassword.toCharArray());
+        userManager.createWaveAccount(adminShortName, passwdDigest);
         final User user = new User(adminShortName, adminName, adminEmail, adminPassword, passwdDigest.getDigest(),
                 passwdDigest.getSalt(), languageManager.findByCode("en"), countryManager.findByCode("GB"),
                 TimeZone.getDefault());

Modified: trunk/src/main/java/org/ourproject/kune/platf/server/manager/UserManager.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/server/manager/UserManager.java	2011-03-10 16:58:36 UTC (rev 1270)
+++ trunk/src/main/java/org/ourproject/kune/platf/server/manager/UserManager.java	2011-03-12 22:13:28 UTC (rev 1271)
@@ -20,6 +20,7 @@
 package org.ourproject.kune.platf.server.manager;
 
 import org.ourproject.kune.platf.server.manager.impl.SearchResult;
+import org.waveprotocol.box.server.authentication.PasswordDigest;
 
 import cc.kune.core.client.errors.I18nNotFoundException;
 import cc.kune.domain.User;
@@ -43,6 +44,8 @@
     User createUser(String shortName, String longName, String email, String passwd, String language, String country,
             String timezone) throws I18nNotFoundException;
 
+    void createWaveAccount(String shortName, PasswordDigest passwdDigest);
+
     /**
      * IMPORTANT: if userId == null, it returns User.UNKNOWN_USER
      * 

Modified: trunk/src/main/java/org/ourproject/kune/platf/server/manager/impl/SocialNetworkManagerDefault.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/server/manager/impl/SocialNetworkManagerDefault.java	2011-03-10 16:58:36 UTC (rev 1270)
+++ trunk/src/main/java/org/ourproject/kune/platf/server/manager/impl/SocialNetworkManagerDefault.java	2011-03-12 22:13:28 UTC (rev 1271)
@@ -37,7 +37,7 @@
 import cc.kune.core.shared.domain.AdmissionType;
 import cc.kune.core.shared.domain.GroupListMode;
 import cc.kune.core.shared.domain.SocialNetworkVisibility;
-import cc.kune.core.shared.domain.UserBuddiesVisibility;
+import cc.kune.core.shared.domain.UserSNetVisibility;
 import cc.kune.core.shared.domain.utils.AccessRights;
 import cc.kune.core.shared.dto.GroupType;
 import cc.kune.core.shared.dto.SocialNetworkRequestResult;
@@ -201,7 +201,7 @@
             final UserBuddiesData userBuddies = userManager.getUserBuddies(group.getShortName());
             final User userGroup = userManager.findByShortname(group.getShortName());
             socialNetData.setUserBuddies(userBuddies);
-            final UserBuddiesVisibility buddiesVisibility = userGroup.getBuddiesVisibility();
+            final UserSNetVisibility buddiesVisibility = userGroup.getSNetVisibility();
             socialNetData.setIsBuddiesVisible(true);
             switch (buddiesVisibility) {
             case anyone:

Modified: trunk/src/main/java/org/ourproject/kune/platf/server/manager/impl/UserManagerDefault.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/server/manager/impl/UserManagerDefault.java	2011-03-10 16:58:36 UTC (rev 1270)
+++ trunk/src/main/java/org/ourproject/kune/platf/server/manager/impl/UserManagerDefault.java	2011-03-12 22:13:28 UTC (rev 1271)
@@ -19,9 +19,6 @@
  */
 package org.ourproject.kune.platf.server.manager.impl;
 
-import java.io.IOException;
-import java.net.HttpCookie;
-import java.net.MalformedURLException;
 import java.util.Collection;
 import java.util.List;
 import java.util.TimeZone;
@@ -41,10 +38,7 @@
 import org.ourproject.kune.platf.server.manager.I18nLanguageManager;
 import org.ourproject.kune.platf.server.manager.UserManager;
 import org.ourproject.kune.platf.server.properties.ChatProperties;
-import org.waveprotocol.box.consoleclient.ClientAuthenticator;
-import org.waveprotocol.box.server.CoreSettings;
 import org.waveprotocol.box.server.authentication.PasswordDigest;
-import org.waveprotocol.box.server.authentication.SessionManager;
 
 import cc.kune.core.client.errors.I18nNotFoundException;
 import cc.kune.core.client.errors.UserRegistrationException;
@@ -59,7 +53,6 @@
 import com.google.inject.Inject;
 import com.google.inject.Provider;
 import com.google.inject.Singleton;
-import com.google.inject.name.Named;
 
 @Singleton
 public class UserManagerDefault extends DefaultManager<User, Long> implements UserManager {
@@ -102,10 +95,7 @@
         }
         final PasswordDigest passwdDigest = new PasswordDigest(passwd.toCharArray());
 
-        final String msg = waveUserRegister.tryCreateUser(shortName, passwdDigest);
-        if (msg != null) {
-            throw new UserRegistrationException(msg);
-        }
+        createWaveAccount(shortName, passwdDigest);
         // if (userPropGroup == null) {
         // userPropGroup = propGroupManager.find(User.PROPS_ID);
         // }
@@ -118,8 +108,20 @@
     }
 
     @Override
+    public void createWaveAccount(final String shortName, final PasswordDigest passwdDigest) {
+        final String msg = waveUserRegister.tryCreateUser(shortName, passwdDigest);
+        if (msg != null) {
+            throw new UserRegistrationException(msg);
+        }
+    }
+
+    @Override
     public User find(final Long userId) {
-        return userId != null ? super.find(userId) : User.UNKNOWN_USER;
+        try {
+            return finder.getById(userId);
+        } catch (final NoResultException e) {
+            return User.UNKNOWN_USER;
+        }
     }
 
     @Override
@@ -127,10 +129,6 @@
         return finder.getByShortName(shortName);
     }
 
-    public User findByShortName(final String shortName) {
-        return finder.getByShortName(shortName);
-    }
-
     public List<User> getAll() {
         return finder.getAll();
     }

Modified: trunk/src/main/java/org/ourproject/kune/platf/server/rpc/SiteRPC.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/server/rpc/SiteRPC.java	2011-03-10 16:58:36 UTC (rev 1270)
+++ trunk/src/main/java/org/ourproject/kune/platf/server/rpc/SiteRPC.java	2011-03-12 22:13:28 UTC (rev 1271)
@@ -88,8 +88,7 @@
         data.setLanguages(languageManager.getAll());
         data.setCountries(countryManager.getAll());
         data.setTimezones(TimeZone.getAvailableIDs());
-        data.setUserInfo(userInfoService.buildInfo(userManager.find(userSession.getUser().getId()),
-                userSession.getHash()));
+        data.setUserInfo(userInfoService.buildInfo(userSession.getUser(), userSession.getHash()));
         data.setChatHttpBase(chatProperties.getHttpBase());
         data.setChatDomain(chatProperties.getDomain());
         data.setSiteDomain(kuneProperties.get(KuneProperties.SITE_DOMAIN));

Modified: trunk/src/main/java/org/ourproject/kune/platf/server/rpc/UserRPC.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/platf/server/rpc/UserRPC.java	2011-03-10 16:58:36 UTC (rev 1270)
+++ trunk/src/main/java/org/ourproject/kune/platf/server/rpc/UserRPC.java	2011-03-12 22:13:28 UTC (rev 1271)
@@ -36,7 +36,7 @@
 import cc.kune.core.client.errors.UserAuthException;
 import cc.kune.core.client.rpcservices.UserService;
 import cc.kune.core.shared.domain.AccessRol;
-import cc.kune.core.shared.domain.UserBuddiesVisibility;
+import cc.kune.core.shared.domain.UserSNetVisibility;
 import cc.kune.core.shared.domain.utils.StateToken;
 import cc.kune.core.shared.dto.UserDTO;
 import cc.kune.core.shared.dto.UserInfoDTO;
@@ -158,13 +158,13 @@
     @Authorizated(accessRolRequired = AccessRol.Administrator, actionLevel = ActionLevel.group)
     @Transactional
     public void setBuddiesVisibility(final String userHash, final StateToken groupToken,
-            final UserBuddiesVisibility visibility) {
+            final UserSNetVisibility visibility) {
         final UserSession userSession = getUserSession();
         final User user = userSession.getUser();
         if (!groupToken.getGroup().equals(user.getShortName())) {
             throw new AccessViolationException();
         }
-        user.setBuddiesVisibility(visibility);
+        user.setSNetVisibility(visibility);
     }
 
 }

Modified: trunk/src/main/java/org/ourproject/kune/workspace/client/oldsn/BuddiesSummaryPresenter.java
===================================================================
--- trunk/src/main/java/org/ourproject/kune/workspace/client/oldsn/BuddiesSummaryPresenter.java	2011-03-10 16:58:36 UTC (rev 1270)
+++ trunk/src/main/java/org/ourproject/kune/workspace/client/oldsn/BuddiesSummaryPresenter.java	2011-03-12 22:13:28 UTC (rev 1271)
@@ -41,7 +41,7 @@
 import cc.kune.core.client.state.AccessRightsClientManager;
 import cc.kune.core.client.state.Session;
 import cc.kune.core.client.state.StateManager;
-import cc.kune.core.shared.domain.UserBuddiesVisibility;
+import cc.kune.core.shared.domain.UserSNetVisibility;
 import cc.kune.core.shared.domain.utils.AccessRights;
 import cc.kune.core.shared.dto.AccessRolDTO;
 import cc.kune.core.shared.dto.SocialNetworkDataDTO;
@@ -115,7 +115,7 @@
         actionRegistry.addAction(addNewBuddiesAction);
     }
 
-    private void createSetBuddiesVisibilityAction(final String textDescription, final UserBuddiesVisibility visibility) {
+    private void createSetBuddiesVisibilityAction(final String textDescription, final UserSNetVisibility visibility) {
         final ActionToolbarMenuRadioDescriptor<UserSimpleDTO> buddiesVisibilityAction = new ActionToolbarMenuRadioDescriptor<UserSimpleDTO>(
                 AccessRolDTO.Administrator, buddiesBottom, new Listener<UserSimpleDTO>() {
                     @Override
@@ -186,9 +186,9 @@
         actionRegistry.addAction(go);
 
         createAddNewBuddiesAction();
-        createSetBuddiesVisibilityAction(i18n.t("anyone"), UserBuddiesVisibility.anyone);
-        createSetBuddiesVisibilityAction(i18n.t("only your buddies"), UserBuddiesVisibility.yourbuddies);
-        createSetBuddiesVisibilityAction(i18n.t("only you"), UserBuddiesVisibility.onlyyou);
+        createSetBuddiesVisibilityAction(i18n.t("anyone"), UserSNetVisibility.anyone);
+        createSetBuddiesVisibilityAction(i18n.t("only your buddies"), UserSNetVisibility.yourbuddies);
+        createSetBuddiesVisibilityAction(i18n.t("only you"), UserSNetVisibility.onlyyou);
     }
 
     protected void setState(final StateAbstractDTO state) {

Modified: trunk/src/test/java/cc/kune/core/client/state/StateManagerTest.java
===================================================================
--- trunk/src/test/java/cc/kune/core/client/state/StateManagerTest.java	2011-03-10 16:58:36 UTC (rev 1270)
+++ trunk/src/test/java/cc/kune/core/client/state/StateManagerTest.java	2011-03-12 22:13:28 UTC (rev 1271)
@@ -37,7 +37,7 @@
     private static final String HASH = "someUserHash";
     private BeforeActionListener beforeChangeListener1;
     private BeforeActionListener beforeChangeListener2;
-    private ContentProvider contentProvider;
+    private ContentCache contentProvider;
     private EventBusTester eventBus;
     private GroupChangedHandler groupChangeHandler;
     private HistoryWrapper history;
@@ -49,7 +49,7 @@
 
     @Before
     public void before() {
-        contentProvider = Mockito.mock(ContentProvider.class);
+        contentProvider = Mockito.mock(ContentCache.class);
         session = Mockito.mock(Session.class);
         history = Mockito.mock(HistoryWrapper.class);
         eventBus = new EventBusTester();

Modified: trunk/src/test/java/org/ourproject/kune/platf/integration/site/UserServiceTest.java
===================================================================
--- trunk/src/test/java/org/ourproject/kune/platf/integration/site/UserServiceTest.java	2011-03-10 16:58:36 UTC (rev 1270)
+++ trunk/src/test/java/org/ourproject/kune/platf/integration/site/UserServiceTest.java	2011-03-12 22:13:28 UTC (rev 1271)
@@ -39,7 +39,7 @@
 import cc.kune.core.client.errors.GroupNameInUseException;
 import cc.kune.core.client.errors.SessionExpiredException;
 import cc.kune.core.client.rpcservices.UserService;
-import cc.kune.core.shared.domain.UserBuddiesVisibility;
+import cc.kune.core.shared.domain.UserSNetVisibility;
 import cc.kune.core.shared.dto.GroupDTO;
 import cc.kune.core.shared.dto.I18nCountryDTO;
 import cc.kune.core.shared.dto.I18nLanguageDTO;
@@ -118,9 +118,9 @@
         assertNull(session.getUser().getId());
         doLogin();
         assertNotNull(session.getUser().getId());
-        for (final UserBuddiesVisibility visibility : UserBuddiesVisibility.values()) {
+        for (final UserSNetVisibility visibility : UserSNetVisibility.values()) {
             userService.setBuddiesVisibility(token, session.getUser().getStateToken(), visibility);
-            assertEquals(visibility, session.getUser().getBuddiesVisibility());
+            assertEquals(visibility, session.getUser().getSNetVisibility());
         }
     }
 

Modified: trunk/src/test/java/org/ourproject/kune/platf/server/manager/UserManagerTest.java
===================================================================
--- trunk/src/test/java/org/ourproject/kune/platf/server/manager/UserManagerTest.java	2011-03-10 16:58:36 UTC (rev 1270)
+++ trunk/src/test/java/org/ourproject/kune/platf/server/manager/UserManagerTest.java	2011-03-12 22:13:28 UTC (rev 1271)
@@ -35,7 +35,7 @@
 
 import cc.kune.core.client.errors.I18nNotFoundException;
 import cc.kune.core.client.errors.UserRegistrationException;
-import cc.kune.core.shared.domain.UserBuddiesVisibility;
+import cc.kune.core.shared.domain.UserSNetVisibility;
 import cc.kune.domain.Group;
 import cc.kune.domain.User;
 
@@ -136,10 +136,10 @@
     public void visibilityPersist() {
         user = new User("test1", "test1 name", "test at example.com", "some passwd", "somediggest".getBytes(),
                 "some salt".getBytes(), english, gb, getTimeZone());
-        for (final UserBuddiesVisibility visibility : UserBuddiesVisibility.values()) {
-            user.setBuddiesVisibility(visibility);
+        for (final UserSNetVisibility visibility : UserSNetVisibility.values()) {
+            user.setSNetVisibility(visibility);
             persist(user);
-            assertEquals(user.getBuddiesVisibility(), visibility);
+            assertEquals(user.getSNetVisibility(), visibility);
         }
     }
 

Modified: trunk/src/test/java/org/ourproject/kune/platf/server/mapper/MapperTest.java
===================================================================
--- trunk/src/test/java/org/ourproject/kune/platf/server/mapper/MapperTest.java	2011-03-10 16:58:36 UTC (rev 1270)
+++ trunk/src/test/java/org/ourproject/kune/platf/server/mapper/MapperTest.java	2011-03-12 22:13:28 UTC (rev 1271)
@@ -36,7 +36,7 @@
 
 import cc.kune.core.shared.domain.GroupListMode;
 import cc.kune.core.shared.domain.SocialNetworkVisibility;
-import cc.kune.core.shared.domain.UserBuddiesVisibility;
+import cc.kune.core.shared.domain.UserSNetVisibility;
 import cc.kune.core.shared.domain.utils.AccessRights;
 import cc.kune.core.shared.domain.utils.StateToken;
 import cc.kune.core.shared.dto.CommentDTO;
@@ -325,11 +325,11 @@
         buddies.add(user);
         budData.setBuddies(buddies);
         final SocialNetworkData snResult = new SocialNetworkData(SocialNetworkVisibility.onlymembers, sn, part,
-                UserBuddiesVisibility.yourbuddies, budData, new AccessRights(false, false, true), true, true);
+                UserSNetVisibility.yourbuddies, budData, new AccessRights(false, false, true), true, true);
         final SocialNetworkDataDTO map = mapper.map(snResult, SocialNetworkDataDTO.class);
         assertNotNull(map);
         assertEquals(SocialNetworkVisibility.onlymembers, map.getSocialNetworkVisibility());
-        assertEquals(UserBuddiesVisibility.yourbuddies, map.getUserBuddiesVisibility());
+        assertEquals(UserSNetVisibility.yourbuddies, map.getUserBuddiesVisibility());
         assertEquals("test", map.getGroupMembers().getAccessLists().getAdmins().getList().get(0).getShortName());
         assertEquals("test", map.getUserParticipation().getGroupsIsAdmin().get(0).getShortName());
         assertEquals("usertest", map.getUserBuddies().getBuddies().get(0).getShortName());




More information about the kune-commits mailing list