From a831c830258162ceebf8089cd41a368c9a290742 Mon Sep 17 00:00:00 2001 From: allo Date: Sat, 21 Oct 2006 15:01:53 +0000 Subject: [PATCH] create servletProperties, with the servlet specific funktions from serverObjects git-svn-id: https://svn.berlios.de/svnroot/repos/yacy/trunk@2835 6c8d7289-2bf4-0310-a012-ef5d649a1542 --- htroot/CookieTest.java | 3 +- htroot/User.java | 3 +- source/de/anomic/http/httpdFileHandler.java | 15 ++-- source/de/anomic/server/serverObjects.java | 15 +--- .../de/anomic/server/servletProperties.java | 69 +++++++++++++++++++ 5 files changed, 82 insertions(+), 23 deletions(-) create mode 100644 source/de/anomic/server/servletProperties.java diff --git a/htroot/CookieTest.java b/htroot/CookieTest.java index ced723be3..4eabcc2e9 100644 --- a/htroot/CookieTest.java +++ b/htroot/CookieTest.java @@ -52,6 +52,7 @@ import java.util.Map.Entry; import de.anomic.http.httpHeader; import de.anomic.server.serverObjects; import de.anomic.server.serverSwitch; +import de.anomic.server.servletProperties; public class CookieTest { @@ -66,7 +67,7 @@ public class CookieTest { return prop; } - final serverObjects prop = new serverObjects(); + final servletProperties prop = new servletProperties(); if(post.containsKey("act")&&post.get("act").equals("clear_cookie")) { httpHeader outgoingHeader=new httpHeader(); diff --git a/htroot/User.java b/htroot/User.java index 46258fc83..679da1b45 100644 --- a/htroot/User.java +++ b/htroot/User.java @@ -55,11 +55,12 @@ import de.anomic.plasma.plasmaSwitchboard; import de.anomic.server.serverCodings; import de.anomic.server.serverObjects; import de.anomic.server.serverSwitch; +import de.anomic.server.servletProperties; public class User{ public static serverObjects respond(httpHeader header, serverObjects post, serverSwitch env) { - serverObjects prop = new serverObjects(); + servletProperties prop = new servletProperties(); plasmaSwitchboard sb = plasmaSwitchboard.getSwitchboard(); userDB.Entry entry=null; diff --git a/source/de/anomic/http/httpdFileHandler.java b/source/de/anomic/http/httpdFileHandler.java index 485b37349..7fc3b51e2 100644 --- a/source/de/anomic/http/httpdFileHandler.java +++ b/source/de/anomic/http/httpdFileHandler.java @@ -113,6 +113,7 @@ import de.anomic.server.serverCore; import de.anomic.server.serverFileUtils; import de.anomic.server.serverObjects; import de.anomic.server.serverSwitch; +import de.anomic.server.servletProperties; import de.anomic.server.logging.serverLog; import de.anomic.ymage.ymageMatrixPainter; import de.anomic.ymage.ymagePNGEncoderAWT; @@ -342,7 +343,7 @@ public final class httpdFileHandler extends httpdAbstractHandler implements http httpHeader headers = getDefaultHeaders(path); headers.put(httpHeader.WWW_AUTHENTICATE,"Basic realm=\"admin log-in\""); //httpd.sendRespondHeader(conProp,out,httpVersion,401,headers); - serverObjects tp=new serverObjects(); + servletProperties tp=new servletProperties(); tp.put("returnto", path); //TODO: separate errorpage Wrong Login / No Login httpd.sendRespondError(conProp, out, 5, 401, "Wrong Authentication", "", new File("proxymsg/authfail.inc"), tp, null, headers); @@ -476,7 +477,7 @@ public final class httpdFileHandler extends httpdAbstractHandler implements http //File targetClass = rewriteClassFile(targetFile); //We need tp here - serverObjects tp = new serverObjects(); + servletProperties tp = new servletProperties(); Date targetDate; boolean nocache = false; @@ -571,7 +572,7 @@ public final class httpdFileHandler extends httpdAbstractHandler implements http httpd.sendRespondHeader(this.connectionProperties, out, httpVersion, 200, null); // in case that there are no args given, args = null or empty hashmap - /* serverObjects tp = (serverObjects) */ invokeServlet(targetClass, requestHeader, args); + /* servletProperties tp = (servletProperties) */ invokeServlet(targetClass, requestHeader, args); this.forceConnectionClose(); return; } else if ((targetFile.exists()) && (targetFile.canRead())) { @@ -607,9 +608,9 @@ public final class httpdFileHandler extends httpdAbstractHandler implements http requestHeader.put("CLIENTIP", conProp.getProperty("CLIENTIP")); requestHeader.put("PATH", path); // in case that there are no args given, args = null or empty hashmap - tp = (serverObjects) invokeServlet(targetClass, requestHeader, args); + tp = (servletProperties) invokeServlet(targetClass, requestHeader, args); // if no args given , then tp will be an empty Hashtable object (not null) - if (tp == null) tp = new serverObjects(); + if (tp == null) tp = new servletProperties(); // check if the servlets requests authentification if (tp.containsKey("AUTHENTICATE")) { // handle brute-force protection @@ -753,9 +754,9 @@ public final class httpdFileHandler extends httpdAbstractHandler implements http //further processing of page.html (via page.class)? if (pageClass != null && pageClass.exists()) - tp = (serverObjects) invokeServlet(pageClass, requestHeader, args); + tp = (servletProperties) invokeServlet(pageClass, requestHeader, args); else - tp = new serverObjects(); + tp = new servletProperties(); tp.put("header", header_s); tp.put("page", content_s); fis=new BufferedInputStream(new FileInputStream(pageFile)); diff --git a/source/de/anomic/server/serverObjects.java b/source/de/anomic/server/serverObjects.java index 46a35a03a..44a54d4c4 100644 --- a/source/de/anomic/server/serverObjects.java +++ b/source/de/anomic/server/serverObjects.java @@ -69,22 +69,9 @@ import java.util.Map; import de.anomic.data.wikiCode; import de.anomic.http.httpHeader; -public final class serverObjects extends Hashtable implements Cloneable { +public class serverObjects extends Hashtable implements Cloneable { private static final long serialVersionUID = 1L; - private httpHeader outgoingHeader; - public void setOutgoingHeader(httpHeader outgoingHeader) - { - this.outgoingHeader=outgoingHeader; - } - public httpHeader getOutgoingHeader() - { - if(outgoingHeader!=null) - return outgoingHeader; - else - return new httpHeader(); - } - public serverObjects() { super(); diff --git a/source/de/anomic/server/servletProperties.java b/source/de/anomic/server/servletProperties.java new file mode 100644 index 000000000..07ecd99da --- /dev/null +++ b/source/de/anomic/server/servletProperties.java @@ -0,0 +1,69 @@ +// servletProperties.java +// ------------------------------- +// (C) 2006 Alexander Schier +// part of YaCy +// +// last major change: 06.02.2006 +// this file is contributed by Alexander Schier +// +// 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., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 US +package de.anomic.server; + +import de.anomic.http.httpHeader; + +public class servletProperties extends serverObjects { + private String prefix=""; + + private httpHeader outgoingHeader; + public void setOutgoingHeader(httpHeader outgoingHeader) + { + this.outgoingHeader=outgoingHeader; + } + public httpHeader getOutgoingHeader() + { + if(outgoingHeader!=null) + return outgoingHeader; + else + return new httpHeader(); + } + + public void setPrefix(String myprefix){ + prefix=myprefix; + } + public byte[] put(String key, byte[] value) { + return super.put(prefix+key, value); + } + public String put(String key, String value) { + return super.put(prefix+key, value); + } + public long put(String key, long value) { + return super.put(prefix+key, value); + } + public long inc(String key) { + return super.inc(prefix+key); + } + public Object get(String key, Object dflt) { + return super.get(prefix+key, dflt); + } + public String get(String key, String dflt) { + return super.get(prefix+key, dflt); + } + public int getInt(String key, int dflt) { + return super.getInt(prefix+key, dflt); + } + public long getLong(String key, long dflt) { + return super.getLong(prefix+key, dflt); + } +}