diff --git a/src/main/java/sourcecode/MockUp/MockUp.java b/src/main/java/sourcecode/MockUp/MockUp.java index 7295a7a..da9d8a9 100644 --- a/src/main/java/sourcecode/MockUp/MockUp.java +++ b/src/main/java/sourcecode/MockUp/MockUp.java @@ -2,19 +2,15 @@ package sourcecode.MockUp; import java.io.IOException; import java.io.OutputStream; -import java.io.UnsupportedEncodingException; import java.net.InetSocketAddress; +import java.net.URLDecoder; import java.util.ArrayList; -import java.util.Iterator; -import java.util.List; -import java.util.Map.Entry; import org.apache.commons.io.IOUtils; import org.apache.http.Consts; import org.bson.Document; import org.json.JSONObject; -import com.google.gson.Gson; import com.mongodb.BasicDBObject; import com.mongodb.MongoClient; import com.mongodb.MongoClientOptions; @@ -27,43 +23,39 @@ import com.sun.net.httpserver.HttpExchange; import com.sun.net.httpserver.HttpHandler; import com.sun.net.httpserver.HttpServer; - - - - public class MockUp { - private static Gson gson = new Gson(); +// private static Gson gson = new Gson(); private static MongoDatabase database; private final static String GET = "GET"; private final static String POST = "POST"; private final static String PUT = "PUT"; private final static String DELETE = "DELETE"; - - + private static String DBNAME = "spw"; + private static String DBHOST = "10.1.2.155:27017"; public static void main(String[] args) throws Exception { - int port = 8000; - - - try{ - - + int port = 6300; + try { if(args.length>0) port = Integer.parseInt(args[0]); + if(args.length>1) + DBNAME = args[1]; + + if(args.length>2) + DBHOST = args[2]; + //connect mongo - MongoConnector("spw"); + MongoConnector(DBNAME); HttpServer server = HttpServer.create(new InetSocketAddress(port), 0); server.createContext("/", new MyHandler()); server.setExecutor(null); // creates a default executor server.start(); System.out.println("Run in port : "+port); - - }catch(Exception e) - { + } catch(Exception e) { e.printStackTrace(); System.out.println("Fail to run in port : "+port); } @@ -73,7 +65,8 @@ public class MockUp public void handle(HttpExchange t) throws IOException { String method = t.getRequestMethod(); - String url = t.getRequestURI().toString(); + String url = t.getRequestURI().toString(); + url = URLDecoder.decode(url, "UTF-8"); String response = ""; String keyBody =""; @@ -101,8 +94,7 @@ public class MockUp // System.out.println(t.getRequestURI()); - String collectionName = "spwCustomerAccounts"; - + String collectionName = getSuffixTableName(url); BasicDBObject basicDBObject = new BasicDBObject(); @@ -152,8 +144,8 @@ public class MockUp else if(rowJSON.get("value")!=null) resultData.add((JSONObject) rowJSON.get("value")); }else - resultData.add(rowJSON); -// System.out.println(rowJSON); + resultData.add((JSONObject) rowJSON.get("resultData")); + System.out.println("aa" + rowJSON); // resultData.add((JSONObject) rowJSON.get("resultData")); } @@ -183,13 +175,27 @@ public class MockUp System.out.println(""); } } + + private static String getSuffixTableName(String url) + { + String value = null; + String[] arrData = url.split("/"); + for (String data : arrData) { + if (data.contains(".json")) { + int lastIndex = data.indexOf(".json"); + value = data.substring(0, lastIndex); + break; + } + } + return value; + } private static void MongoConnector(String db) { String username = ""; String password = ""; - String address = "10.1.2.155:27017"; + String address = DBHOST; String dbname = db; String authSource = db; int timeoutMongoDB = 10000; @@ -206,6 +212,7 @@ public class MockUp if(username.equals("")) uri = new MongoClientURI("mongodb://"+address+"/?authSource="+authSource, optionsBuilder); System.out.println("MongoDB Connecting to "+uri.toString()+"..."); + @SuppressWarnings("resource") MongoClient mongoClient = new MongoClient(uri); database = mongoClient.getDatabase(dbname); //test connect and list collections -- libgit2 0.21.2