From d69a1827363cbeabd8a6002eb19c1ab53d5545fb Mon Sep 17 00:00:00 2001 From: "(no author)" <(no author)@6c8d7289-2bf4-0310-a012-ef5d649a1542> Date: Fri, 13 Jan 2006 21:37:48 +0000 Subject: [PATCH] Html pages to test cookies git-svn-id: https://svn.berlios.de/svnroot/repos/yacy/trunk@1333 6c8d7289-2bf4-0310-a012-ef5d649a1542 --- htroot/CookieTest.html | 57 ++++++++++++++++++ htroot/CookieTest.java | 127 +++++++++++++++++++++++++++++++++++++++++ 2 files changed, 184 insertions(+) create mode 100644 htroot/CookieTest.html create mode 100644 htroot/CookieTest.java diff --git a/htroot/CookieTest.html b/htroot/CookieTest.html new file mode 100644 index 000000000..dd417e5af --- /dev/null +++ b/htroot/CookieTest.html @@ -0,0 +1,57 @@ + + + +YaCy '#[clientname]#': Coockie - Test Page +#%env/templates/metas.template%# + + + +#%env/templates/header.template%# + + +Here is a cookie test page. + +
+
+
+ +Name:
+Value:
+ +
+ +
+
+Cookies at this browser:
+ +
+
+#(cookiesin)# +Cookies coming to server: +:: +#(/cookiesin)# +#{cookiesin}# +#[name]# = #[value]# +#{/cookiesin}# +
+
+#(cookiesout)# +Cookies server sent: +:: +#(/cookiesout)# +#{cookiesout}# +#[name]# = #[value]# +#{/cookiesout}# + +
+
+
YaCy is a GPL'ed project +with the target of implementing a P2P-based global search engine.
+Architecture (C) by Michael Peter Christen, +
+ +#%env/templates/footer.template%# + + \ No newline at end of file diff --git a/htroot/CookieTest.java b/htroot/CookieTest.java new file mode 100644 index 000000000..8149cc0b1 --- /dev/null +++ b/htroot/CookieTest.java @@ -0,0 +1,127 @@ +// index.java +// ----------------------- +// part of the AnomicHTTPD caching proxy +// (C) by Michael Peter Christen; mc@anomic.de +// first published on http://www.anomic.de +// Frankfurt, Germany, 2004 +// +// $LastChangedDate: 2005-12-07 01:36:05 +0100 $ +// $LastChangedRevision: 1177 $ +// $LastChangedBy: orbiter $ +// +// This program is free software; you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation; either version 2 of the License, or +// (at your option) any later version. +// +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with this program; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// Using this software in any meaning (reading, learning, copying, compiling, +// running) means that you agree that the Author(s) is (are) not responsible +// for cost, loss of data or any harm that may be caused directly or indirectly +// by usage of this softare or this documentation. The usage of this software +// is on your own risk. The installation and usage (starting/running) of this +// software may allow other people or application to access your computer and +// any attached devices and is highly dependent on the configuration of the +// software which must be done by the user of the software; the author(s) is +// (are) also not responsible for proper configuration and usage of the +// software, even if provoked by documentation provided together with +// the software. +// +// Any changes to this file according to the GPL as documented in the file +// gpl.txt aside this file in the shipment you received can be done to the +// lines that follows this copyright notice here, but changes must not be +// done inside the copyright notive above. A re-distribution must contain +// the intact and unchanged copyright notice. +// Contributions and changes to the program code must be marked as such. +// +// You must compile this file with +// javac -classpath .:../classes index.java +// if the shell's current path is HTROOT + +import java.io.IOException; +import java.net.MalformedURLException; +import java.net.URL; +import java.sql.Date; +import java.util.HashMap; +import java.util.Iterator; +import java.util.TreeSet; +import java.util.Map.Entry; + +import de.anomic.http.httpHeader; +import de.anomic.kelondro.kelondroMSetTools; +import de.anomic.plasma.plasmaSwitchboard; +import de.anomic.plasma.plasmaSearchQuery; +import de.anomic.plasma.plasmaSearchPreOrder; +import de.anomic.server.serverCore; +import de.anomic.server.serverDate; +import de.anomic.server.serverObjects; +import de.anomic.server.serverSwitch; +import de.anomic.yacy.yacyCore; + +public class CookieTest { + + public static serverObjects respond(httpHeader header, serverObjects post, serverSwitch env) { + + + // case if no values are requested + if (post == null || env == null) { + + // we create empty entries for template strings + final serverObjects prop = new serverObjects(); + return prop; + } + + final serverObjects prop = new serverObjects(); + if(post.containsKey("act")&&post.get("act").equals("clear_cookie")) + { + + Iterator it = header.entrySet().iterator(); + while(it.hasNext()) + { + java.util.Map.Entry e = (Entry) it.next(); + if(e.getKey().equals("Cookie")); + prop.setCoockie( + (String)e.getKey(), + (String)e.getValue(), + "expires=Thu, 01-Jan-99 00:00:01 GMT" + ); + + } + + + prop.put("coockiesout",0); + //header. + + } + else if(post.containsKey("act")&&post.get("act").equals("set_cookie")) + { + String CoockieName = post.get("cookie_name").toString().trim(); + String CoockieValue = post.get("cookie_value").toString().trim(); + prop.setCoockie(CoockieName,CoockieValue); + prop.put("cookiesout",1); + prop.put("cookiesout_0_name",CoockieName); + prop.put("cookiesout_0_value",CoockieValue); + //header. + + } +Iterator it = header.entrySet().iterator(); +while(it.hasNext()) +{ + java.util.Map.Entry e = (Entry) it.next(); + System.out.println(""+e.getKey()+" : "+e.getValue()); +} + + return prop; + } + + + +}