summaryrefslogtreecommitdiffstats
path: root/com.gluster.storage.management.server
diff options
context:
space:
mode:
authorShireesh Anjal <shireesh@gluster.com>2011-02-02 15:10:03 +0530
committerShireesh Anjal <shireesh@gluster.com>2011-02-02 15:10:03 +0530
commitdfd14c05bc117df8de627c48d4615fc9d995bbe0 (patch)
treea1d1d7d043a102d8904cb5ade021c1937172a523 /com.gluster.storage.management.server
initial commit
Diffstat (limited to 'com.gluster.storage.management.server')
-rw-r--r--com.gluster.storage.management.server/.classpath18
-rw-r--r--com.gluster.storage.management.server/.project36
-rw-r--r--com.gluster.storage.management.server/.settings/.jsdtscope12
-rw-r--r--com.gluster.storage.management.server/.settings/org.eclipse.jdt.core.prefs8
-rw-r--r--com.gluster.storage.management.server/.settings/org.eclipse.ltk.core.refactoring.prefs3
-rw-r--r--com.gluster.storage.management.server/.settings/org.eclipse.wst.common.component9
-rw-r--r--com.gluster.storage.management.server/.settings/org.eclipse.wst.common.project.facet.core.xml10
-rw-r--r--com.gluster.storage.management.server/.settings/org.eclipse.wst.jsdt.ui.superType.container1
-rw-r--r--com.gluster.storage.management.server/.settings/org.eclipse.wst.jsdt.ui.superType.name1
-rw-r--r--com.gluster.storage.management.server/.settings/org.eclipse.wst.ws.service.policy.prefs3
-rw-r--r--com.gluster.storage.management.server/WebContent/META-INF/MANIFEST.MF3
-rw-r--r--com.gluster.storage.management.server/WebContent/WEB-INF/lib/asm-3.1.jarbin0 -> 43033 bytes
-rw-r--r--com.gluster.storage.management.server/WebContent/WEB-INF/lib/com.gluster.storage.management.core_1.0.0.jarbin0 -> 70343 bytes
-rw-r--r--com.gluster.storage.management.server/WebContent/WEB-INF/lib/jackson-core-asl-1.5.5.jarbin0 -> 171958 bytes
-rw-r--r--com.gluster.storage.management.server/WebContent/WEB-INF/lib/jackson-jaxrs-1.5.5.jarbin0 -> 17065 bytes
-rw-r--r--com.gluster.storage.management.server/WebContent/WEB-INF/lib/jackson-mapper-asl-1.5.5.jarbin0 -> 485699 bytes
-rw-r--r--com.gluster.storage.management.server/WebContent/WEB-INF/lib/jackson-xc-1.5.5.jarbin0 -> 24745 bytes
-rw-r--r--com.gluster.storage.management.server/WebContent/WEB-INF/lib/jersey-client-1.4.jarbin0 -> 124421 bytes
-rw-r--r--com.gluster.storage.management.server/WebContent/WEB-INF/lib/jersey-core-1.4.jarbin0 -> 455517 bytes
-rw-r--r--com.gluster.storage.management.server/WebContent/WEB-INF/lib/jersey-json-1.4.jarbin0 -> 142827 bytes
-rw-r--r--com.gluster.storage.management.server/WebContent/WEB-INF/lib/jersey-server-1.4.jarbin0 -> 677600 bytes
-rw-r--r--com.gluster.storage.management.server/WebContent/WEB-INF/lib/jettison-1.1.jarbin0 -> 67758 bytes
-rw-r--r--com.gluster.storage.management.server/WebContent/WEB-INF/lib/jsr311-api-1.1.1.jarbin0 -> 46367 bytes
-rw-r--r--com.gluster.storage.management.server/WebContent/WEB-INF/web.xml25
-rw-r--r--com.gluster.storage.management.server/src/com/gluster/storage/management/server/services/AuthManager.java63
-rw-r--r--com.gluster.storage.management.server/src/com/gluster/storage/management/server/services/Hello.java32
26 files changed, 224 insertions, 0 deletions
diff --git a/com.gluster.storage.management.server/.classpath b/com.gluster.storage.management.server/.classpath
new file mode 100644
index 00000000..c96b5783
--- /dev/null
+++ b/com.gluster.storage.management.server/.classpath
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/jdk1.6.0_23">
+ <attributes>
+ <attribute name="owner.project.facets" value="java"/>
+ </attributes>
+ </classpathentry>
+ <classpathentry kind="con" path="org.eclipse.jst.server.core.container/org.eclipse.jst.server.tomcat.runtimeTarget/Apache Tomcat v7.0">
+ <attributes>
+ <attribute name="owner.project.facets" value="jst.web"/>
+ </attributes>
+ </classpathentry>
+ <classpathentry kind="con" path="org.eclipse.jst.j2ee.internal.web.container"/>
+ <classpathentry kind="con" path="org.eclipse.jst.j2ee.internal.module.container"/>
+ <classpathentry combineaccessrules="false" kind="src" path="/com.gluster.storage.management.core"/>
+ <classpathentry kind="output" path="WebContent/WEB-INF/classes"/>
+</classpath>
diff --git a/com.gluster.storage.management.server/.project b/com.gluster.storage.management.server/.project
new file mode 100644
index 00000000..cb36e33f
--- /dev/null
+++ b/com.gluster.storage.management.server/.project
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>com.gluster.storage.management.server</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.wst.jsdt.core.javascriptValidator</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.jdt.core.javabuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.wst.common.project.facet.core.builder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.wst.validation.validationbuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.jem.workbench.JavaEMFNature</nature>
+ <nature>org.eclipse.wst.common.modulecore.ModuleCoreNature</nature>
+ <nature>org.eclipse.wst.common.project.facet.core.nature</nature>
+ <nature>org.eclipse.jdt.core.javanature</nature>
+ <nature>org.eclipse.wst.jsdt.core.jsNature</nature>
+ </natures>
+</projectDescription>
diff --git a/com.gluster.storage.management.server/.settings/.jsdtscope b/com.gluster.storage.management.server/.settings/.jsdtscope
new file mode 100644
index 00000000..3a28de0c
--- /dev/null
+++ b/com.gluster.storage.management.server/.settings/.jsdtscope
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="src" path="WebContent"/>
+ <classpathentry kind="con" path="org.eclipse.wst.jsdt.launching.JRE_CONTAINER"/>
+ <classpathentry kind="con" path="org.eclipse.wst.jsdt.launching.WebProject">
+ <attributes>
+ <attribute name="hide" value="true"/>
+ </attributes>
+ </classpathentry>
+ <classpathentry kind="con" path="org.eclipse.wst.jsdt.launching.baseBrowserLibrary"/>
+ <classpathentry kind="output" path=""/>
+</classpath>
diff --git a/com.gluster.storage.management.server/.settings/org.eclipse.jdt.core.prefs b/com.gluster.storage.management.server/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 00000000..476db350
--- /dev/null
+++ b/com.gluster.storage.management.server/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,8 @@
+#Wed Dec 29 14:57:23 IST 2010
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6
+org.eclipse.jdt.core.compiler.compliance=1.6
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.source=1.6
diff --git a/com.gluster.storage.management.server/.settings/org.eclipse.ltk.core.refactoring.prefs b/com.gluster.storage.management.server/.settings/org.eclipse.ltk.core.refactoring.prefs
new file mode 100644
index 00000000..5d9c71b6
--- /dev/null
+++ b/com.gluster.storage.management.server/.settings/org.eclipse.ltk.core.refactoring.prefs
@@ -0,0 +1,3 @@
+#Mon Jan 31 15:29:36 IST 2011
+eclipse.preferences.version=1
+org.eclipse.ltk.core.refactoring.enable.project.refactoring.history=false
diff --git a/com.gluster.storage.management.server/.settings/org.eclipse.wst.common.component b/com.gluster.storage.management.server/.settings/org.eclipse.wst.common.component
new file mode 100644
index 00000000..bb2eaf45
--- /dev/null
+++ b/com.gluster.storage.management.server/.settings/org.eclipse.wst.common.component
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project-modules id="moduleCoreId" project-version="1.5.0">
+ <wb-module deploy-name="com.gluster.storage.management.server">
+ <wb-resource deploy-path="/" source-path="/WebContent"/>
+ <wb-resource deploy-path="/WEB-INF/classes" source-path="/src"/>
+ <property name="java-output-path" value="/com.gluster.storage.management.server/build/classes"/>
+ <property name="context-root" value="glustermc"/>
+ </wb-module>
+</project-modules>
diff --git a/com.gluster.storage.management.server/.settings/org.eclipse.wst.common.project.facet.core.xml b/com.gluster.storage.management.server/.settings/org.eclipse.wst.common.project.facet.core.xml
new file mode 100644
index 00000000..307f3bb7
--- /dev/null
+++ b/com.gluster.storage.management.server/.settings/org.eclipse.wst.common.project.facet.core.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<faceted-project>
+ <runtime name="Apache Tomcat v7.0"/>
+ <fixed facet="wst.jsdt.web"/>
+ <fixed facet="jst.web"/>
+ <fixed facet="java"/>
+ <installed facet="java" version="1.6"/>
+ <installed facet="jst.web" version="3.0"/>
+ <installed facet="wst.jsdt.web" version="1.0"/>
+</faceted-project>
diff --git a/com.gluster.storage.management.server/.settings/org.eclipse.wst.jsdt.ui.superType.container b/com.gluster.storage.management.server/.settings/org.eclipse.wst.jsdt.ui.superType.container
new file mode 100644
index 00000000..3bd5d0a4
--- /dev/null
+++ b/com.gluster.storage.management.server/.settings/org.eclipse.wst.jsdt.ui.superType.container
@@ -0,0 +1 @@
+org.eclipse.wst.jsdt.launching.baseBrowserLibrary \ No newline at end of file
diff --git a/com.gluster.storage.management.server/.settings/org.eclipse.wst.jsdt.ui.superType.name b/com.gluster.storage.management.server/.settings/org.eclipse.wst.jsdt.ui.superType.name
new file mode 100644
index 00000000..05bd71b6
--- /dev/null
+++ b/com.gluster.storage.management.server/.settings/org.eclipse.wst.jsdt.ui.superType.name
@@ -0,0 +1 @@
+Window \ No newline at end of file
diff --git a/com.gluster.storage.management.server/.settings/org.eclipse.wst.ws.service.policy.prefs b/com.gluster.storage.management.server/.settings/org.eclipse.wst.ws.service.policy.prefs
new file mode 100644
index 00000000..e5ca6272
--- /dev/null
+++ b/com.gluster.storage.management.server/.settings/org.eclipse.wst.ws.service.policy.prefs
@@ -0,0 +1,3 @@
+#Mon Jan 31 15:29:36 IST 2011
+eclipse.preferences.version=1
+org.eclipse.wst.ws.service.policy.projectEnabled=false
diff --git a/com.gluster.storage.management.server/WebContent/META-INF/MANIFEST.MF b/com.gluster.storage.management.server/WebContent/META-INF/MANIFEST.MF
new file mode 100644
index 00000000..5e949512
--- /dev/null
+++ b/com.gluster.storage.management.server/WebContent/META-INF/MANIFEST.MF
@@ -0,0 +1,3 @@
+Manifest-Version: 1.0
+Class-Path:
+
diff --git a/com.gluster.storage.management.server/WebContent/WEB-INF/lib/asm-3.1.jar b/com.gluster.storage.management.server/WebContent/WEB-INF/lib/asm-3.1.jar
new file mode 100644
index 00000000..8217cae0
--- /dev/null
+++ b/com.gluster.storage.management.server/WebContent/WEB-INF/lib/asm-3.1.jar
Binary files differ
diff --git a/com.gluster.storage.management.server/WebContent/WEB-INF/lib/com.gluster.storage.management.core_1.0.0.jar b/com.gluster.storage.management.server/WebContent/WEB-INF/lib/com.gluster.storage.management.core_1.0.0.jar
new file mode 100644
index 00000000..2f689843
--- /dev/null
+++ b/com.gluster.storage.management.server/WebContent/WEB-INF/lib/com.gluster.storage.management.core_1.0.0.jar
Binary files differ
diff --git a/com.gluster.storage.management.server/WebContent/WEB-INF/lib/jackson-core-asl-1.5.5.jar b/com.gluster.storage.management.server/WebContent/WEB-INF/lib/jackson-core-asl-1.5.5.jar
new file mode 100644
index 00000000..a3248188
--- /dev/null
+++ b/com.gluster.storage.management.server/WebContent/WEB-INF/lib/jackson-core-asl-1.5.5.jar
Binary files differ
diff --git a/com.gluster.storage.management.server/WebContent/WEB-INF/lib/jackson-jaxrs-1.5.5.jar b/com.gluster.storage.management.server/WebContent/WEB-INF/lib/jackson-jaxrs-1.5.5.jar
new file mode 100644
index 00000000..faf12cf6
--- /dev/null
+++ b/com.gluster.storage.management.server/WebContent/WEB-INF/lib/jackson-jaxrs-1.5.5.jar
Binary files differ
diff --git a/com.gluster.storage.management.server/WebContent/WEB-INF/lib/jackson-mapper-asl-1.5.5.jar b/com.gluster.storage.management.server/WebContent/WEB-INF/lib/jackson-mapper-asl-1.5.5.jar
new file mode 100644
index 00000000..ca612580
--- /dev/null
+++ b/com.gluster.storage.management.server/WebContent/WEB-INF/lib/jackson-mapper-asl-1.5.5.jar
Binary files differ
diff --git a/com.gluster.storage.management.server/WebContent/WEB-INF/lib/jackson-xc-1.5.5.jar b/com.gluster.storage.management.server/WebContent/WEB-INF/lib/jackson-xc-1.5.5.jar
new file mode 100644
index 00000000..57c2c670
--- /dev/null
+++ b/com.gluster.storage.management.server/WebContent/WEB-INF/lib/jackson-xc-1.5.5.jar
Binary files differ
diff --git a/com.gluster.storage.management.server/WebContent/WEB-INF/lib/jersey-client-1.4.jar b/com.gluster.storage.management.server/WebContent/WEB-INF/lib/jersey-client-1.4.jar
new file mode 100644
index 00000000..e7debb0f
--- /dev/null
+++ b/com.gluster.storage.management.server/WebContent/WEB-INF/lib/jersey-client-1.4.jar
Binary files differ
diff --git a/com.gluster.storage.management.server/WebContent/WEB-INF/lib/jersey-core-1.4.jar b/com.gluster.storage.management.server/WebContent/WEB-INF/lib/jersey-core-1.4.jar
new file mode 100644
index 00000000..ae78fe33
--- /dev/null
+++ b/com.gluster.storage.management.server/WebContent/WEB-INF/lib/jersey-core-1.4.jar
Binary files differ
diff --git a/com.gluster.storage.management.server/WebContent/WEB-INF/lib/jersey-json-1.4.jar b/com.gluster.storage.management.server/WebContent/WEB-INF/lib/jersey-json-1.4.jar
new file mode 100644
index 00000000..78c14c1b
--- /dev/null
+++ b/com.gluster.storage.management.server/WebContent/WEB-INF/lib/jersey-json-1.4.jar
Binary files differ
diff --git a/com.gluster.storage.management.server/WebContent/WEB-INF/lib/jersey-server-1.4.jar b/com.gluster.storage.management.server/WebContent/WEB-INF/lib/jersey-server-1.4.jar
new file mode 100644
index 00000000..c420a6d8
--- /dev/null
+++ b/com.gluster.storage.management.server/WebContent/WEB-INF/lib/jersey-server-1.4.jar
Binary files differ
diff --git a/com.gluster.storage.management.server/WebContent/WEB-INF/lib/jettison-1.1.jar b/com.gluster.storage.management.server/WebContent/WEB-INF/lib/jettison-1.1.jar
new file mode 100644
index 00000000..e4e9c8c3
--- /dev/null
+++ b/com.gluster.storage.management.server/WebContent/WEB-INF/lib/jettison-1.1.jar
Binary files differ
diff --git a/com.gluster.storage.management.server/WebContent/WEB-INF/lib/jsr311-api-1.1.1.jar b/com.gluster.storage.management.server/WebContent/WEB-INF/lib/jsr311-api-1.1.1.jar
new file mode 100644
index 00000000..ec8bc818
--- /dev/null
+++ b/com.gluster.storage.management.server/WebContent/WEB-INF/lib/jsr311-api-1.1.1.jar
Binary files differ
diff --git a/com.gluster.storage.management.server/WebContent/WEB-INF/web.xml b/com.gluster.storage.management.server/WebContent/WEB-INF/web.xml
new file mode 100644
index 00000000..36d65880
--- /dev/null
+++ b/com.gluster.storage.management.server/WebContent/WEB-INF/web.xml
@@ -0,0 +1,25 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
+ <display-name>com.gluster.storage.management.server</display-name>
+ <welcome-file-list>
+ <welcome-file>index.html</welcome-file>
+ <welcome-file>index.htm</welcome-file>
+ <welcome-file>index.jsp</welcome-file>
+ <welcome-file>default.html</welcome-file>
+ <welcome-file>default.htm</welcome-file>
+ <welcome-file>default.jsp</welcome-file>
+ </welcome-file-list>
+ <servlet>
+ <servlet-name>Jersey REST Service</servlet-name>
+ <servlet-class>com.sun.jersey.spi.container.servlet.ServletContainer</servlet-class>
+ <init-param>
+ <param-name>com.sun.jersey.config.property.packages</param-name>
+ <param-value>com.gluster.storage.management.server.services</param-value>
+ </init-param>
+ <load-on-startup>1</load-on-startup>
+ </servlet>
+ <servlet-mapping>
+ <servlet-name>Jersey REST Service</servlet-name>
+ <url-pattern>/services/*</url-pattern>
+ </servlet-mapping>
+</web-app> \ No newline at end of file
diff --git a/com.gluster.storage.management.server/src/com/gluster/storage/management/server/services/AuthManager.java b/com.gluster.storage.management.server/src/com/gluster/storage/management/server/services/AuthManager.java
new file mode 100644
index 00000000..5dc4fdcf
--- /dev/null
+++ b/com.gluster.storage.management.server/src/com/gluster/storage/management/server/services/AuthManager.java
@@ -0,0 +1,63 @@
+package com.gluster.storage.management.server.services;
+
+import java.io.File;
+
+import javax.ws.rs.GET;
+import javax.ws.rs.Path;
+import javax.ws.rs.Produces;
+import javax.ws.rs.core.Context;
+import javax.ws.rs.core.MediaType;
+import javax.ws.rs.core.MultivaluedMap;
+import javax.ws.rs.core.Request;
+
+import com.gluster.storage.management.core.model.AuthStatus;
+import com.gluster.storage.management.core.utils.FileUtil;
+import com.gluster.storage.management.core.utils.MD5Crypt;
+import com.gluster.storage.management.core.utils.ProcessResult;
+import com.gluster.storage.management.core.utils.ProcessUtil;
+
+import com.sun.jersey.spi.container.ContainerRequest;
+
+@Path("/login")
+public class AuthManager {
+ @Context
+ private Request request;
+
+ /**
+ * Authenticates given user with given password for login on current system
+ * @param user
+ * @param password
+ * @return true is user can be successfully authenticated using given password, else false
+ */
+ private boolean authenticate(String user, String password) {
+ String tmpFileName = "tmp";
+ File saltFile = new File(tmpFileName);
+ ProcessResult result = new ProcessUtil().executeCommand("get-user-password.py", user, tmpFileName);
+ if (result.isSuccess()) {
+ String salt = new FileUtil().readFileAsString(saltFile);
+ String encryptedPassword = MD5Crypt.crypt(password, salt);
+ return encryptedPassword.equals(salt);
+ }
+
+ return false;
+ }
+
+ @GET
+ @Produces(MediaType.TEXT_XML)
+ public AuthStatus login() {
+ String user = null;
+ String password = null;
+
+ if (request instanceof ContainerRequest) {
+ ContainerRequest containerRequest = (ContainerRequest) request;
+ MultivaluedMap<String, String> paramsMap = containerRequest.getQueryParameters();
+ user = paramsMap.get("user").get(0);
+ password = paramsMap.get("password").get(0);
+ }
+
+ AuthStatus authStatus = new AuthStatus();
+ authStatus.setIsAuthenticated(authenticate(user, password));
+
+ return authStatus;
+ }
+}
diff --git a/com.gluster.storage.management.server/src/com/gluster/storage/management/server/services/Hello.java b/com.gluster.storage.management.server/src/com/gluster/storage/management/server/services/Hello.java
new file mode 100644
index 00000000..eea0a36f
--- /dev/null
+++ b/com.gluster.storage.management.server/src/com/gluster/storage/management/server/services/Hello.java
@@ -0,0 +1,32 @@
+package com.gluster.storage.management.server.services;
+
+import javax.ws.rs.GET;
+import javax.ws.rs.Path;
+import javax.ws.rs.Produces;
+import javax.ws.rs.core.MediaType;
+
+//Sets the path to base URL + /hello
+@Path("/hello")
+public class Hello {
+ // This method is called if TEXT_PLAIN is request
+ @GET
+ @Produces(MediaType.TEXT_PLAIN)
+ public String sayPlainTextHello() {
+ return "Hello Jersey";
+ }
+
+ // This method is called if XMLis request
+ @GET
+ @Produces(MediaType.TEXT_XML)
+ public String sayXMLHello() {
+ return "<?xml version=\"1.0\"?>" + "<hello> Hello Jersey" + "</hello>";
+ }
+
+ // This method is called if HTML is request
+ @GET
+ @Produces(MediaType.TEXT_HTML)
+ public String sayHtmlHello() {
+ return "<html> " + "<title>" + "Hello Jersey" + "</title>"
+ + "<body><h1>" + "Hello Jersey" + "</body></h1>" + "</html> ";
+ }
+}