You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@manifoldcf.apache.org by kw...@apache.org on 2012/12/02 19:03:43 UTC
svn commit: r1416217 -
/manifoldcf/trunk/tests/webcrawler/src/test/java/org/apache/manifoldcf/webcrawler_tests/MockSessionWebService.java
Author: kwright
Date: Sun Dec 2 18:03:42 2012
New Revision: 1416217
URL: http://svn.apache.org/viewvc?rev=1416217&view=rev
Log:
More testing additions as part of CONNECTORS-574.
Modified:
manifoldcf/trunk/tests/webcrawler/src/test/java/org/apache/manifoldcf/webcrawler_tests/MockSessionWebService.java
Modified: manifoldcf/trunk/tests/webcrawler/src/test/java/org/apache/manifoldcf/webcrawler_tests/MockSessionWebService.java
URL: http://svn.apache.org/viewvc/manifoldcf/trunk/tests/webcrawler/src/test/java/org/apache/manifoldcf/webcrawler_tests/MockSessionWebService.java?rev=1416217&r1=1416216&r2=1416217&view=diff
==============================================================================
--- manifoldcf/trunk/tests/webcrawler/src/test/java/org/apache/manifoldcf/webcrawler_tests/MockSessionWebService.java (original)
+++ manifoldcf/trunk/tests/webcrawler/src/test/java/org/apache/manifoldcf/webcrawler_tests/MockSessionWebService.java Sun Dec 2 18:03:42 2012
@@ -26,7 +26,7 @@ import org.eclipse.jetty.util.thread.Que
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
-
+import javax.servlet.http.HttpSession;
import java.io.*;
import java.util.*;
@@ -84,38 +84,99 @@ public class MockSessionWebService
// or as a redirection back to the content page, or as a redirection to the index page)
// Get path part of request URL
- // MHL
- String pathPart = "";
-
- if (pathPart.equals("/loginpage.html"))
+ String pathPart = req.getPathInfo();
+ if (pathPart == null)
{
- // Login page logic
- String id = req.getParameter("id");
- Integer idNumber;
- if (id == null)
- idNumber = null;
- else
- idNumber = new Integer(id);
-
- String userName = req.getParameter("user");
- String password = req.getParameter("password");
-
- // MHL
+ // 404
+ generateMissingPageResponse(res);
}
- else if (pathPart.equals("/protectedcontent.html"))
+ else
{
- // Content page logic
- String id = req.getParameter("id");
- if (id == null)
+ if (pathPart.equals("/loginpage.html"))
{
- generateBadArgumentResponse(res);
+ // Login page logic
+ String id = req.getParameter("id");
+ Integer idNumber;
+ if (id == null)
+ idNumber = null;
+ else
+ idNumber = new Integer(id);
+
+ HttpSession session = req.getSession();
+ Object loginInfo = session.getAttribute("logininfo");
+ if (loginInfo != null && (loginInfo instanceof Boolean) && (((Boolean)loginInfo).booleanValue()))
+ {
+ // Already logged in: redirect back to content or index
+ generateLoginRedirectPage(res,idNumber);
+ }
+ else
+ {
+ String userName = req.getParameter("user");
+ String password = req.getParameter("password");
+
+ if (userName == null || password == null || !loginUser.equals(userName) || !loginPassword.equals(password))
+ {
+ generateLoginFormPage(res,idNumber);
+ }
+ else
+ {
+ // Login succeeded, so set the session properly
+ session.setAttribute("logininfo",new Boolean(true));
+ generateLoginRedirectPage(res,idNumber);
+ }
+ }
+ }
+ else if (pathPart.equals("/protectedcontent.html"))
+ {
+ // Content page logic
+ String id = req.getParameter("id");
+ if (id == null)
+ {
+ generateBadArgumentResponse(res);
+ }
+ else
+ {
+ Integer idNumber = new Integer(id);
+ if (idNumber.intValue() >= contentPageCount)
+ {
+ generateMissingPageResponse(res);
+ }
+ else
+ {
+ HttpSession session = req.getSession();
+ Object loginInfo = session.getAttribute("logininfo");
+ if (loginInfo != null && (loginInfo instanceof Boolean) && (((Boolean)loginInfo).booleanValue()))
+ {
+ // Return content
+ generateContentDisplayPage(res,idNumber.intValue());
+ }
+ else
+ {
+ // Redirect to login page
+ generateContentRedirectPage(res,idNumber.intValue());
+ }
+ }
+ }
+ }
+ else if (pathPart.equals("/index.html"))
+ {
+ // Index logic
+ HttpSession session = req.getSession();
+ Object loginInfo = session.getAttribute("logininfo");
+ if (loginInfo != null && (loginInfo instanceof Boolean) && (((Boolean)loginInfo).booleanValue()))
+ {
+ // Return content
+ generateIndexDisplayPage(res,contentPageCount);
+ }
+ else
+ {
+ generateIndexRedirectPage(res);
+ }
+ }
+ else
+ {
+ generateMissingPageResponse(res);
}
- // MHL
- }
- else if (pathPart.equals("/index.html"))
- {
- // Index logic
- // MHL
}
}
catch (IOException e)
@@ -125,10 +186,16 @@ public class MockSessionWebService
}
}
+ protected static void generateMissingPageResponse(HttpServletResponse res)
+ throws IOException
+ {
+ res.sendError(HttpServletResponse.SC_NOT_FOUND);
+ }
+
protected static void generateBadArgumentResponse(HttpServletResponse res)
throws IOException
{
- // MHL
+ res.sendError(HttpServletResponse.SC_BAD_REQUEST);
}
protected static void generateLoginRedirectPage(HttpServletResponse res, Integer returnID)
@@ -139,8 +206,7 @@ public class MockSessionWebService
redirectTarget = "/web/indexpage.html";
else
redirectTarget = "/web/protectedcontent.html?id="+returnID;
-
- // MHL
+ res.sendRedirect(redirectTarget);
}
protected static void generateLoginFormPage(HttpServletResponse res, Integer returnID)
@@ -170,7 +236,7 @@ public class MockSessionWebService
throws IOException
{
String redirectTarget = "/web/loginpage.html?id="+itemNumber;
- // MHL
+ res.sendRedirect(redirectTarget);
}
protected static void generateContentDisplayPage(HttpServletResponse res, int itemNumber)
@@ -190,7 +256,7 @@ public class MockSessionWebService
throws IOException
{
String redirectTarget = "/web/loginpage.html";
- // MHL
+ res.sendRedirect(redirectTarget);
}
protected static void generateIndexDisplayPage(HttpServletResponse res, int countItems)