--- a/.classpath Tue Mar 19 17:59:34 2013 +0100
+++ b/.classpath Fri Mar 22 05:30:19 2013 +0100
@@ -4,61 +4,260 @@
<classpathentry kind="src" path="server/src/test/java"/>
<classpathentry kind="con" path="org.eclipse.jst.j2ee.internal.web.container"/>
<classpathentry kind="con" path="org.eclipse.jst.j2ee.internal.module.container"/>
- <classpathentry kind="var" path="M2_REPO/org/opencoweb/coweb-bots/1.0/coweb-bots-1.0.jar"/>
- <classpathentry kind="var" path="M2_REPO/org/opencoweb/coweb-server/1.0/coweb-server-1.0.jar"/>
- <classpathentry kind="var" path="M2_REPO/org/opencoweb/coweb-operationengine/1.0/coweb-operationengine-1.0.jar"/>
- <classpathentry kind="var" path="M2_REPO/org/cometd/java/bayeux-api/2.5.0/bayeux-api-2.5.0.jar"/>
- <classpathentry kind="var" path="M2_REPO/org/cometd/java/cometd-java-common/2.5.0/cometd-java-common-2.5.0.jar"/>
- <classpathentry kind="var" path="M2_REPO/org/eclipse/jetty/jetty-util/9.0.0.RC0/jetty-util-9.0.0.RC0.jar"/>
- <classpathentry kind="var" path="M2_REPO/org/slf4j/slf4j-api/1.6.6/slf4j-api-1.6.6.jar"/>
- <classpathentry kind="var" path="M2_REPO/org/eclipse/jetty/jetty-continuation/8.1.8.v20121106/jetty-continuation-8.1.8.v20121106.jar"/>
- <classpathentry kind="var" path="M2_REPO/org/eclipse/jetty/jetty-jmx/9.0.0.RC0/jetty-jmx-9.0.0.RC0.jar"/>
- <classpathentry kind="var" path="M2_REPO/com/sun/jersey/jersey-server/1.17/jersey-server-1.17.jar"/>
- <classpathentry kind="var" path="M2_REPO/com/sun/jersey/jersey-core/1.17/jersey-core-1.17.jar"/>
- <classpathentry kind="var" path="M2_REPO/org/mongodb/mongo-java-driver/2.10.1/mongo-java-driver-2.10.1.jar"/>
- <classpathentry kind="var" path="M2_REPO/org/springframework/spring-context/3.2.1.RELEASE/spring-context-3.2.1.RELEASE.jar"/>
- <classpathentry kind="var" path="M2_REPO"/>
- <classpathentry kind="var" path="M2_REPO/org/springframework/spring-beans/3.2.1.RELEASE/spring-beans-3.2.1.RELEASE.jar"/>
- <classpathentry kind="var" path="M2_REPO/javax/persistence/persistence-api/1.0.2/persistence-api-1.0.2.jar"/>
- <classpathentry kind="var" path="M2_REPO/org/springframework/data/spring-data-mongodb/1.2.0.RELEASE/spring-data-mongodb-1.2.0.RELEASE.jar"/>
- <classpathentry kind="var" path="M2_REPO/org/springframework/data/spring-data-commons/1.5.0.RELEASE/spring-data-commons-1.5.0.RELEASE.jar"/>
- <classpathentry kind="var" path="M2_REPO/org/springframework/data/spring-data-jpa/1.3.0.RELEASE/spring-data-jpa-1.3.0.RELEASE.jar"/>
- <classpathentry kind="var" path="M2_REPO/javax/inject/javax.inject/1/javax.inject-1.jar"/>
- <classpathentry kind="var" path="M2_REPO/org/cometd/java/cometd-java-annotations/2.5.0/cometd-java-annotations-2.5.0.jar"/>
- <classpathentry kind="var" path="M2_REPO/org/cometd/java/cometd-java-server/2.5.0/cometd-java-server-2.5.0.jar"/>
- <classpathentry kind="var" path="M2_REPO/javax/servlet/servlet-api/2.5/servlet-api-2.5.jar"/>
- <classpathentry kind="var" path="M2_REPO/org/springframework/spring-core/3.2.1.RELEASE/spring-core-3.2.1.RELEASE.jar"/>
- <classpathentry kind="var" path="M2_REPO/org/springframework/spring-web/3.2.1.RELEASE/spring-web-3.2.1.RELEASE.jar"/>
- <classpathentry kind="var" path="M2_REPO/org/springframework/spring-webmvc/3.2.1.RELEASE/spring-webmvc-3.2.1.RELEASE.jar"/>
- <classpathentry kind="var" path="M2_REPO/junit/junit/4.10/junit-4.10.jar"/>
- <classpathentry kind="var" path="M2_REPO/org/springframework/spring-test/3.2.1.RELEASE/spring-test-3.2.1.RELEASE.jar"/>
- <classpathentry kind="var" path="M2_REPO/javax/servlet/jstl/1.2/jstl-1.2.jar">
+ <classpathentry kind="var" path="M2_REPO/org/opencoweb/coweb-bots/1.0/coweb-bots-1.0.jar" sourcepath="M2_REPO/org/opencoweb/coweb-bots/1.0/coweb-bots-1.0-sources.jar">
+ <attributes>
+ <attribute name="javadoc_location" value="jar:file:/Users/ymh/.m2/repository/org/opencoweb/coweb-bots/1.0/coweb-bots-1.0-javadoc.jar!/"/>
+ <attribute name="org.eclipse.jst.component.nondependency" value=""/>
+ </attributes>
+ </classpathentry>
+ <classpathentry kind="var" path="M2_REPO/org/opencoweb/coweb-server/1.0/coweb-server-1.0.jar" sourcepath="M2_REPO/org/opencoweb/coweb-server/1.0/coweb-server-1.0-sources.jar">
+ <attributes>
+ <attribute name="javadoc_location" value="jar:file:/Users/ymh/.m2/repository/org/opencoweb/coweb-server/1.0/coweb-server-1.0-javadoc.jar!/"/>
+ <attribute name="org.eclipse.jst.component.nondependency" value=""/>
+ </attributes>
+ </classpathentry>
+ <classpathentry kind="var" path="M2_REPO/org/opencoweb/coweb-operationengine/1.0/coweb-operationengine-1.0.jar" sourcepath="M2_REPO/org/opencoweb/coweb-operationengine/1.0/coweb-operationengine-1.0-sources.jar">
+ <attributes>
+ <attribute name="javadoc_location" value="jar:file:/Users/ymh/.m2/repository/org/opencoweb/coweb-operationengine/1.0/coweb-operationengine-1.0-javadoc.jar!/"/>
+ <attribute name="org.eclipse.jst.component.nondependency" value=""/>
+ </attributes>
+ </classpathentry>
+ <classpathentry kind="var" path="M2_REPO/org/cometd/java/bayeux-api/2.5.0/bayeux-api-2.5.0.jar" sourcepath="M2_REPO/org/cometd/java/bayeux-api/2.5.0/bayeux-api-2.5.0-sources.jar">
+ <attributes>
+ <attribute name="javadoc_location" value="jar:file:/Users/ymh/.m2/repository/org/cometd/java/bayeux-api/2.5.0/bayeux-api-2.5.0-javadoc.jar!/"/>
+ <attribute name="org.eclipse.jst.component.nondependency" value=""/>
+ </attributes>
+ </classpathentry>
+ <classpathentry kind="var" path="M2_REPO/org/cometd/java/cometd-java-common/2.5.0/cometd-java-common-2.5.0.jar" sourcepath="M2_REPO/org/cometd/java/cometd-java-common/2.5.0/cometd-java-common-2.5.0-sources.jar">
+ <attributes>
+ <attribute name="javadoc_location" value="jar:file:/Users/ymh/.m2/repository/org/cometd/java/cometd-java-common/2.5.0/cometd-java-common-2.5.0-javadoc.jar!/"/>
+ <attribute name="org.eclipse.jst.component.nondependency" value=""/>
+ </attributes>
+ </classpathentry>
+ <classpathentry kind="var" path="M2_REPO/org/eclipse/jetty/jetty-util/8.1.9.v20130131/jetty-util-8.1.9.v20130131.jar">
+ <attributes>
+ <attribute name="org.eclipse.jst.component.nondependency" value=""/>
+ </attributes>
+ </classpathentry>
+ <classpathentry kind="var" path="M2_REPO/org/slf4j/slf4j-api/1.6.6/slf4j-api-1.6.6.jar" sourcepath="M2_REPO/org/slf4j/slf4j-api/1.6.6/slf4j-api-1.6.6-sources.jar">
+ <attributes>
+ <attribute name="javadoc_location" value="jar:file:/Users/ymh/.m2/repository/org/slf4j/slf4j-api/1.6.6/slf4j-api-1.6.6-javadoc.jar!/"/>
+ <attribute name="org.eclipse.jst.component.nondependency" value=""/>
+ </attributes>
+ </classpathentry>
+ <classpathentry kind="var" path="M2_REPO/org/eclipse/jetty/jetty-continuation/8.1.9.v20130131/jetty-continuation-8.1.9.v20130131.jar">
+ <attributes>
+ <attribute name="org.eclipse.jst.component.nondependency" value=""/>
+ </attributes>
+ </classpathentry>
+ <classpathentry kind="var" path="M2_REPO/org/eclipse/jetty/jetty-jmx/8.1.9.v20130131/jetty-jmx-8.1.9.v20130131.jar">
+ <attributes>
+ <attribute name="org.eclipse.jst.component.nondependency" value=""/>
+ </attributes>
+ </classpathentry>
+ <classpathentry kind="var" path="M2_REPO/com/sun/jersey/jersey-server/1.17/jersey-server-1.17.jar" sourcepath="M2_REPO/com/sun/jersey/jersey-server/1.17/jersey-server-1.17-sources.jar">
+ <attributes>
+ <attribute name="javadoc_location" value="jar:file:/Users/ymh/.m2/repository/com/sun/jersey/jersey-server/1.17/jersey-server-1.17-javadoc.jar!/"/>
+ <attribute name="org.eclipse.jst.component.nondependency" value=""/>
+ </attributes>
+ </classpathentry>
+ <classpathentry kind="var" path="M2_REPO/com/sun/jersey/jersey-core/1.17/jersey-core-1.17.jar" sourcepath="M2_REPO/com/sun/jersey/jersey-core/1.17/jersey-core-1.17-sources.jar">
+ <attributes>
+ <attribute name="javadoc_location" value="jar:file:/Users/ymh/.m2/repository/com/sun/jersey/jersey-core/1.17/jersey-core-1.17-javadoc.jar!/"/>
+ <attribute name="org.eclipse.jst.component.nondependency" value=""/>
+ </attributes>
+ </classpathentry>
+ <classpathentry kind="var" path="M2_REPO/org/mongodb/mongo-java-driver/2.10.1/mongo-java-driver-2.10.1.jar" sourcepath="M2_REPO/org/mongodb/mongo-java-driver/2.10.1/mongo-java-driver-2.10.1-sources.jar">
+ <attributes>
+ <attribute name="javadoc_location" value="jar:file:/Users/ymh/.m2/repository/org/mongodb/mongo-java-driver/2.10.1/mongo-java-driver-2.10.1-javadoc.jar!/"/>
+ <attribute name="org.eclipse.jst.component.nondependency" value=""/>
+ </attributes>
+ </classpathentry>
+ <classpathentry kind="var" path="M2_REPO/org/springframework/spring-context/3.2.1.RELEASE/spring-context-3.2.1.RELEASE.jar" sourcepath="M2_REPO/org/springframework/spring-context/3.2.1.RELEASE/spring-context-3.2.1.RELEASE-sources.jar">
+ <attributes>
+ <attribute name="javadoc_location" value="jar:file:/Users/ymh/.m2/repository/org/springframework/spring-context/3.2.1.RELEASE/spring-context-3.2.1.RELEASE-javadoc.jar!/"/>
+ <attribute name="org.eclipse.jst.component.nondependency" value=""/>
+ </attributes>
+ </classpathentry>
+ <classpathentry kind="var" path="M2_REPO">
+ <attributes>
+ <attribute name="org.eclipse.jst.component.nondependency" value=""/>
+ </attributes>
+ </classpathentry>
+ <classpathentry kind="var" path="M2_REPO/org/springframework/spring-beans/3.2.1.RELEASE/spring-beans-3.2.1.RELEASE.jar" sourcepath="M2_REPO/org/springframework/spring-beans/3.2.1.RELEASE/spring-beans-3.2.1.RELEASE-sources.jar">
+ <attributes>
+ <attribute name="javadoc_location" value="jar:file:/Users/ymh/.m2/repository/org/springframework/spring-beans/3.2.1.RELEASE/spring-beans-3.2.1.RELEASE-javadoc.jar!/"/>
+ <attribute name="org.eclipse.jst.component.nondependency" value=""/>
+ </attributes>
+ </classpathentry>
+ <classpathentry kind="var" path="M2_REPO/javax/persistence/persistence-api/1.0.2/persistence-api-1.0.2.jar" sourcepath="M2_REPO/javax/persistence/persistence-api/1.0.2/persistence-api-1.0.2-sources.jar">
<attributes>
<attribute name="org.eclipse.jst.component.nondependency" value=""/>
</attributes>
</classpathentry>
- <classpathentry kind="var" path="M2_REPO/commons-codec/commons-codec/1.7/commons-codec-1.7.jar"/>
- <classpathentry kind="var" path="M2_REPO/org/springframework/security/spring-security-core/3.1.3.RELEASE/spring-security-core-3.1.3.RELEASE.jar"/>
- <classpathentry kind="var" path="M2_REPO/org/springframework/security/spring-security-config/3.1.3.RELEASE/spring-security-config-3.1.3.RELEASE.jar"/>
- <classpathentry kind="var" path="M2_REPO/org/springframework/security/spring-security-web/3.1.3.RELEASE/spring-security-web-3.1.3.RELEASE.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/springframework/data/spring-data-mongodb/1.2.0.RELEASE/spring-data-mongodb-1.2.0.RELEASE.jar" sourcepath="M2_REPO/org/springframework/data/spring-data-mongodb/1.2.0.RELEASE/spring-data-mongodb-1.2.0.RELEASE-sources.jar">
+ <attributes>
+ <attribute name="javadoc_location" value="jar:file:/Users/ymh/.m2/repository/org/springframework/data/spring-data-mongodb/1.2.0.RELEASE/spring-data-mongodb-1.2.0.RELEASE-javadoc.jar!/"/>
+ <attribute name="org.eclipse.jst.component.nondependency" value=""/>
+ </attributes>
+ </classpathentry>
+ <classpathentry kind="var" path="M2_REPO/org/springframework/data/spring-data-commons/1.5.0.RELEASE/spring-data-commons-1.5.0.RELEASE.jar" sourcepath="M2_REPO/org/springframework/data/spring-data-commons/1.5.0.RELEASE/spring-data-commons-1.5.0.RELEASE-sources.jar">
+ <attributes>
+ <attribute name="javadoc_location" value="jar:file:/Users/ymh/.m2/repository/org/springframework/data/spring-data-commons/1.5.0.RELEASE/spring-data-commons-1.5.0.RELEASE-javadoc.jar!/"/>
+ <attribute name="org.eclipse.jst.component.nondependency" value=""/>
+ </attributes>
+ </classpathentry>
+ <classpathentry kind="var" path="M2_REPO/org/springframework/data/spring-data-jpa/1.3.0.RELEASE/spring-data-jpa-1.3.0.RELEASE.jar" sourcepath="M2_REPO/org/springframework/data/spring-data-jpa/1.3.0.RELEASE/spring-data-jpa-1.3.0.RELEASE-sources.jar">
+ <attributes>
+ <attribute name="javadoc_location" value="jar:file:/Users/ymh/.m2/repository/org/springframework/data/spring-data-jpa/1.3.0.RELEASE/spring-data-jpa-1.3.0.RELEASE-javadoc.jar!/"/>
+ <attribute name="org.eclipse.jst.component.nondependency" value=""/>
+ </attributes>
+ </classpathentry>
+ <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">
+ <attributes>
+ <attribute name="javadoc_location" value="jar:file:/Users/ymh/.m2/repository/javax/inject/javax.inject/1/javax.inject-1-javadoc.jar!/"/>
+ <attribute name="org.eclipse.jst.component.nondependency" value=""/>
+ </attributes>
+ </classpathentry>
+ <classpathentry kind="var" path="M2_REPO/org/cometd/java/cometd-java-annotations/2.5.0/cometd-java-annotations-2.5.0.jar" sourcepath="M2_REPO/org/cometd/java/cometd-java-annotations/2.5.0/cometd-java-annotations-2.5.0-sources.jar">
+ <attributes>
+ <attribute name="javadoc_location" value="jar:file:/Users/ymh/.m2/repository/org/cometd/java/cometd-java-annotations/2.5.0/cometd-java-annotations-2.5.0-javadoc.jar!/"/>
+ <attribute name="org.eclipse.jst.component.nondependency" value=""/>
+ </attributes>
+ </classpathentry>
+ <classpathentry kind="var" path="M2_REPO/org/cometd/java/cometd-java-server/2.5.0/cometd-java-server-2.5.0.jar" sourcepath="M2_REPO/org/cometd/java/cometd-java-server/2.5.0/cometd-java-server-2.5.0-sources.jar">
+ <attributes>
+ <attribute name="javadoc_location" value="jar:file:/Users/ymh/.m2/repository/org/cometd/java/cometd-java-server/2.5.0/cometd-java-server-2.5.0-javadoc.jar!/"/>
+ <attribute name="org.eclipse.jst.component.nondependency" value=""/>
+ </attributes>
+ </classpathentry>
+ <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">
+ <attributes>
+ <attribute name="org.eclipse.jst.component.nondependency" value=""/>
+ </attributes>
+ </classpathentry>
+ <classpathentry kind="var" path="M2_REPO/org/springframework/spring-core/3.2.1.RELEASE/spring-core-3.2.1.RELEASE.jar" sourcepath="M2_REPO/org/springframework/spring-core/3.2.1.RELEASE/spring-core-3.2.1.RELEASE-sources.jar">
+ <attributes>
+ <attribute name="javadoc_location" value="jar:file:/Users/ymh/.m2/repository/org/springframework/spring-core/3.2.1.RELEASE/spring-core-3.2.1.RELEASE-javadoc.jar!/"/>
+ <attribute name="org.eclipse.jst.component.nondependency" value=""/>
+ </attributes>
+ </classpathentry>
+ <classpathentry kind="var" path="M2_REPO/org/springframework/spring-web/3.2.1.RELEASE/spring-web-3.2.1.RELEASE.jar" sourcepath="M2_REPO/org/springframework/spring-web/3.2.1.RELEASE/spring-web-3.2.1.RELEASE-sources.jar">
+ <attributes>
+ <attribute name="javadoc_location" value="jar:file:/Users/ymh/.m2/repository/org/springframework/spring-web/3.2.1.RELEASE/spring-web-3.2.1.RELEASE-javadoc.jar!/"/>
+ <attribute name="org.eclipse.jst.component.nondependency" value=""/>
+ </attributes>
+ </classpathentry>
+ <classpathentry kind="var" path="M2_REPO/org/springframework/spring-webmvc/3.2.1.RELEASE/spring-webmvc-3.2.1.RELEASE.jar" sourcepath="M2_REPO/org/springframework/spring-webmvc/3.2.1.RELEASE/spring-webmvc-3.2.1.RELEASE-sources.jar">
+ <attributes>
+ <attribute name="javadoc_location" value="jar:file:/Users/ymh/.m2/repository/org/springframework/spring-webmvc/3.2.1.RELEASE/spring-webmvc-3.2.1.RELEASE-javadoc.jar!/"/>
+ <attribute name="org.eclipse.jst.component.nondependency" value=""/>
+ </attributes>
+ </classpathentry>
+ <classpathentry kind="var" path="M2_REPO/junit/junit/4.10/junit-4.10.jar" sourcepath="M2_REPO/junit/junit/4.10/junit-4.10-sources.jar">
+ <attributes>
+ <attribute name="javadoc_location" value="jar:file:/Users/ymh/.m2/repository/junit/junit/4.10/junit-4.10-javadoc.jar!/"/>
+ <attribute name="org.eclipse.jst.component.nondependency" value=""/>
+ </attributes>
+ </classpathentry>
+ <classpathentry kind="var" path="M2_REPO/org/springframework/spring-test/3.2.1.RELEASE/spring-test-3.2.1.RELEASE.jar" sourcepath="M2_REPO/org/springframework/spring-test/3.2.1.RELEASE/spring-test-3.2.1.RELEASE-sources.jar">
+ <attributes>
+ <attribute name="javadoc_location" value="jar:file:/Users/ymh/.m2/repository/org/springframework/spring-test/3.2.1.RELEASE/spring-test-3.2.1.RELEASE-javadoc.jar!/"/>
+ <attribute name="org.eclipse.jst.component.nondependency" value=""/>
+ </attributes>
+ </classpathentry>
+ <classpathentry kind="var" path="M2_REPO/javax/servlet/jstl/1.2/jstl-1.2.jar" sourcepath="M2_REPO/javax/servlet/jstl/1.2/jstl-1.2-sources.jar">
+ <attributes>
+ <attribute name="org.eclipse.jst.component.nondependency" value=""/>
+ </attributes>
+ </classpathentry>
+ <classpathentry kind="var" path="M2_REPO/commons-codec/commons-codec/1.7/commons-codec-1.7.jar" sourcepath="M2_REPO/commons-codec/commons-codec/1.7/commons-codec-1.7-sources.jar">
+ <attributes>
+ <attribute name="javadoc_location" value="jar:file:/Users/ymh/.m2/repository/commons-codec/commons-codec/1.7/commons-codec-1.7-javadoc.jar!/"/>
+ <attribute name="org.eclipse.jst.component.nondependency" value=""/>
+ </attributes>
+ </classpathentry>
+ <classpathentry kind="var" path="M2_REPO/org/springframework/security/spring-security-core/3.1.3.RELEASE/spring-security-core-3.1.3.RELEASE.jar" sourcepath="M2_REPO/org/springframework/security/spring-security-core/3.1.3.RELEASE/spring-security-core-3.1.3.RELEASE-sources.jar">
+ <attributes>
+ <attribute name="javadoc_location" value="jar:file:/Users/ymh/.m2/repository/org/springframework/security/spring-security-core/3.1.3.RELEASE/spring-security-core-3.1.3.RELEASE-javadoc.jar!/"/>
+ <attribute name="org.eclipse.jst.component.nondependency" value=""/>
+ </attributes>
+ </classpathentry>
+ <classpathentry kind="var" path="M2_REPO/org/springframework/security/spring-security-config/3.1.3.RELEASE/spring-security-config-3.1.3.RELEASE.jar" sourcepath="M2_REPO/org/springframework/security/spring-security-config/3.1.3.RELEASE/spring-security-config-3.1.3.RELEASE-sources.jar">
+ <attributes>
+ <attribute name="javadoc_location" value="jar:file:/Users/ymh/.m2/repository/org/springframework/security/spring-security-config/3.1.3.RELEASE/spring-security-config-3.1.3.RELEASE-javadoc.jar!/"/>
+ <attribute name="org.eclipse.jst.component.nondependency" value=""/>
+ </attributes>
+ </classpathentry>
+ <classpathentry kind="var" path="M2_REPO/org/springframework/security/spring-security-web/3.1.3.RELEASE/spring-security-web-3.1.3.RELEASE.jar" sourcepath="M2_REPO/org/springframework/security/spring-security-web/3.1.3.RELEASE/spring-security-web-3.1.3.RELEASE-sources.jar">
+ <attributes>
+ <attribute name="javadoc_location" value="jar:file:/Users/ymh/.m2/repository/org/springframework/security/spring-security-web/3.1.3.RELEASE/spring-security-web-3.1.3.RELEASE-javadoc.jar!/"/>
+ <attribute name="org.eclipse.jst.component.nondependency" value=""/>
+ </attributes>
+ </classpathentry>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7">
<attributes>
<attribute name="owner.project.facets" value="java"/>
</attributes>
</classpathentry>
- <classpathentry kind="var" path="M2_REPO/com/fasterxml/jackson/core/jackson-core/2.1.4/jackson-core-2.1.4.jar"/>
- <classpathentry kind="var" path="M2_REPO/com/fasterxml/jackson/core/jackson-databind/2.1.4/jackson-databind-2.1.4.jar"/>
- <classpathentry kind="var" path="M2_REPO/org/cometd/java/cometd-websocket-jetty/2.5.1/cometd-websocket-jetty-2.5.1.jar"/>
- <classpathentry kind="var" path="M2_REPO/org/eclipse/jetty/jetty-websocket/8.1.9.v20130131/jetty-websocket-8.1.9.v20130131.jar"/>
- <classpathentry kind="var" path="M2_REPO/com/fasterxml/jackson/core/jackson-annotations/2.1.4/jackson-annotations-2.1.4.jar">
+ <classpathentry kind="var" path="M2_REPO/com/fasterxml/jackson/core/jackson-core/2.1.4/jackson-core-2.1.4.jar" sourcepath="M2_REPO/com/fasterxml/jackson/core/jackson-core/2.1.4/jackson-core-2.1.4-sources.jar">
+ <attributes>
+ <attribute name="javadoc_location" value="jar:file:/Users/ymh/.m2/repository/com/fasterxml/jackson/core/jackson-core/2.1.4/jackson-core-2.1.4-javadoc.jar!/"/>
+ <attribute name="org.eclipse.jst.component.nondependency" value=""/>
+ </attributes>
+ </classpathentry>
+ <classpathentry kind="var" path="M2_REPO/com/fasterxml/jackson/core/jackson-databind/2.1.4/jackson-databind-2.1.4.jar" sourcepath="M2_REPO/com/fasterxml/jackson/core/jackson-databind/2.1.4/jackson-databind-2.1.4-sources.jar">
+ <attributes>
+ <attribute name="javadoc_location" value="jar:file:/Users/ymh/.m2/repository/com/fasterxml/jackson/core/jackson-databind/2.1.4/jackson-databind-2.1.4-javadoc.jar!/"/>
+ <attribute name="org.eclipse.jst.component.nondependency" value=""/>
+ </attributes>
+ </classpathentry>
+ <classpathentry kind="var" path="M2_REPO/org/cometd/java/cometd-websocket-jetty/2.5.1/cometd-websocket-jetty-2.5.1.jar" sourcepath="M2_REPO/org/cometd/java/cometd-websocket-jetty/2.5.1/cometd-websocket-jetty-2.5.1-sources.jar">
+ <attributes>
+ <attribute name="javadoc_location" value="jar:file:/Users/ymh/.m2/repository/org/cometd/java/cometd-websocket-jetty/2.5.1/cometd-websocket-jetty-2.5.1-javadoc.jar!/"/>
+ <attribute name="org.eclipse.jst.component.nondependency" value=""/>
+ </attributes>
+ </classpathentry>
+ <classpathentry kind="var" path="M2_REPO/org/eclipse/jetty/jetty-websocket/8.1.9.v20130131/jetty-websocket-8.1.9.v20130131.jar">
<attributes>
<attribute name="org.eclipse.jst.component.nondependency" value=""/>
</attributes>
</classpathentry>
- <classpathentry kind="var" path="M2_REPO/com/sun/jersey/jersey-test-framework/jersey-test-framework-core/1.17/jersey-test-framework-core-1.17.jar"/>
- <classpathentry kind="var" path="M2_REPO/com/sun/jersey/jersey-servlet/1.17/jersey-servlet-1.17.jar"/>
- <classpathentry kind="var" path="M2_REPO/com/sun/jersey/contribs/jersey-spring/1.17/jersey-spring-1.17.jar"/>
- <classpathentry kind="var" path="M2_REPO/com/sun/jersey/jersey-client/1.17/jersey-client-1.17.jar"/>
- <classpathentry kind="var" path="M2_REPO/joda-time/joda-time/2.1/joda-time-2.1.jar"/>
+ <classpathentry kind="var" path="M2_REPO/com/fasterxml/jackson/core/jackson-annotations/2.1.4/jackson-annotations-2.1.4.jar" sourcepath="M2_REPO/com/fasterxml/jackson/core/jackson-annotations/2.1.4/jackson-annotations-2.1.4-sources.jar">
+ <attributes>
+ <attribute name="javadoc_location" value="jar:file:/Users/ymh/.m2/repository/com/fasterxml/jackson/core/jackson-annotations/2.1.4/jackson-annotations-2.1.4-javadoc.jar!/"/>
+ <attribute name="org.eclipse.jst.component.nondependency" value=""/>
+ </attributes>
+ </classpathentry>
+ <classpathentry kind="var" path="M2_REPO/com/sun/jersey/jersey-test-framework/jersey-test-framework-core/1.17/jersey-test-framework-core-1.17.jar" sourcepath="M2_REPO/com/sun/jersey/jersey-test-framework/jersey-test-framework-core/1.17/jersey-test-framework-core-1.17-sources.jar">
+ <attributes>
+ <attribute name="javadoc_location" value="jar:file:/Users/ymh/.m2/repository/com/sun/jersey/jersey-test-framework/jersey-test-framework-core/1.17/jersey-test-framework-core-1.17-javadoc.jar!/"/>
+ <attribute name="org.eclipse.jst.component.nondependency" value=""/>
+ </attributes>
+ </classpathentry>
+ <classpathentry kind="var" path="M2_REPO/com/sun/jersey/jersey-servlet/1.17/jersey-servlet-1.17.jar" sourcepath="M2_REPO/com/sun/jersey/jersey-servlet/1.17/jersey-servlet-1.17-sources.jar">
+ <attributes>
+ <attribute name="javadoc_location" value="jar:file:/Users/ymh/.m2/repository/com/sun/jersey/jersey-servlet/1.17/jersey-servlet-1.17-javadoc.jar!/"/>
+ <attribute name="org.eclipse.jst.component.nondependency" value=""/>
+ </attributes>
+ </classpathentry>
+ <classpathentry kind="var" path="M2_REPO/com/sun/jersey/contribs/jersey-spring/1.17/jersey-spring-1.17.jar" sourcepath="M2_REPO/com/sun/jersey/contribs/jersey-spring/1.17/jersey-spring-1.17-sources.jar">
+ <attributes>
+ <attribute name="javadoc_location" value="jar:file:/Users/ymh/.m2/repository/com/sun/jersey/contribs/jersey-spring/1.17/jersey-spring-1.17-javadoc.jar!/"/>
+ <attribute name="org.eclipse.jst.component.nondependency" value=""/>
+ </attributes>
+ </classpathentry>
+ <classpathentry kind="var" path="M2_REPO/com/sun/jersey/jersey-client/1.17/jersey-client-1.17.jar" sourcepath="M2_REPO/com/sun/jersey/jersey-client/1.17/jersey-client-1.17-sources.jar">
+ <attributes>
+ <attribute name="javadoc_location" value="jar:file:/Users/ymh/.m2/repository/com/sun/jersey/jersey-client/1.17/jersey-client-1.17-javadoc.jar!/"/>
+ <attribute name="org.eclipse.jst.component.nondependency" value=""/>
+ </attributes>
+ </classpathentry>
+ <classpathentry kind="var" path="M2_REPO/joda-time/joda-time/2.1/joda-time-2.1.jar" sourcepath="M2_REPO/joda-time/joda-time/2.1/joda-time-2.1-sources.jar">
+ <attributes>
+ <attribute name="javadoc_location" value="jar:file:/Users/ymh/.m2/repository/joda-time/joda-time/2.1/joda-time-2.1-javadoc.jar!/"/>
+ <attribute name="org.eclipse.jst.component.nondependency" value=""/>
+ </attributes>
+ </classpathentry>
<classpathentry kind="output" path="server/target/classes"/>
</classpath>
--- a/server/pom.xml Tue Mar 19 17:59:34 2013 +0100
+++ b/server/pom.xml Fri Mar 22 05:30:19 2013 +0100
@@ -357,6 +357,11 @@
<version>${jetty-version}</version>
</dependency>
<dependency>
+ <groupId>org.eclipse.jetty</groupId>
+ <artifactId>jetty-servlets</artifactId>
+ <version>${jetty-version}</version>
+ </dependency>
+ <dependency>
<groupId>org.springframework.security</groupId>
<artifactId>spring-security-core</artifactId>
<version>${spring-security-version}</version>
--- a/server/src/main/java/org/iri_research/renkan/coweb/RenkanSessionModerator.java Tue Mar 19 17:59:34 2013 +0100
+++ b/server/src/main/java/org/iri_research/renkan/coweb/RenkanSessionModerator.java Fri Mar 22 05:30:19 2013 +0100
@@ -4,9 +4,6 @@
import java.util.List;
import java.util.Map;
-import javax.inject.Inject;
-import javax.inject.Named;
-
import org.coweb.DefaultSessionModerator;
import org.iri_research.renkan.coweb.event.ISyncEventManager;
import org.iri_research.renkan.models.Project;
@@ -20,15 +17,17 @@
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;
-@Named
public class RenkanSessionModerator extends DefaultSessionModerator {
private final Logger logger = LoggerFactory.getLogger(RenkanSessionModerator.class);
- @Inject
private ProjectsRepository projectsRepository;
+ public RenkanSessionModerator() {
+ super();
+ }
+
public ProjectsRepository getProjectsRepository() {
if(this.projectsRepository == null) {
ApplicationContext context = SpringConfigurer.getInstance().getApplicationContext();
--- a/server/src/main/java/org/iri_research/renkan/coweb/SpringConfigurer.java Tue Mar 19 17:59:34 2013 +0100
+++ b/server/src/main/java/org/iri_research/renkan/coweb/SpringConfigurer.java Fri Mar 22 05:30:19 2013 +0100
@@ -1,32 +1,21 @@
package org.iri_research.renkan.coweb;
-import java.util.HashMap;
-import java.util.Map;
+import javax.inject.Inject;
-import javax.annotation.PostConstruct;
-import javax.inject.Inject;
-import javax.servlet.ServletContext;
-
-import org.cometd.annotation.ServerAnnotationProcessor;
-import org.cometd.bayeux.server.BayeuxServer;
-import org.cometd.server.BayeuxServerImpl;
-import org.cometd.websocket.server.WebSocketTransport;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.BeansException;
-import org.springframework.beans.factory.config.DestructionAwareBeanPostProcessor;
import org.springframework.context.ApplicationContext;
import org.springframework.context.ApplicationContextAware;
-import org.springframework.context.annotation.Bean;
-import org.springframework.web.context.ServletContextAware;
+import org.springframework.stereotype.Component;
-//@Component
+@Component
//@Scope("prototype")
-public class SpringConfigurer implements DestructionAwareBeanPostProcessor, ServletContextAware, ApplicationContextAware
+public class SpringConfigurer implements ApplicationContextAware
{
- private BayeuxServer bayeuxServer;
- private ServerAnnotationProcessor processor;
+ //private BayeuxServer bayeuxServer;
+ //private ServerAnnotationProcessor processor;
private final Logger logger = LoggerFactory.getLogger(SpringConfigurer.class);
private ApplicationContext context;
@@ -34,7 +23,7 @@
private SpringConfigurer()
{
- this.logger.debug("Buiding SpringCond=figurer");
+ this.logger.debug("Building SpringConfigurer");
}
public static SpringConfigurer getInstance() {
@@ -48,53 +37,8 @@
return instance;
}
- @Inject
- private void setBayeuxServer(BayeuxServer bayeuxServer)
- {
- this.bayeuxServer = bayeuxServer;
- }
- @PostConstruct
- private void init()
- {
- this.processor = new ServerAnnotationProcessor(bayeuxServer);
- }
-
- public Object postProcessBeforeInitialization(Object bean, String name) throws BeansException
- {
- processor.processDependencies(bean);
- processor.processConfigurations(bean);
- processor.processCallbacks(bean);
- return bean;
- }
-
- public Object postProcessAfterInitialization(Object bean, String name) throws BeansException
- {
- return bean;
- }
-
- public void postProcessBeforeDestruction(Object bean, String name) throws BeansException
- {
- processor.deprocessCallbacks(bean);
- }
-
- @Bean(initMethod = "start", destroyMethod = "stop")
- public BayeuxServer bayeuxServer()
- {
- BayeuxServerImpl bean = new BayeuxServerImpl();
- bean.addTransport(new WebSocketTransport(bean));
- Map<String, Object> options = new HashMap<String, Object>();
- options.put(BayeuxServerImpl.LOG_LEVEL, "1");
- options.put("timeout", "1500");
- bean.setOptions(options);
- return bean;
- }
-
- public void setServletContext(ServletContext servletContext)
- {
- servletContext.setAttribute(BayeuxServer.ATTRIBUTE, bayeuxServer);
- }
-
+
@Override
@Inject
public void setApplicationContext(ApplicationContext context)
--- a/server/src/main/java/org/iri_research/renkan/coweb/server/RenkanCometdServlet.java Tue Mar 19 17:59:34 2013 +0100
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,28 +0,0 @@
-package org.iri_research.renkan.coweb.server;
-
-import javax.inject.Inject;
-import javax.inject.Named;
-
-import org.cometd.bayeux.server.BayeuxServer;
-import org.cometd.server.BayeuxServerImpl;
-import org.cometd.server.CometdServlet;
-
-@Named
-public class RenkanCometdServlet extends CometdServlet {
-
- /**
- *
- */
- private static final long serialVersionUID = -5362140618261972254L;
-
- @Inject
- private BayeuxServer _bayeux;
-
- @Override
- protected BayeuxServerImpl newBayeuxServer()
- {
- return (BayeuxServerImpl)_bayeux;
- }
-
-
-}
--- a/server/src/main/java/org/iri_research/renkan/models/Project.java Tue Mar 19 17:59:34 2013 +0100
+++ b/server/src/main/java/org/iri_research/renkan/models/Project.java Fri Mar 22 05:30:19 2013 +0100
@@ -3,7 +3,6 @@
import java.io.UnsupportedEncodingException;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
-import java.security.SecureRandom;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
@@ -11,6 +10,8 @@
import java.util.Map;
import java.util.UUID;
+import javax.crypto.spec.SecretKeySpec;
+
import org.apache.commons.codec.binary.Hex;
import org.iri_research.renkan.Constants;
import org.iri_research.renkan.Constants.EditMode;
@@ -123,9 +124,10 @@
private String getRawKey(String prefix, Constants.EditMode editMode) {
StringBuffer key = new StringBuffer(prefix!=null?prefix+"|":"");
- key.append(Constants.KEYHEX);
key.append(this.getId());
key.append('|');
+ key.append(this.getSpaceId());
+ key.append('|');
key.append(this.getCreated().getTime());
key.append('|');
key.append(editMode.toString());
@@ -138,24 +140,7 @@
public String getKey(Constants.EditMode editMode) throws RenkanException {
- // get salt
- SecureRandom rand;
- try {
- rand = SecureRandom.getInstance("SHA1PRNG");
- } catch (NoSuchAlgorithmException e) {
- throw new RenkanException("NoSuchAlgorithmException random: " + e.getMessage(), e);
- }
- byte[] salt = new byte[Constants.SALT_LENGTH];
- rand.nextBytes(salt);
- String hex_salt = Hex.encodeHexString(salt);
-
- return hex_salt+"-"+this.getKey(hex_salt, editMode);
-
- }
-
- private String getKey(String hex_salt, Constants.EditMode editMode) throws RenkanException {
-
- String rawKey = this.getRawKey(hex_salt, editMode);
+ String rawKey = this.getRawKey("", editMode);
MessageDigest md;
try {
@@ -164,13 +149,15 @@
throw new RenkanException("NoSuchAlgorithmException digest: " + e.getMessage(), e);
}
String key;
+ final SecretKeySpec secret_key = new SecretKeySpec(Constants.KEYHEX.getBytes(), "HmacSHA256");
+ md.update(secret_key.getEncoded());
try {
key = Hex.encodeHexString(md.digest(rawKey.getBytes("UTF-8")));
} catch (UnsupportedEncodingException e) {
throw new RenkanException("UnsupportedEncodingException digest: " + e.getMessage(), e);
}
- return key;
+ return key;
}
public boolean checkKey(String key, Constants.EditMode editMode) throws RenkanException {
@@ -179,16 +166,10 @@
if(key == null || key.isEmpty()) {
return false;
}
+
+ String signature = key;
- String[] key_parts = key.split("-", 2);
- if(key_parts.length < 2) {
- return false;
- }
-
- String salt = key_parts[0];
- String signature = key_parts[1];
-
- String new_key = this.getKey(salt, editMode);
+ String new_key = this.getKey(editMode);
return new_key.equals(signature);
}
--- a/server/src/main/java/org/iri_research/renkan/rest/RenkanResource.java Tue Mar 19 17:59:34 2013 +0100
+++ b/server/src/main/java/org/iri_research/renkan/rest/RenkanResource.java Fri Mar 22 05:30:19 2013 +0100
@@ -121,7 +121,7 @@
obj = this.getRepository().save(obj);
return Response.created(this.uriInfo.getAbsolutePathBuilder().segment(obj.getId().toString()).build()).entity(obj).build();
}
-
+
@GET
@Produces(MediaType.APPLICATION_JSON + ";charset=utf-8")
--- a/server/src/main/resources/log4j.xml Tue Mar 19 17:59:34 2013 +0100
+++ b/server/src/main/resources/log4j.xml Fri Mar 22 05:30:19 2013 +0100
@@ -20,6 +20,9 @@
<!--logger name="org.cometd">
<level value="DEBUG" />
</logger-->
+ <logger name="org.coweb">
+ <level value="DEBUG" />
+ </logger>
<root>
<priority value ="WARN" />
<appender-ref ref="console" />
--- a/server/src/main/webapp/WEB-INF/applicationContext.xml Tue Mar 19 17:59:34 2013 +0100
+++ b/server/src/main/webapp/WEB-INF/applicationContext.xml Fri Mar 22 05:30:19 2013 +0100
@@ -18,18 +18,10 @@
<!-- Loads MongoDB configuraton -->
<import resource="mongo-config.xml"/>
- <!--bean id="bayeuxServer" class="org.cometd.server.BayeuxServerImpl" init-method="start" destroy-method="stop">
- <property name="options">
- <map>
- <entry key="logLevel" value="3" />
- <entry key="timeout" value="15000" />
- </map>
- </property>
- </bean-->
<bean id="springConfigurer"
class="org.iri_research.renkan.coweb.SpringConfigurer"
factory-method="getInstance" />
-
+
<!-- Scans the classpath for annotated components that will be auto-registered as Spring beans.
For example @Controller and @Service. Make sure to set the correct base-package-->
<context:component-scan base-package="org.iri_research.renkan.rest" />
--- a/server/src/main/webapp/WEB-INF/web.xml Tue Mar 19 17:59:34 2013 +0100
+++ b/server/src/main/webapp/WEB-INF/web.xml Fri Mar 22 05:30:19 2013 +0100
@@ -9,7 +9,7 @@
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<listener>
- <listener-class>org.springframework.web.context.request.RequestContextListener</listener-class>
+ <listener-class>org.springframework.web.context.request.RequestContextListener</listener-class>
</listener>
<context-param>
<param-name>contextConfigLocation</param-name>
@@ -17,11 +17,10 @@
</context-param>
<servlet>
<servlet-name>cometd</servlet-name>
- <!--servlet-class>org.cometd.server.CometdServlet</servlet-class-->
- <servlet-class>org.iri_research.renkan.coweb.server.RenkanCometdServlet</servlet-class>
+ <servlet-class>org.cometd.server.CometdServlet</servlet-class>
<init-param>
<param-name>logLevel</param-name>
- <param-value>2</param-value>
+ <param-value>1</param-value>
</init-param>
<init-param>
<param-name>timeout</param-name>
@@ -45,6 +44,14 @@
<servlet-name>cometd</servlet-name>
<url-pattern>/cometd/*</url-pattern>
</servlet-mapping>
+ <filter>
+ <filter-name>cross-origin</filter-name>
+ <filter-class>org.eclipse.jetty.servlets.CrossOriginFilter</filter-class>
+ </filter>
+ <filter-mapping>
+ <filter-name>cross-origin</filter-name>
+ <url-pattern>/cometd/*</url-pattern>
+ </filter-mapping>
<servlet>
<servlet-name>admin</servlet-name>
<servlet-class>org.coweb.servlet.AdminServlet</servlet-class>
--- a/server/src/main/webapp/model-test.html Tue Mar 19 17:59:34 2013 +0100
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,340 +0,0 @@
-<!doctype html>
-<html class="no-js" lang="en">
-<head>
- <meta charset="utf-8">
- <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
-
- <title>Test Model Renkan</title>
- <meta name="description" content="">
- <meta name="author" content="">
-
- <meta name="viewport" content="width=device-width">
-
- <link rel="stylesheet" href="css/style.css">
-
- <script type="text/javascript" src="js/config.js"></script>
- <script type="text/javascript" src="js/dojo.js" data-dojo-config="isDebug: true, parseOnLoad: true"></script>
- <script src="lib/jquery.min.js"></script>
- <script src="lib/underscore-min.js"></script>
- <script src="js/backbone.js"></script>
- <script src="js/backbone-relational.js"></script>
- <script src="js/main_test_models.js"></script>
- <script src="js/models.js"></script>
- <script type="text/javascript" src="js/config.js"></script>
- <script data-main="main" src="js/main_coweb.js"></script>
- <script type="text/javascript">
-
- function set_project(project) {
-
- require(["dojo/dom", "dojo/on", "corenkan"], function(dom, on, corenkan) {
-
- var template_html = dom.byId("project_disp_template").innerHTML;
- var el = dom.byId("project_display");
-
-
- var project_form_view = new FormView({el: dom.byId("form_display"), model: project, template: dom.byId("project_form_template").innerHTML});
-
- project_view = new ModelView({
- el:el,
- model: project,
- template: template_html,
- form_view: project_form_view,
- form_el : dom.byId("form_display_div")
- });
-
- var user_list_view = new ColView({
- el: dom.byId("users_list_base"),
- collection: project.get("users"),
- element: {
- template: dom.byId("user_disp_template").innerHTML
- },
- element_form: {
- tagName: "div",
- attributes: {
- id:"form_display",
- },
- template: dom.byId("user_form_template").innerHTML
- },
- element_form_el : dom.byId("form_display_div")
- });
-
- var node_list_view = new ColView({
- el: dom.byId("nodes_list_base"),
- collection: project.get("nodes"),
- element: {
- template: dom.byId("node_disp_template").innerHTML
- },
- element_form: {
- tagName: "div",
- attributes: {
- id:"form_display",
- },
- template: dom.byId("node_form_template").innerHTML
- },
- element_form_el : dom.byId("form_display_div")
- });
-
- var current_user_view = new CurrentUserView({
- el: dom.byId("users_select"),
- model: project
- })
-
- project_view.render();
- user_list_view.render();
- node_list_view.render();
- current_user_view.render();
-
- on(dom.byId("add_user"), "click", function() {
- project.get("users").push(new Rkns.Models.User({}));
- });
- on(dom.byId("add_node"), "click", function() {
- project.get("nodes").push(new Rkns.Models.Node({project: project}));
- });
-
- on(dom.byId("users_select"), "change", function(evt) {
- var val = evt.currentTarget.value;
- var current_user = null;
- if(typeof val !== "undefined" && val != "") {
- current_user = project.get("users").get(val);
- }
-
- if(current_user != null) {
- project.current_user = current_user;
- dom.byId("current_user").innerHTML = current_user.get("title");
- }
- else {
- project.current_user = null;
- dom.byId("current_user").innerHTML = "";
- }
-
- });
-
- project.get("users").on("change", function(evt) {
- if(project.current_user == null) {
- dom.byId("current_user").innerHTML = "";
- }
- else if(evt.id == project.current_user.id) {
- dom.byId("current_user").innerHTML = project.current_user.get("title");
- }
- });
-
- project.get("users").on("remove", function(evt) {
- if(typeof project.current_user === "undefined" || project.current_user == null || evt.id == project.current_user.id) {
- dom.byId("current_user").innerHTML = "";
- }
- });
-
- corenkan.app.setProject(project);
- });
- }
-
- function load_project(project_id) {
- var project = null;
-
- if(project_id) {
- project = new Rkns.Models.Project({_id: project_id});
- }
- else {
- project = new Rkns.Models.Project({});
- }
- project.urlRoot = "rest/projects";
-
- if(project_id) {
- project.fetch({
- success: function(project, resp) {
- set_project(project);
- }
- });
- }
- else {
- set_project(project);
- }
-
- return project;
- }
-
- var current_project = null;
-
- require(["dojo/dom", "dojo/on", "dojo/domReady!"], function(dom, on) {
-
- var project_list_item_view = BasicModelView.extend({template: _.template(dom.byId("project_list_item_template").innerHTML), tagName: "li"});
-
- var project_list_col = new (Backbone.Collection.extend({model: Rkns.Models.Project.extend({idAttribute:'_id', urlRoot:'rest/projects'})}))();
- project_list_col.url = "rest/projects";
- project_list_col.on("all", function(){
- if(!project_list_view) {
- return;
- }
- _(project_list_view.element_views).each(function(ev){
- if(ev.model.id === current_project.id) {
- $(".project_load_button",ev.el).attr('disabled','disabled');
- $(".project_delete_button",ev.el).attr('disabled','disabled');
- }
- else {
- $(".project_load_button",ev.el).removeAttr('disabled');
- $(".project_delete_button",ev.el).removeAttr('disabled');
- }
- });
- });
-
- var project_list_view = null;
-
- project_list_col.fetch({
- success:function(collection, response) {
- project_list_view = new (BasicListView.extend({events: {
- "click .project_load_button" : function(evt) {
- var proj_id = $(evt.target).val();
- if(current_project && current_project.id == proj_id) {
- return;
- }
- current_project = load_project($(evt.target).val());
- project_list_col.trigger("sync");
- },
- "click .project_delete_button": function(evt) {
- var delete_id = $(evt.target).val();
- if(!current_project || delete_id != current_project.id) {
- _(project_list_col.where({_id: delete_id})).each(function(proj) {
- proj.destroy();
- });
- }
- }
- }}))({collection: collection, element_view_constructor: project_list_item_view, el: dom.byId("project_list")});
- project_list_view.render();
- }
- });
-
- on(dom.byId("project_save_button"), "click", function(evt){
- if(current_project) {
- current_project.save({}, {success: function(model, response) {
- if(project_list_view != null) {
- project_list_col.fetch({
- success:function(collection, response) {
- project_list_view.render();
- }
- });
- }
- }});
- }
- });
-
- on(dom.byId("new_project_button"), "click", function(evt) {
- current_project = load_project();
- });
-
- });
- </script>
-</head>
-<body>
-<header>
-</header>
-
-<div>
-<div class="project_current_user"><span class="project_label project_user_label">User: </span><span id="current_user"></span></div>
-<select id="users_select">
- <option value="">None</option>
-</select>
-</div>
-
-<button type="button" id="new_project_button">New Project</button>
-
-<div id="project_list_div">
-<ul id="project_list">
-</ul>
-</div>
-
-<div role="main" id="project_display">
-</div>
-<button type="button" id="project_save_button" value="save">Save</button>
-
-<div id="users_list_div">
- <button id="add_user">Add user</button>
- <ul id="users_list_base">
- </ul>
-</div>
-
-<div id="nodes_list_div">
- <button id="add_node">Add node</button>
- <ul id="nodes_list_base">
- </ul>
-</div>
-
-
-<div id="form_display_div">
-</div>
-
-<footer>
-</footer>
-
-<script type="text/template" id="current_user_template">
-</script>
-
-<script type="text/template" id="project_disp_template">
- <div class="show_form">
- <h2 class="project_title">Project <%= _id %>: <%= title %></h2>
- <div class="project_desc"><span class="project_label project_desc_label">Desc: </span><%= description %></div>
- <div class="project_uri"><span class="project_label project_uri_label">Uri: </span><%= uri %></div>
- </div>
-</script>
-<script type="text/template" id="project_form_template">
- <table class="project_form">
- <thead>
- <tr><th>Field</th><th>Value</th></tr>
- </thead>
- <tbody>
- <tr><td>Title:</td><td><input type="text" name="title" id="project_form_title" class="form_field" value="<%= title %>"></input></td></tr>
- <tr><td>Uri :</td><td><input type="text" name="uri" id="project_form_text" class="form_field" value="<%= uri %>"></input></td></tr>
- <tr><td>Desc :</td><td><textarea name="description" id="project_form_description" class="form_field"><%= description %></textarea></td></tr>
- </tbody>
- </table>
-</script>
-<script type="text/template" id="user_disp_template">
- <div class="show_form">
- <h2 class="user_title">User <%= _id %>: <%= title %></h2>
- <div class="user_desc"><span class="user_label user_desc_label">Desc: </span><%= description %></div>
- <div class="user_uri"><span class="user_label user_uri_label">Uri: </span><%= uri %></div>
- <div class="user_color"><span class="user_label user_color_label">Color: </span><%= color %></div>
- </div>
- <button type="button" class="remove_button" value="<%= _id %>">Remove<button>
-</script>
-<script type="text/template" id="user_form_template">
- <table class="user_form">
- <thead>
- <tr><th>Field</th><th>Value</th></tr>
- </thead>
- <tbody>
- <tr><td>Title:</td><td><input type="text" name="title" class="form_field" value="<%= title %>"></input></td></tr>
- <tr><td>Uri :</td><td><input type="text" name="uri" class="form_field" value="<%= uri %>"></input></td></tr>
- <tr><td>Color :</td><td><input type="text" name="color" class="form_field" value="<%= color %>"></input></td></tr>
- <tr><td>Desc :</td><td><textarea name="description" class="form_field"><%= description %></textarea></td></tr>
- </tbody>
- </table>
-</script>
-<script type="text/template" id="node_disp_template">
- <div class="show_form">
- <h2 class="user_title">Node <%= _id %>: <%= title %></h2>
- <div class="user_desc"><span class="user_label user_desc_label">Desc: </span><%= description %></div>
- <div class="user_uri"><span class="user_label user_uri_label">Uri: </span><%= uri %></div>
- <div class="user_creator"><span class="user_label user_uri_label">Creator: </span><%= created_by.title %></div>
- </div>
- <button type="button" class="remove_button" value="<%= _id %>">Remove<button>
-</script>
-<script type="text/template" id="node_form_template">
- <table class="node_form">
- <thead>
- <tr><th>Field</th><th>Value</th></tr>
- </thead>
- <tbody>
- <tr><td>Node title:</td><td><input type="text" name="title" class="form_field" value="<%= title %>"></input></td></tr>
- <tr><td>Node uri :</td><td><input type="text" name="uri" class="form_field" value="<%= uri %>"></input></td></tr>
- <tr><td>Node creator :</td><td><input type="text" name="created_by" class="form_field" value="<%= created_by.title %>" readonly="readonly"></input></td></tr>
- <tr><td>Node desc :</td><td><textarea name="description" class="form_field"><%= description %></textarea></td></tr>
- </tbody>
- </table>
-</script>
-<script type="text/template" id="project_list_item_template">
- <span class="title"><%= title %></span> <button type="button" class="project_load_button" value="<%= _id %>">Load</button><button type="button" class="project_delete_button" value="<%= _id %>">Delete</button>
-</script>
-
-
-</body>
-</html>
\ No newline at end of file
--- a/server/src/main/webapp/render-test.html Tue Mar 19 17:59:34 2013 +0100
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,63 +0,0 @@
-<!DOCTYPE html>
-<html lang="fr">
- <head>
- <meta charset="utf-8" />
- <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
- <title>Test de Rendu RENKAN</title>
- <meta name="description" content="" />
- <meta name="author" content="Institut de Recherche et d'Innovation" />
- <script src="lib/jquery.min.js"></script>
- <script src="lib/jquery.mousewheel.min.js"></script>
- <script src="lib/underscore-min.js"></script>
- <script src="js/backbone.js"></script>
- <script src="js/backbone-relational.js"></script>
- <script src="lib/paper.js"></script>
- <script src="js/main.js"></script>
- <script src="js/models.js"></script>
- <script src="js/i18n.js"></script>
- <script src="js/model.js"></script>
- <script src="js/json-serializer.js"></script>
- <script src="js/random-data.js"></script>
- <script src="js/paper-renderer.js"></script>
- <script type="text/javascript" src="js/config.js"></script>
- <script type="text/javascript" src="js/dojo.js" data-dojo-config="isDebug: true, parseOnLoad: true"></script>
- <script data-main="main" src="js/main_coweb.js"></script>
- <script type="text/javascript">
- var _proj;
- $(function() {
- _proj = new Rkns.Project({
- url: "rest/projects/12eff140-e65c-11e1-aff1-0800200c9a66",
- //serializer: "RandomData",
- canvas_id: "renkanvas",
- user: {
- id: "anonymous",
- title: "anonymous",
- color: "#0000ff"
- }
- });
- });
- </script>
- <link rel="stylesheet" href="css/renkan.css" />
- <style type="text/css">
- #topbar { position: absolute; left: 0; top: 0; right: 0; height: 40px; background: #f0f0f0; font-size: 20px; color: #a0a0a0; }
- #leftbar { position: absolute; left: 0; top: 40px; width: 200px; bottom: 0; background: #d0d0d0; font-size: 20px; color: #ffffff; }
- #renkan-container { position: absolute; top: 40px; left: 200px; right: 0; bottom: 0; overflow: hidden; }
- #renkanvas { position: absolute; top: 0; left: 0; right: 0; bottom: 0; }
- .Rk-Editor { position: absolute; top: 0; left: 0; }
- </style>
- </head>
-
- <body>
- <div id="topbar">Renkan Top Bar</div>
- <div id="bottompart">
- <div id="leftbar">Renkan "Stock Box"</div>
- <div id="renkan-container">
- <canvas id="renkanvas" resize></canvas>
- <div class="Rk-Editor">
-<!-- <div class="Rk-Button-Edit"></div>-->
- </div>
- </div>
- </div>
-
- </body>
-</html>
--- a/server/src/main/webapp/static/js/config.js Tue Mar 19 17:59:34 2013 +0100
+++ b/server/src/main/webapp/static/js/config.js Fri Mar 22 05:30:19 2013 +0100
@@ -26,6 +26,6 @@
baseUrl: window.location.protocol + '//' + window.location.host,
adminUrl : dojoConfig.baseUrl+'admin',
debug: false,
- useWebSockets: false,
+ useWebSockets: true,
};
--- a/server/src/main/webapp/static/js/corenkan.js Tue Mar 19 17:59:34 2013 +0100
+++ b/server/src/main/webapp/static/js/corenkan.js Fri Mar 22 05:30:19 2013 +0100
@@ -114,7 +114,7 @@
obj = json.parse(state);
console.log("State response", obj);
obj['_id'] = obj['id'];
- this.project.set(obj);
+ this.project.set(obj, {validate: true});
};
function prepareValues(obj,c) {