From dfd14c05bc117df8de627c48d4615fc9d995bbe0 Mon Sep 17 00:00:00 2001 From: Shireesh Anjal Date: Wed, 2 Feb 2011 15:10:03 +0530 Subject: initial commit --- com.gluster.storage.management.server/.classpath | 18 ++++++ com.gluster.storage.management.server/.project | 36 ++++++++++++ .../.settings/.jsdtscope | 12 ++++ .../.settings/org.eclipse.jdt.core.prefs | 8 +++ .../org.eclipse.ltk.core.refactoring.prefs | 3 + .../.settings/org.eclipse.wst.common.component | 9 +++ .../org.eclipse.wst.common.project.facet.core.xml | 10 ++++ .../org.eclipse.wst.jsdt.ui.superType.container | 1 + .../org.eclipse.wst.jsdt.ui.superType.name | 1 + .../org.eclipse.wst.ws.service.policy.prefs | 3 + .../WebContent/META-INF/MANIFEST.MF | 3 + .../WebContent/WEB-INF/lib/asm-3.1.jar | Bin 0 -> 43033 bytes .../com.gluster.storage.management.core_1.0.0.jar | Bin 0 -> 70343 bytes .../WEB-INF/lib/jackson-core-asl-1.5.5.jar | Bin 0 -> 171958 bytes .../WebContent/WEB-INF/lib/jackson-jaxrs-1.5.5.jar | Bin 0 -> 17065 bytes .../WEB-INF/lib/jackson-mapper-asl-1.5.5.jar | Bin 0 -> 485699 bytes .../WebContent/WEB-INF/lib/jackson-xc-1.5.5.jar | Bin 0 -> 24745 bytes .../WebContent/WEB-INF/lib/jersey-client-1.4.jar | Bin 0 -> 124421 bytes .../WebContent/WEB-INF/lib/jersey-core-1.4.jar | Bin 0 -> 455517 bytes .../WebContent/WEB-INF/lib/jersey-json-1.4.jar | Bin 0 -> 142827 bytes .../WebContent/WEB-INF/lib/jersey-server-1.4.jar | Bin 0 -> 677600 bytes .../WebContent/WEB-INF/lib/jettison-1.1.jar | Bin 0 -> 67758 bytes .../WebContent/WEB-INF/lib/jsr311-api-1.1.1.jar | Bin 0 -> 46367 bytes .../WebContent/WEB-INF/web.xml | 25 ++++++++ .../management/server/services/AuthManager.java | 63 +++++++++++++++++++++ .../storage/management/server/services/Hello.java | 32 +++++++++++ 26 files changed, 224 insertions(+) create mode 100644 com.gluster.storage.management.server/.classpath create mode 100644 com.gluster.storage.management.server/.project create mode 100644 com.gluster.storage.management.server/.settings/.jsdtscope create mode 100644 com.gluster.storage.management.server/.settings/org.eclipse.jdt.core.prefs create mode 100644 com.gluster.storage.management.server/.settings/org.eclipse.ltk.core.refactoring.prefs create mode 100644 com.gluster.storage.management.server/.settings/org.eclipse.wst.common.component create mode 100644 com.gluster.storage.management.server/.settings/org.eclipse.wst.common.project.facet.core.xml create mode 100644 com.gluster.storage.management.server/.settings/org.eclipse.wst.jsdt.ui.superType.container create mode 100644 com.gluster.storage.management.server/.settings/org.eclipse.wst.jsdt.ui.superType.name create mode 100644 com.gluster.storage.management.server/.settings/org.eclipse.wst.ws.service.policy.prefs create mode 100644 com.gluster.storage.management.server/WebContent/META-INF/MANIFEST.MF create mode 100644 com.gluster.storage.management.server/WebContent/WEB-INF/lib/asm-3.1.jar create mode 100644 com.gluster.storage.management.server/WebContent/WEB-INF/lib/com.gluster.storage.management.core_1.0.0.jar create mode 100644 com.gluster.storage.management.server/WebContent/WEB-INF/lib/jackson-core-asl-1.5.5.jar create mode 100644 com.gluster.storage.management.server/WebContent/WEB-INF/lib/jackson-jaxrs-1.5.5.jar create mode 100644 com.gluster.storage.management.server/WebContent/WEB-INF/lib/jackson-mapper-asl-1.5.5.jar create mode 100644 com.gluster.storage.management.server/WebContent/WEB-INF/lib/jackson-xc-1.5.5.jar create mode 100644 com.gluster.storage.management.server/WebContent/WEB-INF/lib/jersey-client-1.4.jar create mode 100644 com.gluster.storage.management.server/WebContent/WEB-INF/lib/jersey-core-1.4.jar create mode 100644 com.gluster.storage.management.server/WebContent/WEB-INF/lib/jersey-json-1.4.jar create mode 100644 com.gluster.storage.management.server/WebContent/WEB-INF/lib/jersey-server-1.4.jar create mode 100644 com.gluster.storage.management.server/WebContent/WEB-INF/lib/jettison-1.1.jar create mode 100644 com.gluster.storage.management.server/WebContent/WEB-INF/lib/jsr311-api-1.1.1.jar create mode 100644 com.gluster.storage.management.server/WebContent/WEB-INF/web.xml create mode 100644 com.gluster.storage.management.server/src/com/gluster/storage/management/server/services/AuthManager.java create mode 100644 com.gluster.storage.management.server/src/com/gluster/storage/management/server/services/Hello.java (limited to 'com.gluster.storage.management.server') 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 @@ + + + + + + + + + + + + + + + + + + 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 @@ + + + com.gluster.storage.management.server + + + + + + org.eclipse.wst.jsdt.core.javascriptValidator + + + + + org.eclipse.jdt.core.javabuilder + + + + + org.eclipse.wst.common.project.facet.core.builder + + + + + org.eclipse.wst.validation.validationbuilder + + + + + + org.eclipse.jem.workbench.JavaEMFNature + org.eclipse.wst.common.modulecore.ModuleCoreNature + org.eclipse.wst.common.project.facet.core.nature + org.eclipse.jdt.core.javanature + org.eclipse.wst.jsdt.core.jsNature + + 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 @@ + + + + + + + + + + + + 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 @@ + + + + + + + + + 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 @@ + + + + + + + + + + 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 Binary files /dev/null and b/com.gluster.storage.management.server/WebContent/WEB-INF/lib/asm-3.1.jar 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 Binary files /dev/null and b/com.gluster.storage.management.server/WebContent/WEB-INF/lib/com.gluster.storage.management.core_1.0.0.jar 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 Binary files /dev/null and b/com.gluster.storage.management.server/WebContent/WEB-INF/lib/jackson-core-asl-1.5.5.jar 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 Binary files /dev/null and b/com.gluster.storage.management.server/WebContent/WEB-INF/lib/jackson-jaxrs-1.5.5.jar 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 Binary files /dev/null and b/com.gluster.storage.management.server/WebContent/WEB-INF/lib/jackson-mapper-asl-1.5.5.jar 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 Binary files /dev/null and b/com.gluster.storage.management.server/WebContent/WEB-INF/lib/jackson-xc-1.5.5.jar 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 Binary files /dev/null and b/com.gluster.storage.management.server/WebContent/WEB-INF/lib/jersey-client-1.4.jar 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 Binary files /dev/null and b/com.gluster.storage.management.server/WebContent/WEB-INF/lib/jersey-core-1.4.jar 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 Binary files /dev/null and b/com.gluster.storage.management.server/WebContent/WEB-INF/lib/jersey-json-1.4.jar 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 Binary files /dev/null and b/com.gluster.storage.management.server/WebContent/WEB-INF/lib/jersey-server-1.4.jar 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 Binary files /dev/null and b/com.gluster.storage.management.server/WebContent/WEB-INF/lib/jettison-1.1.jar 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 Binary files /dev/null and b/com.gluster.storage.management.server/WebContent/WEB-INF/lib/jsr311-api-1.1.1.jar 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 @@ + + + com.gluster.storage.management.server + + index.html + index.htm + index.jsp + default.html + default.htm + default.jsp + + + Jersey REST Service + com.sun.jersey.spi.container.servlet.ServletContainer + + com.sun.jersey.config.property.packages + com.gluster.storage.management.server.services + + 1 + + + Jersey REST Service + /services/* + + \ 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 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 "" + " Hello Jersey" + ""; + } + + // This method is called if HTML is request + @GET + @Produces(MediaType.TEXT_HTML) + public String sayHtmlHello() { + return " " + "" + "Hello Jersey" + "" + + "

" + "Hello Jersey" + "

" + " "; + } +} -- cgit