[jboss-svn-commits] JBL Code SVN: r21633 - in labs/jbossrules/trunk/drools-server/src: main/resources and 4 other directories.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Wed Aug 20 03:03:17 EDT 2008


Author: michael.neale at jboss.com
Date: 2008-08-20 03:03:17 -0400 (Wed, 20 Aug 2008)
New Revision: 21633

Added:
   labs/jbossrules/trunk/drools-server/src/main/java/org/drools/server/ExampleFact.java
   labs/jbossrules/trunk/drools-server/src/main/resources/README.txt
   labs/jbossrules/trunk/drools-server/src/main/webapp/index.jsp
   labs/jbossrules/trunk/drools-server/src/test/java/org/drools/server/MockHTTPResponse.java
   labs/jbossrules/trunk/drools-server/src/test/java/org/drools/server/MockHttpRequest.java
   labs/jbossrules/trunk/drools-server/src/test/java/org/drools/server/StubbedServlet.java
   labs/jbossrules/trunk/drools-server/src/test/resources/testservice.properties
Modified:
   labs/jbossrules/trunk/drools-server/src/main/java/org/drools/server/KnowledgeStatelessServlet.java
   labs/jbossrules/trunk/drools-server/src/test/java/org/drools/server/KnowledgeServiceServletTest.java
   labs/jbossrules/trunk/drools-server/src/test/resources/org/drools/server/test_rules1.drl
Log:
drools server fun

Added: labs/jbossrules/trunk/drools-server/src/main/java/org/drools/server/ExampleFact.java
===================================================================
--- labs/jbossrules/trunk/drools-server/src/main/java/org/drools/server/ExampleFact.java	                        (rev 0)
+++ labs/jbossrules/trunk/drools-server/src/main/java/org/drools/server/ExampleFact.java	2008-08-20 07:03:17 UTC (rev 21633)
@@ -0,0 +1,25 @@
+package org.drools.server;
+
+public class ExampleFact {
+	private String carType;
+	private int carPrice;
+	public String getCarType() {
+		return carType;
+	}
+	public void setCarType(String carType) {
+		this.carType = carType;
+	}
+	public int getCarPrice() {
+		return carPrice;
+	}
+	public void setCarPrice(int carPrice) {
+		this.carPrice = carPrice;
+	}
+	public ExampleFact(String carType, int carPrice) {
+		super();
+		this.carType = carType;
+		this.carPrice = carPrice;
+	}
+
+	public ExampleFact() {}
+}


Property changes on: labs/jbossrules/trunk/drools-server/src/main/java/org/drools/server/ExampleFact.java
___________________________________________________________________
Name: svn:eol-style
   + native

Modified: labs/jbossrules/trunk/drools-server/src/main/java/org/drools/server/KnowledgeStatelessServlet.java
===================================================================
--- labs/jbossrules/trunk/drools-server/src/main/java/org/drools/server/KnowledgeStatelessServlet.java	2008-08-20 06:47:02 UTC (rev 21632)
+++ labs/jbossrules/trunk/drools-server/src/main/java/org/drools/server/KnowledgeStatelessServlet.java	2008-08-20 07:03:17 UTC (rev 21633)
@@ -11,6 +11,8 @@
 import java.util.regex.Pattern;
 
 import javax.servlet.ServletException;
+import javax.servlet.ServletInputStream;
+import javax.servlet.ServletOutputStream;
 import javax.servlet.http.HttpServlet;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
@@ -46,8 +48,6 @@
 
 
 	private static final long serialVersionUID = -8239975288596976901L;
-	static XStream xmlInstance = configureXStream(false);
-	static XStream jsonInstance = configureXStream(true);
 	static Map<String, RuleAgent> cachedAgents = new HashMap<String, RuleAgent>();
 	static Pattern urlPattern = Pattern.compile(".*knowledgebase/(.*)");
 
@@ -65,22 +65,29 @@
 		RuleBase rb =  getRuleBase(m.group(1));
 		if (contentType != null && (contentType.indexOf("json") > -1)) {
 			//do json version
-			doService(request.getInputStream(), resp.getOutputStream(), rb, true);
+			doService(getInputStream(request), getOutputStream(resp), rb, true);
 		} else {
 			//xml version
-			doService(request.getInputStream(), resp.getOutputStream(), rb, true);
+			doService(getInputStream(request), getOutputStream(resp), rb, false);
 		}
 	}
 
 
+	@Override
+	protected void doGet(HttpServletRequest req, HttpServletResponse resp)
+			throws ServletException, IOException {
+		resp.sendRedirect("/index.jsp");
+	}
 
+
+
 	RuleBase getRuleBase(String configName) {
 		if (cachedAgents.containsKey(configName)) {
 			return cachedAgents.get(configName).getRuleBase();
 		} else {
 			synchronized (cachedAgents) {
 				if (!cachedAgents.containsKey(configName)) {
-					RuleAgent ag = RuleAgent.newRuleAgent(configName + ".properties");
+					RuleAgent ag = RuleAgent.newRuleAgent("/" + configName + ".properties");
 					cachedAgents.put(configName, ag);
 				}
 				return cachedAgents.get(configName).getRuleBase();
@@ -99,7 +106,7 @@
 			ClassLoader cl = irb.getRootClassLoader();
 			Thread.currentThread().setContextClassLoader(cl);
 
-			XStream xs = (json) ? jsonInstance : xmlInstance;
+			XStream xs = configureXStream(json);
 			ServiceRequestMessage req = (ServiceRequestMessage) xs.fromXML(inputStream);
 			StatelessSession session  = rb.newStatelessSession();
 			if (req.globals != null) {
@@ -132,8 +139,8 @@
 			xs.toXML(res, outputStream);
 
 
+		} finally {
 
-		} finally {
 			Thread.currentThread().setContextClassLoader(originalCL);
 		}
 	}
@@ -162,14 +169,17 @@
 
 
 
+	OutputStream getOutputStream(HttpServletResponse resp) throws IOException {
+		return resp.getOutputStream();
+	}
 
+	InputStream getInputStream(HttpServletRequest request) throws IOException {
+		return request.getInputStream();
+	}
 
 
 
 
-
-
-
 	private void sample() {
 		XStream xs = configureXStream(true);
 
@@ -201,5 +211,27 @@
 
 	}
 
+	public static String getRequestExample(boolean json) {
+		ServiceRequestMessage req = new ServiceRequestMessage();
+		req.globals = new NamedFact[1];
+		req.globals[0] = new NamedFact("myglobal", new ExampleFact("Saab", 42));
+		req.inFacts = new AnonFact[2];
+		req.inFacts[0] = new AnonFact(new ExampleFact("Audi", 55));
+		req.inFacts[1] = new AnonFact(new ExampleFact("Mercedes", 65));
+		req.inOutFacts = new NamedFact[1];
+		req.inOutFacts[0] = new NamedFact("myfact", new ExampleFact("BMW", 50));
+		return configureXStream(json).toXML(req);
+	}
 
+
+	public static String getResponseExample(boolean json) {
+		ServiceResponseMessage req = new ServiceResponseMessage();
+		req.globals = new NamedFact[1];
+		req.globals[0] = new NamedFact("myglobal", new ExampleFact("Saab", 42));
+		req.inOutFacts = new NamedFact[1];
+		req.inOutFacts[0] = new NamedFact("myfact", new ExampleFact("BMW", 50));
+		return configureXStream(json).toXML(req);
+	}
+
+
 }

Added: labs/jbossrules/trunk/drools-server/src/main/resources/README.txt
===================================================================
--- labs/jbossrules/trunk/drools-server/src/main/resources/README.txt	                        (rev 0)
+++ labs/jbossrules/trunk/drools-server/src/main/resources/README.txt	2008-08-20 07:03:17 UTC (rev 21633)
@@ -0,0 +1,5 @@
+Place rule agent configurations in this directory.
+If a new agent configuration is added, or if there is a change,
+the web application (war) will need to be redeployed.
+
+(restarting the server is also acceptable)
\ No newline at end of file


Property changes on: labs/jbossrules/trunk/drools-server/src/main/resources/README.txt
___________________________________________________________________
Name: svn:eol-style
   + native

Added: labs/jbossrules/trunk/drools-server/src/main/webapp/index.jsp
===================================================================
--- labs/jbossrules/trunk/drools-server/src/main/webapp/index.jsp	                        (rev 0)
+++ labs/jbossrules/trunk/drools-server/src/main/webapp/index.jsp	2008-08-20 07:03:17 UTC (rev 21633)
@@ -0,0 +1,29 @@
+<%@ page import="org.drools.server.*" %>
+<%@ page contentType="text/html; charset=UTF-8" %>
+<html>
+	<head>
+		<title>Drools execution server</title>
+	</head>
+	<body>
+		<h1>Rule execution server</h1>
+		This service allows you to execute rules/knowledge bases remotely using a RESTful interface.
+		<h2>Stateless services</h2>
+		<h3>URL:</h3><%=request.getRequestURI() + "knowledgebase/{configurationName}" %><br/>
+		The {configurationName} is the name of a configured agent properties file (not incliding the .properties extension).
+		This configuration then declares what packages are used, where the repository is etc.
+		This properties file must be in the classpath for this war - in the WEB-INF/classes directory.
+		<h3>Sample request content:</h3>
+		<textarea>
+		</textarea>
+
+		<h3>Sample response content:</h3>
+
+		<h3>General instructions<h3>
+		By default XML will be used, if you pass in a Content-Type header of application/json, then it will use JSON instead.
+		JSON is both a more compact and more performant format.
+		HTTP POST is used to access this service.
+
+
+
+	</body>
+</html>
\ No newline at end of file


Property changes on: labs/jbossrules/trunk/drools-server/src/main/webapp/index.jsp
___________________________________________________________________
Name: svn:eol-style
   + native

Modified: labs/jbossrules/trunk/drools-server/src/test/java/org/drools/server/KnowledgeServiceServletTest.java
===================================================================
--- labs/jbossrules/trunk/drools-server/src/test/java/org/drools/server/KnowledgeServiceServletTest.java	2008-08-20 06:47:02 UTC (rev 21632)
+++ labs/jbossrules/trunk/drools-server/src/test/java/org/drools/server/KnowledgeServiceServletTest.java	2008-08-20 07:03:17 UTC (rev 21633)
@@ -1,20 +1,76 @@
 package org.drools.server;
 
 import java.io.ByteArrayOutputStream;
+import java.io.File;
+import java.io.FileOutputStream;
+import java.io.IOException;
 import java.io.InputStream;
 import java.io.InputStreamReader;
+import java.io.OutputStream;
 import java.util.regex.Matcher;
 
+import javax.servlet.http.HttpServletResponse;
+
+import junit.framework.TestCase;
+
 import org.drools.RuleBase;
 import org.drools.RuleBaseFactory;
 import org.drools.compiler.PackageBuilder;
-import org.drools.server.KnowledgeStatelessServlet;
 
-import junit.framework.TestCase;
+import com.thoughtworks.xstream.XStream;
 
 public class KnowledgeServiceServletTest extends TestCase {
 
 
+	public void testEndToEndIntegration() throws Exception {
+		File source = new File("TestService.drl");
+		if (source.exists()) source.delete();
+		try {
+			InputStream original = getClass().getResourceAsStream("test_rules1.drl");
+			copy(original, source);
+			Thread.sleep(120);
+			StubbedServlet serv = new StubbedServlet();
+			final InputStream inXML = getClass().getResourceAsStream("sample_request.xml");
+			ByteArrayOutputStream outStream = new ByteArrayOutputStream();
+			serv.inputStream = inXML;
+			serv.outputStream = outStream;
+
+			MockHTTPResponse resp = new MockHTTPResponse();
+			serv.doPost(new MockHttpRequest("something/knowledgebase/testservice", "application/xml"), resp);
+
+			String resultXML = new String(outStream.toByteArray());
+			assertTrue(resultXML.indexOf("<value>42</value>") > -1);
+			assertEquals("application/xml", resp.contentType);
+
+
+			resp = new MockHTTPResponse();
+			serv.inputStream = getClass().getResourceAsStream("sample_request.json");
+			outStream = new ByteArrayOutputStream();
+			serv.outputStream = outStream;
+			serv.doPost(new MockHttpRequest("something/knowledgebase/testservice", "application/json"), resp);
+
+			String resultJSON = new String(outStream.toByteArray());
+			assertNotNull(resultJSON);
+			assertEquals("application/json", resp.contentType);
+			assertTrue(resultJSON.indexOf("\"status\":\"crazy\"") > -1);
+
+			resp = new MockHTTPResponse();
+			serv.inputStream = getClass().getResourceAsStream("sample_request.json");
+			outStream = new ByteArrayOutputStream();
+			serv.outputStream = outStream;
+			serv.doPost(new MockHttpRequest("something/foox", "application/json"), resp);
+			assertEquals(HttpServletResponse.SC_BAD_REQUEST, resp.errorCode);
+
+			resp = new MockHTTPResponse();
+			serv.doGet(new MockHttpRequest(null, null), resp);
+			assertTrue(resp.redirect.endsWith("index.jsp"));
+
+
+		} finally {
+			source.delete();
+		}
+	}
+
 	public void testSample() throws Exception {
 
 		PackageBuilder pb = new PackageBuilder();
@@ -26,6 +82,9 @@
 
 		KnowledgeStatelessServlet serv = new KnowledgeStatelessServlet();
 
+
+		//serv.xmlInstance = KnowledgeStatelessServlet.configureXStream(false);
+
 		final InputStream inXML = getClass().getResourceAsStream("sample_request.xml");
 		ByteArrayOutputStream outStream = new ByteArrayOutputStream();
 
@@ -34,12 +93,15 @@
 
 		serv.doService(inXML, outStream, rb, false);
 
+
+
 		String result = new String(outStream.toByteArray());
 
+
 		assertTrue(result.indexOf("<id>prs</id>") > -1);
 		assertTrue(result.indexOf("<id>result</id>") > -1);
 		assertTrue(result.indexOf("<name>Jo</name>") > -1);
-		assertTrue(result.indexOf("<status>crazy</status>") > -1);
+		assertTrue(result, result.indexOf("<status>crazy</status>") > -1);
 		assertTrue(result.indexOf("<value>42</value>") > -1);
 		assertTrue(result.indexOf("<explanation>just cause it is</explanation>") > -1);
 
@@ -56,16 +118,9 @@
 		assertTrue(result.indexOf("\"id\":\"result\"") > -1);
 		assertTrue(result.indexOf("\"status\":\"crazy\"") > -1);
 
-
 	}
 
-	public void testInitialise() {
-		KnowledgeStatelessServlet rs = new KnowledgeStatelessServlet();
-		assertNotNull(rs.jsonInstance);
-		assertNotNull(rs.xmlInstance);
 
-	}
-
 	public void testURLPattern() {
 		Matcher m = KnowledgeStatelessServlet.urlPattern.matcher("foo/knowledgebase/whee");
 		assertTrue(m.matches());
@@ -75,4 +130,47 @@
 	}
 
 
+
+	public void testExample() {
+		String xml = KnowledgeStatelessServlet.getRequestExample(false);
+		assertNotNull(xml);
+		String json = KnowledgeStatelessServlet.getRequestExample(true);
+		assertNotNull(json);
+		assertFalse(json.equals(xml));
+
+
+		xml = KnowledgeStatelessServlet.getResponseExample(false);
+		assertNotNull(xml);
+		json = KnowledgeStatelessServlet.getResponseExample(true);
+		assertNotNull(json);
+		assertFalse(json.equals(xml));
+
+	}
+
+
+
+    void copy(InputStream in, File dst) throws IOException {
+        OutputStream out = new FileOutputStream(dst);
+
+        // Transfer bytes from in to out
+        byte[] buf = new byte[1024];
+        int len;
+        while ((len = in.read(buf)) > 0) {
+            out.write(buf, 0, len);
+        }
+        in.close();
+        out.close();
+    }
+
+	public void testInitTiming() {
+		long time = System.currentTimeMillis();
+		for (int i = 0; i < 100; i++) {
+			XStream xs = KnowledgeStatelessServlet.configureXStream(false);
+		}
+		System.out.println("Timing: " + (System.currentTimeMillis() - time));
+	}
+
+
+
+
 }

Added: labs/jbossrules/trunk/drools-server/src/test/java/org/drools/server/MockHTTPResponse.java
===================================================================
--- labs/jbossrules/trunk/drools-server/src/test/java/org/drools/server/MockHTTPResponse.java	                        (rev 0)
+++ labs/jbossrules/trunk/drools-server/src/test/java/org/drools/server/MockHTTPResponse.java	2008-08-20 07:03:17 UTC (rev 21633)
@@ -0,0 +1,179 @@
+package org.drools.server;
+
+import java.io.IOException;
+import java.io.OutputStream;
+import java.io.PrintWriter;
+import java.io.StringWriter;
+import java.util.HashMap;
+import java.util.Locale;
+import java.util.Map;
+
+import javax.servlet.ServletOutputStream;
+import javax.servlet.http.Cookie;
+import javax.servlet.http.HttpServletResponse;
+
+public class MockHTTPResponse implements HttpServletResponse {
+
+	String contentType;
+	Map<String, String> headers = new HashMap<String, String>();
+	int errorCode;
+	StringWriter stringWriter = new StringWriter();
+	private PrintWriter writer = new PrintWriter(stringWriter);
+	String redirect;
+
+
+	public MockHTTPResponse() {
+
+	}
+
+	public void addCookie(Cookie arg0) {
+		// TODO Auto-generated method stub
+
+	}
+
+	public void addDateHeader(String arg0, long arg1) {
+		// TODO Auto-generated method stub
+
+	}
+
+	public void addHeader(String arg0, String arg1) {
+		// TODO Auto-generated method stub
+
+	}
+
+	public void addIntHeader(String arg0, int arg1) {
+		// TODO Auto-generated method stub
+
+	}
+
+	public boolean containsHeader(String a) {
+
+		return this.headers.containsKey(a);
+	}
+
+	public String encodeRedirectURL(String arg0) {
+		// TODO Auto-generated method stub
+		return null;
+	}
+
+	public String encodeRedirectUrl(String arg0) {
+		// TODO Auto-generated method stub
+		return null;
+	}
+
+	public String encodeURL(String arg0) {
+		// TODO Auto-generated method stub
+		return null;
+	}
+
+	public String encodeUrl(String arg0) {
+		// TODO Auto-generated method stub
+		return null;
+	}
+
+	public void sendError(int i) throws IOException {
+		this.errorCode = i;
+
+	}
+
+	public void sendError(int arg0, String arg1) throws IOException {
+		this.errorCode = arg0;
+	}
+
+	public void sendRedirect(String arg0) throws IOException {
+		this.redirect = arg0;
+
+	}
+
+	public void setDateHeader(String arg0, long arg1) {
+		// TODO Auto-generated method stub
+
+	}
+
+	public void setHeader(String k, String v) {
+		this.headers.put(k, v);
+
+	}
+
+	public void setIntHeader(String arg0, int arg1) {
+		// TODO Auto-generated method stub
+
+	}
+
+	public void setStatus(int arg0) {
+		// TODO Auto-generated method stub
+
+	}
+
+	public void setStatus(int arg0, String arg1) {
+		// TODO Auto-generated method stub
+
+	}
+
+	public void flushBuffer() throws IOException {
+		// TODO Auto-generated method stub
+
+	}
+
+	public int getBufferSize() {
+		// TODO Auto-generated method stub
+		return 0;
+	}
+
+	public String getCharacterEncoding() {
+		// TODO Auto-generated method stub
+		return null;
+	}
+
+	public Locale getLocale() {
+		// TODO Auto-generated method stub
+		return null;
+	}
+
+	public ServletOutputStream getOutputStream() throws IOException {
+		return null;
+	}
+
+	public PrintWriter getWriter() throws IOException {
+
+		return writer ;
+	}
+
+	public boolean isCommitted() {
+		// TODO Auto-generated method stub
+		return false;
+	}
+
+	public void reset() {
+		// TODO Auto-generated method stub
+
+	}
+
+	public void resetBuffer() {
+		// TODO Auto-generated method stub
+
+	}
+
+	public void setBufferSize(int arg0) {
+		// TODO Auto-generated method stub
+
+	}
+
+	public void setContentLength(int arg0) {
+		// TODO Auto-generated method stub
+
+	}
+
+	public void setContentType(String s) {
+		this.contentType = s;
+
+	}
+
+	public void setLocale(Locale arg0) {
+		// TODO Auto-generated method stub
+
+	}
+
+
+
+}


Property changes on: labs/jbossrules/trunk/drools-server/src/test/java/org/drools/server/MockHTTPResponse.java
___________________________________________________________________
Name: svn:eol-style
   + native

Added: labs/jbossrules/trunk/drools-server/src/test/java/org/drools/server/MockHttpRequest.java
===================================================================
--- labs/jbossrules/trunk/drools-server/src/test/java/org/drools/server/MockHttpRequest.java	                        (rev 0)
+++ labs/jbossrules/trunk/drools-server/src/test/java/org/drools/server/MockHttpRequest.java	2008-08-20 07:03:17 UTC (rev 21633)
@@ -0,0 +1,277 @@
+package org.drools.server;
+
+import java.io.BufferedReader;
+import java.io.IOException;
+import java.io.UnsupportedEncodingException;
+import java.security.Principal;
+import java.util.Enumeration;
+import java.util.Locale;
+import java.util.Map;
+
+import javax.servlet.RequestDispatcher;
+import javax.servlet.ServletInputStream;
+import javax.servlet.http.Cookie;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpSession;
+
+public class MockHttpRequest implements HttpServletRequest {
+
+	private String uri;
+	private String contentType;
+
+	public MockHttpRequest(String uri, String contentType) {
+		this.uri = uri;
+		this.contentType = contentType;
+	}
+
+	public String getAuthType() {
+		// TODO Auto-generated method stub
+		return null;
+	}
+
+	public String getContextPath() {
+		// TODO Auto-generated method stub
+		return null;
+	}
+
+	public Cookie[] getCookies() {
+		// TODO Auto-generated method stub
+		return null;
+	}
+
+	public long getDateHeader(String arg0) {
+		// TODO Auto-generated method stub
+		return 0;
+	}
+
+	public String getHeader(String arg0) {
+		// TODO Auto-generated method stub
+		return null;
+	}
+
+	public Enumeration getHeaderNames() {
+		// TODO Auto-generated method stub
+		return null;
+	}
+
+	public Enumeration getHeaders(String arg0) {
+		// TODO Auto-generated method stub
+		return null;
+	}
+
+	public int getIntHeader(String arg0) {
+		// TODO Auto-generated method stub
+		return 0;
+	}
+
+	public String getMethod() {
+		// TODO Auto-generated method stub
+		return null;
+	}
+
+	public String getPathInfo() {
+		// TODO Auto-generated method stub
+		return null;
+	}
+
+	public String getPathTranslated() {
+		// TODO Auto-generated method stub
+		return null;
+	}
+
+	public String getQueryString() {
+		// TODO Auto-generated method stub
+		return null;
+	}
+
+	public String getRemoteUser() {
+		// TODO Auto-generated method stub
+		return null;
+	}
+
+	public String getRequestURI() {
+		return uri;
+	}
+
+	public StringBuffer getRequestURL() {
+		// TODO Auto-generated method stub
+		return null;
+	}
+
+	public String getRequestedSessionId() {
+		// TODO Auto-generated method stub
+		return null;
+	}
+
+	public String getServletPath() {
+		// TODO Auto-generated method stub
+		return null;
+	}
+
+	public HttpSession getSession() {
+		// TODO Auto-generated method stub
+		return null;
+	}
+
+	public HttpSession getSession(boolean arg0) {
+		// TODO Auto-generated method stub
+		return null;
+	}
+
+	public Principal getUserPrincipal() {
+		// TODO Auto-generated method stub
+		return null;
+	}
+
+	public boolean isRequestedSessionIdFromCookie() {
+		// TODO Auto-generated method stub
+		return false;
+	}
+
+	public boolean isRequestedSessionIdFromURL() {
+		// TODO Auto-generated method stub
+		return false;
+	}
+
+	public boolean isRequestedSessionIdFromUrl() {
+		// TODO Auto-generated method stub
+		return false;
+	}
+
+	public boolean isRequestedSessionIdValid() {
+		// TODO Auto-generated method stub
+		return false;
+	}
+
+	public boolean isUserInRole(String arg0) {
+		// TODO Auto-generated method stub
+		return false;
+	}
+
+	public Object getAttribute(String arg0) {
+		// TODO Auto-generated method stub
+		return null;
+	}
+
+	public Enumeration getAttributeNames() {
+		// TODO Auto-generated method stub
+		return null;
+	}
+
+	public String getCharacterEncoding() {
+		// TODO Auto-generated method stub
+		return null;
+	}
+
+	public int getContentLength() {
+		// TODO Auto-generated method stub
+		return 0;
+	}
+
+	public String getContentType() {
+		return contentType;
+	}
+
+	public ServletInputStream getInputStream() throws IOException {
+		return null;
+	}
+
+	public Locale getLocale() {
+		// TODO Auto-generated method stub
+		return null;
+	}
+
+	public Enumeration getLocales() {
+		// TODO Auto-generated method stub
+		return null;
+	}
+
+	public String getParameter(String arg0) {
+		// TODO Auto-generated method stub
+		return null;
+	}
+
+	public Map getParameterMap() {
+		// TODO Auto-generated method stub
+		return null;
+	}
+
+	public Enumeration getParameterNames() {
+		// TODO Auto-generated method stub
+		return null;
+	}
+
+	public String[] getParameterValues(String arg0) {
+		// TODO Auto-generated method stub
+		return null;
+	}
+
+	public String getProtocol() {
+		// TODO Auto-generated method stub
+		return null;
+	}
+
+	public BufferedReader getReader() throws IOException {
+		// TODO Auto-generated method stub
+		return null;
+	}
+
+	public String getRealPath(String arg0) {
+		// TODO Auto-generated method stub
+		return null;
+	}
+
+	public String getRemoteAddr() {
+		// TODO Auto-generated method stub
+		return null;
+	}
+
+	public String getRemoteHost() {
+		// TODO Auto-generated method stub
+		return null;
+	}
+
+	public RequestDispatcher getRequestDispatcher(String arg0) {
+		// TODO Auto-generated method stub
+		return null;
+	}
+
+	public String getScheme() {
+		// TODO Auto-generated method stub
+		return null;
+	}
+
+	public String getServerName() {
+		// TODO Auto-generated method stub
+		return null;
+	}
+
+	public int getServerPort() {
+		// TODO Auto-generated method stub
+		return 0;
+	}
+
+	public boolean isSecure() {
+		// TODO Auto-generated method stub
+		return false;
+	}
+
+	public void removeAttribute(String arg0) {
+		// TODO Auto-generated method stub
+
+	}
+
+	public void setAttribute(String arg0, Object arg1) {
+		// TODO Auto-generated method stub
+
+	}
+
+	public void setCharacterEncoding(String arg0)
+			throws UnsupportedEncodingException {
+		// TODO Auto-generated method stub
+
+	}
+
+
+
+}


Property changes on: labs/jbossrules/trunk/drools-server/src/test/java/org/drools/server/MockHttpRequest.java
___________________________________________________________________
Name: svn:eol-style
   + native

Added: labs/jbossrules/trunk/drools-server/src/test/java/org/drools/server/StubbedServlet.java
===================================================================
--- labs/jbossrules/trunk/drools-server/src/test/java/org/drools/server/StubbedServlet.java	                        (rev 0)
+++ labs/jbossrules/trunk/drools-server/src/test/java/org/drools/server/StubbedServlet.java	2008-08-20 07:03:17 UTC (rev 21633)
@@ -0,0 +1,30 @@
+package org.drools.server;
+
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.OutputStream;
+
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+
+public class StubbedServlet extends KnowledgeStatelessServlet {
+
+	InputStream inputStream;
+	OutputStream outputStream;
+
+	@Override
+	InputStream getInputStream(HttpServletRequest request)
+			throws IOException {
+		return inputStream;
+	}
+
+
+	@Override
+	OutputStream getOutputStream(HttpServletResponse resp) throws IOException {
+		return outputStream;
+	}
+
+
+
+
+}


Property changes on: labs/jbossrules/trunk/drools-server/src/test/java/org/drools/server/StubbedServlet.java
___________________________________________________________________
Name: svn:eol-style
   + native

Modified: labs/jbossrules/trunk/drools-server/src/test/resources/org/drools/server/test_rules1.drl
===================================================================
--- labs/jbossrules/trunk/drools-server/src/test/resources/org/drools/server/test_rules1.drl	2008-08-20 06:47:02 UTC (rev 21632)
+++ labs/jbossrules/trunk/drools-server/src/test/resources/org/drools/server/test_rules1.drl	2008-08-20 07:03:17 UTC (rev 21633)
@@ -39,6 +39,7 @@
   when
    Car()
   then
+  	System.out.println("Firing Car rule");
     prs.setStatus("crazy");
 end
 

Added: labs/jbossrules/trunk/drools-server/src/test/resources/testservice.properties
===================================================================
--- labs/jbossrules/trunk/drools-server/src/test/resources/testservice.properties	                        (rev 0)
+++ labs/jbossrules/trunk/drools-server/src/test/resources/testservice.properties	2008-08-20 07:03:17 UTC (rev 21633)
@@ -0,0 +1,2 @@
+newInstance=true
+file=TestService.drl
\ No newline at end of file


Property changes on: labs/jbossrules/trunk/drools-server/src/test/resources/testservice.properties
___________________________________________________________________
Name: svn:eol-style
   + native




More information about the jboss-svn-commits mailing list