From effbf35f57fc6ae10d46eaabdcdff861b5ecc31f Mon Sep 17 00:00:00 2001 From: borg-0300 Date: Sun, 18 Sep 2005 23:07:29 +0000 Subject: [PATCH] finals; cleaned; git-svn-id: https://svn.berlios.de/svnroot/repos/yacy/trunk@746 6c8d7289-2bf4-0310-a012-ef5d649a1542 --- htroot/htdocsdefault/dir.java | 478 +++++++++++++++--------------- htroot/htdocsdefault/welcome.java | 50 ++-- 2 files changed, 263 insertions(+), 265 deletions(-) diff --git a/htroot/htdocsdefault/dir.java b/htroot/htdocsdefault/dir.java index ae6cd997d..c862d7949 100644 --- a/htroot/htdocsdefault/dir.java +++ b/htroot/htdocsdefault/dir.java @@ -4,7 +4,10 @@ // (C) by Michael Peter Christen; mc@anomic.de // first published on http://www.anomic.de // Frankfurt, Germany, 2004, 2005 -// last major change: 15.02.2005 +// +// $LastChangedDate$ +// $LastChangedRevision$ +// $LastChangedBy$ // // 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 @@ -38,7 +41,7 @@ // 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 /htroot/htdocsdefault/dir.java // which most probably means to compile this with @@ -53,7 +56,6 @@ import java.util.Date; import java.util.Set; import java.net.InetAddress; import java.net.UnknownHostException; - import de.anomic.http.httpHeader; import de.anomic.plasma.plasmaCondenser; import de.anomic.plasma.plasmaCrawlLURL; @@ -73,71 +75,67 @@ public class dir { private static SimpleDateFormat SimpleFormatter = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss"); public static String dateString(Date date) { - return SimpleFormatter.format(date); + return SimpleFormatter.format(date); } public static serverObjects respond(httpHeader header, serverObjects post, serverSwitch env) { - plasmaSwitchboard switchboard = (plasmaSwitchboard) env; - serverObjects prop = new serverObjects(); - - //System.out.println("###Header="+ header); - //System.out.println("###post=" + post); + final plasmaSwitchboard switchboard = (plasmaSwitchboard) env; + final serverObjects prop = new serverObjects(); + +// System.out.println("###Header="+ header); +// System.out.println("###post=" + post); String action = ((post == null) ? "info" : post.get("action", "info")); String tree = ""; // variables for this path - //File htroot = new File(switchboard.getRootPath(), switchboard.getConfig("htRootPath", "htroot")); - File htroot = new File(switchboard.getRootPath(), switchboard.getConfig("htDocsPath", "DATA/HTDOCS")); +// File htroot = new File(switchboard.getRootPath(), switchboard.getConfig("htRootPath", "htroot")); + final File htroot = new File(switchboard.getRootPath(), switchboard.getConfig("htDocsPath", "DATA/HTDOCS")); String path = (String) header.get("PATH", "/"); - int p = path.lastIndexOf("/"); - if (p >= 0) path = path.substring(0, p + 1); - File dir = new File(htroot, path); + int pos = path.lastIndexOf("/"); + if (pos >= 0) { path = path.substring(0, pos + 1); } + final File dir = new File(htroot, path); // general settings prop.put("peername", env.getConfig("peerName", "")); prop.put("peerdomain", env.getConfig("peerName", "").toLowerCase()); - prop.put("peeraddress", yacyCore.seedDB.mySeed.getAddress()); + prop.put("peeraddress", yacyCore.seedDB.mySeed.getAddress()); prop.put("hostname", serverCore.publicIP()); - try{ - prop.put("hostip", InetAddress.getByName(serverCore.publicIP()).getHostAddress()); - }catch(UnknownHostException e){ - prop.put("hostip", "Unknown Host Exception"); - } - prop.put("port", env.getConfig("port", "8080")); - + try{ + prop.put("hostip", InetAddress.getByName(serverCore.publicIP()).getHostAddress()); + }catch(UnknownHostException e){ + prop.put("hostip", "Unknown Host Exception"); + } + prop.put("port", env.getConfig("port", "8080")); + // generate upload/download authorizations - String adminAccountBase64MD5 = switchboard.getConfig("adminAccountBase64MD5", ""); - String uploadAccountBase64MD5 = switchboard.getConfig("uploadAccountBase64MD5", ""); - String downloadAccountBase64MD5 = switchboard.getConfig("downloadAccountBase64MD5", ""); - - String logoutAccountBase64MD5 = de.anomic.server.serverCodings.encodeMD5Hex(serverCodings.standardCoder.encodeBase64String(":")); - String authorizationMD5 = de.anomic.server.serverCodings.encodeMD5Hex(((String) header.get("Authorization", "xxxxxx")).trim().substring(6)); - //if (logoutAccountBase64.equals(authorization)) - boolean adminAuthorization = - ((adminAccountBase64MD5.length() != 0) && - (adminAccountBase64MD5.equals(authorizationMD5))); - boolean uploadAuthorization = - ((adminAuthorization) || - ((uploadAccountBase64MD5.length() != 0) && - (uploadAccountBase64MD5.equals(authorizationMD5)))); - boolean downloadAuthorization = - ((adminAuthorization) || (uploadAuthorization) || - (downloadAccountBase64MD5.length() == 0) || - (downloadAccountBase64MD5.equals(authorizationMD5))); + final String adminAccountBase64MD5 = switchboard.getConfig("adminAccountBase64MD5", ""); + final String uploadAccountBase64MD5 = switchboard.getConfig("uploadAccountBase64MD5", ""); + final String downloadAccountBase64MD5 = switchboard.getConfig("downloadAccountBase64MD5", ""); + + final String logoutAccountBase64MD5 = de.anomic.server.serverCodings.encodeMD5Hex(serverCodings.standardCoder.encodeBase64String(":")); + final String authorizationMD5 = de.anomic.server.serverCodings.encodeMD5Hex(((String) header.get("Authorization", "xxxxxx")).trim().substring(6)); +// if (logoutAccountBase64.equals(authorization)) + final boolean adminAuthorization = (adminAccountBase64MD5.length() != 0 && + adminAccountBase64MD5.equals(authorizationMD5)); + final boolean uploadAuthorization = (adminAuthorization ||(uploadAccountBase64MD5.length() != 0 && + uploadAccountBase64MD5.equals(authorizationMD5))); + final boolean downloadAuthorization = (adminAuthorization || uploadAuthorization || + downloadAccountBase64MD5.length() == 0 || + downloadAccountBase64MD5.equals(authorizationMD5)); // do authentitcate processes by triggering the http authenticate method - if ((action.equals("authenticateAdmin")) && (!(adminAuthorization))) { + if (action.equals("authenticateAdmin") && !adminAuthorization) { prop.put("AUTHENTICATE", "admin log-in"); return prop; } - if ((action.equals("authenticateUpload")) && (!(uploadAuthorization))) { + if (action.equals("authenticateUpload") && !uploadAuthorization) { prop.put("AUTHENTICATE", "upload log-in"); return prop; } - if ((action.equals("authenticateDownload")) && (!(downloadAuthorization))) { + if (action.equals("authenticateDownload") && !downloadAuthorization) { prop.put("AUTHENTICATE", "download log-in"); return prop; } - + // work off actions if (action.equals("logout")) { if (adminAuthorization) { @@ -153,41 +151,37 @@ public class dir { action = ""; } } - if ((action.equals("downloadPassword")) && (adminAuthorization)) { - switchboard.setConfig("downloadAccountBase64MD5", (post.get("password", "").length() == 0) ? "" : serverCodings.standardCoder.encodeMD5Hex(serverCodings.standardCoder.encodeBase64String("download:" + post.get("password", "")))); + if (action.equals("downloadPassword") && adminAuthorization) { + switchboard.setConfig("downloadAccountBase64MD5", (post.get("password", "").length() == 0) ? "" : serverCodings.standardCoder.encodeMD5Hex(serverCodings.standardCoder.encodeBase64String("download:" + post.get("password", "")))); } - if ((action.equals("uploadPassword")) && (adminAuthorization)) { + if (action.equals("uploadPassword") && adminAuthorization) { switchboard.setConfig("uploadAccountBase64MD5", (post.get("password", "").length() == 0) ? "" : serverCodings.standardCoder.encodeMD5Hex(serverCodings.standardCoder.encodeBase64String("upload:" + post.get("password", "")))); } - if ((action.equals("upload")) && - ((uploadAuthorization) || (adminAuthorization))) { - String filename = new File(post.get("file", "dummy")).getName(); - String description = post.get("description", ""); - p = filename.lastIndexOf("\\"); - if (p >= 0) filename = filename.substring(p + 1); - File newfile = new File(dir, filename); - File newfilemd5 = new File(dir, filename + ".md5"); - byte[] binary = (byte[]) post.get((Object) "file$file", (Object) new byte[0]); + if (action.equals("upload") && (uploadAuthorization || adminAuthorization)) { + String filename = new File(post.get("file", "dummy")).getName(); + String description = post.get("description", ""); + pos = filename.lastIndexOf("\\"); + if (pos >= 0) { filename = filename.substring(pos + 1); } + final File newfile = new File(dir, filename); + final File newfilemd5 = new File(dir, filename + ".md5"); + final byte[] binary = (byte[]) post.get((Object) "file$file", (Object) new byte[0]); try { serverFileUtils.write(binary, newfile); String md5s = serverCodings.encodeMD5Hex(newfile); serverFileUtils.write((md5s + "\n" + description).getBytes(), newfilemd5); // generate md5 - + // index file info if (post.get("indexing", "").equals("on")) { - String urlstring = yacyhURL(yacyCore.seedDB.mySeed, filename, md5s); - String phrase = filename.replace('.', ' ').replace('_', ' ').replace('-', ' '); + final String urlstring = yacyhURL(yacyCore.seedDB.mySeed, filename, md5s); + final String phrase = filename.replace('.', ' ').replace('_', ' ').replace('-', ' '); indexPhrase(switchboard, urlstring, phrase, description); } } catch (IOException e) {} - - } - if ((action.equals("newdir")) && - ((uploadAuthorization) || (adminAuthorization))) { - String newdirname = post.get("directory", "EmptyDir"); - if ((newdirname != null) && (newdirname.length() > 0)) { - File newdir = new File(dir, newdirname); + if (action.equals("newdir") && (uploadAuthorization || adminAuthorization)) { + final String newdirname = post.get("directory", "EmptyDir"); + if (newdirname != null && newdirname.length() > 0) { + final File newdir = new File(dir, newdirname); newdir.mkdir(); try { serverFileUtils.copy(new File(dir,"dir.html"), new File(newdir, "dir.html")); @@ -195,25 +189,25 @@ public class dir { } catch (IOException e) {} } } - if ((action.equals("delete")) && (adminAuthorization)) { + if (action.equals("delete") && adminAuthorization) { String filename = post.get("file", "foo"); - File file = new File(dir, filename); + final File file = new File(dir, filename); if (file.exists()) { - File filemd5 = new File(dir, post.get("file", "foo") + ".md5"); + final File filemd5 = new File(dir, post.get("file", "foo") + ".md5"); // read md5 and phrase String md5s = ""; String description = ""; if (filemd5.exists()) try { md5s = new String(serverFileUtils.read(filemd5)); - p = md5s.indexOf('\n'); - if (p >= 0) { - description = md5s.substring(p + 1); - md5s = md5s.substring(0, p); + pos = md5s.indexOf('\n'); + if (pos >= 0) { + description = md5s.substring(pos + 1); + md5s = md5s.substring(0, pos); } } catch (IOException e) {} // delete file(s) if (file.isDirectory()) { - String[] content = file.list(); + final String[] content = file.list(); for (int i = 0; i < content.length; i++) (new File(file, content[i])).delete(); file.delete(); } else if (file.isFile()) { @@ -221,77 +215,81 @@ public class dir { if (filemd5.exists()) filemd5.delete(); } // delete index - String urlstring = yacyhURL(yacyCore.seedDB.mySeed, filename, md5s); - String phrase = filename.replace('.', ' ').replace('_', ' ').replace('-', ' '); + final String urlstring = yacyhURL(yacyCore.seedDB.mySeed, filename, md5s); + final String phrase = filename.replace('.', ' ').replace('_', ' ').replace('-', ' '); deletePhrase(switchboard, urlstring, phrase, description); } } - + // if authorized, generate directory tree listing if ((adminAuthorization) || (uploadAuthorization) || (downloadAuthorization)) { // generate dir listing - String[] list = dir.list(); + final String[] list = dir.list(); File f, fmd5; String md5s, description; Date d; - //tree += "path = " + path + "

"; + // tree += "path = " + path + "

"; if (list == null) tree += "This directory is empty.
"; else { int filecount = 0; - tree += "" + - ""; - boolean dark = false; - for (int i = 0; i < list.length; i++) if (!((list[i].startsWith("dir.")) || (list[i].endsWith(".md5")))) { - tree += ""; dark = !dark; - filecount++; - f = new File(dir, list[i]); - fmd5 = new File(dir, list[i] + ".md5"); - try { - if (fmd5.exists()) { - md5s = new String(serverFileUtils.read(fmd5)); - p = md5s.indexOf('\n'); - if (p >= 0) { - description = md5s.substring(p + 1); - md5s = md5s.substring(0, p); - } else { - description = ""; - } + tree += "
" + path + "
" + + ""; + boolean dark = false; + for (int i = 0; i < list.length; i++) { + if (!((list[i].startsWith("dir.")) || (list[i].endsWith(".md5")))) { + tree += ""; + dark = !dark; + filecount++; + f = new File(dir, list[i]); + fmd5 = new File(dir, list[i] + ".md5"); + try { + if (fmd5.exists()) { + md5s = new String(serverFileUtils.read(fmd5)); + pos = md5s.indexOf('\n'); + if (pos >= 0) { + description = md5s.substring(pos + 1); + md5s = md5s.substring(0, pos); + } else { + description = ""; + } + } else { + // generate md5 on-the-fly + md5s = serverCodings.encodeMD5Hex(f); + description = ""; + serverFileUtils.write((md5s + "\n" + description).getBytes(), fmd5); + } + } catch (IOException e) { + md5s = ""; + description = ""; + } + d = new Date(f.lastModified()); + if (f.isDirectory()) { + tree += ""; + tree += ""; + tree += ""; + tree += ""; + tree += ""; } else { - // generate md5 on-the-fly - md5s = serverCodings.encodeMD5Hex(f); - description = ""; - serverFileUtils.write((md5s + "\n" + description).getBytes(), fmd5); + tree += ""; + tree += ""; + tree += ""; + tree += ""; - tree += ""; - tree += ""; - tree += ""; - tree += ""; - } else { - tree += ""; - tree += ""; - tree += ""; - tree += ""; + } +// if (adminAuthorization) tree += " "; else tree += "
"; + tree += "" + serverCore.crlfString; } - if (adminAuthorization) tree += - ""; - //if (adminAuthorization) tree += " "; else tree += "
"; - tree += "" + serverCore.crlfString; } - tree += "
" + path + "
" + dateString(d) + "" + list[i] + "" + formatLong(0, 10) + "Directory"; + tree += "" + dateString(d) + " "; + tree += "" + list[i] + "" + formatLong(f.length(), 10) + "" + md5s + "" + (((description.length() == 0) && ((list[i].endsWith(".jpg")) || (list[i].endsWith(".gif")) || (list[i].endsWith(".png")))) ? (""; } - } catch (IOException e) { - md5s = ""; - description = ""; - } - d = new Date(f.lastModified()); - if (f.isDirectory()) { - tree += "" + dateString(d) + "" + list[i] + "" + formatLong(0, 10) + "Directory"; - tree += "" + dateString(d) + " "; - tree += "" + list[i] + "" + formatLong(f.length(), 10) + "" + md5s + "" + (((description.length() == 0) && ((list[i].endsWith(".jpg")) || (list[i].endsWith(".gif")) || (list[i].endsWith(".png")))) ? (""; + if (adminAuthorization) { + tree += "" + + "
" + + "" + + "" + + "
" + - "
" + - "" + - "" + - "
"; + tree += ""; if (filecount == 0) { tree += "EMPTY
"; } @@ -306,39 +304,39 @@ public class dir { if (adminAuthorization) { ident = "Administrator"; account = "" + - "" + - "" + - "
upload:
" + - "" + - " " + - "" + - "
download:
" + - "" + - " " + - "" + - "
"; + "upload:
" + + "" + + " " + + "" + + "
" + + "download:
" + + "" + + " " + + "" + + "
" + + ""; logout = "
" + - "" + - " (enter empty account)" + - "
"; + "" + + " (enter empty account)" + + ""; service = "" + - "" + - "" + - "" + - "" + - "" + - "" + - "
New Directory:
" + - "" + - " " + - "" + - "
File Upload:
" + - "Resource = " + - "
" + - "Description = 
" + - "Indexing : 
" + - "" + - "
"; + "" + + "New Directory:" + + "
" + + "" + + " " + + "" + + "
" + + "" + + "File Upload:" + + "
" + + "Resource = " + + "
" + + "Description = 
" + + "Indexing : 
" + + "" + + "
" + + ""; info = "Admin and download accounts are necessary to grant their services to clients; " + "no password is required for the download-account unless you set one. " + "Files uploaded and indexed here have a special index entry 'yacyshare'; " + @@ -346,72 +344,74 @@ public class dir { } else if (uploadAuthorization) { ident = "Uploader"; account = "
" + - "" + - "" + - "
"; - if (uploadAccountBase64MD5.length() == 0) + "" + + "" + + ""; + if (uploadAccountBase64MD5.length() == 0) { logout = ""; - else + } else { logout = "
" + - "" + - " (enter empty account)" + - "
"; + "" + + " (enter empty account)" + + ""; + } service = "" + - "" + - "" + - "" + - "" + - "" + - "" + - "
New Directory:
" + - "" + - " " + - "" + - "
File Upload:
" + - "Resource = " + - "
" + - "Description = 
" + - "Indexing : 
" + - "" + - "
"; + "" + + "New Directory:" + + "
" + + "" + + " " + + "" + + "
" + + "" + + "File Upload:" + + "
" + + "Resource = " + + "
" + + "Description = 
" + + "Indexing : 
" + + "" + + "
" + + ""; info = "Uploaders are not granted to delete files or directories. If you want to do this, log-in as admin."; } else if (downloadAuthorization) { ident = "Downloader"; account = "
" + - "" + - "" + - "
" + - "
" + - "" + - "" + - "
"; - if (downloadAccountBase64MD5.length() == 0) + "" + + "" + + " " + + "
" + + "" + + "" + + "
"; + if (downloadAccountBase64MD5.length() == 0) { logout = ""; - else + } else { logout = "
" + - "" + - " (enter empty account)" + - "
"; - service = "You are granted to view directory listings and do downloads in this directory.
" + - "If you want to upload, please log in as user 'upload'"; - info = "Download is granted even if no download account has been defined. " + - "If you are an administrator and you wish to block non-authorized downloades, please log in as user 'admin' " + - "and set a download password."; + "" + + " (enter empty account)" + + ""; + service = "You are granted to view directory listings and do downloads in this directory.
" + + "If you want to upload, please log in as user 'upload'"; + info = "Download is granted even if no download account has been defined. " + + "If you are an administrator and you wish to block non-authorized downloades, please log in as user 'admin' " + + "and set a download password."; + } } else { ident = "not authorized"; tree = "To inspect this directory you need either an admin, upload or download account. Please log in."; account = "
" + - "" + - "" + - "
" + - "
" + - "" + - "" + - "
" + - "
" + - "" + - "" + - "
"; + "" + + "" + + " " + + "
" + + "" + + "" + + "
" + + "
" + + "" + + "" + + "
"; logout = ""; service = "No service available."; info = "You must log-in to upload or download."; @@ -423,14 +423,13 @@ public class dir { prop.put("service", service); prop.put("info", info); prop.put("logout", logout); - // return rewrite properties - return prop; +// return rewrite properties + return prop; } private static String formatLong(long l, int length) { String r = "" + l; - int rl = r.length(); - for (int i = rl; i < length; i++) r = " " + r; + for (int i = r.length(); i < length; i++) { r = " " + r; } return r; } @@ -440,45 +439,46 @@ public class dir { // http://bl.reynolds.net.au/search/ // http://www.declude.com/Articles.asp?ID=97 // http://www.dnsstuff.com/ - + // listlist: http://www.aspnetimap.com/help/welcome/dnsbl.html - + public static String yacyhURL(yacySeed seed, String filename, String md5) { return "http://share." + seed.getHexHash() + ".yacyh/" + filename + "?md5=" + md5; } - + public static void indexPhrase(plasmaSwitchboard switchboard, String urlstring, String phrase, String descr) { try { - URL url = new URL(urlstring); - plasmaCondenser condenser = new plasmaCondenser(new ByteArrayInputStream(("yacyshare. " + phrase + ". " + descr).getBytes())); - plasmaCrawlLURL.Entry newEntry = switchboard.urlPool.loadedURL.addEntry( - url, "YaCyShare: " + descr, new Date(), new Date(), - "____________", /*initiator*/ - yacyCore.seedDB.mySeed.hash, /*executor*/ - "AAAAAAAAAAAA", /*referrer*/ - 0, /*copycount*/ - false, /*localneed*/ - Integer.parseInt(condenser.getAnalysis().getProperty("INFORMATION_VALUE","0"), 16), - "**", /*language*/ - plasmaWordIndexEntry.DT_SHARE, /*doctype*/ - phrase.length(), /*size*/ - (int) Long.parseLong(condenser.getAnalysis().getProperty("NUMB_WORDS","0"), 16), - 5 /*process case*/ + final URL url = new URL(urlstring); + final plasmaCondenser condenser = new plasmaCondenser(new ByteArrayInputStream(("yacyshare. " + phrase + ". " + descr).getBytes())); + final plasmaCrawlLURL.Entry newEntry = switchboard.urlPool.loadedURL.addEntry( + url, "YaCyShare: " + descr, new Date(), new Date(), + "____________", /*initiator*/ + yacyCore.seedDB.mySeed.hash, /*executor*/ + "AAAAAAAAAAAA", /*referrer*/ + 0, /*copycount*/ + false, /*localneed*/ + Integer.parseInt(condenser.getAnalysis().getProperty("INFORMATION_VALUE","0"), 16), + "**", /*language*/ + plasmaWordIndexEntry.DT_SHARE, /*doctype*/ + phrase.length(), /*size*/ + (int) Long.parseLong(condenser.getAnalysis().getProperty("NUMB_WORDS","0"), 16), + 5 /*process case*/ ); - - String urlHash = newEntry.hash(); - int words = switchboard.searchManager.addPageIndex(url, urlHash, new Date(), condenser, "**", plasmaWordIndexEntry.DT_SHARE); + + final String urlHash = newEntry.hash(); + final int words = switchboard.searchManager.addPageIndex(url, urlHash, new Date(), condenser, "**", plasmaWordIndexEntry.DT_SHARE); } catch (IOException e) {} } public static void deletePhrase(plasmaSwitchboard switchboard, String urlstring, String phrase, String descr) { try { - String urlhash = plasmaURL.urlHash(new URL(urlstring)); - Set words = plasmaCondenser.getWords(("yacyshare " + phrase + " " + descr).getBytes()); + final String urlhash = plasmaURL.urlHash(new URL(urlstring)); + final Set words = plasmaCondenser.getWords(("yacyshare " + phrase + " " + descr).getBytes()); switchboard.removeReferences(urlhash, words); switchboard.urlPool.loadedURL.remove(urlhash); } catch (Exception e) { serverLog.logSevere("DIR", "INTERNAL ERROR in dir.deletePhrase", e); } } + } diff --git a/htroot/htdocsdefault/welcome.java b/htroot/htdocsdefault/welcome.java index 3b5d3df91..0453968b4 100644 --- a/htroot/htdocsdefault/welcome.java +++ b/htroot/htdocsdefault/welcome.java @@ -4,7 +4,10 @@ // (C) by Michael Peter Christen; mc@anomic.de // first published on http://www.anomic.de // Frankfurt, Germany, 2004 -// last change: 05.08.2004 +// +// $LastChangedDate$ +// $LastChangedRevision$ +// $LastChangedBy$ // // 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 @@ -38,14 +41,13 @@ // 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 +// javac -classpath .:../classes index.java // if the shell's current path is HTROOT import java.net.InetAddress; import java.net.UnknownHostException; - import de.anomic.http.httpHeader; import de.anomic.server.serverCore; import de.anomic.server.serverObjects; @@ -55,36 +57,32 @@ import de.anomic.yacy.yacyCore; public class welcome { public static serverObjects respond(httpHeader header, serverObjects post, serverSwitch env) { - // return variable that accumulates replacements - serverObjects prop = new serverObjects(); - - // set values - String s; - int pos; + // return variable that accumulates replacements + final serverObjects prop = new serverObjects(); // update seed info yacyCore.peerActions.updateMySeed(); - prop.put("peername", env.getConfig("peerName", "")); + prop.put("peername", env.getConfig("peerName", "")); prop.put("peerdomain", env.getConfig("peerName", "").toLowerCase()); - prop.put("peeraddress", yacyCore.seedDB.mySeed.getAddress()); + prop.put("peeraddress", yacyCore.seedDB.mySeed.getAddress()); prop.put("hostname", serverCore.publicIP()); - try{ - prop.put("hostip", InetAddress.getByName(serverCore.publicIP()).getHostAddress()); - }catch(UnknownHostException e){ - prop.put("hostip", "Unknown Host Exception"); - } - prop.put("port", env.getConfig("port", "8080")); + try{ + prop.put("hostip", InetAddress.getByName(serverCore.publicIP()).getHostAddress()); + }catch(UnknownHostException e){ + prop.put("hostip", "Unknown Host Exception"); + } + prop.put("port", env.getConfig("port", "8080")); prop.put("clientip", header.get("CLIENTIP", "")); - - String peertype = (yacyCore.seedDB.mySeed == null) ? serverSwitch.PEERTYPE_JUNIOR : yacyCore.seedDB.mySeed.get(serverSwitch.PEERTYPE, serverSwitch.PEERTYPE_VIRGIN); - boolean senior = (peertype.equals(serverSwitch.PEERTYPE_SENIOR)) || (peertype.equals(serverSwitch.PEERTYPE_PRINCIPAL)); - if (senior) prop.put("couldcan", "can"); else prop.put("couldcan", "could"); - if (senior) prop.put("seniorinfo", "This peer runs in senior mode which means that your peer can be accessed using the addresses shown above."); else prop.put("seniorinfo", "Nobody can access your peer from the outside of your intranet. You must open your firewall and/or set a 'virtual server' in the settings of your router to enable access to the addresses as shown below."); - prop.put("wwwpath", "/" + env.getConfig("htDocsPath", "DATA/HTDOCS")); - // return rewrite properties - return prop; + final String peertype = (yacyCore.seedDB.mySeed == null) ? serverSwitch.PEERTYPE_JUNIOR : yacyCore.seedDB.mySeed.get(serverSwitch.PEERTYPE, serverSwitch.PEERTYPE_VIRGIN); + final boolean senior = (peertype.equals(serverSwitch.PEERTYPE_SENIOR)) || (peertype.equals(serverSwitch.PEERTYPE_PRINCIPAL)); + if (senior) { prop.put("couldcan", "can"); } else { prop.put("couldcan", "could"); } + if (senior) { prop.put("seniorinfo", "This peer runs in senior mode which means that your peer can be accessed using the addresses shown above."); } else { prop.put("seniorinfo", "Nobody can access your peer from the outside of your intranet. You must open your firewall and/or set a 'virtual server' in the settings of your router to enable access to the addresses as shown below."); } + prop.put("wwwpath", "/" + env.getConfig("htDocsPath", "DATA/HTDOCS")); + + // return rewrite properties + return prop; } }