Author: cyberdo
Date: 2006-03-07 17:49:24 +0000 (Tue, 07 Mar 2006)
New Revision: 8179
Modified:
trunk/plugins/Librarian/Librarian.java
Log:
Maybe fixed the java.util.ConcurrentModificationException-bug
fixed absolute urls in the index
Modified: trunk/plugins/Librarian/Librarian.java
===================================================================
--- trunk/plugins/Librarian/Librarian.java 2006-03-07 15:09:53 UTC (rev
8178)
+++ trunk/plugins/Librarian/Librarian.java 2006-03-07 17:49:24 UTC (rev
8179)
@@ -180,7 +180,7 @@
String searchWords[] = search.split(" ");
HashSet hs = new HashSet();
- { // add all for the first word
+ synchronized (hs) { // add all for the first word
HashSet keyuris =
(HashSet)index.get(searchWords[0].toLowerCase().trim());
if (keyuris != null) {
Iterator it = keyuris.iterator();
@@ -188,16 +188,17 @@
hs.add(it.next());
}
}
- for (int i = 0 ; i < searchWords.length ; i++) {
- HashSet keyuris =
(HashSet)index.get(searchWords[i].toLowerCase().trim());
- Iterator it = hs.iterator();
- while (it.hasNext()) {
- Object o = it.next();
- if (!keyuris.contains(o))
- hs.remove(o);
+ synchronized (hs) {
+ for (int i = 0 ; i < searchWords.length ; i++) {
+ HashSet keyuris =
(HashSet)index.get(searchWords[i].toLowerCase().trim());
+ Iterator it = hs.iterator();
+ while (it.hasNext()) {
+ Object o = it.next();
+ if (!keyuris.contains(o))
+ hs.remove(o);
+ }
}
}
-
// Output results
int results = 0;
@@ -211,7 +212,7 @@
showurl = showurl.substring(0,10) +
"..." +
showurl.substring(showurl.length()-45);
out.append("<table width=\"100%\"
border=1><tr><td align=center bgcolor=\"#D0D0D0\">\n");
- out.append(" <A HREF=\"/" + o.URI + "\"
title=\""+o.URI+"\">" + showurl + "</A>\n");
+ out.append(" <A HREF=\"" +
(o.URI.startsWith("/")?"":"/") + o.URI + "\" title=\""+o.URI+"\">" + showurl +
"</A>\n");
out.append("</td></tr><tr><td align=left>\n");
out.append("<pre>" + o.descr + "</pre>\n");
out.append("</td></tr></table>\n");