Author: ppoddar
Date: Thu Oct 28 13:35:14 2010
New Revision: 1028291

URL: http://svn.apache.org/viewvc?rev=1028291&view=rev
Log:
OPENJPA-1851: Add URI to JEST server. Change parameter separator to &

Modified:
    
openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/jest/TestRequestParsing.java
    
openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/jest/JESTRequest.java
    
openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/jest/Server.java

Modified: 
openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/jest/TestRequestParsing.java
URL: 
http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/jest/TestRequestParsing.java?rev=1028291&r1=1028290&r2=1028291&view=diff
==============================================================================
--- 
openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/jest/TestRequestParsing.java
 (original)
+++ 
openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/jest/TestRequestParsing.java
 Thu Oct 28 13:35:14 2010
@@ -34,7 +34,7 @@ public class TestRequestParsing extends 
     
     public void testRequestFindImplicitParam() throws IOException {
         GETRequest req = new GETRequest();
-        req.read(Arrays.asList("/find?Person;1234"));
+        req.read(Arrays.asList("/find?Person&1234"));
         
         assertEquals("find", req.getAction());
         assertTrue(req.hasParameter("Person"));
@@ -49,7 +49,7 @@ public class TestRequestParsing extends 
     
     public void testRequestFindExplicitParam() throws IOException {
         GETRequest req = new GETRequest();
-        req.read(Arrays.asList("/find?Person;ssn=1234"));
+        req.read(Arrays.asList("/find?Person&ssn=1234"));
         
         assertEquals("find", req.getAction());
         assertTrue(req.hasParameter("Person"));
@@ -64,7 +64,7 @@ public class TestRequestParsing extends 
     
     public void testRequestQueryWithParameters() throws IOException {
         GETRequest req = new GETRequest();
-        req.read(Arrays.asList("/query?select p from Person p where 
p.name=:name;name=xyz;age=20"));
+        req.read(Arrays.asList("/query?select p from Person p where 
p.name=:name&name=xyz&age=20"));
         
         assertEquals("query", req.getAction());
         assertEquals("select p from Person p where p.name=:name", 
req.getParameter(0).getKey());

Modified: 
openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/jest/JESTRequest.java
URL: 
http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/jest/JESTRequest.java?rev=1028291&r1=1028290&r2=1028291&view=diff
==============================================================================
--- 
openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/jest/JESTRequest.java
 (original)
+++ 
openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/jest/JESTRequest.java
 Thu Oct 28 13:35:14 2010
@@ -277,22 +277,22 @@ public abstract class JESTRequest implem
                                 buf.append(ch);
                             else
                                 transit(ParseState.PARAM_VALUE);
-                        } else if (ch == ';') {
+                        } else if (ch == '&') {
                             transit(ParseState.PARAM_KEY);
                         } else if (isQueryKey() && isQueryChar(ch)) {
                             buf.append(ch);
                         } else {
-                            parseError(ch, i, s, true, ';', '=');
+                            parseError(ch, i, s, true, '&', '=');
                         }
                         break;
 
                     case PARAM_VALUE:
                         if (Character.isJavaIdentifierPart(ch)) {
                             buf.append(ch);
-                        } else if (ch == ';') {
+                        } else if (ch == '&') {
                             transit(ParseState.PARAM_KEY);
                         } else {
-                            parseError(ch, i, s, true, ';');
+                            parseError(ch, i, s, true, '&');
                         }
                         break;
                     default:

Modified: 
openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/jest/Server.java
URL: 
http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/jest/Server.java?rev=1028291&r1=1028290&r2=1028291&view=diff
==============================================================================
--- 
openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/jest/Server.java
 (original)
+++ 
openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/jest/Server.java
 Thu Oct 28 13:35:14 2010
@@ -20,8 +20,11 @@
 package org.apache.openjpa.persistence.jest;
 
 import java.io.IOException;
+import java.net.InetAddress;
 import java.net.ServerSocket;
 import java.net.Socket;
+import java.net.URI;
+import java.net.URISyntaxException;
 import java.util.concurrent.ExecutorService;
 import java.util.concurrent.Executors;
 
@@ -47,6 +50,7 @@ public class Server implements ServerCon
     private ServerSocket _listenSocket;
     protected ExecutorService _executors;
     public final static int DEFAULT_PORT = 6789;
+    protected String _host = "127.0.0.1";
     protected int _port = DEFAULT_PORT;
     protected int _range = 1;
     protected String _format = "xml";
@@ -55,6 +59,14 @@ public class Server implements ServerCon
     private EntityManagerFactoryImpl _ctx;
     private static Localizer _loc = Localizer.forPackage(Server.class);
     
+    public Server() {
+        try {
+            _host = InetAddress.getLocalHost().getHostAddress();
+        } catch (Exception ex) {
+            
+        }
+
+    }
     /**
      * Sets the persistence unit context in which this server will serve 
requests.
      * The context must be set before operation.
@@ -112,6 +124,18 @@ public class Server implements ServerCon
         _executors.shutdownNow();
     }
     
+    public String getHost() {
+        return _host;
+    }
+    
+    public URI getURI() {
+        try {
+            return new URI("http://"+_host+":"+_port);
+        } catch (URISyntaxException e) {
+            return null;
+        }
+    }
+    
     /**
      * Sets the port in which the server will listen.
      * 
@@ -224,7 +248,7 @@ public class Server implements ServerCon
     
     public String toString() {
         if (_listenSocket == null) return "JEST Server [not strated]";
-        return "JEST Server " + 
_listenSocket.getInetAddress()+":"+_listenSocket.getLocalPort();
+        return "JEST Server " + getURI().toString();
     }
 
 }


Reply via email to