summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authororbiter <orbiter@6c8d7289-2bf4-0310-a012-ef5d649a1542>2009-03-02 11:04:13 +0000
committerorbiter <orbiter@6c8d7289-2bf4-0310-a012-ef5d649a1542>2009-03-02 11:04:13 +0000
commitaa44d9bad980cedd7ba417c4f4f3fca415119b2f (patch)
tree08e266110890680e1aa96866568db93712d44889
parent6ffc6e338984c3d8808320277580835dac1e27f1 (diff)
more refactoring of kelondro.text / deleted de.anomic.index
git-svn-id: https://svn.berlios.de/svnroot/repos/yacy/trunk@5664 6c8d7289-2bf4-0310-a012-ef5d649a1542
-rw-r--r--defaults/yacy.init2
-rw-r--r--htroot/BlacklistCleaner_p.java14
-rw-r--r--htroot/BlacklistTest_p.java14
-rw-r--r--htroot/Blacklist_p.java18
-rw-r--r--htroot/Bookmarks.java19
-rw-r--r--htroot/CrawlResults.java17
-rwxr-xr-xhtroot/IndexCleaner_p.java4
-rw-r--r--htroot/IndexControlRWIs_p.java22
-rw-r--r--htroot/IndexControlURLs_p.java41
-rw-r--r--htroot/Supporter.java4
-rw-r--r--htroot/Surftips.java4
-rw-r--r--htroot/ViewFile.java17
-rw-r--r--htroot/api/blacklists_p.java4
-rw-r--r--htroot/api/yacydoc.java21
-rw-r--r--htroot/sharedBlacklist_p.java4
-rw-r--r--htroot/yacy/crawlReceipt.java13
-rw-r--r--htroot/yacy/transferRWI.java4
-rw-r--r--htroot/yacy/transferURL.java23
-rw-r--r--htroot/yacy/urls.java17
-rw-r--r--htroot/yacysearch.java13
-rw-r--r--source/de/anomic/crawler/CrawlQueues.java4
-rw-r--r--source/de/anomic/crawler/CrawlStacker.java8
-rw-r--r--source/de/anomic/crawler/FTPLoader.java14
-rw-r--r--source/de/anomic/crawler/HTTPLoader.java16
-rw-r--r--source/de/anomic/crawler/IndexingStack.java6
-rw-r--r--source/de/anomic/crawler/LoaderMessage.java10
-rw-r--r--source/de/anomic/crawler/ProtocolLoader.java6
-rw-r--r--source/de/anomic/crawler/ResultURLs.java8
-rw-r--r--source/de/anomic/data/SitemapParser.java4
-rw-r--r--source/de/anomic/data/listManager.java6
-rwxr-xr-xsource/de/anomic/http/httpdProxyCacheEntry.java4
-rw-r--r--source/de/anomic/http/httpdProxyHandler.java14
-rw-r--r--source/de/anomic/icap/icapd.java4
-rwxr-xr-xsource/de/anomic/index/indexDocumentCache.java98
-rw-r--r--source/de/anomic/kelondro/text/AbstractBlacklist.java (renamed from source/de/anomic/index/indexAbstractReferenceBlacklist.java)24
-rw-r--r--source/de/anomic/kelondro/text/Blacklist.java (renamed from source/de/anomic/index/indexReferenceBlacklist.java)4
-rw-r--r--source/de/anomic/kelondro/text/DefaultBlacklist.java (renamed from source/de/anomic/index/indexDefaultReferenceBlacklist.java)13
-rw-r--r--[-rwxr-xr-x]source/de/anomic/kelondro/text/Document.java (renamed from source/de/anomic/index/indexDocumentMetadata.java)4
-rw-r--r--source/de/anomic/kelondro/text/IndexCache.java5
-rw-r--r--source/de/anomic/kelondro/text/IndexCell.java17
-rw-r--r--source/de/anomic/kelondro/text/IndexCollection.java (renamed from source/de/anomic/index/indexCollectionRI.java)14
-rw-r--r--source/de/anomic/kelondro/text/MetadataRepository.java (renamed from source/de/anomic/index/URLMetadataRepository.java)85
-rw-r--r--source/de/anomic/kelondro/text/MetadataRowContainer.java (renamed from source/de/anomic/index/URLMetadata.java)67
-rw-r--r--source/de/anomic/kelondro/text/ReferenceContainerArray.java (renamed from source/de/anomic/index/indexContainerBLOBArray.java)7
-rw-r--r--[-rwxr-xr-x]source/de/anomic/kelondro/text/ReferenceContainerCache.java (renamed from source/de/anomic/index/indexContainerCache.java)9
-rw-r--r--source/de/anomic/kelondro/text/ReferenceContainerOrder.java (renamed from source/de/anomic/index/indexContainerOrder.java)13
-rw-r--r--source/de/anomic/kelondro/text/URLMetadata.java35
-rw-r--r--source/de/anomic/plasma/plasmaDbImporter.java4
-rw-r--r--source/de/anomic/plasma/plasmaHTCache.java4
-rw-r--r--source/de/anomic/plasma/plasmaRankingCRProcess.java12
-rw-r--r--source/de/anomic/plasma/plasmaSearchAPI.java12
-rw-r--r--source/de/anomic/plasma/plasmaSearchEvent.java39
-rw-r--r--source/de/anomic/plasma/plasmaSearchRankingProcess.java11
-rw-r--r--source/de/anomic/plasma/plasmaSnippetCache.java12
-rw-r--r--source/de/anomic/plasma/plasmaSwitchboard.java69
-rw-r--r--source/de/anomic/plasma/plasmaSwitchboardConstants.java6
-rw-r--r--source/de/anomic/plasma/plasmaWordIndex.java44
-rwxr-xr-xsource/de/anomic/yacy/dht/Dispatcher.java4
-rw-r--r--source/de/anomic/yacy/dht/Transmission.java20
-rw-r--r--source/de/anomic/yacy/yacyClient.java37
-rw-r--r--source/de/anomic/yacy/yacyNewsPool.java6
-rw-r--r--source/de/anomic/yacy/yacySearch.java10
-rw-r--r--source/de/anomic/ymage/ymageOSM.java4
-rw-r--r--source/yacy.java12
64 files changed, 496 insertions, 584 deletions
diff --git a/defaults/yacy.init b/defaults/yacy.init
index 0e1c9aba9..e4b5b9634 100644
--- a/defaults/yacy.init
+++ b/defaults/yacy.init
@@ -302,7 +302,7 @@ proxyYellowList=yacy.yellow
# the black-list; URLs appearing in this list will not be loaded;
# instead always a 404 is returned
# all these files will be placed in the listsPath
-BlackLists.class=de.anomic.index.indexDefaultReferenceBlacklist
+BlackLists.class=de.anomic.kelondro.text.DefaultBlacklist
BlackLists.Shared=url.default.black
BlackLists.DefaultList=url.default.black
diff --git a/htroot/BlacklistCleaner_p.java b/htroot/BlacklistCleaner_p.java
index 77987b6ef..5a77ce62d 100644
--- a/htroot/BlacklistCleaner_p.java
+++ b/htroot/BlacklistCleaner_p.java
@@ -47,9 +47,9 @@ import java.util.regex.PatternSyntaxException;
import de.anomic.data.listManager;
import de.anomic.http.httpRequestHeader;
-import de.anomic.index.indexAbstractReferenceBlacklist;
-import de.anomic.index.indexDefaultReferenceBlacklist;
-import de.anomic.index.indexReferenceBlacklist;
+import de.anomic.kelondro.text.Blacklist;
+import de.anomic.kelondro.text.AbstractBlacklist;
+import de.anomic.kelondro.text.DefaultBlacklist;
import de.anomic.kelondro.util.Log;
import de.anomic.plasma.plasmaSwitchboard;
import de.anomic.server.serverObjects;
@@ -72,7 +72,7 @@ public class BlacklistCleaner_p {
private final static String BLACKLIST_FILENAME_FILTER = "^.*\\.black$";
public static final Class<?>[] supportedBLEngines = {
- indexDefaultReferenceBlacklist.class
+ DefaultBlacklist.class
};
public static serverObjects respond(final httpRequestHeader header, final serverObjects post, final serverSwitch<?> env) {
@@ -84,7 +84,7 @@ public class BlacklistCleaner_p {
String blacklistToUse = null;
// getting the list of supported blacklist types
- final String supportedBlacklistTypesStr = indexAbstractReferenceBlacklist.BLACKLIST_TYPES_STRING;
+ final String supportedBlacklistTypesStr = AbstractBlacklist.BLACKLIST_TYPES_STRING;
final String[] supportedBlacklistTypes = supportedBlacklistTypesStr.split(",");
if (post == null) {
@@ -192,7 +192,7 @@ public class BlacklistCleaner_p {
return r.toArray(new String[r.size()]);
}
- private static HashMap<String, Integer>/* entry, error-code */ getIllegalEntries(final String blacklistToUse, final String[] supportedBlacklistTypes, final indexReferenceBlacklist blEngine) {
+ private static HashMap<String, Integer>/* entry, error-code */ getIllegalEntries(final String blacklistToUse, final String[] supportedBlacklistTypes, final Blacklist blEngine) {
final HashMap<String, Integer> r = new HashMap<String, Integer>();
final HashSet<String> ok = new HashSet<String>();
@@ -200,7 +200,7 @@ public class BlacklistCleaner_p {
final Iterator<String> it = list.iterator();
String s, host, path;
- if (blEngine instanceof indexDefaultReferenceBlacklist) {
+ if (blEngine instanceof DefaultBlacklist) {
int slashPos;
while (it.hasNext()) {
s = (it.next()).trim();
diff --git a/htroot/BlacklistTest_p.java b/htroot/BlacklistTest_p.java
index 6d27427b6..22b25ac73 100644
--- a/htroot/BlacklistTest_p.java
+++ b/htroot/BlacklistTest_p.java
@@ -34,7 +34,7 @@ import java.net.MalformedURLException;
import de.anomic.data.listManager;
import de.anomic.http.httpRequestHeader;
-import de.anomic.index.indexReferenceBlacklist;
+import de.anomic.kelondro.text.Blacklist;
import de.anomic.plasma.plasmaSwitchboard;
import de.anomic.server.serverObjects;
import de.anomic.server.serverSwitch;
@@ -62,17 +62,17 @@ public class BlacklistTest_p {
} catch (final MalformedURLException e) { testurl = null; }
if(testurl != null) {
prop.putHTML("testlist_url",testurl.toString());
- if(plasmaSwitchboard.urlBlacklist.isListed(indexReferenceBlacklist.BLACKLIST_CRAWLER, testurl))
+ if(plasmaSwitchboard.urlBlacklist.isListed(Blacklist.BLACKLIST_CRAWLER, testurl))
prop.put("testlist_listedincrawler", "1");
- if(plasmaSwitchboard.urlBlacklist.isListed(indexReferenceBlacklist.BLACKLIST_DHT, testurl))
+ if(plasmaSwitchboard.urlBlacklist.isListed(Blacklist.BLACKLIST_DHT, testurl))
prop.put("testlist_listedindht", "1");
- if(plasmaSwitchboard.urlBlacklist.isListed(indexReferenceBlacklist.BLACKLIST_NEWS, testurl))
+ if(plasmaSwitchboard.urlBlacklist.isListed(Blacklist.BLACKLIST_NEWS, testurl))
prop.put("testlist_listedinnews", "1");
- if(plasmaSwitchboard.urlBlacklist.isListed(indexReferenceBlacklist.BLACKLIST_PROXY, testurl))
+ if(plasmaSwitchboard.urlBlacklist.isListed(Blacklist.BLACKLIST_PROXY, testurl))
prop.put("testlist_listedinproxy", "1");
- if(plasmaSwitchboard.urlBlacklist.isListed(indexReferenceBlacklist.BLACKLIST_SEARCH, testurl))
+ if(plasmaSwitchboard.urlBlacklist.isListed(Blacklist.BLACKLIST_SEARCH, testurl))
prop.put("testlist_listedinsearch", "1");
- if(plasmaSwitchboard.urlBlacklist.isListed(indexReferenceBlacklist.BLACKLIST_SURFTIPS, testurl))
+ if(plasmaSwitchboard.urlBlacklist.isListed(Blacklist.BLACKLIST_SURFTIPS, testurl))
prop.put("testlist_listedinsurftips", "1");
}
else prop.put("testlist_url","not valid");
diff --git a/htroot/Blacklist_p.java b/htroot/Blacklist_p.java
index afb7a597f..4f75fe610 100644
--- a/htroot/Blacklist_p.java
+++ b/htroot/Blacklist_p.java
@@ -40,8 +40,8 @@ import java.util.List;
import de.anomic.data.listManager;
import de.anomic.http.httpRequestHeader;
-import de.anomic.index.indexAbstractReferenceBlacklist;
-import de.anomic.index.indexReferenceBlacklist;
+import de.anomic.kelondro.text.Blacklist;
+import de.anomic.kelondro.text.AbstractBlacklist;
import de.anomic.kelondro.util.Log;
import de.anomic.plasma.plasmaSwitchboard;
import de.anomic.server.serverObjects;
@@ -64,7 +64,7 @@ public class Blacklist_p {
listManager.listsPath = new File(listManager.switchboard.getRootPath(),listManager.switchboard.getConfig("listManager.listsPath", "DATA/LISTS"));
// getting the list of supported blacklist types
- final String supportedBlacklistTypesStr = indexAbstractReferenceBlacklist.BLACKLIST_TYPES_STRING;
+ final String supportedBlacklistTypesStr = AbstractBlacklist.BLACKLIST_TYPES_STRING;
final String[] supportedBlacklistTypes = supportedBlacklistTypesStr.split(",");
// loading all blacklist files located in the directory
@@ -89,17 +89,17 @@ public class Blacklist_p {
} catch (final MalformedURLException e) { testurl = null; }
if(testurl != null) {
prop.putHTML("testlist_url",testurl.toString());
- if(plasmaSwitchboard.urlBlacklist.isListed(indexReferenceBlacklist.BLACKLIST_CRAWLER, testurl))
+ if(plasmaSwitchboard.urlBlacklist.isListed(Blacklist.BLACKLIST_CRAWLER, testurl))
prop.put("testlist_listedincrawler", "1");
- if(plasmaSwitchboard.urlBlacklist.isListed(indexReferenceBlacklist.BLACKLIST_DHT, testurl))
+ if(plasmaSwitchboard.urlBlacklist.isListed(Blacklist.BLACKLIST_DHT, testurl))
prop.put("testlist_listedindht", "1");
- if(plasmaSwitchboard.urlBlacklist.isListed(indexReferenceBlacklist.BLACKLIST_NEWS, testurl))
+ if(plasmaSwitchboard.urlBlacklist.isListed(Blacklist.BLACKLIST_NEWS, testurl))
prop.put("testlist_listedinnews", "1");
- if(plasmaSwitchboard.urlBlacklist.isListed(indexReferenceBlacklist.BLACKLIST_PROXY, testurl))
+ if(plasmaSwitchboard.urlBlacklist.isListed(Blacklist.BLACKLIST_PROXY, testurl))
prop.put("testlist_listedinproxy", "1");
- if(plasmaSwitchboard.urlBlacklist.isListed(indexReferenceBlacklist.BLACKLIST_SEARCH, testurl))
+ if(plasmaSwitchboard.urlBlacklist.isListed(Blacklist.BLACKLIST_SEARCH, testurl))
prop.put("testlist_listedinsearch", "1");
- if(plasmaSwitchboard.urlBlacklist.isListed(indexReferenceBlacklist.BLACKLIST_SURFTIPS, testurl))
+ if(plasmaSwitchboard.urlBlacklist.isListed(Blacklist.BLACKLIST_SURFTIPS, testurl))
prop.put("testlist_listedinsurftips", "1");
}
else prop.put("testlist_url","not valid");
diff --git a/htroot/Bookmarks.java b/htroot/Bookmarks.java
index 7ce2c0f85..9acbe4dfa 100644
--- a/htroot/Bookmarks.java
+++ b/htroot/Bookmarks.java
@@ -41,8 +41,9 @@ import de.anomic.data.listManager;
import de.anomic.data.userDB;
import de.anomic.data.bookmarksDB.Tag;
import de.anomic.http.httpRequestHeader;
-import de.anomic.index.URLMetadata;
import de.anomic.kelondro.order.DateFormatter;
+import de.anomic.kelondro.text.MetadataRowContainer;
+import de.anomic.kelondro.text.URLMetadata;
import de.anomic.kelondro.util.Log;
import de.anomic.plasma.plasmaParserDocument;
import de.anomic.plasma.plasmaSnippetCache;
@@ -183,17 +184,17 @@ public class Bookmarks {
final bookmarksDB.Bookmark bookmark = sb.bookmarksDB.getBookmark(urlHash);
if (bookmark == null) {
// try to get the bookmark from the LURL database
- final URLMetadata urlentry = sb.webIndex.getURL(urlHash, null, 0);
+ final MetadataRowContainer urlentry = sb.webIndex.getURL(urlHash, null, 0);
plasmaParserDocument document = null;
if (urlentry != null) {
- final URLMetadata.Components comp = urlentry.comp();
- document = plasmaSnippetCache.retrieveDocument(comp.url(), true, 5000, true, false);
+ final URLMetadata metadata = urlentry.metadata();
+ document = plasmaSnippetCache.retrieveDocument(metadata.url(), true, 5000, true, false);
prop.put("mode_edit", "0"); // create mode
- prop.put("mode_url", comp.url().toNormalform(false, true));
- prop.putHTML("mode_title", comp.dc_title());
- prop.putHTML("mode_description", (document == null) ? comp.dc_title(): document.dc_title());
- prop.putHTML("mode_author", comp.dc_creator());
- prop.putHTML("mode_tags", (document == null) ? comp.dc_subject() : document.dc_subject(','));
+ prop.put("mode_url", metadata.url().toNormalform(false, true));
+ prop.putHTML("mode_title", metadata.dc_title());
+ prop.putHTML("mode_description", (document == null) ? metadata.dc_title(): document.dc_title());
+ prop.putHTML("mode_author", metadata.dc_creator());
+ prop.putHTML("mode_tags", (document == null) ? metadata.dc_subject() : document.dc_subject(','));
prop.putHTML("mode_path","");
prop.put("mode_public", "0");
prop.put("mode_feed", "0"); //TODO: check if it IS a feed
diff --git a/htroot/CrawlResults.java b/htroot/CrawlResults.java
index 9db060795..0e1a9e58c 100644
--- a/htroot/CrawlResults.java
+++ b/htroot/CrawlResults.java
@@ -31,7 +31,8 @@ import java.util.Iterator;
import java.util.Locale;
import de.anomic.http.httpRequestHeader;
-import de.anomic.index.URLMetadata;
+import de.anomic.kelondro.text.MetadataRowContainer;
+import de.anomic.kelondro.text.URLMetadata;
import de.anomic.kelondro.util.Log;
import de.anomic.plasma.plasmaSwitchboard;
import de.anomic.server.serverObjects;
@@ -169,8 +170,8 @@ public class CrawlResults {
String urlHash, initiatorHash, executorHash;
String urlstr, urltxt;
yacySeed initiatorSeed, executorSeed;
- URLMetadata urle;
- URLMetadata.Components comp;
+ MetadataRowContainer urle;
+ URLMetadata metadata;
int i, cnt = 0;
for (i = sb.crawlResults.getStackSize(tabletype) - 1; i >= (sb.crawlResults.getStackSize(tabletype) - lines); i--) {
@@ -183,10 +184,10 @@ public class CrawlResults {
Log.logWarning("PLASMA", "CrawlResults: URL not in index for crawl result "+ i +" with hash "+ urlHash);
urlstr = null;
urltxt = null;
- comp = null;
+ metadata = null;
} else {
- comp = urle.comp();
- urlstr = comp.url().toNormalform(false, true);
+ metadata = urle.metadata();
+ urlstr = metadata.url().toNormalform(false, true);
urltxt = nxTools.shortenURLString(urlstr, 72); // shorten the string text like a URL
}
initiatorSeed = sb.webIndex.seedDB.getConnected(initiatorHash);
@@ -225,11 +226,11 @@ public class CrawlResults {
prop.put("table_indexed_" + cnt + "_showTitle", (showTitle) ? "1" : "0");
prop.put("table_indexed_" + cnt + "_showTitle_available", "1");
- if (comp == null || comp.dc_title() == null || comp.dc_title().trim().length() == 0)
+ if (metadata == null || metadata.dc_title() == null || metadata.dc_title().trim().length() == 0)
prop.put("table_indexed_" + cnt + "_showTitle_available_nodescr", "0");
else {
prop.put("table_indexed_" + cnt + "_showTitle_available_nodescr", "1");
- prop.putHTML("table_indexed_" + cnt + "_showTitle_available_nodescr_urldescr", comp.dc_title());
+ prop.putHTML("table_indexed_" + cnt + "_showTitle_available_nodescr_urldescr", metadata.dc_title());
}
prop.put("table_indexed_" + cnt + "_showTitle_available_urlHash", urlHash);
diff --git a/htroot/IndexCleaner_p.java b/htroot/IndexCleaner_p.java
index e5d0512de..63808cd1f 100755
--- a/htroot/IndexCleaner_p.java
+++ b/htroot/IndexCleaner_p.java
@@ -25,14 +25,14 @@
//Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
import de.anomic.http.httpRequestHeader;
-import de.anomic.index.URLMetadataRepository;
+import de.anomic.kelondro.text.MetadataRepository;
import de.anomic.plasma.plasmaSwitchboard;
import de.anomic.plasma.plasmaWordIndex;
import de.anomic.server.serverObjects;
import de.anomic.server.serverSwitch;
public class IndexCleaner_p {
- private static URLMetadataRepository.BlacklistCleaner urldbCleanerThread = null;
+ private static MetadataRepository.BlacklistCleaner urldbCleanerThread = null;
private static plasmaWordIndex.ReferenceCleaner indexCleanerThread = null;
public static serverObjects respond(final httpRequestHeader header, final serverObjects post, final serverSwitch<?> env) {
diff --git a/htroot/IndexControlRWIs_p.java b/htroot/IndexControlRWIs_p.java
index 989b6b8ff..22a3d086b 100644
--- a/htroot/IndexControlRWIs_p.java
+++ b/htroot/IndexControlRWIs_p.java
@@ -36,14 +36,14 @@ import java.util.Set;
import de.anomic.data.listManager;
import de.anomic.http.httpRequestHeader;
-import de.anomic.index.indexAbstractReferenceBlacklist;
-import de.anomic.index.indexContainerCache;
-import de.anomic.index.URLMetadata;
import de.anomic.kelondro.order.Bitfield;
+import de.anomic.kelondro.text.MetadataRowContainer;
import de.anomic.kelondro.text.Reference;
import de.anomic.kelondro.text.ReferenceContainer;
+import de.anomic.kelondro.text.ReferenceContainerCache;
import de.anomic.kelondro.text.ReferenceRow;
import de.anomic.kelondro.text.Word;
+import de.anomic.kelondro.text.AbstractBlacklist;
import de.anomic.plasma.plasmaSearchAPI;
import de.anomic.plasma.plasmaSearchEvent;
import de.anomic.plasma.plasmaSearchRankingProcess;
@@ -203,10 +203,10 @@ public class IndexControlRWIs_p {
index = sb.webIndex.getReferences(keyhash, null);
// built urlCache
final Iterator<ReferenceRow> urlIter = index.entries();
- final HashMap<String, URLMetadata> knownURLs = new HashMap<String, URLMetadata>();
+ final HashMap<String, MetadataRowContainer> knownURLs = new HashMap<String, MetadataRowContainer>();
final HashSet<String> unknownURLEntries = new HashSet<String>();
Reference iEntry;
- URLMetadata lurl;
+ MetadataRowContainer lurl;
while (urlIter.hasNext()) {
iEntry = urlIter.next();
lurl = sb.webIndex.getURL(iEntry.urlHash(), null, 0);
@@ -219,7 +219,7 @@ public class IndexControlRWIs_p {
}
// make an indexContainerCache
- indexContainerCache icc = new indexContainerCache(index.rowdef);
+ ReferenceContainerCache icc = new ReferenceContainerCache(index.rowdef);
icc.addReferences(index);
// transport to other peer
@@ -269,10 +269,10 @@ public class IndexControlRWIs_p {
yacyURL url;
for (int i=0; i<urlx.length; i++) {
urlHashes.add(urlx[i]);
- final URLMetadata e = sb.webIndex.getURL(urlx[i], null, 0);
+ final MetadataRowContainer e = sb.webIndex.getURL(urlx[i], null, 0);
sb.webIndex.removeURL(urlx[i]);
if (e != null) {
- url = e.comp().url();
+ url = e.metadata().url();
pw.println(url.getHost() + "/" + url.getFile());
for (int blTypes=0; blTypes < supportedBlacklistTypes.length; blTypes++) {
if (listManager.listSetContains(supportedBlacklistTypes[blTypes] + ".BlackLists", blacklist)) {
@@ -292,15 +292,15 @@ public class IndexControlRWIs_p {
if (post.containsKey("blacklistdomains")) {
PrintWriter pw;
try {
- final String[] supportedBlacklistTypes = indexAbstractReferenceBlacklist.BLACKLIST_TYPES_STRING.split(",");
+ final String[] supportedBlacklistTypes = AbstractBlacklist.BLACKLIST_TYPES_STRING.split(",");
pw = new PrintWriter(new FileWriter(new File(listManager.listsPath, blacklist), true));
yacyURL url;
for (int i=0; i<urlx.length; i++) {
urlHashes.add(urlx[i]);
- final URLMetadata e = sb.webIndex.getURL(urlx[i], null, 0);
+ final MetadataRowContainer e = sb.webIndex.getURL(urlx[i], null, 0);
sb.webIndex.removeURL(urlx[i]);
if (e != null) {
- url = e.comp().url();
+ url = e.metadata().url();
pw.println(url.getHost() + "/.*");
for (int blTypes=0; blTypes < supportedBlacklistTypes.length; blTypes++) {
if (listManager.listSetContains(supportedBlacklistTypes[blTypes] + ".BlackLists", blacklist)) {
diff --git a/htroot/IndexControlURLs_p.java b/htroot/IndexControlURLs_p.java
index 019c917eb..917d7d51a 100644
--- a/htroot/IndexControlURLs_p.java
+++ b/htroot/IndexControlURLs_p.java
@@ -31,11 +31,12 @@ import java.net.MalformedURLException;
import java.util.Iterator;
import de.anomic.http.httpRequestHeader;
-import de.anomic.index.URLMetadataRepository;
-import de.anomic.index.URLMetadata;
import de.anomic.kelondro.order.Base64Order;
import de.anomic.kelondro.order.DateFormatter;
import de.anomic.kelondro.order.RotateIterator;
+import de.anomic.kelondro.text.MetadataRowContainer;
+import de.anomic.kelondro.text.URLMetadata;
+import de.anomic.kelondro.text.MetadataRepository;
import de.anomic.plasma.plasmaSwitchboard;
import de.anomic.server.serverObjects;
import de.anomic.server.serverSwitch;
@@ -61,7 +62,7 @@ public class IndexControlURLs_p {
prop.put("reload", 0);
// show export messages
- final URLMetadataRepository.Export export = sb.webIndex.exportURL();
+ final MetadataRepository.Export export = sb.webIndex.exportURL();
if ((export != null) && (export.isAlive())) {
// there is currently a running export
prop.put("lurlexport", 2);
@@ -115,11 +116,11 @@ public class IndexControlURLs_p {
}
if (post.containsKey("urlhashdelete")) {
- final URLMetadata entry = sb.webIndex.getURL(urlhash, null, 0);
+ final MetadataRowContainer entry = sb.webIndex.getURL(urlhash, null, 0);
if (entry == null) {
prop.putHTML("result", "No Entry for URL hash " + urlhash + "; nothing deleted.");
} else {
- urlstring = entry.comp().url().toNormalform(false, true);
+ urlstring = entry.metadata().url().toNormalform(false, true);
prop.put("urlstring", "");
sb.urlRemove(urlhash);
prop.putHTML("result", "Removed URL " + urlstring);
@@ -149,7 +150,7 @@ public class IndexControlURLs_p {
final yacyURL url = new yacyURL(urlstring, null);
urlhash = url.hash();
prop.put("urlhash", urlhash);
- final URLMetadata entry = sb.webIndex.getURL(urlhash, null, 0);
+ final MetadataRowContainer entry = sb.webIndex.getURL(urlhash, null, 0);
if (entry == null) {
prop.putHTML("urlstring", "unknown url: " + urlstring);
prop.put("urlhash", "");
@@ -166,11 +167,11 @@ public class IndexControlURLs_p {
}
if (post.containsKey("urlhashsearch")) {
- final URLMetadata entry = sb.webIndex.getURL(urlhash, null, 0);
+ final MetadataRowContainer entry = sb.webIndex.getURL(urlhash, null, 0);
if (entry == null) {
prop.putHTML("result", "No Entry for URL hash " + urlhash);
} else {
- prop.putHTML("urlstring", entry.comp().url().toNormalform(false, true));
+ prop.putHTML("urlstring", entry.metadata().url().toNormalform(false, true));
prop.putAll(genUrlProfile(sb, entry, urlhash));
prop.put("statistics", 0);
}
@@ -181,9 +182,9 @@ public class IndexControlURLs_p {
// generate list
if (post.containsKey("urlhashsimilar")) {
try {
- final Iterator<URLMetadata> entryIt = new RotateIterator<URLMetadata>(sb.webIndex.entriesURL(true, urlhash), new String(Base64Order.zero((urlhash == null ? 0 : urlhash.length()))), sb.webIndex.size());
+ final Iterator<MetadataRowContainer> entryIt = new RotateIterator<MetadataRowContainer>(sb.webIndex.entriesURL(true, urlhash), new String(Base64Order.zero((urlhash == null ? 0 : urlhash.length()))), sb.webIndex.size());
final StringBuilder result = new StringBuilder("Sequential List of URL-Hashes:<br />");
- URLMetadata entry;
+ MetadataRowContainer entry;
int i = 0;
int rows = 0, cols = 0;
prop.put("urlhashsimilar", "1");
@@ -228,7 +229,7 @@ public class IndexControlURLs_p {
final File f = new File(s);
f.getParentFile().mkdirs();
final String filter = post.get("exportfilter", ".*");
- final URLMetadataRepository.Export running = sb.webIndex.exportURL(f, filter, format, dom);
+ final MetadataRepository.Export running = sb.webIndex.exportURL(f, filter, format, dom);
prop.put("lurlexport_exportfile", s);
prop.put("lurlexport_urlcount", running.count());
@@ -253,13 +254,13 @@ public class IndexControlURLs_p {
if (post.containsKey("statistics")) {
int count = post.getInt("lines", 100);
- Iterator<URLMetadataRepository.hostStat> statsiter;
+ Iterator<MetadataRepository.hostStat> statsiter;
prop.put("statistics_lines", count);
int cnt = 0;
try {
statsiter = sb.webIndex.statistics(count);
boolean dark = true;
- URLMetadataRepository.hostStat hs;
+ MetadataRepository.hostStat hs;
while (statsiter.hasNext() && cnt < count) {
hs = statsiter.next();
prop.put("statisticslines_domains_" + cnt + "_dark", (dark) ? "1" : "0");
@@ -285,28 +286,28 @@ public class IndexControlURLs_p {
return prop;
}
- private static serverObjects genUrlProfile(final plasmaSwitchboard switchboard, final URLMetadata entry, final String urlhash) {
+ private static serverObjects genUrlProfile(final plasmaSwitchboard switchboard, final MetadataRowContainer entry, final String urlhash) {
final serverObjects prop = new serverObjects();
if (entry == null) {
prop.put("genUrlProfile", "1");
prop.put("genUrlProfile_urlhash", urlhash);
return prop;
}
- final URLMetadata.Components comp = entry.comp();
- final URLMetadata le = ((entry.referrerHash() == null) || (entry.referrerHash().length() != yacySeedDB.commonHashLength)) ? null : switchboard.webIndex.getURL(entry.referrerHash(), null, 0);
- if (comp.url() == null) {
+ final URLMetadata metadata = entry.metadata();
+ final MetadataRowContainer le = ((entry.referrerHash() == null) || (entry.referrerHash().length() != yacySeedDB.commonHashLength)) ? null : switchboard.webIndex.getURL(entry.referrerHash(), null, 0);
+ if (metadata.url() == null) {
prop.put("genUrlProfile", "1");
prop.put("genUrlProfile_urlhash", urlhash);
return prop;
}
prop.put("genUrlProfile", "2");
- prop.putHTML("genUrlProfile_urlNormalform", comp.url().toNormalform(false, true));
+ prop.putHTML("genUrlProfile_urlNormalform", metadata.url().toNormalform(false, true));
prop.put("genUrlProfile_urlhash", urlhash);
- prop.put("genUrlProfile_urlDescr", comp.dc_title());
+ prop.put("genUrlProfile_urlDescr", metadata.dc_title());
prop.put("genUrlProfile_moddate", entry.moddate().toString());
prop.put("genUrlProfile_loaddate", entry.loaddate().toString());
prop.put("genUrlProfile_referrer", (le == null) ? 0 : 1);
- prop.putHTML("genUrlProfile_referrer_url", (le == null) ? "<unknown>" : le.comp().url().toNormalform(false, true));
+ prop.putHTML("genUrlProfile_referrer_url", (le == null) ? "<unknown>" : le.metadata().url().toNormalform(false, true));
prop.put("genUrlProfile_referrer_hash", (le == null) ? "" : le.hash());
prop.put("genUrlProfile_doctype", ""+entry.doctype());
prop.put("genUrlProfile_language", entry.language());
diff --git a/htroot/Supporter.java b/htroot/Supporter.java
index ecb86fac5..2ad55e505 100644
--- a/htroot/Supporter.java
+++ b/htroot/Supporter.java
@@ -32,11 +32,11 @@ import java.util.HashMap;
import java.util.Iterator;
import de.anomic.http.httpRequestHeader;
-import de.anomic.index.indexReferenceBlacklist;
import de.anomic.kelondro.index.Row;
import de.anomic.kelondro.index.Row.Entry;
import de.anomic.kelondro.order.DateFormatter;
import de.anomic.kelondro.order.NaturalOrder;
+import de.anomic.kelondro.text.Blacklist;
import de.anomic.kelondro.util.ScoreCluster;
import de.anomic.plasma.plasmaSwitchboard;
import de.anomic.server.serverObjects;
@@ -125,7 +125,7 @@ public class Supporter {
url = row.getColString(0, null);
try {
- if (plasmaSwitchboard.urlBlacklist.isListed(indexReferenceBlacklist.BLACKLIST_SURFTIPS ,new yacyURL(url, urlhash))) continue;
+ if (plasmaSwitchboard.urlBlacklist.isListed(Blacklist.BLACKLIST_SURFTIPS ,new yacyURL(url, urlhash))) continue;
} catch(final MalformedURLException e) {continue;}
title = row.getColString(1,"UTF-8");
description = row.getColString(2,"UTF-8");
diff --git a/htroot/Surftips.java b/htroot/Surftips.java
index 07c0b67ef..c17716266 100644
--- a/htroot/Surftips.java
+++ b/htroot/Surftips.java
@@ -32,11 +32,11 @@ import java.util.HashMap;
import java.util.Iterator;
import de.anomic.http.httpRequestHeader;
-import de.anomic.index.indexReferenceBlacklist;
import de.anomic.kelondro.index.Row;
import de.anomic.kelondro.index.Row.Entry;
import de.anomic.kelondro.order.DateFormatter;
import de.anomic.kelondro.order.NaturalOrder;
+import de.anomic.kelondro.text.Blacklist;
import de.anomic.kelondro.util.ScoreCluster;
import de.anomic.plasma.plasmaSwitchboard;
import de.anomic.server.serverObjects;
@@ -133,7 +133,7 @@ public class Surftips {
url = row.getColString(0, null);
try{
- if(plasmaSwitchboard.urlBlacklist.isListed(indexReferenceBlacklist.BLACKLIST_SURFTIPS ,new yacyURL(url, null)))
+ if(plasmaSwitchboard.urlBlacklist.isListed(Blacklist.BLACKLIST_SURFTIPS ,new yacyURL(url, null)))
continue;
}catch(final MalformedURLException e){continue;};
title = row.getColString(1,"UTF-8");
diff --git a/htroot/ViewFile.java b/htroot/ViewFile.java
index cc44f091c..d53a3b286 100644
--- a/htroot/ViewFile.java
+++ b/htroot/ViewFile.java
@@ -39,8 +39,9 @@ import de.anomic.htmlFilter.htmlFilterCharacterCoding;
import de.anomic.http.httpClient;
import de.anomic.http.httpRequestHeader;
import de.anomic.http.httpResponseHeader;
-import de.anomic.index.indexDocumentMetadata;
-import de.anomic.index.URLMetadata;
+import de.anomic.kelondro.text.Document;
+import de.anomic.kelondro.text.MetadataRowContainer;
+import de.anomic.kelondro.text.URLMetadata;
import de.anomic.kelondro.util.FileUtils;
import de.anomic.plasma.plasmaCondenser;
import de.anomic.plasma.plasmaHTCache;
@@ -94,7 +95,7 @@ public class ViewFile {
final String urlHash = post.get("urlHash","");
if (urlHash.length() > 0) {
// getting the urlEntry that belongs to the url hash
- URLMetadata urlEntry = null;
+ MetadataRowContainer urlEntry = null;
urlEntry = sb.webIndex.getURL(urlHash, null, 0);
if (urlEntry == null) {
prop.put("error", "2");
@@ -103,14 +104,14 @@ public class ViewFile {
}
// getting the url that belongs to the entry
- final URLMetadata.Components comp = urlEntry.comp();
- if ((comp == null) || (comp.url() == null)) {
+ final URLMetadata metadata = urlEntry.metadata();
+ if ((metadata == null) || (metadata.url() == null)) {
prop.put("error", "3");
prop.put("viewMode", VIEW_MODE_NO_TEXT);
return prop;
}
- url = comp.url();
- descr = comp.dc_title();
+ url = metadata.url();
+ descr = metadata.dc_title();
urlEntry.wordCount();
size = urlEntry.size();
pre = urlEntry.flags().get(plasmaCondenser.flag_cat_indexof);
@@ -157,7 +158,7 @@ public class ViewFile {
// if the resource body was not cached we try to load it from web
if (resource == null) {
- indexDocumentMetadata entry = null;
+ Document entry = null;
try {
entry = sb.crawlQueues.loadResourceFromWeb(url, 5000, false, true, false);
} catch (final Exception e) {
diff --git a/htroot/api/blacklists_p.java b/htroot/api/blacklists_p.java
index fdff09ecd..64f5c8058 100644
--- a/htroot/api/blacklists_p.java
+++ b/htroot/api/blacklists_p.java
@@ -4,7 +4,7 @@ import java.util.List;
import de.anomic.data.listManager;
import de.anomic.http.httpRequestHeader;
-import de.anomic.index.indexAbstractReferenceBlacklist;
+import de.anomic.kelondro.text.AbstractBlacklist;
import de.anomic.server.serverObjects;
import de.anomic.server.serverSwitch;
@@ -34,7 +34,7 @@ public class blacklists_p {
prop.put("lists_" + blacklistCount + "_shared", "0");
}
- final String[] types = indexAbstractReferenceBlacklist.BLACKLIST_TYPES_STRING.split(",");
+ final String[] types = AbstractBlacklist.BLACKLIST_TYPES_STRING.split(",");
for (int j=0; j<types.length; j++) {
prop.putXML("lists_" + blacklistCount + "_types_" + j + "_name", types[j]);
prop.put("lists_" + blacklistCount + "_types_" + j + "_value",
diff --git a/htroot/api/yacydoc.java b/htroot/api/yacydoc.java
index 15605860c..18c94b815 100644
--- a/htroot/api/yacydoc.java
+++ b/htroot/api/yacydoc.java
@@ -28,7 +28,8 @@
import java.net.MalformedURLException;
import de.anomic.http.httpRequestHeader;
-import de.anomic.index.URLMetadata;
+import de.anomic.kelondro.text.MetadataRowContainer;
+import de.anomic.kelondro.text.URLMetadata;
import de.anomic.plasma.plasmaSwitchboard;
import de.anomic.server.serverObjects;
import de.anomic.server.serverSwitch;
@@ -68,20 +69,20 @@ public class yacydoc {
}
if (urlhash == null || urlhash.length() == 0) return prop;
- final URLMetadata entry = sb.webIndex.getURL(urlhash, null, 0);
+ final MetadataRowContainer entry = sb.webIndex.getURL(urlhash, null, 0);
if (entry == null) return prop;
- final URLMetadata.Components comp = entry.comp();
- if (comp.url() == null) {
+ final URLMetadata metadata = entry.metadata();
+ if (metadata.url() == null) {
return prop;
}
- final URLMetadata le = ((entry.referrerHash() == null) || (entry.referrerHash().length() != yacySeedDB.commonHashLength)) ? null : sb.webIndex.getURL(entry.referrerHash(), null, 0);
+ final MetadataRowContainer le = ((entry.referrerHash() == null) || (entry.referrerHash().length() != yacySeedDB.commonHashLength)) ? null : sb.webIndex.getURL(entry.referrerHash(), null, 0);
- prop.putXML("dc_title", comp.dc_title());
- prop.putXML("dc_creator", comp.dc_creator());
+ prop.putXML("dc_title", metadata.dc_title());
+ prop.putXML("dc_creator", metadata.dc_creator());
prop.putXML("dc_description", "");
- prop.putXML("dc_subject", comp.dc_subject());
- prop.putXML("dc_publisher", comp.url().toNormalform(false, true));
+ prop.putXML("dc_subject", metadata.dc_subject());
+ prop.putXML("dc_publisher", metadata.url().toNormalform(false, true));
prop.putXML("dc_contributor", "");
prop.putXML("dc_date", entry.moddate().toString());
prop.putXML("dc_type", "" + entry.doctype());
@@ -90,7 +91,7 @@ public class yacydoc {
prop.putXML("yacy_loaddate", entry.loaddate().toString());
prop.putXML("yacy_referrer_hash", (le == null) ? "" : le.hash());
- prop.putXML("yacy_referrer_url", (le == null) ? "" : le.comp().url().toNormalform(false, true));
+ prop.putXML("yacy_referrer_url", (le == null) ? "" : le.metadata().url().toNormalform(false, true));
prop.put("yacy_size", entry.size());
prop.put("yacy_words",entry.wordCount());
diff --git a/htroot/sharedBlacklist_p.java b/htroot/sharedBlacklist_p.java
index 7c8cf63b2..349b5a7bf 100644
--- a/htroot/sharedBlacklist_p.java
+++ b/htroot/sharedBlacklist_p.java
@@ -42,7 +42,7 @@ import de.anomic.data.listManager;
import de.anomic.htmlFilter.htmlFilterCharacterCoding;
import de.anomic.http.httpClient;
import de.anomic.http.httpRequestHeader;
-import de.anomic.index.indexAbstractReferenceBlacklist;
+import de.anomic.kelondro.text.AbstractBlacklist;
import de.anomic.kelondro.util.FileUtils;
import de.anomic.plasma.plasmaSwitchboard;
import de.anomic.server.serverObjects;
@@ -219,7 +219,7 @@ public class sharedBlacklist_p {
count++;
if (plasmaSwitchboard.urlBlacklist != null) {
- final String supportedBlacklistTypesStr = indexAbstractReferenceBlacklist.BLACKLIST_TYPES_STRING;
+ final String supportedBlacklistTypesStr = AbstractBlacklist.BLACKLIST_TYPES_STRING;
final String[] supportedBlacklistTypes = supportedBlacklistTypesStr.split(",");
for (int blTypes=0; blTypes < supportedBlacklistTypes.length; blTypes++) {
diff --git a/htroot/yacy/crawlReceipt.java b/htroot/yacy/crawlReceipt.java
index e980e3c68..8f218a406 100644
--- a/htroot/yacy/crawlReceipt.java
+++ b/htroot/yacy/crawlReceipt.java
@@ -31,7 +31,8 @@ import java.io.IOException;
import de.anomic.crawler.ZURL;
import de.anomic.http.httpRequestHeader;
-import de.anomic.index.URLMetadata;
+import de.anomic.kelondro.text.MetadataRowContainer;
+import de.anomic.kelondro.text.URLMetadata;
import de.anomic.kelondro.util.Log;
import de.anomic.plasma.plasmaSwitchboard;
import de.anomic.server.serverObjects;
@@ -112,22 +113,22 @@ public final class crawlReceipt {
}
// generating a new loaded URL entry
- final URLMetadata entry = URLMetadata.importEntry(propStr);
+ final MetadataRowContainer entry = MetadataRowContainer.importEntry(propStr);
if (entry == null) {
log.logWarning("crawlReceipt: RECEIVED wrong RECEIPT (entry null) from peer " + iam + "\n\tURL properties: "+ propStr);
prop.put("delay", "3600");
return prop;
}
- final URLMetadata.Components comp = entry.comp();
- if (comp.url() == null) {
+ final URLMetadata metadata = entry.metadata();
+ if (metadata.url() == null) {
log.logWarning("crawlReceipt: RECEIVED wrong RECEIPT (url null) for hash " + entry.hash() + " from peer " + iam + "\n\tURL properties: "+ propStr);
prop.put("delay", "3600");
return prop;
}
// check if the entry is in our network domain
- final String urlRejectReason = sb.crawlStacker.urlInAcceptedDomain(comp.url());
+ final String urlRejectReason = sb.crawlStacker.urlInAcceptedDomain(metadata.url());
if (urlRejectReason != null) {
log.logWarning("crawlReceipt: RECEIVED wrong RECEIPT (" + urlRejectReason + ") for hash " + entry.hash() + " from peer " + iam + "\n\tURL properties: "+ propStr);
prop.put("delay", "9999");
@@ -139,7 +140,7 @@ public final class crawlReceipt {
sb.webIndex.putURL(entry);
sb.crawlResults.stack(entry, youare, iam, 1);
sb.crawlQueues.delegatedURL.remove(entry.hash()); // the delegated work has been done
- log.logInfo("crawlReceipt: RECEIVED RECEIPT from " + otherPeerName + " for URL " + entry.hash() + ":" + comp.url().toNormalform(false, true));
+ log.logInfo("crawlReceipt: RECEIVED RECEIPT from " + otherPeerName + " for URL " + entry.hash() + ":" + metadata.url().toNormalform(false, true));
// ready for more
prop.put("delay", "10");
diff --git a/htroot/yacy/transferRWI.java b/htroot/yacy/transferRWI.java
index 0831c2dfc..9d5d24919 100644
--- a/htroot/yacy/transferRWI.java
+++ b/htroot/yacy/transferRWI.java
@@ -32,8 +32,8 @@ import java.util.Iterator;
import java.util.List;
import de.anomic.http.httpRequestHeader;
-import de.anomic.index.indexReferenceBlacklist;
import de.anomic.kelondro.text.ReferenceRow;
+import de.anomic.kelondro.text.Blacklist;
import de.anomic.kelondro.util.FileUtils;
import de.anomic.kelondro.util.Log;
import de.anomic.plasma.plasmaSwitchboard;
@@ -150,7 +150,7 @@ public final class transferRWI {
urlHash = iEntry.urlHash();
// block blacklisted entries
- if ((blockBlacklist) && (plasmaSwitchboard.urlBlacklist.hashInBlacklistedCache(indexReferenceBlacklist.BLACKLIST_DHT, urlHash))) {
+ if ((blockBlacklist) && (plasmaSwitchboard.urlBlacklist.hashInBlacklistedCache(Blacklist.BLACKLIST_DHT, urlHash))) {
if (yacyCore.log.isFine()) yacyCore.log.logFine("transferRWI: blocked blacklisted URLHash '" + urlHash + "' from peer " + otherPeerName);
blocked++;
continue;
diff --git a/htroot/yacy/transferURL.java b/htroot/yacy/transferURL.java
index d84c42f0f..d5f452b3a 100644
--- a/htroot/yacy/transferURL.java
+++ b/htroot/yacy/transferURL.java
@@ -30,9 +30,10 @@ import java.io.IOException;
import java.text.ParseException;
import de.anomic.http.httpRequestHeader;
-import de.anomic.index.indexReferenceBlacklist;
-import de.anomic.index.URLMetadata;
import de.anomic.kelondro.order.DateFormatter;
+import de.anomic.kelondro.text.MetadataRowContainer;
+import de.anomic.kelondro.text.URLMetadata;
+import de.anomic.kelondro.text.Blacklist;
import de.anomic.plasma.plasmaSwitchboard;
import de.anomic.server.serverCore;
import de.anomic.server.serverObjects;
@@ -84,7 +85,7 @@ public final class transferURL {
final int sizeBefore = sb.webIndex.countURL();
// read the urls from the other properties and store
String urls;
- URLMetadata lEntry;
+ MetadataRowContainer lEntry;
for (int i = 0; i < urlc; i++) {
serverCore.checkInterruption();
@@ -97,7 +98,7 @@ public final class transferURL {
}
// parse new lurl-entry
- lEntry = URLMetadata.importEntry(urls);
+ lEntry = MetadataRowContainer.importEntry(urls);
if (lEntry == null) {
yacyCore.log.logWarning("transferURL: received invalid URL (entry null) from peer " + otherPeerName + "\n\tURL Property: " + urls);
blocked++;
@@ -105,8 +106,8 @@ public final class transferURL {
}
// check if entry is well-formed
- final URLMetadata.Components comp = lEntry.comp();
- if (comp.url() == null) {
+ final URLMetadata metadata = lEntry.metadata();
+ if (metadata.url() == null) {
yacyCore.log.logWarning("transferURL: received invalid URL from peer " + otherPeerName + "\n\tURL Property: " + urls);
blocked++;
continue;
@@ -120,17 +121,17 @@ public final class transferURL {
}
// check if the entry is blacklisted
- if ((blockBlacklist) && (plasmaSwitchboard.urlBlacklist.isListed(indexReferenceBlacklist.BLACKLIST_DHT, comp.url()))) {
- if (yacyCore.log.isFine()) yacyCore.log.logFine("transferURL: blocked blacklisted URL '" + comp.url().toNormalform(false, true) + "' from peer " + otherPeerName);
+ if ((blockBlacklist) && (plasmaSwitchboard.urlBlacklist.isListed(Blacklist.BLACKLIST_DHT, metadata.url()))) {
+ if (yacyCore.log.isFine()) yacyCore.log.logFine("transferURL: blocked blacklisted URL '" + metadata.url().toNormalform(false, true) + "' from peer " + otherPeerName);
lEntry = null;
blocked++;
continue;
}
// check if the entry is in our network domain
- final String urlRejectReason = sb.crawlStacker.urlInAcceptedDomain(comp.url());
+ final String urlRejectReason = sb.crawlStacker.urlInAcceptedDomain(metadata.url());
if (urlRejectReason != null) {
- if (yacyCore.log.isFine()) yacyCore.log.logFine("transferURL: blocked URL '" + comp.url() + "' (" + urlRejectReason + ") from peer " + otherPeerName);
+ if (yacyCore.log.isFine()) yacyCore.log.logFine("transferURL: blocked URL '" + metadata.url() + "' (" + urlRejectReason + ") from peer " + otherPeerName);
lEntry = null;
blocked++;
continue;
@@ -140,7 +141,7 @@ public final class transferURL {
try {
sb.webIndex.putURL(lEntry);
sb.crawlResults.stack(lEntry, iam, iam, 3);
- if (yacyCore.log.isFine()) yacyCore.log.logFine("transferURL: received URL '" + comp.url().toNormalform(false, true) + "' from peer " + otherPeerName);
+ if (yacyCore.log.isFine()) yacyCore.log.logFine("transferURL: received URL '" + metadata.url().toNormalform(false, true) + "' from peer " + otherPeerName);
received++;
} catch (final IOException e) {
e.printStackTrace();
diff --git a/htroot/yacy/urls.java b/htroot/yacy/urls.java
index b9fb243c6..4c6ead6d0 100644
--- a/htroot/yacy/urls.java
+++ b/htroot/yacy/urls.java
@@ -30,8 +30,9 @@ import java.util.Date;
import de.anomic.crawler.CrawlEntry;
import de.anomic.crawler.NoticedURL;
import de.anomic.http.httpRequestHeader;
-import de.anomic.index.URLMetadata;
import de.anomic.kelondro.order.DateFormatter;
+import de.anomic.kelondro.text.MetadataRowContainer;
+import de.anomic.kelondro.text.URLMetadata;
import de.anomic.plasma.plasmaSwitchboard;
import de.anomic.server.serverObjects;
import de.anomic.server.serverSwitch;
@@ -108,8 +109,8 @@ public class urls {
if (urlhashes.length() % 12 != 0) return prop;
final int count = urlhashes.length() / 12;
int c = 0;
- URLMetadata entry;
- URLMetadata.Components comp;
+ MetadataRowContainer entry;
+ URLMetadata metadata;
yacyURL referrer;
for (int i = 0; i < count; i++) {
entry = sb.webIndex.getURL(urlhashes.substring(12 * i, 12 * (i + 1)), null, 0);
@@ -117,12 +118,12 @@ public class urls {
// find referrer, if there is one
referrer = sb.getURL(entry.referrerHash());
// create RSS entry
- comp = entry.comp();
- prop.put("item_" + c + "_title", comp.dc_title());
- prop.putXML("item_" + c + "_link", comp.url().toNormalform(true, false));
+ metadata = entry.metadata();
+ prop.put("item_" + c + "_title", metadata.dc_title());
+ prop.putXML("item_" + c + "_link", metadata.url().toNormalform(true, false));
prop.putXML("item_" + c + "_referrer", (referrer == null) ? "" : referrer.toNormalform(true, false));
- prop.putXML("item_" + c + "_description", comp.dc_title());
- prop.put("item_" + c + "_author", comp.dc_creator());
+ prop.putXML("item_" + c + "_description", metadata.dc_title());
+ prop.put("item_" + c + "_author", metadata.dc_creator());
prop.put("item_" + c + "_pubDate", DateFormatter.formatShortSecond(entry.moddate()));
prop.put("item_" + c + "_guid", entry.hash());
c++;
diff --git a/htroot/yacysearch.java b/htroot/yacysearch.java
index 9534f3812..a0c4d3eb4 100644
--- a/htroot/yacysearch.java
+++ b/htroot/yacysearch.java
@@ -31,8 +31,9 @@ import java.util.HashMap;
import java.util.TreeSet;
import de.anomic.http.httpRequestHeader;
-import de.anomic.index.URLMetadata;
import de.anomic.kelondro.order.Bitfield;
+import de.anomic.kelondro.text.MetadataRowContainer;
+import de.anomic.kelondro.text.URLMetadata;
import de.anomic.kelondro.text.Word;
import de.anomic.kelondro.util.MemoryControl;
import de.anomic.kelondro.util.SetTools;
@@ -321,16 +322,16 @@ public class yacysearch {
return prop;
}
final String recommendHash = post.get("recommendref", ""); // urlhash
- final URLMetadata urlentry = sb.webIndex.getURL(recommendHash, null, 0);
+ final MetadataRowContainer urlentry = sb.webIndex.getURL(recommendHash, null, 0);
if (urlentry != null) {
- final URLMetadata.Components comp = urlentry.comp();
+ final URLMetadata metadata = urlentry.metadata();
plasmaParserDocument document;
- document = plasmaSnippetCache.retrieveDocument(comp.url(), true, 5000, true, false);
+ document = plasmaSnippetCache.retrieveDocument(metadata.url(), true, 5000, true, false);
if (document != null) {
// create a news message
final HashMap<String, String> map = new HashMap<String, String>();
- map.put("url", comp.url().toNormalform(false, true).replace(',', '|'));
- map.put("title", comp.dc_title().replace(',', ' '));
+ map.put("url", metadata.url().toNormalform(false, true).replace(',', '|'));
+ map.put("title", metadata.dc_title().replace(',', ' '));
map.put("description", document.dc_title().replace(',', ' '));
map.put("author", document.dc_creator());
map.put("tags", document.dc_subject(' '));
diff --git a/source/de/anomic/crawler/CrawlQueues.java b/source/de/anomic/crawler/CrawlQueues.java
index 63343cceb..a59fff7e6 100644
--- a/source/de/anomic/crawler/CrawlQueues.java
+++ b/source/de/anomic/crawler/CrawlQueues.java
@@ -36,9 +36,9 @@ import java.util.Iterator;
import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;
-import de.anomic.index.indexDocumentMetadata;
import de.anomic.kelondro.order.DateFormatter;
import de.anomic.kelondro.table.FlexWidthArray;
+import de.anomic.kelondro.text.Document;
import de.anomic.kelondro.util.Log;
import de.anomic.plasma.plasmaParser;
import de.anomic.plasma.plasmaSwitchboard;
@@ -492,7 +492,7 @@ public class CrawlQueues {
return;
}
- public indexDocumentMetadata loadResourceFromWeb(
+ public Document loadResourceFromWeb(
final yacyURL url,
final int socketTimeout,
final boolean keepInMemory,
diff --git a/source/de/anomic/crawler/CrawlStacker.java b/source/de/anomic/crawler/CrawlStacker.java
index 74c9617a0..8c5f1d010 100644
--- a/source/de/anomic/crawler/CrawlStacker.java
+++ b/source/de/anomic/crawler/CrawlStacker.java
@@ -31,8 +31,8 @@ package de.anomic.crawler;
import java.net.UnknownHostException;
import java.util.Date;
-import de.anomic.index.indexReferenceBlacklist;
-import de.anomic.index.URLMetadata;
+import de.anomic.kelondro.text.MetadataRowContainer;
+import de.anomic.kelondro.text.Blacklist;
import de.anomic.kelondro.util.Log;
import de.anomic.plasma.plasmaSwitchboard;
import de.anomic.plasma.plasmaWordIndex;
@@ -182,7 +182,7 @@ public final class CrawlStacker {
}
// check blacklist
- if (plasmaSwitchboard.urlBlacklist.isListed(indexReferenceBlacklist.BLACKLIST_CRAWLER, entry.url())) {
+ if (plasmaSwitchboard.urlBlacklist.isListed(Blacklist.BLACKLIST_CRAWLER, entry.url())) {
reason = "url in blacklist";
if (this.log.isFine()) this.log.logFine("URL '" + entry.url().toString() + "' is in blacklist. " +
"Stack processing time: " + (System.currentTimeMillis()-startTime) + "ms");
@@ -256,7 +256,7 @@ public final class CrawlStacker {
// check if the url is double registered
final String dbocc = nextQueue.urlExists(entry.url().hash());
if (dbocc != null || wordIndex.existsURL(entry.url().hash())) {
- final URLMetadata oldEntry = wordIndex.getURL(entry.url().hash(), null, 0);
+ final MetadataRowContainer oldEntry = wordIndex.getURL(entry.url().hash(), null, 0);
final boolean recrawl = (oldEntry != null) && (profile.recrawlIfOlder() > oldEntry.loaddate().getTime());
// do double-check
if ((dbocc != null) && (!recrawl)) {
diff --git a/source/de/anomic/crawler/FTPLoader.java b/source/de/anomic/crawler/FTPLoader.java
index 2d6b48c29..b6d5ac86f 100644
--- a/source/de/anomic/crawler/FTPLoader.java
+++ b/source/de/anomic/crawler/FTPLoader.java
@@ -35,8 +35,8 @@ import java.util.Date;
import de.anomic.http.httpRequestHeader;
import de.anomic.http.httpResponseHeader;
import de.anomic.http.httpdProxyCacheEntry;
-import de.anomic.index.indexDocumentMetadata;
import de.anomic.kelondro.order.DateFormatter;
+import de.anomic.kelondro.text.Document;
import de.anomic.kelondro.util.Log;
import de.anomic.net.ftpc;
import de.anomic.plasma.plasmaHTCache;
@@ -56,14 +56,14 @@ public class FTPLoader {
maxFileSize = (int) sb.getConfigLong("crawler.ftp.maxFileSize", -1l);
}
- protected indexDocumentMetadata createCacheEntry(final CrawlEntry entry, final String mimeType, final Date fileDate) {
+ protected Document createCacheEntry(final CrawlEntry entry, final String mimeType, final Date fileDate) {
if (entry == null) return null;
httpRequestHeader requestHeader = new httpRequestHeader();
if (entry.referrerhash() != null) requestHeader.put(httpRequestHeader.REFERER, sb.getURL(entry.referrerhash()).toNormalform(true, false));
httpResponseHeader responseHeader = new httpResponseHeader();
responseHeader.put(httpResponseHeader.LAST_MODIFIED, DateFormatter.formatRFC1123(fileDate));
responseHeader.put(httpResponseHeader.CONTENT_TYPE, mimeType);
- indexDocumentMetadata metadata = new httpdProxyCacheEntry(
+ Document metadata = new httpdProxyCacheEntry(
entry.depth(), entry.url(), entry.name(), "OK",
requestHeader, responseHeader,
entry.initiator(), sb.webIndex.profilesActiveCrawls.getEntry(entry.profileHandle()));
@@ -77,12 +77,12 @@ public class FTPLoader {
* @param entry
* @return
*/
- public indexDocumentMetadata load(final CrawlEntry entry) throws IOException {
+ public Document load(final CrawlEntry entry) throws IOException {
final yacyURL entryUrl = entry.url();
final String fullPath = getPath(entryUrl);
// the return value
- indexDocumentMetadata htCache = null;
+ Document htCache = null;
// determine filename and path
String file, path;
@@ -212,7 +212,7 @@ public class FTPLoader {
* @return
* @throws Exception
*/
- private indexDocumentMetadata getFile(final ftpc ftpClient, final CrawlEntry entry) throws Exception {
+ private Document getFile(final ftpc ftpClient, final CrawlEntry entry) throws Exception {
// determine the mimetype of the resource
final yacyURL entryUrl = entry.url();
final String extension = plasmaParser.getFileExt(entryUrl);
@@ -221,7 +221,7 @@ public class FTPLoader {
// if the mimetype and file extension is supported we start to download
// the file
- indexDocumentMetadata htCache = null;
+ Document htCache = null;
if (plasmaParser.supportedContent(plasmaParser.PARSER_MODE_CRAWLER, entryUrl, mimeType)) {
// aborting download if content is too long
final int size = ftpClient.fileSize(path);
diff --git a/source/de/anomic/crawler/HTTPLoader.java b/source/de/anomic/crawler/HTTPLoader.java
index 375003076..8261ded69 100644
--- a/source/de/anomic/crawler/HTTPLoader.java
+++ b/source/de/anomic/crawler/HTTPLoader.java
@@ -33,8 +33,8 @@ import de.anomic.http.httpResponse;
import de.anomic.http.httpRequestHeader;
import de.anomic.http.httpResponseHeader;
import de.anomic.http.httpdProxyCacheEntry;
-import de.anomic.index.indexDocumentMetadata;
-import de.anomic.index.indexReferenceBlacklist;
+import de.anomic.kelondro.text.Blacklist;
+import de.anomic.kelondro.text.Document;
import de.anomic.kelondro.util.Log;
import de.anomic.plasma.plasmaHTCache;
import de.anomic.plasma.plasmaParser;
@@ -83,8 +83,8 @@ public final class HTTPLoader {
* @param responseStatus Status-Code SPACE Reason-Phrase
* @return
*/
- protected indexDocumentMetadata createCacheEntry(final CrawlEntry entry, final Date requestDate, final httpRequestHeader requestHeader, final httpResponseHeader responseHeader, final String responseStatus) {
- indexDocumentMetadata metadata = new httpdProxyCacheEntry(
+ protected Document createCacheEntry(final CrawlEntry entry, final Date requestDate, final httpRequestHeader requestHeader, final httpResponseHeader responseHeader, final String responseStatus) {
+ Document metadata = new httpdProxyCacheEntry(
entry.depth(),
entry.url(),
entry.name(),
@@ -98,11 +98,11 @@ public final class HTTPLoader {
return metadata;
}
- public indexDocumentMetadata load(final CrawlEntry entry, final String parserMode) throws IOException {
+ public Document load(final CrawlEntry entry, final String parserMode) throws IOException {
return load(entry, parserMode, DEFAULT_CRAWLING_RETRY_COUNT);
}
- private indexDocumentMetadata load(final CrawlEntry entry, final String parserMode, final int retryCount) throws IOException {
+ private Document load(final CrawlEntry entry, final String parserMode, final int retryCount) throws IOException {
if (retryCount < 0) {
sb.crawlQueues.errorURL.newEntry(entry, sb.webIndex.seedDB.mySeed().hash, new Date(), 1, "redirection counter exceeded").store();
@@ -118,13 +118,13 @@ public final class HTTPLoader {
// check if url is in blacklist
final String hostlow = host.toLowerCase();
- if (plasmaSwitchboard.urlBlacklist.isListed(indexReferenceBlacklist.BLACKLIST_CRAWLER, hostlow, path)) {
+ if (plasmaSwitchboard.urlBlacklist.isListed(Blacklist.BLACKLIST_CRAWLER, hostlow, path)) {
sb.crawlQueues.errorURL.newEntry(entry, sb.webIndex.seedDB.mySeed().hash, new Date(), 1, "url in blacklist").store();
throw new IOException("CRAWLER Rejecting URL '" + entry.url().toString() + "'. URL is in blacklist.");
}
// take a file from the net
- indexDocumentMetadata htCache = null;
+ Document htCache = null;
final long maxFileSize = sb.getConfigLong("crawler.http.maxFileSize", DEFAULT_MAXFILESIZE);
//try {
// create a request header
diff --git a/source/de/anomic/crawler/IndexingStack.java b/source/de/anomic/crawler/IndexingStack.java
index 6b4178082..3838db5f9 100644
--- a/source/de/anomic/crawler/IndexingStack.java
+++ b/source/de/anomic/crawler/IndexingStack.java
@@ -35,12 +35,12 @@ import java.util.Iterator;
import java.util.concurrent.ConcurrentHashMap;
import de.anomic.http.httpResponseHeader;
-import de.anomic.index.URLMetadata;
import de.anomic.kelondro.index.Row;
import de.anomic.kelondro.order.Base64Order;
import de.anomic.kelondro.order.DateFormatter;
import de.anomic.kelondro.order.NaturalOrder;
import de.anomic.kelondro.table.Stack;
+import de.anomic.kelondro.text.MetadataRowContainer;
import de.anomic.kelondro.util.Log;
import de.anomic.plasma.plasmaHTCache;
import de.anomic.plasma.plasmaSwitchboardConstants;
@@ -367,8 +367,8 @@ public class IndexingStack {
if (referrerURL == null) {
// FIXME the equals seems to be incorrect: String.equals(boolean)
if ((referrerHash == null) || ((initiator != null) && (referrerHash.equals(initiator.length() == 0)))) return null;
- final URLMetadata entry = wordIndex.getURL(referrerHash, null, 0);
- if (entry == null) referrerURL = null; else referrerURL = entry.comp().url();
+ final MetadataRowContainer entry = wordIndex.getURL(referrerHash, null, 0);
+ if (entry == null) referrerURL = null; else referrerURL = entry.metadata().url();
}
return referrerURL;
}
diff --git a/source/de/anomic/crawler/LoaderMessage.java b/source/de/anomic/crawler/LoaderMessage.java
index 7d0ef24d7..8e9482ba0 100644
--- a/source/de/anomic/crawler/LoaderMessage.java
+++ b/source/de/anomic/crawler/LoaderMessage.java
@@ -23,7 +23,7 @@
package de.anomic.crawler;
-import de.anomic.index.indexDocumentMetadata;
+import de.anomic.kelondro.text.Document;
import de.anomic.server.serverSemaphore;
import de.anomic.yacy.yacyURL;
@@ -41,7 +41,7 @@ public final class LoaderMessage {
public final boolean keepInMemory;
private serverSemaphore resultSync = null;
- private indexDocumentMetadata result;
+ private Document result;
private String errorMessage;
// loadParallel(URL url, String referer, String initiator, int depth, plasmaCrawlProfile.entry profile) {
@@ -80,7 +80,7 @@ public final class LoaderMessage {
return this.errorMessage;
}
- public void setResult(final indexDocumentMetadata theResult) {
+ public void setResult(final Document theResult) {
// store the result
this.result = theResult;
@@ -88,8 +88,8 @@ public final class LoaderMessage {
this.resultSync.V();
}
- public indexDocumentMetadata waitForResult() throws InterruptedException {
- indexDocumentMetadata theResult = null;
+ public Document waitForResult() throws InterruptedException {
+ Document theResult = null;
this.resultSync.P();
/* =====> CRITICAL SECTION <======== */
diff --git a/source/de/anomic/crawler/ProtocolLoader.java b/source/de/anomic/crawler/ProtocolLoader.java
index 1b39cb3e8..450254a91 100644
--- a/source/de/anomic/crawler/ProtocolLoader.java
+++ b/source/de/anomic/crawler/ProtocolLoader.java
@@ -33,7 +33,7 @@ import java.util.Iterator;
import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;
-import de.anomic.index.indexDocumentMetadata;
+import de.anomic.kelondro.text.Document;
import de.anomic.kelondro.util.Log;
import de.anomic.plasma.plasmaSwitchboard;
import de.anomic.server.serverCore;
@@ -70,7 +70,7 @@ public final class ProtocolLoader {
return (HashSet<String>) this.supportedProtocols.clone();
}
- public indexDocumentMetadata load(final CrawlEntry entry, final String parserMode) throws IOException {
+ public Document load(final CrawlEntry entry, final String parserMode) throws IOException {
// getting the protocol of the next URL
final String protocol = entry.url().getProtocol();
final String host = entry.url().getHost();
@@ -114,7 +114,7 @@ public final class ProtocolLoader {
public String process(final CrawlEntry entry, final String parserMode) {
// load a resource, store it to htcache and push queue entry to switchboard queue
// returns null if everything went fine, a fail reason string if a problem occurred
- indexDocumentMetadata h;
+ Document h;
try {
entry.setStatus("loading", serverProcessorJob.STATUS_RUNNING);
h = load(entry, parserMode);
diff --git a/source/de/anomic/crawler/ResultURLs.java b/source/de/anomic/crawler/ResultURLs.java
index bc7b54760..eba25090d 100644
--- a/source/de/anomic/crawler/ResultURLs.java
+++ b/source/de/anomic/crawler/ResultURLs.java
@@ -39,8 +39,8 @@ import java.util.Iterator;
import java.util.LinkedList;
import java.util.List;
-import de.anomic.index.URLMetadata;
import de.anomic.kelondro.order.Bitfield;
+import de.anomic.kelondro.text.MetadataRowContainer;
import de.anomic.kelondro.util.ScoreCluster;
import de.anomic.kelondro.util.Log;
import de.anomic.yacy.yacySeedDB;
@@ -82,7 +82,7 @@ public final class ResultURLs {
gcrawlResultDomains = new ScoreCluster<String>();
}
- public synchronized void stack(final URLMetadata e, final String initiatorHash, final String executorHash, final int stackType) {
+ public synchronized void stack(final MetadataRowContainer e, final String initiatorHash, final String executorHash, final int stackType) {
assert initiatorHash != null;
assert executorHash != null;
if (e == null) { return; }
@@ -98,7 +98,7 @@ public final class ResultURLs {
try {
final ScoreCluster<String> domains = getDomains(stackType);
if (domains != null) {
- domains.incScore(e.comp().url().getHost());
+ domains.incScore(e.metadata().url().getHost());
}
} catch (final Exception ex) {
System.out.println("INTERNAL ERROR in newEntry/3: " + ex.toString());
@@ -305,7 +305,7 @@ public final class ResultURLs {
final ResultURLs results = new ResultURLs();
try {
final yacyURL url = new yacyURL("http", "www.yacy.net", 80, "/");
- final URLMetadata urlRef = new URLMetadata(url, "YaCy Homepage", "", "", "", new Date(), new Date(), new Date(), "", new byte[] {}, 123, 42, '?', new Bitfield(), "de", 0, 0, 0, 0, 0, 0);
+ final MetadataRowContainer urlRef = new MetadataRowContainer(url, "YaCy Homepage", "", "", "", new Date(), new Date(), new Date(), "", new byte[] {}, 123, 42, '?', new Bitfield(), "de", 0, 0, 0, 0, 0, 0);
int stackNo = 1;
System.out.println("valid test:\n=======");
// add
diff --git a/source/de/anomic/data/SitemapParser.java b/source/de/anomic/data/SitemapParser.java
index 8d97cbb8a..48877a67e 100644
--- a/source/de/anomic/data/SitemapParser.java
+++ b/source/de/anomic/data/SitemapParser.java
@@ -45,8 +45,8 @@ import de.anomic.http.httpClient;
import de.anomic.http.httpResponse;
import de.anomic.http.httpRequestHeader;
import de.anomic.http.httpdByteCountInputStream;
-import de.anomic.index.URLMetadata;
import de.anomic.kelondro.order.DateFormatter;
+import de.anomic.kelondro.text.MetadataRowContainer;
import de.anomic.kelondro.util.Log;
import de.anomic.plasma.plasmaSwitchboard;
import de.anomic.yacy.yacyURL;
@@ -260,7 +260,7 @@ public class SitemapParser extends DefaultHandler {
final String dbocc = this.sb.urlExists(nexturlhash);
if ((dbocc != null) && (dbocc.equalsIgnoreCase("loaded"))) {
// the url was already loaded. we need to check the date
- final URLMetadata oldEntry = this.sb.webIndex.getURL(nexturlhash, null, 0);
+ final MetadataRowContainer oldEntry = this.sb.webIndex.getURL(nexturlhash, null, 0);
if (oldEntry != null) {
final Date modDate = oldEntry.moddate();
// check if modDate is null
diff --git a/source/de/anomic/data/listManager.java b/source/de/anomic/data/listManager.java
index e8e30fcc1..a20a50039 100644
--- a/source/de/anomic/data/listManager.java
+++ b/source/de/anomic/data/listManager.java
@@ -42,8 +42,8 @@ import java.util.List;
import java.util.Set;
import java.util.Vector;
-import de.anomic.index.indexAbstractReferenceBlacklist;
-import de.anomic.index.indexReferenceBlacklist.blacklistFile;
+import de.anomic.kelondro.text.AbstractBlacklist;
+import de.anomic.kelondro.text.Blacklist.blacklistFile;
import de.anomic.plasma.plasmaSwitchboard;
import de.anomic.server.serverCore;
@@ -392,7 +392,7 @@ public class listManager {
* Load or reload all active Blacklists
*/
public static void reloadBlacklists(){
- final String supportedBlacklistTypesStr = indexAbstractReferenceBlacklist.BLACKLIST_TYPES_STRING;
+ final String supportedBlacklistTypesStr = AbstractBlacklist.BLACKLIST_TYPES_STRING;
final String[] supportedBlacklistTypes = supportedBlacklistTypesStr.split(",");
final ArrayList<blacklistFile> blacklistFiles = new ArrayList<blacklistFile>(supportedBlacklistTypes.length);
diff --git a/source/de/anomic/http/httpdProxyCacheEntry.java b/source/de/anomic/http/httpdProxyCacheEntry.java
index 2d76b6d52..cca265f17 100755
--- a/source/de/anomic/http/httpdProxyCacheEntry.java
+++ b/source/de/anomic/http/httpdProxyCacheEntry.java
@@ -29,12 +29,12 @@ package de.anomic.http;
import java.util.Date;
import de.anomic.crawler.CrawlProfile;
-import de.anomic.index.indexDocumentMetadata;
import de.anomic.kelondro.order.DateFormatter;
+import de.anomic.kelondro.text.Document;
import de.anomic.plasma.plasmaHTCache;
import de.anomic.yacy.yacyURL;
-public class httpdProxyCacheEntry implements indexDocumentMetadata {
+public class httpdProxyCacheEntry implements Document {
// doctypes:
public static final char DT_PDFPS = 'p';
diff --git a/source/de/anomic/http/httpdProxyHandler.java b/source/de/anomic/http/httpdProxyHandler.java
index 6c67c2c2b..566c95509 100644
--- a/source/de/anomic/http/httpdProxyHandler.java
+++ b/source/de/anomic/http/httpdProxyHandler.java
@@ -74,9 +74,9 @@ import java.util.zip.GZIPOutputStream;
import de.anomic.crawler.HTTPLoader;
import de.anomic.htmlFilter.htmlFilterContentTransformer;
import de.anomic.htmlFilter.htmlFilterTransformer;
-import de.anomic.index.indexDocumentMetadata;
-import de.anomic.index.indexReferenceBlacklist;
import de.anomic.kelondro.order.DateFormatter;
+import de.anomic.kelondro.text.Blacklist;
+import de.anomic.kelondro.text.Document;
import de.anomic.kelondro.util.Log;
import de.anomic.kelondro.util.FileUtils;
import de.anomic.plasma.plasmaHTCache;
@@ -345,7 +345,7 @@ public final class httpdProxyHandler {
// respond a 404 for all AGIS ("all you get is shit") servers
final String hostlow = host.toLowerCase();
if (args != null) { path = path + "?" + args; }
- if (plasmaSwitchboard.urlBlacklist.isListed(indexReferenceBlacklist.BLACKLIST_PROXY, hostlow, path)) {
+ if (plasmaSwitchboard.urlBlacklist.isListed(Blacklist.BLACKLIST_PROXY, hostlow, path)) {
theLogger.logInfo("AGIS blocking of host '" + hostlow + "'");
httpd.sendRespondError(conProp,countedRespond,4,403,null,
"URL '" + hostlow + "' blocked by yacy proxy (blacklisted)",null);
@@ -385,7 +385,7 @@ public final class httpdProxyHandler {
if (theLogger.isFinest()) theLogger.logFinest(reqID + " page not in cache: fulfill request from web");
fulfillRequestFromWeb(conProp, url, ext, requestHeader, cachedResponseHeader, countedRespond);
} else {
- final indexDocumentMetadata cacheEntry = new httpdProxyCacheEntry(
+ final Document cacheEntry = new httpdProxyCacheEntry(
0, // crawling depth
url, // url
"", // name of the url is unknown
@@ -499,7 +499,7 @@ public final class httpdProxyHandler {
}
// reserver cache entry
- final indexDocumentMetadata cacheEntry = new httpdProxyCacheEntry(
+ final Document cacheEntry = new httpdProxyCacheEntry(
0,
url,
"",
@@ -768,7 +768,7 @@ public final class httpdProxyHandler {
// re-calc the url path
String remotePath = (args == null) ? path : (path + "?" + args);
- if (plasmaSwitchboard.urlBlacklist.isListed(indexReferenceBlacklist.BLACKLIST_PROXY, hostlow, remotePath)) {
+ if (plasmaSwitchboard.urlBlacklist.isListed(Blacklist.BLACKLIST_PROXY, hostlow, remotePath)) {
httpd.sendRespondError(conProp,respond,4,403,null,
"URL '" + hostlow + "' blocked by yacy proxy (blacklisted)",null);
theLogger.logInfo("AGIS blocking of host '" + hostlow + "'");
@@ -1217,7 +1217,7 @@ public final class httpdProxyHandler {
// blacklist idea inspired by [AS]:
// respond a 404 for all AGIS ("all you get is shit") servers
final String hostlow = host.toLowerCase();
- if (plasmaSwitchboard.urlBlacklist.isListed(indexReferenceBlacklist.BLACKLIST_PROXY, hostlow, path)) {
+ if (plasmaSwitchboard.urlBlacklist.isListed(Blacklist.BLACKLIST_PROXY, hostlow, path)) {
httpd.sendRespondError(conProp,clientOut,4,403,null,
"URL '" + hostlow + "' blocked by yacy proxy (blacklisted)",null);
theLogger.logInfo("AGIS blocking of host '" + hostlow + "'");
diff --git a/source/de/anomic/icap/icapd.java b/source/de/anomic/icap/icapd.java
index 3d481c703..12c60b276 100644
--- a/source/de/anomic/icap/icapd.java
+++ b/source/de/anomic/icap/icapd.java
@@ -40,8 +40,8 @@ import de.anomic.http.httpChunkedInputStream;
import de.anomic.http.httpRequestHeader;
import de.anomic.http.httpResponseHeader;
import de.anomic.http.httpdProxyCacheEntry;
-import de.anomic.index.indexDocumentMetadata;
import de.anomic.kelondro.order.DateFormatter;
+import de.anomic.kelondro.text.Document;
import de.anomic.kelondro.util.Log;
import de.anomic.kelondro.util.FileUtils;
import de.anomic.plasma.plasmaHTCache;
@@ -377,7 +377,7 @@ public class icapd implements serverHandler, Cloneable {
* ========================================================================= */
// generating a htcache entry object
- final indexDocumentMetadata cacheEntry = new httpdProxyCacheEntry(
+ final Document cacheEntry = new httpdProxyCacheEntry(
0,
httpRequestURL,
"",
diff --git a/source/de/anomic/index/indexDocumentCache.java b/source/de/anomic/index/indexDocumentCache.java
deleted file mode 100755
index ed18ad5cc..000000000
--- a/source/de/anomic/index/indexDocumentCache.java
+++ /dev/null
@@ -1,98 +0,0 @@
-// indexDocumentCache.java
-// (C) 2008 by Michael Peter Christen; mc@yacy.net, Frankfurt a. M., Germany
-// first published 19.08.2008 on http://yacy.net
-//
-// This is a part of YaCy, a peer-to-peer based web search engine
-//
-// $LastChangedDate: 2006-04-02 22:40:07 +0200 (So, 02 Apr 2006) $
-// $LastChangedRevision: 1986 $
-// $LastChangedBy: orbiter $
-//
-// LICENSE
-//
-// 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
-
-
-package de.anomic.index;
-
-import java.io.File;
-import java.io.InputStream;
-
-import de.anomic.kelondro.util.Log;
-import de.anomic.yacy.yacyURL;
-
-
-public class indexDocumentCache {
-
- public static final Log log = new Log("DOCUMENT-CACHE");
-
- public indexDocumentCache(final File htCachePath, final long CacheSizeMax) {
-
- }
-
-
- public int size() {
- return 0; // dummy
- }
-
-
- /**
- * This method changes the HTCache size.<br>
- * @param the new cache size in bytes
- */
- public void setCacheSize(final long newCacheSize) {
- }
-
- /**
- * This method returns the free HTCache size.<br>
- * @return the cache size in bytes
- */
- public long getFreeSize() {
- return 0; // dummy
- }
-
- public void writeResourceContent(final yacyURL url, final byte[] array) {
- }
-
- public void deleteURLfromCache(final yacyURL url) {
- }
-
- public void close() {
- }
-
- public boolean full() {
- return false;
- }
-
- public boolean empty() {
- return false;
- }
-
- /**
- * Returns the content of a cached resource as {@link InputStream}
- * @param url the requested resource
- * @return the resource content as {@link InputStream}. In no data
- * is available or the cached file is not readable, <code>null</code>
- * is returned.
- */
- public InputStream getResourceContentStream(final yacyURL url) {
- return null;
- }
-
- public long getResourceContentLength(final yacyURL url) {
- return 0; // dummy
- }
-
-}
diff --git a/source/de/anomic/index/indexAbstractReferenceBlacklist.java b/source/de/anomic/kelondro/text/AbstractBlacklist.java
index 7a11fd3b9..9f3983d12 100644
--- a/source/de/anomic/index/indexAbstractReferenceBlacklist.java
+++ b/source/de/anomic/kelondro/text/AbstractBlacklist.java
@@ -5,9 +5,9 @@
//
// This is a part of YaCy, a peer-to-peer based web search engine
//
-// $LastChangedDate$
-// $LastChangedRevision$
-// $LastChangedBy$
+// $LastChangedDate: 2009-01-30 23:44:20 +0100 (Fr, 30 Jan 2009) $
+// $LastChangedRevision: 5543 $
+// $LastChangedBy: orbiter $
//
// LICENSE
//
@@ -25,7 +25,7 @@
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-package de.anomic.index;
+package de.anomic.kelondro.text;
import java.io.File;
import java.io.IOException;
@@ -43,15 +43,15 @@ import java.util.regex.PatternSyntaxException;
import de.anomic.kelondro.util.SetTools;
import de.anomic.yacy.yacyURL;
-public abstract class indexAbstractReferenceBlacklist implements indexReferenceBlacklist {
+public abstract class AbstractBlacklist implements Blacklist {
protected static final HashSet<String> BLACKLIST_TYPES = new HashSet<String>(Arrays.asList(new String[]{
- indexReferenceBlacklist.BLACKLIST_CRAWLER,
- indexReferenceBlacklist.BLACKLIST_PROXY,
- indexReferenceBlacklist.BLACKLIST_DHT,
- indexReferenceBlacklist.BLACKLIST_SEARCH,
- indexReferenceBlacklist.BLACKLIST_SURFTIPS,
- indexReferenceBlacklist.BLACKLIST_NEWS
+ Blacklist.BLACKLIST_CRAWLER,
+ Blacklist.BLACKLIST_PROXY,
+ Blacklist.BLACKLIST_DHT,
+ Blacklist.BLACKLIST_SEARCH,
+ Blacklist.BLACKLIST_SURFTIPS,
+ Blacklist.BLACKLIST_NEWS
}));
public static final String BLACKLIST_TYPES_STRING="proxy,crawler,dht,search,surftips,news";
@@ -61,7 +61,7 @@ public abstract class indexAbstractReferenceBlacklist implements indexReferenceB
protected HashMap<String, HashMap<String, ArrayList<String>>> hostpaths_matchable = null; // key=host, value=path; mapped url is http://host/path; path does not start with '/' here
protected HashMap<String, HashMap<String, ArrayList<String>>> hostpaths_notmatchable = null; // key=host, value=path; mapped url is http://host/path; path does not start with '/' here
- public indexAbstractReferenceBlacklist(final File rootPath) {
+ public AbstractBlacklist(final File rootPath) {
this.setRootPath(rootPath);
this.blacklistRootPath = rootPath;
diff --git a/source/de/anomic/index/indexReferenceBlacklist.java b/source/de/anomic/kelondro/text/Blacklist.java
index 4a1900e4b..9b63b41b8 100644
--- a/source/de/anomic/index/indexReferenceBlacklist.java
+++ b/source/de/anomic/kelondro/text/Blacklist.java
@@ -24,7 +24,7 @@
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-package de.anomic.index;
+package de.anomic.kelondro.text;
import java.io.File;
import java.util.Arrays;
@@ -32,7 +32,7 @@ import java.util.HashSet;
import de.anomic.yacy.yacyURL;
-public interface indexReferenceBlacklist {
+public interface Blacklist {
public static final String BLACKLIST_DHT = "dht";
public static final String BLACKLIST_CRAWLER = "crawler";
diff --git a/source/de/anomic/index/indexDefaultReferenceBlacklist.java b/source/de/anomic/kelondro/text/DefaultBlacklist.java
index 5bc15bae5..2719c6151 100644
--- a/source/de/anomic/index/indexDefaultReferenceBlacklist.java
+++ b/source/de/anomic/kelondro/text/DefaultBlacklist.java
@@ -4,9 +4,9 @@
//
// This is a part of YaCy, a peer-to-peer based web search engine
//
-// $LastChangedDate$
-// $LastChangedRevision$
-// $LastChangedBy$
+// $LastChangedDate: 2008-08-20 09:54:56 +0200 (Mi, 20 Aug 2008) $
+// $LastChangedRevision: 5063 $
+// $LastChangedBy: danielr $
//
// LICENSE
//
@@ -24,7 +24,7 @@
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-package de.anomic.index;
+package de.anomic.kelondro.text;
import java.io.File;
import java.util.ArrayList;
@@ -34,9 +34,10 @@ import java.util.regex.Pattern;
import java.util.regex.PatternSyntaxException;
-public class indexDefaultReferenceBlacklist extends indexAbstractReferenceBlacklist implements indexReferenceBlacklist {
- public indexDefaultReferenceBlacklist(final File rootPath) {
+public class DefaultBlacklist extends AbstractBlacklist implements Blacklist {
+
+ public DefaultBlacklist(final File rootPath) {
super(rootPath);
}
diff --git a/source/de/anomic/index/indexDocumentMetadata.java b/source/de/anomic/kelondro/text/Document.java
index 20bfac438..c0265875d 100755..100644
--- a/source/de/anomic/index/indexDocumentMetadata.java
+++ b/source/de/anomic/kelondro/text/Document.java
@@ -24,14 +24,14 @@
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-package de.anomic.index;
+package de.anomic.kelondro.text;
import java.util.Date;
import de.anomic.crawler.CrawlProfile;
import de.anomic.yacy.yacyURL;
-public interface indexDocumentMetadata {
+public interface Document {
/**
* @return an anchor name; can be either the text inside the anchor tag or the
diff --git a/source/de/anomic/kelondro/text/IndexCache.java b/source/de/anomic/kelondro/text/IndexCache.java
index fcb6e76b2..689ff73fa 100644
--- a/source/de/anomic/kelondro/text/IndexCache.java
+++ b/source/de/anomic/kelondro/text/IndexCache.java
@@ -32,7 +32,6 @@ import java.util.ArrayList;
import java.util.Iterator;
import java.util.Set;
-import de.anomic.index.indexContainerCache;
import de.anomic.kelondro.index.Row;
import de.anomic.kelondro.order.CloneableIterator;
import de.anomic.kelondro.util.MemoryControl;
@@ -50,7 +49,7 @@ public final class IndexCache implements Index, IndexReader, Iterable<ReferenceC
public long cacheReferenceAgeLimit; // the maximum age (= time not changed) of a RWI entity
private final Log log;
private final File dumpFile;
- private indexContainerCache heap;
+ private ReferenceContainerCache heap;
@SuppressWarnings("unchecked")
public IndexCache(
@@ -72,7 +71,7 @@ public final class IndexCache implements Index, IndexReader, Iterable<ReferenceC
this.cacheReferenceAgeLimit = wCacheReferenceAgeLimitInit;
this.log = log;
this.dumpFile = new File(databaseRoot, newHeapName);
- this.heap = new indexContainerCache(payloadrow);
+ this.heap = new ReferenceContainerCache(payloadrow);
// read in dump of last session
boolean initFailed = false;
diff --git a/source/de/anomic/kelondro/text/IndexCell.java b/source/de/anomic/kelondro/text/IndexCell.java
index ff065fcf0..26cf949ef 100644
--- a/source/de/anomic/kelondro/text/IndexCell.java
+++ b/source/de/anomic/kelondro/text/IndexCell.java
@@ -31,9 +31,6 @@ import java.io.IOException;
import java.util.HashSet;
import java.util.Set;
-import de.anomic.index.indexContainerBLOBArray;
-import de.anomic.index.indexContainerCache;
-import de.anomic.index.indexContainerOrder;
import de.anomic.kelondro.index.Row;
import de.anomic.kelondro.order.CloneableIterator;
import de.anomic.kelondro.order.MergeIterator;
@@ -53,8 +50,8 @@ import de.anomic.kelondro.order.Order;
public final class IndexCell implements Index {
// class variables
- private indexContainerBLOBArray array;
- private indexContainerCache ram;
+ private ReferenceContainerArray array;
+ private ReferenceContainerCache ram;
private int maxRamEntries;
public IndexCell(
@@ -62,8 +59,8 @@ public final class IndexCell implements Index {
final Row payloadrow,
final int maxRamEntries
) throws IOException {
- this.array = new indexContainerBLOBArray(cellPath, payloadrow);
- this.ram = new indexContainerCache(payloadrow);
+ this.array = new ReferenceContainerArray(cellPath, payloadrow);
+ this.ram = new ReferenceContainerCache(payloadrow);
this.maxRamEntries = maxRamEntries;
}
@@ -72,7 +69,7 @@ public final class IndexCell implements Index {
File dumpFile = this.array.newContainerBLOBFile();
this.ram.dump(dumpFile);
// get a fresh ram cache
- this.ram = new indexContainerCache(this.array.rowdef());
+ this.ram = new ReferenceContainerCache(this.array.rowdef());
// add the dumped indexContainerBLOB to the array
this.array.mountBLOBContainer(dumpFile);
}
@@ -192,7 +189,7 @@ public final class IndexCell implements Index {
}
public CloneableIterator<ReferenceContainer> referenceIterator(String startWordHash, boolean rot, boolean ram) throws IOException {
- final Order<ReferenceContainer> containerOrder = new indexContainerOrder(this.ram.rowdef().getOrdering().clone());
+ final Order<ReferenceContainer> containerOrder = new ReferenceContainerOrder(this.ram.rowdef().getOrdering().clone());
containerOrder.rotate(new ReferenceContainer(startWordHash, this.ram.rowdef(), 0));
if (ram) {
return this.ram.referenceIterator(startWordHash, rot, true);
@@ -205,7 +202,7 @@ public final class IndexCell implements Index {
true);
}
- private static class RemoveRewriter implements indexContainerBLOBArray.ContainerRewriter {
+ private static class RemoveRewriter implements ReferenceContainerArray.ContainerRewriter {
Set<String> urlHashes;
diff --git a/source/de/anomic/index/indexCollectionRI.java b/source/de/anomic/kelondro/text/IndexCollection.java
index 623893bb7..a16659919 100644
--- a/source/de/anomic/index/indexCollectionRI.java
+++ b/source/de/anomic/kelondro/text/IndexCollection.java
@@ -1,4 +1,4 @@
-// indexCollectionRI.java
+// iIndexCollection.java
// (C) 2006 by Michael Peter Christen; mc@yacy.net, Frankfurt a. M., Germany
// first published 03.07.2006 on http://yacy.net
//
@@ -24,7 +24,7 @@
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-package de.anomic.index;
+package de.anomic.kelondro.text;
import java.io.File;
import java.io.IOException;
@@ -53,8 +53,6 @@ import de.anomic.kelondro.order.RotateIterator;
import de.anomic.kelondro.table.EcoTable;
import de.anomic.kelondro.table.FixedWidthArray;
import de.anomic.kelondro.table.FlexTable;
-import de.anomic.kelondro.text.Index;
-import de.anomic.kelondro.text.ReferenceContainer;
import de.anomic.kelondro.util.FileUtils;
import de.anomic.kelondro.util.MemoryControl;
import de.anomic.kelondro.util.kelondroException;
@@ -62,7 +60,7 @@ import de.anomic.kelondro.util.kelondroOutOfLimitsException;
import de.anomic.kelondro.util.Log;
import de.anomic.yacy.yacyURL;
-public class indexCollectionRI implements Index {
+public class IndexCollection implements Index {
private static final int loadfactor = 4;
private static final int serialNumber = 0;
@@ -89,7 +87,7 @@ public class indexCollectionRI implements Index {
private static final int idx_col_lastread = 6; // a time stamp, update time in days since 1.1.2000
private static final int idx_col_lastwrote = 7; // a time stamp, update time in days since 1.1.2000
- public indexCollectionRI(
+ public IndexCollection(
final File path,
final String filenameStub,
final int keyLength,
@@ -974,7 +972,7 @@ public class indexCollectionRI implements Index {
final String filenameStub = args[1];
try {
// initialize collection index
- final indexCollectionRI collectionIndex = new indexCollectionRI(
+ final IndexCollection collectionIndex = new IndexCollection(
path, filenameStub, 9 /*keyLength*/,
NaturalOrder.naturalOrder,
7, rowdef, false);
@@ -1004,7 +1002,7 @@ public class indexCollectionRI implements Index {
// printout of index
collectionIndex.close();
- final EcoTable index = new EcoTable(new File(path, filenameStub + ".index"), indexCollectionRI.indexRow(9, NaturalOrder.naturalOrder), EcoTable.tailCacheUsageAuto, 0, 0);
+ final EcoTable index = new EcoTable(new File(path, filenameStub + ".index"), IndexCollection.indexRow(9, NaturalOrder.naturalOrder), EcoTable.tailCacheUsageAuto, 0, 0);
index.print();
index.close();
} catch (final IOException e) {
diff --git a/source/de/anomic/index/URLMetadataRepository.java b/source/de/anomic/kelondro/text/MetadataRepository.java
index 872cc4742..6a80c0674 100644
--- a/source/de/anomic/index/URLMetadataRepository.java
+++ b/source/de/anomic/kelondro/text/MetadataRepository.java
@@ -24,7 +24,7 @@
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-package de.anomic.index;
+package de.anomic.kelondro.text;
import java.io.BufferedOutputStream;
import java.io.File;
@@ -48,12 +48,11 @@ import de.anomic.kelondro.index.Row;
import de.anomic.kelondro.index.ObjectIndex;
import de.anomic.kelondro.order.CloneableIterator;
import de.anomic.kelondro.table.SplitTable;
-import de.anomic.kelondro.text.Reference;
import de.anomic.kelondro.util.ScoreCluster;
import de.anomic.kelondro.util.Log;
import de.anomic.yacy.yacyURL;
-public final class URLMetadataRepository {
+public final class MetadataRepository {
// class objects
ObjectIndex urlIndexFile;
@@ -61,10 +60,10 @@ public final class URLMetadataRepository {
private File location = null;
ArrayList<hostStat> statsDump = null;
- public URLMetadataRepository(final File indexSecondaryPath) {
+ public MetadataRepository(final File indexSecondaryPath) {
super();
this.location = new File(indexSecondaryPath, "TEXT");
- urlIndexFile = new Cache(new SplitTable(this.location, "urls", URLMetadata.rowdef, false));
+ urlIndexFile = new Cache(new SplitTable(this.location, "urls", MetadataRowContainer.rowdef, false));
}
public void clearCache() {
@@ -96,7 +95,7 @@ public final class URLMetadataRepository {
return 0;
}
- public synchronized URLMetadata load(final String urlHash, final Reference searchedWord, final long ranking) {
+ public synchronized MetadataRowContainer load(final String urlHash, final Reference searchedWord, final long ranking) {
// generates an plasmaLURLEntry using the url hash
// if the url cannot be found, this returns null
if (urlHash == null) return null;
@@ -104,15 +103,15 @@ public final class URLMetadataRepository {
try {
final Row.Entry entry = urlIndexFile.get(urlHash.getBytes());
if (entry == null) return null;
- return new URLMetadata(entry, searchedWord, ranking);
+ return new MetadataRowContainer(entry, searchedWord, ranking);
} catch (final IOException e) {
return null;
}
}
- public synchronized void store(final URLMetadata entry) throws IOException {
+ public synchronized void store(final MetadataRowContainer entry) throws IOException {
// Check if there is a more recent Entry already in the DB
- URLMetadata oldEntry;
+ MetadataRowContainer oldEntry;
try {
if (exists(entry.hash())) {
oldEntry = load(entry.hash(), null, 0);
@@ -152,17 +151,17 @@ public final class URLMetadataRepository {
return urlIndexFile.has(urlHash.getBytes());
}
- public CloneableIterator<URLMetadata> entries() throws IOException {
+ public CloneableIterator<MetadataRowContainer> entries() throws IOException {
// enumerates entry elements
return new kiter();
}
- public CloneableIterator<URLMetadata> entries(final boolean up, final String firstHash) throws IOException {
+ public CloneableIterator<MetadataRowContainer> entries(final boolean up, final String firstHash) throws IOException {
// enumerates entry elements
return new kiter(up, firstHash);
}
- public class kiter implements CloneableIterator<URLMetadata> {
+ public class kiter implements CloneableIterator<MetadataRowContainer> {
// enumerates entry elements
private final Iterator<Row.Entry> iter;
private final boolean error;
@@ -194,12 +193,12 @@ public final class URLMetadataRepository {
return this.iter.hasNext();
}
- public final URLMetadata next() {
+ public final MetadataRowContainer next() {
Row.Entry e = null;
if (this.iter == null) { return null; }
if (this.iter.hasNext()) { e = this.iter.next(); }
if (e == null) { return null; }
- return new URLMetadata(e, null, 0);
+ return new MetadataRowContainer(e, null, 0);
}
public final void remove() {
@@ -218,7 +217,7 @@ public final class URLMetadataRepository {
final Log log = new Log("URLDBCLEANUP");
final HashSet<String> damagedURLS = new HashSet<String>();
try {
- final Iterator<URLMetadata> eiter = entries(true, null);
+ final Iterator<MetadataRowContainer> eiter = entries(true, null);
int iteratorCount = 0;
while (eiter.hasNext()) try {
eiter.next();
@@ -288,7 +287,7 @@ public final class URLMetadataRepository {
}
}
- public BlacklistCleaner getBlacklistCleaner(final indexReferenceBlacklist blacklist) {
+ public BlacklistCleaner getBlacklistCleaner(final Blacklist blacklist) {
return new BlacklistCleaner(blacklist);
}
@@ -302,16 +301,16 @@ public final class URLMetadataRepository {
public String lastBlacklistedHash = "";
public String lastUrl = "";
public String lastHash = "";
- private final indexReferenceBlacklist blacklist;
+ private final Blacklist blacklist;
- public BlacklistCleaner(final indexReferenceBlacklist blacklist) {
+ public BlacklistCleaner(final Blacklist blacklist) {
this.blacklist = blacklist;
}
public void run() {
try {
Log.logInfo("URLDBCLEANER", "UrldbCleaner-Thread startet");
- final Iterator<URLMetadata> eiter = entries(true, null);
+ final Iterator<MetadataRowContainer> eiter = entries(true, null);
while (eiter.hasNext() && run) {
synchronized (this) {
if (this.pause) {
@@ -324,28 +323,28 @@ public final class URLMetadataRepository {
}
}
}
- final URLMetadata entry = eiter.next();
+ final MetadataRowContainer entry = eiter.next();
if (entry == null) {
if (Log.isFine("URLDBCLEANER")) Log.logFine("URLDBCLEANER", "entry == null");
} else if (entry.hash() == null) {
if (Log.isFine("URLDBCLEANER")) Log.logFine("URLDBCLEANER", ++blacklistedUrls + " blacklisted (" + ((double) blacklistedUrls / totalSearchedUrls) * 100 + "%): " + "hash == null");
} else {
- final URLMetadata.Components comp = entry.comp();
+ final URLMetadata metadata = entry.metadata();
totalSearchedUrls++;
- if (comp.url() == null) {
+ if (metadata.url() == null) {
if (Log.isFine("URLDBCLEANER")) Log.logFine("URLDBCLEANER", ++blacklistedUrls + " blacklisted (" + ((double) blacklistedUrls / totalSearchedUrls) * 100 + "%): " + entry.hash() + "URL == null");
remove(entry.hash());
- } else if (blacklist.isListed(indexReferenceBlacklist.BLACKLIST_CRAWLER, comp.url()) ||
- blacklist.isListed(indexReferenceBlacklist.BLACKLIST_DHT, comp.url())) {
- lastBlacklistedUrl = comp.url().toNormalform(true, true);
+ } else if (blacklist.isListed(Blacklist.BLACKLIST_CRAWLER, metadata.url()) ||
+ blacklist.isListed(Blacklist.BLACKLIST_DHT, metadata.url())) {
+ lastBlacklistedUrl = metadata.url().toNormalform(true, true);
lastBlacklistedHash = entry.hash();
- if (Log.isFine("URLDBCLEANER")) Log.logFine("URLDBCLEANER", ++blacklistedUrls + " blacklisted (" + ((double) blacklistedUrls / totalSearchedUrls) * 100 + "%): " + entry.hash() + " " + comp.url().toNormalform(false, true));
+ if (Log.isFine("URLDBCLEANER")) Log.logFine("URLDBCLEANER", ++blacklistedUrls + " blacklisted (" + ((double) blacklistedUrls / totalSearchedUrls) * 100 + "%): " + entry.hash() + " " + metadata.url().toNormalform(false, true));
remove(entry.hash());
if (blacklistedUrls % 100 == 0) {
Log.logInfo("URLDBCLEANER", "Deleted " + blacklistedUrls + " URLs until now. Last deleted URL-Hash: " + lastBlacklistedUrl);
}
}
- lastUrl = comp.url().toNormalform(true, true);
+ lastUrl = metadata.url().toNormalform(true, true);
lastHash = entry.hash();
}
}
@@ -451,27 +450,27 @@ public final class URLMetadataRepository {
count++;
}
} else {
- final Iterator<URLMetadata> i = entries(); // iterates indexURLEntry objects
- URLMetadata entry;
- URLMetadata.Components comp;
+ final Iterator<MetadataRowContainer> i = entries(); // iterates indexURLEntry objects
+ MetadataRowContainer entry;
+ URLMetadata metadata;
String url;
while (i.hasNext()) {
entry = i.next();
- comp = entry.comp();
- url = comp.url().toNormalform(true, false);
+ metadata = entry.metadata();
+ url = metadata.url().toNormalform(true, false);
if (!url.matches(filter)) continue;
if (format == 0) {
pw.println(url);
}
if (format == 1) {
- pw.println("<a href=\"" + url + "\">" + htmlFilterCharacterCoding.unicode2xml(comp.dc_title(), true) + "</a><br>");
+ pw.println("<a href=\"" + url + "\">" + htmlFilterCharacterCoding.unicode2xml(metadata.dc_title(), true) + "</a><br>");
}
if (format == 2) {
pw.println("<item>");
- pw.println("<title>" + htmlFilterCharacterCoding.unicode2xml(comp.dc_title(), true) + "</title>");
+ pw.println("<title>" + htmlFilterCharacterCoding.unicode2xml(metadata.dc_title(), true) + "</title>");
pw.println("<link>" + yacyURL.escape(url) + "</link>");
- if (comp.dc_creator().length() > 0) pw.println("<author>" + htmlFilterCharacterCoding.unicode2xml(comp.dc_creator(), true) + "</author>");
- if (comp.dc_subject().length() > 0) pw.println("<description>" + htmlFilterCharacterCoding.unicode2xml(comp.dc_subject(), true) + "</description>");
+ if (metadata.dc_creator().length() > 0) pw.println("<author>" + htmlFilterCharacterCoding.unicode2xml(metadata.dc_creator(), true) + "</author>");
+ if (metadata.dc_subject().length() > 0) pw.println("<description>" + htmlFilterCharacterCoding.unicode2xml(metadata.dc_subject(), true) + "</description>");
pw.println("<pubDate>" + entry.moddate().toString() + "</pubDate>");
pw.println("<yacy:size>" + entry.size() + "</yacy:size>");
pw.println("<guid isPermaLink=\"false\">" + entry.hash() + "</guid>");
@@ -534,15 +533,15 @@ public final class URLMetadataRepository {
HashMap<String, hashStat> map = domainSampleCollector();
// fetch urls from the database to determine the host in clear text
- URLMetadata urlref;
+ MetadataRowContainer urlref;
if (count < 0 || count > map.size()) count = map.size();
statsDump = new ArrayList<hostStat>();
TreeSet<String> set = new TreeSet<String>();
for (hashStat hs: map.values()) {
if (hs == null) continue;
urlref = this.load(hs.urlhash, null, 0);
- if (urlref == null || urlref.comp() == null || urlref.comp().url() == null || urlref.comp().url().getHost() == null) continue;
- set.add(urlref.comp().url().getHost());
+ if (urlref == null || urlref.metadata() == null || urlref.metadata().url() == null || urlref.metadata().url().getHost() == null) continue;
+ set.add(urlref.metadata().url().getHost());
count--;
if (count == 0) break;
}
@@ -564,20 +563,20 @@ public final class URLMetadataRepository {
// fetch urls from the database to determine the host in clear text
Iterator<String> j = s.scores(false); // iterate urlhash-examples in reverse order (biggest first)
- URLMetadata urlref;
+ MetadataRowContainer urlref;
String urlhash;
count += 10; // make some more to prevent that we have to do this again after deletions too soon.
if (count < 0 || count > s.size()) count = s.size();
statsDump = new ArrayList<hostStat>();
- URLMetadata.Components comps;
+ URLMetadata comps;
yacyURL url;
while (j.hasNext()) {
urlhash = j.next();
if (urlhash == null) continue;
urlref = this.load(urlhash, null, 0);
- if (urlref == null || urlref.comp() == null || urlref.comp().url() == null || urlref.comp().url().getHost() == null) continue;
+ if (urlref == null || urlref.metadata() == null || urlref.metadata().url() == null || urlref.metadata().url().getHost() == null) continue;
if (statsDump == null) return new ArrayList<hostStat>().iterator(); // some other operation has destroyed the object
- comps = urlref.comp();
+ comps = urlref.metadata();
url = comps.url();
statsDump.add(new hostStat(url.getHost(), url.getPort(), urlhash.substring(6), s.getScore(urlhash)));
count--;
diff --git a/source/de/anomic/index/URLMetadata.java b/source/de/anomic/kelondro/text/MetadataRowContainer.java
index c8c7ffd99..6f96b9258 100644
--- a/source/de/anomic/index/URLMetadata.java
+++ b/source/de/anomic/kelondro/text/MetadataRowContainer.java
@@ -24,7 +24,7 @@
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-package de.anomic.index;
+package de.anomic.kelondro.text;
import java.io.UnsupportedEncodingException;
import java.net.MalformedURLException;
@@ -40,8 +40,6 @@ import de.anomic.kelondro.order.Bitfield;
import de.anomic.kelondro.order.DateFormatter;
import de.anomic.kelondro.order.Digest;
import de.anomic.kelondro.order.NaturalOrder;
-import de.anomic.kelondro.text.Reference;
-import de.anomic.kelondro.text.ReferenceRow;
import de.anomic.kelondro.util.FileUtils;
import de.anomic.kelondro.util.kelondroException;
import de.anomic.plasma.plasmaSearchQuery;
@@ -50,7 +48,7 @@ import de.anomic.server.serverCodings;
import de.anomic.tools.crypt;
import de.anomic.yacy.yacyURL;
-public class URLMetadata {
+public class MetadataRowContainer {
// this object stores attributes for URL entries
@@ -121,7 +119,7 @@ public class URLMetadata {
private Reference word; // this is only used if the url is transported via remote search requests
private final long ranking; // during generation of a search result this value is set
- public URLMetadata(
+ public MetadataRowContainer(
final yacyURL url,
final String dc_title,
final String dc_creator,
@@ -200,14 +198,14 @@ public class URLMetadata {
}
}
- public URLMetadata(final Row.Entry entry, final Reference searchedWord, final long ranking) {
+ public MetadataRowContainer(final Row.Entry entry, final Reference searchedWord, final long ranking) {
this.entry = entry;
this.snippet = null;
this.word = searchedWord;
this.ranking = ranking;
}
- public URLMetadata(final Properties prop) {
+ public MetadataRowContainer(final Properties prop) {
// generates an plasmaLURLEntry using the properties from the argument
// the property names must correspond to the one from toString
//System.out.println("DEBUG-ENTRY: prop=" + prop.toString());
@@ -271,12 +269,12 @@ public class URLMetadata {
this.ranking = 0;
}
- public static URLMetadata importEntry(final String propStr) {
+ public static MetadataRowContainer importEntry(final String propStr) {
if (propStr == null || !propStr.startsWith("{") || !propStr.endsWith("}")) {
return null;
}
try {
- return new URLMetadata(serverCodings.s2p(propStr.substring(1, propStr.length() - 1)));
+ return new MetadataRowContainer(serverCodings.s2p(propStr.substring(1, propStr.length() - 1)));
} catch (final kelondroException e) {
// wrong format
return null;
@@ -285,16 +283,16 @@ public class URLMetadata {
private StringBuilder corePropList() {
// generate a parseable string; this is a simple property-list
- final URLMetadata.Components comp = this.comp();
+ final URLMetadata metadata = this.metadata();
final StringBuilder s = new StringBuilder(300);
//System.out.println("author=" + comp.author());
try {
s.append("hash=").append(hash());
- s.append(",url=").append(crypt.simpleEncode(comp.url().toNormalform(false, true)));
- s.append(",descr=").append(crypt.simpleEncode(comp.dc_title()));
- s.append(",author=").append(crypt.simpleEncode(comp.dc_creator()));
- s.append(",tags=").append(crypt.simpleEncode(comp.dc_subject()));
- s.append(",ETag=").append(crypt.simpleEncode(comp.ETag()));
+ s.append(",url=").append(crypt.simpleEncode(metadata.url().toNormalform(false, true)));
+ s.append(",descr=").append(crypt.simpleEncode(metadata.dc_title()));
+ s.append(",author=").append(crypt.simpleEncode(metadata.dc_creator()));
+ s.append(",tags=").append(crypt.simpleEncode(metadata.dc_subject()));
+ s.append(",ETag=").append(crypt.simpleEncode(metadata.ETag()));
s.append(",mod=").append(DateFormatter.formatShortDay(moddate()));
s.append(",load=").append(DateFormatter.formatShortDay(loaddate()));
s.append(",fresh=").append(DateFormatter.formatShortDay(freshdate()));
@@ -343,9 +341,9 @@ public class URLMetadata {
return this.ranking;
}
- public URLMetadata.Components comp() {
+ public URLMetadata metadata() {
final ArrayList<String> cl = FileUtils.strings(this.entry.getCol("comp", null), "UTF-8");
- return new URLMetadata.Components(
+ return new URLMetadata(
(cl.size() > 0) ? (cl.get(0)).trim() : "",
hash(),
(cl.size() > 1) ? (cl.get(1)).trim() : "",
@@ -430,7 +428,7 @@ public class URLMetadata {
return word;
}
- public boolean isOlder(final URLMetadata other) {
+ public boolean isOlder(final MetadataRowContainer other) {
if (other == null) return false;
final Date tmoddate = moddate();
final Date omoddate = other.moddate();
@@ -462,9 +460,9 @@ public class URLMetadata {
public CrawlEntry toBalancerEntry(final String initiatorHash) {
return new CrawlEntry(
initiatorHash,
- comp().url(),
+ metadata().url(),
referrerHash(),
- comp().dc_title(),
+ metadata().dc_title(),
null,
loaddate(),
null,
@@ -488,34 +486,5 @@ public class URLMetadata {
return new String(core);
//return "{" + core + "}";
}
-
- public static class Components {
- private yacyURL url;
- private final String dc_title, dc_creator, dc_subject, ETag;
-
- public Components(final String url, final String urlhash, final String title, final String author, final String tags, final String ETag) {
- try {
- this.url = new yacyURL(url, urlhash);
- } catch (final MalformedURLException e) {
- this.url = null;
- }
- this.dc_title = title;
- this.dc_creator = author;
- this.dc_subject = tags;
- this.ETag = ETag;
- }
- public Components(final yacyURL url, final String descr, final String author, final String tags, final String ETag) {
- this.url = url;
- this.dc_title = descr;
- this.dc_creator = author;
- this.dc_subject = tags;
- this.ETag = ETag;
- }
- public yacyURL url() { return this.url; }
- public String dc_title() { return this.dc_title; }
- public String dc_creator() { return this.dc_creator; }
- public String dc_subject() { return this.dc_subject; }
- public String ETag() { return this.ETag; }
- }
} \ No newline at end of file
diff --git a/source/de/anomic/index/indexContainerBLOBArray.java b/source/de/anomic/kelondro/text/ReferenceContainerArray.java
index c8940ea84..d403c2b8d 100644
--- a/source/de/anomic/index/indexContainerBLOBArray.java
+++ b/source/de/anomic/kelondro/text/ReferenceContainerArray.java
@@ -24,7 +24,7 @@
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-package de.anomic.index;
+package de.anomic.kelondro.text;
import java.io.File;
import java.io.IOException;
@@ -37,9 +37,8 @@ import de.anomic.kelondro.blob.BLOBArray;
import de.anomic.kelondro.index.Row;
import de.anomic.kelondro.index.RowSet;
import de.anomic.kelondro.order.CloneableIterator;
-import de.anomic.kelondro.text.ReferenceContainer;
-public final class indexContainerBLOBArray {
+public final class ReferenceContainerArray {
private final Row payloadrow;
private final BLOBArray array;
@@ -54,7 +53,7 @@ public final class indexContainerBLOBArray {
* @param log
* @throws IOException
*/
- public indexContainerBLOBArray(
+ public ReferenceContainerArray(
final File heapLocation,
final Row payloadrow) throws IOException {
this.payloadrow = payloadrow;
diff --git a/source/de/anomic/index/indexContainerCache.java b/source/de/anomic/kelondro/text/ReferenceContainerCache.java
index 8755286f8..12a59ffbb 100755..100644
--- a/source/de/anomic/index/indexContainerCache.java
+++ b/source/de/anomic/kelondro/text/ReferenceContainerCache.java
@@ -24,7 +24,7 @@
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-package de.anomic.index;
+package de.anomic.kelondro.text;
import java.io.BufferedInputStream;
import java.io.DataInputStream;
@@ -44,14 +44,11 @@ import de.anomic.kelondro.blob.HeapWriter;
import de.anomic.kelondro.order.CloneableIterator;
import de.anomic.kelondro.order.Base64Order;
import de.anomic.kelondro.order.ByteOrder;
-import de.anomic.kelondro.text.Index;
-import de.anomic.kelondro.text.ReferenceContainer;
-import de.anomic.kelondro.text.ReferenceRow;
import de.anomic.kelondro.util.Log;
import de.anomic.kelondro.index.Row;
import de.anomic.kelondro.index.RowSet;
-public final class indexContainerCache implements Iterable<ReferenceContainer>, Index {
+public final class ReferenceContainerCache implements Iterable<ReferenceContainer>, Index {
private final Row payloadrow;
private SortedMap<String, ReferenceContainer> cache;
@@ -63,7 +60,7 @@ public final class indexContainerCache implements Iterable<ReferenceContainer>,
* @param payloadrow
* @param log
*/
- public indexContainerCache(final Row payloadrow) {
+ public ReferenceContainerCache(final Row payloadrow) {
this.payloadrow = payloadrow;
this.cache = null;
}
diff --git a/source/de/anomic/index/indexContainerOrder.java b/source/de/anomic/kelondro/text/ReferenceContainerOrder.java
index d3b61d91a..78994c2a0 100644
--- a/source/de/anomic/index/indexContainerOrder.java
+++ b/source/de/anomic/kelondro/text/ReferenceContainerOrder.java
@@ -24,17 +24,16 @@
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-package de.anomic.index;
+package de.anomic.kelondro.text;
import de.anomic.kelondro.order.AbstractOrder;
import de.anomic.kelondro.order.Order;
-import de.anomic.kelondro.text.ReferenceContainer;
-public class indexContainerOrder extends AbstractOrder<ReferenceContainer> implements Order<ReferenceContainer>, Cloneable {
+public class ReferenceContainerOrder extends AbstractOrder<ReferenceContainer> implements Order<ReferenceContainer>, Cloneable {
private final Order<byte[]> embeddedOrder;
- public indexContainerOrder(final Order<byte[]> embedOrder) {
+ public ReferenceContainerOrder(final Order<byte[]> embedOrder) {
this.embeddedOrder = embedOrder;
}
@@ -60,7 +59,7 @@ public class indexContainerOrder extends AbstractOrder<ReferenceContainer> imple
}
public Order<ReferenceContainer> clone() {
- return new indexContainerOrder(this.embeddedOrder.clone());
+ return new ReferenceContainerOrder(this.embeddedOrder.clone());
}
public String signature() {
@@ -72,8 +71,8 @@ public class indexContainerOrder extends AbstractOrder<ReferenceContainer> imple
}
public boolean equals(final Order<ReferenceContainer> otherOrder) {
- if (!(otherOrder instanceof indexContainerOrder)) return false;
- return this.embeddedOrder.equals(((indexContainerOrder) otherOrder).embeddedOrder);
+ if (!(otherOrder instanceof ReferenceContainerOrder)) return false;
+ return this.embeddedOrder.equals(((ReferenceContainerOrder) otherOrder).embeddedOrder);
}
public long cardinal(final ReferenceContainer key) {
diff --git a/source/de/anomic/kelondro/text/URLMetadata.java b/source/de/anomic/kelondro/text/URLMetadata.java
new file mode 100644
index 000000000..d1fe9e441
--- /dev/null
+++ b/source/de/anomic/kelondro/text/URLMetadata.java
@@ -0,0 +1,35 @@
+package de.anomic.kelondro.text;
+
+import java.net.MalformedURLException;
+
+import de.anomic.yacy.yacyURL;
+
+public class URLMetadata {
+ private yacyURL url;
+ private final String dc_title, dc_creator, dc_subject, ETag;
+
+ public URLMetadata(final String url, final String urlhash, final String title, final String author, final String tags, final String ETag) {
+ try {
+ this.url = new yacyURL(url, urlhash);
+ } catch (final MalformedURLException e) {
+ this.url = null;
+ }
+ this.dc_title = title;
+ this.dc_creator = author;
+ this.dc_subject = tags;
+ this.ETag = ETag;
+ }
+ public URLMetadata(final yacyURL url, final String descr, final String author, final String tags, final String ETag) {
+ this.url = url;
+ this.dc_title = descr;
+ this.dc_creator = author;
+ this.dc_subject = tags;
+ this.ETag = ETag;
+ }
+ public yacyURL url() { return this.url; }
+ public String dc_title() { return this.dc_title; }
+ public String dc_creator() { return this.dc_creator; }
+ public String dc_subject() { return this.dc_subject; }
+ public String ETag() { return this.ETag; }
+
+}
diff --git a/source/de/anomic/plasma/plasmaDbImporter.java b/source/de/anomic/plasma/plasmaDbImporter.java
index e17910780..6227293a2 100644
--- a/source/de/anomic/plasma/plasmaDbImporter.java
+++ b/source/de/anomic/plasma/plasmaDbImporter.java
@@ -6,8 +6,8 @@ import java.util.TreeSet;
import de.anomic.crawler.AbstractImporter;
import de.anomic.crawler.Importer;
-import de.anomic.index.URLMetadata;
import de.anomic.kelondro.order.DateFormatter;
+import de.anomic.kelondro.text.MetadataRowContainer;
import de.anomic.kelondro.text.Reference;
import de.anomic.kelondro.text.ReferenceContainer;
import de.anomic.kelondro.text.ReferenceRow;
@@ -141,7 +141,7 @@ public class plasmaDbImporter extends AbstractImporter implements Importer {
// we need to import the url
// getting the url entry
- final URLMetadata urlEntry = this.importWordIndex.getURL(urlHash, null, 0);
+ final MetadataRowContainer urlEntry = this.importWordIndex.getURL(urlHash, null, 0);
if (urlEntry != null) {
/* write it into the home url db */
diff --git a/source/de/anomic/plasma/plasmaHTCache.java b/source/de/anomic/plasma/plasmaHTCache.java
index 0806dca75..2c11b806a 100644
--- a/source/de/anomic/plasma/plasmaHTCache.java
+++ b/source/de/anomic/plasma/plasmaHTCache.java
@@ -42,13 +42,13 @@ import java.util.HashMap;
import java.util.Map;
import de.anomic.http.httpResponseHeader;
-import de.anomic.index.indexDocumentMetadata;
import de.anomic.kelondro.blob.BLOB;
import de.anomic.kelondro.blob.BLOBArray;
import de.anomic.kelondro.blob.BLOBCompressor;
import de.anomic.kelondro.blob.BLOBHeap;
import de.anomic.kelondro.blob.MapView;
import de.anomic.kelondro.order.Base64Order;
+import de.anomic.kelondro.text.Document;
import de.anomic.kelondro.util.Log;
import de.anomic.kelondro.util.FileUtils;
import de.anomic.yacy.yacySeedDB;
@@ -208,7 +208,7 @@ public final class plasmaHTCache {
public static void storeMetadata(
final httpResponseHeader responseHeader,
- indexDocumentMetadata metadata
+ Document metadata
) {
if (responseHeader != null) try {
// store the response header into the header database
diff --git a/source/de/anomic/plasma/plasmaRankingCRProcess.java b/source/de/anomic/plasma/plasmaRankingCRProcess.java
index a9707bd11..f3977534b 100644
--- a/source/de/anomic/plasma/plasmaRankingCRProcess.java
+++ b/source/de/anomic/plasma/plasmaRankingCRProcess.java
@@ -30,7 +30,6 @@ import java.io.File;
import java.io.IOException;
import java.util.Iterator;
-import de.anomic.index.indexCollectionRI;
import de.anomic.kelondro.index.Row;
import de.anomic.kelondro.index.RowSet;
import de.anomic.kelondro.index.ObjectIndex;
@@ -40,6 +39,7 @@ import de.anomic.kelondro.order.CloneableIterator;
import de.anomic.kelondro.order.DateFormatter;
import de.anomic.kelondro.order.MicroDate;
import de.anomic.kelondro.table.EcoTable;
+import de.anomic.kelondro.text.IndexCollection;
import de.anomic.kelondro.text.ReferenceContainer;
import de.anomic.kelondro.util.MemoryControl;
import de.anomic.kelondro.util.AttrSeq;
@@ -141,7 +141,7 @@ public class plasmaRankingCRProcess {
return true;
}
- private static boolean accumulate_upd(final File f, final ObjectIndex acc, final indexCollectionRI seq) throws IOException {
+ private static boolean accumulate_upd(final File f, final ObjectIndex acc, final IndexCollection seq) throws IOException {
// open file
AttrSeq source_cr = null;
try {
@@ -241,11 +241,11 @@ public class plasmaRankingCRProcess {
// open target file
AttrSeq acc = null;
ObjectIndex newacc = null;
- indexCollectionRI newseq = null;
+ IndexCollection newseq = null;
if (newdb) {
final File path = to_file.getParentFile(); // path to storage place
newacc = new EcoTable(new File(path, CRG_accname), CRG_accrow, EcoTable.tailCacheUsageAuto, 0, 0);
- newseq = new indexCollectionRI(path, CRG_seqname, 12, Base64Order.enhancedCoder, 9, CRG_colrow, false);
+ newseq = new IndexCollection(path, CRG_seqname, 12, Base64Order.enhancedCoder, 9, CRG_colrow, false);
} else {
if (!(to_file.exists())) {
acc = new AttrSeq("Global Ranking Accumulator File",
@@ -373,8 +373,8 @@ public class plasmaRankingCRProcess {
public static int genrcix(final File cr_path_in, final File rci_path_out) throws IOException {
//kelondroFlexTable acc = new kelondroFlexTable(cr_path_in, CRG_accname, kelondroBase64Order.enhancedCoder, 128 * 1024 * 1024, -1, CRG_accrow, true);
- final indexCollectionRI seq = new indexCollectionRI(cr_path_in, CRG_seqname, 12, Base64Order.enhancedCoder, 9, CRG_colrow, false);
- final indexCollectionRI rci = new indexCollectionRI(rci_path_out, RCI_colname, 6, Base64Order.enhancedCoder, 9, RCI_coli, false);
+ final IndexCollection seq = new IndexCollection(cr_path_in, CRG_seqname, 12, Base64Order.enhancedCoder, 9, CRG_colrow, false);
+ final IndexCollection rci = new IndexCollection(rci_path_out, RCI_colname, 6, Base64Order.enhancedCoder, 9, RCI_coli, false);
// loop over all referees
int count = 0;
diff --git a/source/de/anomic/plasma/plasmaSearchAPI.java b/source/de/anomic/plasma/plasmaSearchAPI.java
index f62f4c989..59e165538 100644
--- a/source/de/anomic/plasma/plasmaSearchAPI.java
+++ b/source/de/anomic/plasma/plasmaSearchAPI.java
@@ -33,11 +33,11 @@ import java.util.Iterator;
import java.util.List;
import de.anomic.data.listManager;
-import de.anomic.index.indexReferenceBlacklist;
-import de.anomic.index.URLMetadata;
import de.anomic.kelondro.order.Bitfield;
import de.anomic.kelondro.order.DateFormatter;
+import de.anomic.kelondro.text.MetadataRowContainer;
import de.anomic.kelondro.text.Reference;
+import de.anomic.kelondro.text.Blacklist;
import de.anomic.server.serverObjects;
import de.anomic.yacy.yacySeed;
import de.anomic.yacy.yacyURL;
@@ -126,12 +126,12 @@ public class plasmaSearchAPI {
prop.put("genUrlList_lines", maxlines);
int i = 0;
yacyURL url;
- URLMetadata entry;
+ MetadataRowContainer entry;
String us;
long rn = -1;
while ((ranked.size() > 0) && ((entry = ranked.bestURL(false)) != null)) {
- if ((entry == null) || (entry.comp() == null)) continue;
- url = entry.comp().url();
+ if ((entry == null) || (entry.metadata() == null)) continue;
+ url = entry.metadata().url();
if (url == null) continue;
us = url.toNormalform(false, false);
if (rn == -1) rn = entry.ranking();
@@ -174,7 +174,7 @@ public class plasmaSearchAPI {
((entry.word().flags().get(Reference.flag_app_emphasized)) ? "appears emphasized, " : "") +
((yacyURL.probablyRootURL(entry.word().urlHash())) ? "probably root url" : "")
);
- if (plasmaSwitchboard.urlBlacklist.isListed(indexReferenceBlacklist.BLACKLIST_DHT, url)) {
+ if (plasmaSwitchboard.urlBlacklist.isListed(Blacklist.BLACKLIST_DHT, url)) {
prop.put("genUrlList_urlList_"+i+"_urlExists_urlhxChecked", "1");
}
i++;
diff --git a/source/de/anomic/plasma/plasmaSearchEvent.java b/source/de/anomic/plasma/plasmaSearchEvent.java
index d032a908a..73af76a57 100644
--- a/source/de/anomic/plasma/plasmaSearchEvent.java
+++ b/source/de/anomic/plasma/plasmaSearchEvent.java
@@ -37,11 +37,12 @@ import java.util.TreeSet;
import java.util.concurrent.ConcurrentHashMap;
import de.anomic.crawler.ResultURLs;
-import de.anomic.index.URLMetadata;
import de.anomic.kelondro.order.Bitfield;
+import de.anomic.kelondro.text.MetadataRowContainer;
import de.anomic.kelondro.text.Reference;
import de.anomic.kelondro.text.ReferenceContainer;
import de.anomic.kelondro.text.ReferenceVars;
+import de.anomic.kelondro.text.URLMetadata;
import de.anomic.kelondro.util.MemoryControl;
import de.anomic.kelondro.util.SetTools;
import de.anomic.kelondro.util.SortStack;
@@ -257,7 +258,7 @@ public final class plasmaSearchEvent {
}
}
- ResultEntry obtainResultEntry(final URLMetadata page, final int snippetFetchMode) {
+ ResultEntry obtainResultEntry(final MetadataRowContainer page, final int snippetFetchMode) {
// a search result entry needs some work to produce a result Entry:
// - check if url entry exists in LURL-db
@@ -273,14 +274,14 @@ public final class plasmaSearchEvent {
// find the url entry
long startTime = System.currentTimeMillis();
- final URLMetadata.Components comp = page.comp();
- final String pagetitle = comp.dc_title().toLowerCase();
- if (comp.url() == null) {
+ final URLMetadata metadata = page.metadata();
+ final String pagetitle = metadata.dc_title().toLowerCase();
+ if (metadata.url() == null) {
registerFailure(page.hash(), "url corrupted (null)");
return null; // rare case where the url is corrupted
}
- final String pageurl = comp.url().toString().toLowerCase();
- final String pageauthor = comp.dc_creator().toLowerCase();
+ final String pageurl = metadata.url().toString().toLowerCase();
+ final String pageauthor = metadata.dc_creator().toLowerCase();
final long dbRetrievalTime = System.currentTimeMillis() - startTime;
// check exclusion
@@ -298,7 +299,7 @@ public final class plasmaSearchEvent {
// check constraints
if ((query.constraint != null) &&
(query.constraint.get(plasmaCondenser.flag_cat_indexof)) &&
- (!(comp.dc_title().startsWith("Index of")))) {
+ (!(metadata.dc_title().startsWith("Index of")))) {
final Iterator<String> wi = query.queryHashes.iterator();
while (wi.hasNext()) wordIndex.removeReference(wi.next(), page.hash());
registerFailure(page.hash(), "index-of constraint not fullfilled");
@@ -330,9 +331,9 @@ public final class plasmaSearchEvent {
if (query.contentdom == plasmaSearchQuery.CONTENTDOM_TEXT) {
// attach text snippet
startTime = System.currentTimeMillis();
- final plasmaSnippetCache.TextSnippet snippet = plasmaSnippetCache.retrieveTextSnippet(comp, snippetFetchWordHashes, (snippetFetchMode == 2), ((query.constraint != null) && (query.constraint.get(plasmaCondenser.flag_cat_indexof))), 180, 3000, (snippetFetchMode == 2) ? Integer.MAX_VALUE : 30000, query.isGlobal());
+ final plasmaSnippetCache.TextSnippet snippet = plasmaSnippetCache.retrieveTextSnippet(metadata, snippetFetchWordHashes, (snippetFetchMode == 2), ((query.constraint != null) && (query.constraint.get(plasmaCondenser.flag_cat_indexof))), 180, 3000, (snippetFetchMode == 2) ? Integer.MAX_VALUE : 30000, query.isGlobal());
final long snippetComputationTime = System.currentTimeMillis() - startTime;
- Log.logInfo("SEARCH_EVENT", "text snippet load time for " + comp.url() + ": " + snippetComputationTime + ", " + ((snippet.getErrorCode() < 11) ? "snippet found" : ("no snippet found (" + snippet.getError() + ")")));
+ Log.logInfo("SEARCH_EVENT", "text snippet load time for " + metadata.url() + ": " + snippetComputationTime + ", " + ((snippet.getErrorCode() < 11) ? "snippet found" : ("no snippet found (" + snippet.getError() + ")")));
if (snippet.getErrorCode() < 11) {
// we loaded the file and found the snippet
@@ -343,16 +344,16 @@ public final class plasmaSearchEvent {
return new ResultEntry(page, wordIndex, null, null, dbRetrievalTime, snippetComputationTime); // result without snippet
} else {
// problems with snippet fetch
- registerFailure(page.hash(), "no text snippet for URL " + comp.url());
+ registerFailure(page.hash(), "no text snippet for URL " + metadata.url());
if (!wordIndex.seedDB.mySeed().isVirgin()) plasmaSnippetCache.failConsequences(snippet, query.id(false));
return null;
}
} else {
// attach media information
startTime = System.currentTimeMillis();
- final ArrayList<MediaSnippet> mediaSnippets = plasmaSnippetCache.retrieveMediaSnippets(comp.url(), snippetFetchWordHashes, query.contentdom, (snippetFetchMode == 2), 6000, query.isGlobal());
+ final ArrayList<MediaSnippet> mediaSnippets = plasmaSnippetCache.retrieveMediaSnippets(metadata.url(), snippetFetchWordHashes, query.contentdom, (snippetFetchMode == 2), 6000, query.isGlobal());
final long snippetComputationTime = System.currentTimeMillis() - startTime;
- Log.logInfo("SEARCH_EVENT", "media snippet load time for " + comp.url() + ": " + snippetComputationTime);
+ Log.logInfo("SEARCH_EVENT", "media snippet load time for " + metadata.url() + ": " + snippetComputationTime);
if ((mediaSnippets != null) && (mediaSnippets.size() > 0)) {
// found media snippets, return entry
@@ -361,7 +362,7 @@ public final class plasmaSearchEvent {
return new ResultEntry(page, wordIndex, null, null, dbRetrievalTime, snippetComputationTime);
} else {
// problems with snippet fetch
- registerFailure(page.hash(), "no media snippet for URL " + comp.url());
+ registerFailure(page.hash(), "no media snippet for URL " + metadata.url());
return null;
}
}
@@ -500,7 +501,7 @@ public final class plasmaSearchEvent {
public void run() {
// start fetching urls and snippets
- URLMetadata page;
+ MetadataRowContainer page;
final int fetchAhead = snippetMode == 0 ? 0 : 10;
while (System.currentTimeMillis() < this.timeout) {
this.lastLifeSign = System.currentTimeMillis();
@@ -791,8 +792,8 @@ public final class plasmaSearchEvent {
public static class ResultEntry {
// payload objects
- private final URLMetadata urlentry;
- private final URLMetadata.Components urlcomps; // buffer for components
+ private final MetadataRowContainer urlentry;
+ private final URLMetadata urlcomps; // buffer for components
private String alternative_urlstring;
private String alternative_urlname;
private final plasmaSnippetCache.TextSnippet textSnippet;
@@ -801,12 +802,12 @@ public final class plasmaSearchEvent {
// statistic objects
public long dbRetrievalTime, snippetComputationTime;
- public ResultEntry(final URLMetadata urlentry, final plasmaWordIndex wordIndex,
+ public ResultEntry(final MetadataRowContainer urlentry, final plasmaWordIndex wordIndex,
final plasmaSnippetCache.TextSnippet textSnippet,
final ArrayList<plasmaSnippetCache.MediaSnippet> mediaSnippets,
final long dbRetrievalTime, final long snippetComputationTime) {
this.urlentry = urlentry;
- this.urlcomps = urlentry.comp();
+ this.urlcomps = urlentry.metadata();
this.alternative_urlstring = null;
this.alternative_urlname = null;
this.textSnippet = textSnippet;
diff --git a/source/de/anomic/plasma/plasmaSearchRankingProcess.java b/source/de/anomic/plasma/plasmaSearchRankingProcess.java
index 765f10d03..013a4df85 100644
--- a/source/de/anomic/plasma/plasmaSearchRankingProcess.java
+++ b/source/de/anomic/plasma/plasmaSearchRankingProcess.java
@@ -37,13 +37,14 @@ import java.util.TreeSet;
import java.util.concurrent.ConcurrentHashMap;
import de.anomic.htmlFilter.htmlFilterContentScraper;
-import de.anomic.index.URLMetadata;
import de.anomic.kelondro.index.BinSearch;
import de.anomic.kelondro.order.Digest;
+import de.anomic.kelondro.text.MetadataRowContainer;
import de.anomic.kelondro.text.Reference;
import de.anomic.kelondro.text.ReferenceContainer;
import de.anomic.kelondro.text.ReferenceOrder;
import de.anomic.kelondro.text.ReferenceVars;
+import de.anomic.kelondro.text.URLMetadata;
import de.anomic.kelondro.text.Word;
import de.anomic.kelondro.util.ScoreCluster;
import de.anomic.kelondro.util.SortStack;
@@ -288,16 +289,16 @@ public final class plasmaSearchRankingProcess {
return bestEntry;
}
- public URLMetadata bestURL(final boolean skipDoubleDom) {
+ public MetadataRowContainer bestURL(final boolean skipDoubleDom) {
// returns from the current RWI list the best URL entry and removed this entry from the list
while ((stack.size() > 0) || (size() > 0)) {
if (((stack.size() == 0) && (size() == 0))) break;
final SortStack<ReferenceVars>.stackElement obrwi = bestRWI(skipDoubleDom);
if (obrwi == null) continue; // *** ? this happened and the thread was suspended silently. cause?
- final URLMetadata u = wordIndex.getURL(obrwi.element.urlHash(), obrwi.element, obrwi.weight.longValue());
+ final MetadataRowContainer u = wordIndex.getURL(obrwi.element.urlHash(), obrwi.element, obrwi.weight.longValue());
if (u != null) {
- final URLMetadata.Components comp = u.comp();
- if (comp.url() != null) this.handover.put(u.hash(), comp.url().toNormalform(true, false)); // remember that we handed over this url
+ final URLMetadata metadata = u.metadata();
+ if (metadata.url() != null) this.handover.put(u.hash(), metadata.url().toNormalform(true, false)); // remember that we handed over this url
return u;
}
misses.add(obrwi.element.urlHash());
diff --git a/source/de/anomic/plasma/plasmaSnippetCache.java b/source/de/anomic/plasma/plasmaSnippetCache.java
index bdb6e3e45..855431137 100644
--- a/source/de/anomic/plasma/plasmaSnippetCache.java
+++ b/source/de/anomic/plasma/plasmaSnippetCache.java
@@ -43,8 +43,8 @@ import de.anomic.htmlFilter.htmlFilterCharacterCoding;
import de.anomic.htmlFilter.htmlFilterImageEntry;
import de.anomic.http.httpClient;
import de.anomic.http.httpResponseHeader;
-import de.anomic.index.indexDocumentMetadata;
-import de.anomic.index.URLMetadata;
+import de.anomic.kelondro.text.Document;
+import de.anomic.kelondro.text.URLMetadata;
import de.anomic.kelondro.text.Word;
import de.anomic.kelondro.util.ScoreCluster;
import de.anomic.kelondro.util.SetTools;
@@ -302,7 +302,7 @@ public class plasmaSnippetCache {
}
@SuppressWarnings("unchecked")
- public static TextSnippet retrieveTextSnippet(final URLMetadata.Components comp, final Set<String> queryhashes, final boolean fetchOnline, final boolean pre, final int snippetMaxLength, final int timeout, final int maxDocLen, final boolean reindexing) {
+ public static TextSnippet retrieveTextSnippet(final URLMetadata comp, final Set<String> queryhashes, final boolean fetchOnline, final boolean pre, final int snippetMaxLength, final int timeout, final int maxDocLen, final boolean reindexing) {
// heise = "0OQUNU3JSs05"
final yacyURL url = comp.url();
if (queryhashes.size() == 0) {
@@ -349,7 +349,7 @@ public class plasmaSnippetCache {
// if not found try to download it
// download resource using the crawler and keep resource in memory if possible
- final indexDocumentMetadata entry = plasmaSwitchboard.getSwitchboard().crawlQueues.loadResourceFromWeb(url, timeout, true, true, reindexing);
+ final Document entry = plasmaSwitchboard.getSwitchboard().crawlQueues.loadResourceFromWeb(url, timeout, true, true, reindexing);
// getting resource metadata (e.g. the http headers for http resources)
if (entry != null) {
@@ -460,7 +460,7 @@ public class plasmaSnippetCache {
// if not found try to download it
// download resource using the crawler and keep resource in memory if possible
- final indexDocumentMetadata entry = plasmaSwitchboard.getSwitchboard().crawlQueues.loadResourceFromWeb(url, timeout, true, forText, global);
+ final Document entry = plasmaSwitchboard.getSwitchboard().crawlQueues.loadResourceFromWeb(url, timeout, true, forText, global);
// getting resource metadata (e.g. the http headers for http resources)
if (entry != null) {
@@ -917,7 +917,7 @@ public class plasmaSnippetCache {
// if the content is not available in cache try to download it from web
// try to download the resource using a crawler
- final indexDocumentMetadata entry = plasmaSwitchboard.getSwitchboard().crawlQueues.loadResourceFromWeb(url, (socketTimeout < 0) ? -1 : socketTimeout, true, forText, reindexing);
+ final Document entry = plasmaSwitchboard.getSwitchboard().crawlQueues.loadResourceFromWeb(url, (socketTimeout < 0) ? -1 : socketTimeout, true, forText, reindexing);
if (entry == null) return null; // not found in web
// read resource body (if it is there)
diff --git a/source/de/anomic/plasma/plasmaSwitchboard.java b/source/de/anomic/plasma/plasmaSwitchboard.java
index daea12176..50a3a807d 100644
--- a/source/de/anomic/plasma/plasmaSwitchboard.java
+++ b/source/de/anomic/plasma/plasmaSwitchboard.java
@@ -137,12 +137,13 @@ import de.anomic.http.httpRequestHeader;
import de.anomic.http.httpResponseHeader;
import de.anomic.http.httpd;
import de.anomic.http.httpdRobotsTxtConfig;
-import de.anomic.index.indexDocumentMetadata;
-import de.anomic.index.indexReferenceBlacklist;
-import de.anomic.index.URLMetadata;
import de.anomic.kelondro.order.DateFormatter;
import de.anomic.kelondro.order.Digest;
import de.anomic.kelondro.order.NaturalOrder;
+import de.anomic.kelondro.text.Document;
+import de.anomic.kelondro.text.MetadataRowContainer;
+import de.anomic.kelondro.text.URLMetadata;
+import de.anomic.kelondro.text.Blacklist;
import de.anomic.kelondro.util.FileUtils;
import de.anomic.kelondro.util.Log;
import de.anomic.kelondro.util.MemoryControl;
@@ -185,7 +186,7 @@ public final class plasmaSwitchboard extends serverAbstractSwitch<IndexingStack.
public static TreeSet<String> badwords = null;
public static TreeSet<String> blueList = null;
public static TreeSet<String> stopwords = null;
- public static indexReferenceBlacklist urlBlacklist = null;
+ public static Blacklist urlBlacklist = null;
public static wikiParser wikiParser = null;
@@ -364,25 +365,29 @@ public final class plasmaSwitchboard extends serverAbstractSwitch<IndexingStack.
// load the black-list / inspired by [AS]
final File blacklistsPath = getConfigPath(plasmaSwitchboardConstants.LISTS_PATH, plasmaSwitchboardConstants.LISTS_PATH_DEFAULT);
- String blacklistClassName = getConfig(plasmaSwitchboardConstants.BLACKLIST_CLASS, plasmaSwitchboardConstants.BLACKLIST_CLASS_DEFAULT);
- if (blacklistClassName.equals("de.anomic.plasma.urlPattern.defaultURLPattern")) {
- // patch old class location
- blacklistClassName = plasmaSwitchboardConstants.BLACKLIST_CLASS_DEFAULT;
- setConfig(plasmaSwitchboardConstants.BLACKLIST_CLASS, blacklistClassName);
- }
+ String[] blacklistClassName = new String[] {
+ getConfig(plasmaSwitchboardConstants.BLACKLIST_CLASS, plasmaSwitchboardConstants.BLACKLIST_CLASS_DEFAULT),
+ plasmaSwitchboardConstants.BLACKLIST_CLASS_DEFAULT
+ };
this.log.logConfig("Starting blacklist engine ...");
- try {
- final Class<?> blacklistClass = Class.forName(blacklistClassName);
- final Constructor<?> blacklistClassConstr = blacklistClass.getConstructor( new Class[] { File.class } );
- urlBlacklist = (indexReferenceBlacklist) blacklistClassConstr.newInstance(new Object[] { blacklistsPath });
- this.log.logFine("Used blacklist engine class: " + blacklistClassName);
- this.log.logConfig("Using blacklist engine: " + urlBlacklist.getEngineInfo());
- } catch (final Exception e) {
- this.log.logSevere("Unable to load the blacklist engine",e);
- System.exit(-1);
- } catch (final Error e) {
- this.log.logSevere("Unable to load the blacklist engine",e);
+ urlBlacklist = null;
+ for (int i = 0; i < blacklistClassName.length; i++) {
+ try {
+ final Class<?> blacklistClass = Class.forName(blacklistClassName[i]);
+ final Constructor<?> blacklistClassConstr = blacklistClass.getConstructor( new Class[] { File.class } );
+ urlBlacklist = (Blacklist) blacklistClassConstr.newInstance(new Object[] { blacklistsPath });
+ this.log.logFine("Used blacklist engine class: " + blacklistClassName);
+ this.log.logConfig("Using blacklist engine: " + urlBlacklist.getEngineInfo());
+ break;
+ } catch (final Exception e) {
+ continue; // try next
+ } catch (final Error e) {
+ continue; // try next
+ }
+ }
+ if (urlBlacklist == null) {
+ this.log.logSevere("Unable to load the blacklist engine");
System.exit(-1);
}
@@ -928,8 +933,8 @@ public final class plasmaSwitchboard extends serverAbstractSwitch<IndexingStack.
if (urlhash.length() == 0) return null;
final yacyURL ne = crawlQueues.getURL(urlhash);
if (ne != null) return ne;
- final URLMetadata le = webIndex.getURL(urlhash, null, 0);
- if (le != null) return le.comp().url();
+ final MetadataRowContainer le = webIndex.getURL(urlhash, null, 0);
+ if (le != null) return le.metadata().url();
return null;
}
@@ -985,7 +990,7 @@ public final class plasmaSwitchboard extends serverAbstractSwitch<IndexingStack.
return this.webIndex.cleanProfiles();
}
- public boolean htEntryStoreProcess(final indexDocumentMetadata entry) {
+ public boolean htEntryStoreProcess(final Document entry) {
if (entry == null) return false;
@@ -1642,7 +1647,7 @@ public final class plasmaSwitchboard extends serverAbstractSwitch<IndexingStack.
log.logInfo("Excluded " + condenser.excludeWords(stopwords) + " words in URL " + queueEntry.url());
// STORE URL TO LOADED-URL-DB
- URLMetadata newEntry = null;
+ MetadataRowContainer newEntry = null;
try {
newEntry = webIndex.storeDocument(queueEntry, document, condenser);
} catch (final IOException e) {
@@ -1690,9 +1695,9 @@ public final class plasmaSwitchboard extends serverAbstractSwitch<IndexingStack.
public class receiptSending implements Runnable {
yacySeed initiatorPeer;
- URLMetadata reference;
+ MetadataRowContainer reference;
- public receiptSending(final yacySeed initiatorPeer, final URLMetadata reference) {
+ public receiptSending(final yacySeed initiatorPeer, final MetadataRowContainer reference) {
this.initiatorPeer = initiatorPeer;
this.reference = reference;
}
@@ -1737,17 +1742,17 @@ public final class plasmaSwitchboard extends serverAbstractSwitch<IndexingStack.
if (urlhash == null) return 0;
// determine the url string
- final URLMetadata entry = webIndex.getURL(urlhash, null, 0);
+ final MetadataRowContainer entry = webIndex.getURL(urlhash, null, 0);
if (entry == null) return 0;
- final URLMetadata.Components comp = entry.comp();
- if (comp.url() == null) return 0;
+ final URLMetadata metadata = entry.metadata();
+ if (metadata.url() == null) return 0;
InputStream resourceContent = null;
try {
// get the resource content
Object[] resource = null;
try {
- resource = plasmaSnippetCache.getResource(comp.url(), fetchOnline, 10000, true, false);
+ resource = plasmaSnippetCache.getResource(metadata.url(), fetchOnline, 10000, true, false);
} catch (IOException e) {
Log.logWarning("removeAllUrlReferences", "cannot load: " + e.getMessage());
}
@@ -1760,7 +1765,7 @@ public final class plasmaSwitchboard extends serverAbstractSwitch<IndexingStack.
final Long resourceContentLength = (Long) resource[1];
// parse the resource
- final plasmaParserDocument document = plasmaSnippetCache.parseDocument(comp.url(), resourceContentLength.longValue(), resourceContent);
+ final plasmaParserDocument document = plasmaSnippetCache.parseDocument(metadata.url(), resourceContentLength.longValue(), resourceContent);
// get the word set
Set<String> words = null;
diff --git a/source/de/anomic/plasma/plasmaSwitchboardConstants.java b/source/de/anomic/plasma/plasmaSwitchboardConstants.java
index 6de249537..e84210aee 100644
--- a/source/de/anomic/plasma/plasmaSwitchboardConstants.java
+++ b/source/de/anomic/plasma/plasmaSwitchboardConstants.java
@@ -338,11 +338,11 @@ public final class plasmaSwitchboardConstants {
public static final String BLACKLIST_CLASS = "BlackLists.class";
/**
* <p><code>public static final String <strong>BLACKLIST_CLASS_DEFAULT</strong> = "de.anomic.plasma.urlPattern.defaultURLPattern"</code></p>
- * <p>Package and name of YaCy's {@link indexDefaultReferenceBlacklist default} blacklist implementation</p>
+ * <p>Package and name of YaCy's {@link DefaultBlacklist default} blacklist implementation</p>
*
- * @see indexDefaultReferenceBlacklist for a detailed overview about the syntax of the default implementation
+ * @see DefaultBlacklist for a detailed overview about the syntax of the default implementation
*/
- public static final String BLACKLIST_CLASS_DEFAULT = "de.anomic.index.indexDefaultReferenceBlacklist";
+ public static final String BLACKLIST_CLASS_DEFAULT = "de.anomic.kelondro.text.DefaultBlacklist";
public static final String LIST_BLUE = "plasmaBlueList";
public static final String LIST_BLUE_DEFAULT = null;
public static final String LIST_BADWORDS_DEFAULT = "yacy.badwords";
diff --git a/source/de/anomic/plasma/plasmaWordIndex.java b/source/de/anomic/plasma/plasmaWordIndex.java
index 5dfb18721..3fee5dabc 100644
--- a/source/de/anomic/plasma/plasmaWordIndex.java
+++ b/source/de/anomic/plasma/plasmaWordIndex.java
@@ -41,12 +41,6 @@ import de.anomic.crawler.CrawlProfile;
import de.anomic.crawler.IndexingStack;
import de.anomic.htmlFilter.htmlFilterContentScraper;
import de.anomic.http.httpdProxyCacheEntry;
-import de.anomic.index.indexCollectionRI;
-import de.anomic.index.indexContainerOrder;
-import de.anomic.index.indexReferenceBlacklist;
-import de.anomic.index.URLMetadataRepository;
-import de.anomic.index.URLMetadata;
-import de.anomic.index.URLMetadataRepository.Export;
import de.anomic.kelondro.index.RowCollection;
import de.anomic.kelondro.order.Base64Order;
import de.anomic.kelondro.order.ByteOrder;
@@ -56,10 +50,16 @@ import de.anomic.kelondro.order.Order;
import de.anomic.kelondro.order.RotateIterator;
import de.anomic.kelondro.text.Index;
import de.anomic.kelondro.text.IndexCache;
+import de.anomic.kelondro.text.IndexCollection;
+import de.anomic.kelondro.text.MetadataRowContainer;
import de.anomic.kelondro.text.Reference;
import de.anomic.kelondro.text.ReferenceContainer;
+import de.anomic.kelondro.text.ReferenceContainerOrder;
import de.anomic.kelondro.text.ReferenceRow;
+import de.anomic.kelondro.text.MetadataRepository;
import de.anomic.kelondro.text.Word;
+import de.anomic.kelondro.text.Blacklist;
+import de.anomic.kelondro.text.MetadataRepository.Export;
import de.anomic.kelondro.util.MemoryControl;
import de.anomic.kelondro.util.kelondroException;
import de.anomic.kelondro.util.Log;
@@ -97,9 +97,9 @@ public final class plasmaWordIndex implements Index {
private final IndexCache indexCache;
- private final indexCollectionRI collections; // new database structure to replace AssortmentCluster and FileCluster
+ private final IndexCollection collections; // new database structure to replace AssortmentCluster and FileCluster
private final Log log;
- public URLMetadataRepository referenceURL;
+ public MetadataRepository referenceURL;
public final yacySeedDB seedDB;
private final File primaryRoot, secondaryRoot;
public IndexingStack queuePreStack;
@@ -161,7 +161,7 @@ public final class plasmaWordIndex implements Index {
// create collections storage path
final File textindexcollections = new File(indexPrimaryTextLocation, "RICOLLECTION");
if (!(textindexcollections.exists())) textindexcollections.mkdirs();
- this.collections = new indexCollectionRI(
+ this.collections = new IndexCollection(
textindexcollections,
"collection",
12,
@@ -171,7 +171,7 @@ public final class plasmaWordIndex implements Index {
useCommons);
// create LURL-db
- referenceURL = new URLMetadataRepository(this.secondaryRoot);
+ referenceURL = new MetadataRepository(this.secondaryRoot);
// make crawl profiles database and default profiles
this.queuesRoot = new File(this.primaryRoot, "QUEUES");
@@ -377,11 +377,11 @@ public final class plasmaWordIndex implements Index {
return (primary) ? this.primaryRoot : this.secondaryRoot;
}
- public void putURL(final URLMetadata entry) throws IOException {
+ public void putURL(final MetadataRowContainer entry) throws IOException {
this.referenceURL.store(entry);
}
- public URLMetadata getURL(final String urlHash, final Reference searchedWord, final long ranking) {
+ public MetadataRowContainer getURL(final String urlHash, final Reference searchedWord, final long ranking) {
return this.referenceURL.load(urlHash, searchedWord, ranking);
}
@@ -405,11 +405,11 @@ public final class plasmaWordIndex implements Index {
return this.referenceURL.export();
}
- public CloneableIterator<URLMetadata> entriesURL(final boolean up, final String firstHash) throws IOException {
+ public CloneableIterator<MetadataRowContainer> entriesURL(final boolean up, final String firstHash) throws IOException {
return this.referenceURL.entries(up, firstHash);
}
- public Iterator<URLMetadataRepository.hostStat> statistics(int count) throws IOException {
+ public Iterator<MetadataRepository.hostStat> statistics(int count) throws IOException {
return this.referenceURL.statistics(count);
}
@@ -417,7 +417,7 @@ public final class plasmaWordIndex implements Index {
return this.referenceURL.deleteDomain(urlfragment);
}
- public URLMetadataRepository.BlacklistCleaner getURLCleaner(final indexReferenceBlacklist blacklist) {
+ public MetadataRepository.BlacklistCleaner getURLCleaner(final Blacklist blacklist) {
return this.referenceURL.getBlacklistCleaner(blacklist); // thread is not already started after this is called!
}
@@ -769,7 +769,7 @@ public final class plasmaWordIndex implements Index {
public synchronized TreeSet<ReferenceContainer> indexContainerSet(final String startHash, final boolean ram, final boolean rot, int count) {
// creates a set of indexContainers
// this does not use the cache
- final Order<ReferenceContainer> containerOrder = new indexContainerOrder(indexOrder.clone());
+ final Order<ReferenceContainer> containerOrder = new ReferenceContainerOrder(indexOrder.clone());
containerOrder.rotate(emptyContainer(startHash, 0));
final TreeSet<ReferenceContainer> containers = new TreeSet<ReferenceContainer>(containerOrder);
final Iterator<ReferenceContainer> i = referenceIterator(startHash, rot, ram);
@@ -789,7 +789,7 @@ public final class plasmaWordIndex implements Index {
return containers; // this may return less containers as demanded
}
- public URLMetadata storeDocument(final IndexingStack.QueueEntry entry, final plasmaParserDocument document, final plasmaCondenser condenser) throws IOException {
+ public MetadataRowContainer storeDocument(final IndexingStack.QueueEntry entry, final plasmaParserDocument document, final plasmaCondenser condenser) throws IOException {
final long startTime = System.currentTimeMillis();
// CREATE INDEX
@@ -842,7 +842,7 @@ public final class plasmaWordIndex implements Index {
// create a new loaded URL db entry
final long ldate = System.currentTimeMillis();
- final URLMetadata newEntry = new URLMetadata(
+ final MetadataRowContainer newEntry = new MetadataRowContainer(
entry.url(), // URL
dc_title, // document description
document.dc_creator(), // author
@@ -912,7 +912,7 @@ public final class plasmaWordIndex implements Index {
}
private synchronized CloneableIterator<ReferenceContainer> wordContainers(final String startWordHash, final boolean ram) {
- final Order<ReferenceContainer> containerOrder = new indexContainerOrder(indexOrder.clone());
+ final Order<ReferenceContainer> containerOrder = new ReferenceContainerOrder(indexOrder.clone());
containerOrder.rotate(emptyContainer(startWordHash, 0));
if (ram) {
return indexCache.referenceIterator(startWordHash, false, true);
@@ -963,12 +963,12 @@ public final class plasmaWordIndex implements Index {
entry = containerIterator.next();
// System.out.println("Wordhash: "+wordHash+" UrlHash:
// "+entry.getUrlHash());
- final URLMetadata ue = referenceURL.load(entry.urlHash(), entry, 0);
+ final MetadataRowContainer ue = referenceURL.load(entry.urlHash(), entry, 0);
if (ue == null) {
urlHashs.add(entry.urlHash());
} else {
- url = ue.comp().url();
- if ((url == null) || (plasmaSwitchboard.urlBlacklist.isListed(indexReferenceBlacklist.BLACKLIST_CRAWLER, url) == true)) {
+ url = ue.metadata().url();
+ if ((url == null) || (plasmaSwitchboard.urlBlacklist.isListed(Blacklist.BLACKLIST_CRAWLER, url) == true)) {
urlHashs.add(entry.urlHash());
}
}
diff --git a/source/de/anomic/yacy/dht/Dispatcher.java b/source/de/anomic/yacy/dht/Dispatcher.java
index 181f452a8..ea6e44ce7 100755
--- a/source/de/anomic/yacy/dht/Dispatcher.java
+++ b/source/de/anomic/yacy/dht/Dispatcher.java
@@ -31,11 +31,11 @@ import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
-import de.anomic.index.URLMetadataRepository;
import de.anomic.kelondro.order.Base64Order;
import de.anomic.kelondro.text.Index;
import de.anomic.kelondro.text.ReferenceContainer;
import de.anomic.kelondro.text.ReferenceRow;
+import de.anomic.kelondro.text.MetadataRepository;
import de.anomic.kelondro.util.Log;
import de.anomic.server.serverProcessor;
import de.anomic.yacy.yacySeed;
@@ -96,7 +96,7 @@ public class Dispatcher {
public Dispatcher(
final Index backend,
- final URLMetadataRepository repository,
+ final MetadataRepository repository,
final yacySeedDB seeds,
final boolean gzipBody,
final int timeout
diff --git a/source/de/anomic/yacy/dht/Transmission.java b/source/de/anomic/yacy/dht/Transmission.java
index 2c97de79d..405a9bc9b 100644
--- a/source/de/anomic/yacy/dht/Transmission.java
+++ b/source/de/anomic/yacy/dht/Transmission.java
@@ -30,13 +30,13 @@ import java.util.HashMap;
import java.util.HashSet;
import java.util.Iterator;
-import de.anomic.index.indexContainerCache;
-import de.anomic.index.URLMetadataRepository;
-import de.anomic.index.URLMetadata;
import de.anomic.kelondro.index.Row;
import de.anomic.kelondro.text.Index;
+import de.anomic.kelondro.text.MetadataRowContainer;
import de.anomic.kelondro.text.ReferenceContainer;
+import de.anomic.kelondro.text.ReferenceContainerCache;
import de.anomic.kelondro.text.ReferenceRow;
+import de.anomic.kelondro.text.MetadataRepository;
import de.anomic.kelondro.util.Log;
import de.anomic.server.serverProcessorJob;
import de.anomic.yacy.yacyClient;
@@ -46,7 +46,7 @@ import de.anomic.yacy.yacySeedDB;
public class Transmission {
private Log log;
- private URLMetadataRepository repository;
+ private MetadataRepository repository;
private yacySeedDB seeds;
private Index backend;
private boolean gzipBody4Transfer;
@@ -54,7 +54,7 @@ public class Transmission {
public Transmission(
Log log,
- URLMetadataRepository repository,
+ MetadataRepository repository,
yacySeedDB seeds,
Index backend,
boolean gzipBody4Transfer,
@@ -86,8 +86,8 @@ public class Transmission {
* - a counter that gives the number of sucessful and unsuccessful transmissions so far
*/
private String primaryTarget;
- private indexContainerCache containers;
- private HashMap<String, URLMetadata> references;
+ private ReferenceContainerCache containers;
+ private HashMap<String, MetadataRowContainer> references;
private HashSet<String> badReferences;
private ArrayList<yacySeed> targets;
private int hit, miss;
@@ -106,9 +106,9 @@ public class Transmission {
final Row payloadrow) {
super();
this.primaryTarget = primaryTarget;
- this.containers = new indexContainerCache(payloadrow);
+ this.containers = new ReferenceContainerCache(payloadrow);
this.containers.initWriteMode();
- this.references = new HashMap<String, URLMetadata>();
+ this.references = new HashMap<String, MetadataRowContainer>();
this.badReferences = new HashSet<String>();
this.targets = targets;
this.hit = 0;
@@ -127,7 +127,7 @@ public class Transmission {
while (i.hasNext()) {
ReferenceRow e = i.next();
if (references.containsKey(e.urlHash()) || badReferences.contains(e.urlHash())) continue;
- URLMetadata r = repository.load(e.urlHash(), null, 0);
+ MetadataRowContainer r = repository.load(e.urlHash(), null, 0);
if (r == null) {
notFound.add(e.urlHash());
badReferences.add(e.urlHash());
diff --git a/source/de/anomic/yacy/yacyClient.java b/source/de/anomic/yacy/yacyClient.java
index f9bd1cb58..3b2ee1d9c 100644
--- a/source/de/anomic/yacy/yacyClient.java
+++ b/source/de/anomic/yacy/yacyClient.java
@@ -66,16 +66,17 @@ import de.anomic.http.httpClient;
import de.anomic.http.httpResponse;
import de.anomic.http.httpRemoteProxyConfig;
import de.anomic.http.httpRequestHeader;
-import de.anomic.index.indexContainerCache;
-import de.anomic.index.indexReferenceBlacklist;
-import de.anomic.index.URLMetadata;
import de.anomic.kelondro.order.Base64Order;
import de.anomic.kelondro.order.Bitfield;
import de.anomic.kelondro.order.Digest;
+import de.anomic.kelondro.text.MetadataRowContainer;
import de.anomic.kelondro.text.Reference;
import de.anomic.kelondro.text.ReferenceContainer;
+import de.anomic.kelondro.text.ReferenceContainerCache;
import de.anomic.kelondro.text.ReferenceRow;
+import de.anomic.kelondro.text.URLMetadata;
import de.anomic.kelondro.text.Word;
+import de.anomic.kelondro.text.Blacklist;
import de.anomic.kelondro.util.ByteBuffer;
import de.anomic.kelondro.util.FileUtils;
import de.anomic.plasma.plasmaSearchRankingProcess;
@@ -434,7 +435,7 @@ public final class yacyClient {
final ResultURLs crawlResults,
final plasmaSearchRankingProcess containerCache,
final Map<String, TreeMap<String, String>> abstractCache,
- final indexReferenceBlacklist blacklist,
+ final Blacklist blacklist,
final plasmaSearchRankingProfile rankingProfile,
final Bitfield constraint
) {
@@ -532,23 +533,23 @@ public final class yacyClient {
}
// insert results to containers
- URLMetadata urlEntry;
+ MetadataRowContainer urlEntry;
final String[] urls = new String[results];
for (int n = 0; n < results; n++) {
// get one single search result
- urlEntry = URLMetadata.importEntry(result.get("resource" + n));
+ urlEntry = MetadataRowContainer.importEntry(result.get("resource" + n));
if (urlEntry == null) continue;
assert (urlEntry.hash().length() == 12) : "urlEntry.hash() = " + urlEntry.hash();
if (urlEntry.hash().length() != 12) continue; // bad url hash
- final URLMetadata.Components comp = urlEntry.comp();
- if (blacklist.isListed(indexReferenceBlacklist.BLACKLIST_SEARCH, comp.url())) {
- yacyCore.log.logInfo("remote search (client): filtered blacklisted url " + comp.url() + " from peer " + target.getName());
+ final URLMetadata metadata = urlEntry.metadata();
+ if (blacklist.isListed(Blacklist.BLACKLIST_SEARCH, metadata.url())) {
+ yacyCore.log.logInfo("remote search (client): filtered blacklisted url " + metadata.url() + " from peer " + target.getName());
continue; // block with backlist
}
- final String urlRejectReason = plasmaSwitchboard.getSwitchboard().crawlStacker.urlInAcceptedDomain(comp.url());
+ final String urlRejectReason = plasmaSwitchboard.getSwitchboard().crawlStacker.urlInAcceptedDomain(metadata.url());
if (urlRejectReason != null) {
- yacyCore.log.logInfo("remote search (client): rejected url '" + comp.url() + "' (" + urlRejectReason + ") from peer " + target.getName());
+ yacyCore.log.logInfo("remote search (client): rejected url '" + metadata.url() + "' (" + urlRejectReason + ") from peer " + target.getName());
continue; // reject url outside of our domain
}
@@ -562,7 +563,7 @@ public final class yacyClient {
// the search-result-url transports all the attributes of word indexes
entry = urlEntry.word();
if (!(entry.urlHash().equals(urlEntry.hash()))) {
- yacyCore.log.logInfo("remote search (client): url-hash " + urlEntry.hash() + " does not belong to word-attached-hash " + entry.urlHash() + "; url = " + comp.url() + " from peer " + target.getName());
+ yacyCore.log.logInfo("remote search (client): url-hash " + urlEntry.hash() + " does not belong to word-attached-hash " + entry.urlHash() + "; url = " + metadata.url() + " from peer " + target.getName());
continue; // spammed
}
@@ -793,7 +794,7 @@ public final class yacyClient {
return "wrong protocol: " + protocol;
}
- public static HashMap<String, String> crawlReceipt(final yacySeed mySeed, final yacySeed target, final String process, final String result, final String reason, final URLMetadata entry, final String wordhashes) {
+ public static HashMap<String, String> crawlReceipt(final yacySeed mySeed, final yacySeed target, final String process, final String result, final String reason, final MetadataRowContainer entry, final String wordhashes) {
assert (target != null);
assert (mySeed != null);
assert (mySeed != target);
@@ -855,8 +856,8 @@ public final class yacyClient {
*/
public static String transferIndex(
final yacySeed targetSeed,
- final indexContainerCache indexes,
- final HashMap<String, URLMetadata> urlCache,
+ final ReferenceContainerCache indexes,
+ final HashMap<String, MetadataRowContainer> urlCache,
final boolean gzipBody,
final int timeout) {
@@ -908,7 +909,7 @@ public final class yacyClient {
if (uhs.length == 0) { return null; } // all url's known
// extract the urlCache from the result
- final URLMetadata[] urls = new URLMetadata[uhs.length];
+ final MetadataRowContainer[] urls = new MetadataRowContainer[uhs.length];
for (int i = 0; i < uhs.length; i++) {
urls[i] = urlCache.get(uhs[i]);
if (urls[i] == null) {
@@ -942,7 +943,7 @@ public final class yacyClient {
private static HashMap<String, String> transferRWI(
final yacySeed targetSeed,
- final indexContainerCache indexes,
+ final ReferenceContainerCache indexes,
boolean gzipBody,
final int timeout) {
final String address = targetSeed.getPublicAddress();
@@ -998,7 +999,7 @@ public final class yacyClient {
}
}
- private static HashMap<String, String> transferURL(final yacySeed targetSeed, final URLMetadata[] urls, boolean gzipBody, final int timeout) {
+ private static HashMap<String, String> transferURL(final yacySeed targetSeed, final MetadataRowContainer[] urls, boolean gzipBody, final int timeout) {
// this post a message to the remote message board
final String address = targetSeed.getPublicAddress();
if (address == null) { return null; }
diff --git a/source/de/anomic/yacy/yacyNewsPool.java b/source/de/anomic/yacy/yacyNewsPool.java
index 12ddcd56b..e5e4c5b6b 100644
--- a/source/de/anomic/yacy/yacyNewsPool.java
+++ b/source/de/anomic/yacy/yacyNewsPool.java
@@ -50,7 +50,7 @@ import java.util.HashSet;
import java.util.Iterator;
import java.util.Map;
-import de.anomic.index.indexReferenceBlacklist;
+import de.anomic.kelondro.text.Blacklist;
import de.anomic.plasma.plasmaSwitchboard;
public class yacyNewsPool {
@@ -323,13 +323,13 @@ public class yacyNewsPool {
if (record.created().getTime() == 0) return;
final Map<String, String> attributes = record.attributes();
if (attributes.containsKey("url")){
- if (plasmaSwitchboard.urlBlacklist.isListed(indexReferenceBlacklist.BLACKLIST_NEWS, new yacyURL(attributes.get("url"), null))){
+ if (plasmaSwitchboard.urlBlacklist.isListed(Blacklist.BLACKLIST_NEWS, new yacyURL(attributes.get("url"), null))){
System.out.println("DEBUG: ignored news-entry url blacklisted: " + attributes.get("url"));
return;
}
}
if (attributes.containsKey("startURL")){
- if (plasmaSwitchboard.urlBlacklist.isListed(indexReferenceBlacklist.BLACKLIST_NEWS, new yacyURL(attributes.get("startURL"), null))){
+ if (plasmaSwitchboard.urlBlacklist.isListed(Blacklist.BLACKLIST_NEWS, new yacyURL(attributes.get("startURL"), null))){
System.out.println("DEBUG: ignored news-entry url blacklisted: " + attributes.get("startURL"));
return;
}
diff --git a/source/de/anomic/yacy/yacySearch.java b/source/de/anomic/yacy/yacySearch.java
index d638e71ae..6bf5ffbf6 100644
--- a/source/de/anomic/yacy/yacySearch.java
+++ b/source/de/anomic/yacy/yacySearch.java
@@ -51,8 +51,8 @@ import java.util.Set;
import java.util.TreeMap;
import de.anomic.crawler.ResultURLs;
-import de.anomic.index.indexReferenceBlacklist;
import de.anomic.kelondro.order.Bitfield;
+import de.anomic.kelondro.text.Blacklist;
import de.anomic.kelondro.util.ScoreCluster;
import de.anomic.kelondro.util.Log;
import de.anomic.plasma.plasmaSearchQuery;
@@ -69,7 +69,7 @@ public class yacySearch extends Thread {
final private plasmaWordIndex wordIndex;
final private plasmaSearchRankingProcess containerCache;
final private Map<String, TreeMap<String, String>> abstractCache;
- final private indexReferenceBlacklist blacklist;
+ final private Blacklist blacklist;
final private yacySeed targetPeer;
private String[] urls;
private final int count, maxDistance;
@@ -86,7 +86,7 @@ public class yacySearch extends Thread {
final ResultURLs crawlResults,
final plasmaSearchRankingProcess containerCache,
final Map<String, TreeMap<String, String>> abstractCache,
- final indexReferenceBlacklist blacklist,
+ final Blacklist blacklist,
final plasmaSearchRankingProfile rankingProfile,
final Bitfield constraint) {
super("yacySearch_" + targetPeer.getName());
@@ -254,7 +254,7 @@ public class yacySearch extends Thread {
final plasmaSearchRankingProcess containerCache,
final Map<String, TreeMap<String, String>> abstractCache,
int targets,
- final indexReferenceBlacklist blacklist,
+ final Blacklist blacklist,
final plasmaSearchRankingProfile rankingProfile,
final Bitfield constraint,
final TreeMap<String, String> clusterselection) {
@@ -290,7 +290,7 @@ public class yacySearch extends Thread {
final plasmaWordIndex wordIndex,
final ResultURLs crawlResults,
final plasmaSearchRankingProcess containerCache,
- final String targethash, final indexReferenceBlacklist blacklist,
+ final String targethash, final Blacklist blacklist,
final plasmaSearchRankingProfile rankingProfile,
final Bitfield constraint, final TreeMap<String, String> clusterselection) {
// check own peer status
diff --git a/source/de/anomic/ymage/ymageOSM.java b/source/de/anomic/ymage/ymageOSM.java
index 03ce8af42..04ae2c48c 100644
--- a/source/de/anomic/ymage/ymageOSM.java
+++ b/source/de/anomic/ymage/ymageOSM.java
@@ -35,7 +35,7 @@ import java.net.MalformedURLException;
import javax.imageio.ImageIO;
-import de.anomic.index.indexDocumentMetadata;
+import de.anomic.kelondro.text.Document;
import de.anomic.kelondro.util.Log;
import de.anomic.plasma.plasmaHTCache;
import de.anomic.plasma.plasmaSwitchboard;
@@ -80,7 +80,7 @@ public class ymageOSM {
InputStream tileStream = plasmaHTCache.getResourceContentStream(tileURL);
if (tileStream == null) {
// download resource using the crawler and keep resource in memory if possible
- indexDocumentMetadata entry = null;
+ Document entry = null;
try {
entry = plasmaSwitchboard.getSwitchboard().crawlQueues.loadResourceFromWeb(tileURL, 20000, true, false, false);
} catch (IOException e) {
diff --git a/source/yacy.java b/source/yacy.java
index 705d1140e..6a0f2ff87 100644
--- a/source/yacy.java
+++ b/source/yacy.java
@@ -52,16 +52,16 @@ import de.anomic.http.httpClient;
import de.anomic.http.httpResponse;
import de.anomic.http.httpRequestHeader;
import de.anomic.http.httpd;
-import de.anomic.index.URLMetadataRepository;
-import de.anomic.index.URLMetadata;
import de.anomic.kelondro.blob.BLOBHeap;
import de.anomic.kelondro.blob.MapDataMining;
import de.anomic.kelondro.index.RowCollection;
import de.anomic.kelondro.order.Base64Order;
import de.anomic.kelondro.order.DateFormatter;
+import de.anomic.kelondro.text.MetadataRowContainer;
import de.anomic.kelondro.text.Reference;
import de.anomic.kelondro.text.ReferenceContainer;
import de.anomic.kelondro.text.ReferenceRow;
+import de.anomic.kelondro.text.MetadataRepository;
import de.anomic.kelondro.text.Word;
import de.anomic.kelondro.util.MemoryControl;
import de.anomic.kelondro.util.ScoreCluster;
@@ -667,10 +667,10 @@ public final class yacy {
log.logInfo("STARTING URL CLEANUP");
// db containing all currently loades urls
- final URLMetadataRepository currentUrlDB = new URLMetadataRepository(new File(indexSecondaryRoot, networkName));
+ final MetadataRepository currentUrlDB = new MetadataRepository(new File(indexSecondaryRoot, networkName));
// db used to hold all neede urls
- final URLMetadataRepository minimizedUrlDB = new URLMetadataRepository(new File(indexRoot2, networkName));
+ final MetadataRepository minimizedUrlDB = new MetadataRepository(new File(indexRoot2, networkName));
final int cacheMem = (int)(MemoryControl.max() - MemoryControl.total());
if (cacheMem < 2048000) throw new OutOfMemoryError("Not enough memory available to start clean up.");
@@ -695,7 +695,7 @@ public final class yacy {
iEntry = wordIdxEntries.next();
final String urlHash = iEntry.urlHash();
if ((currentUrlDB.exists(urlHash)) && (!minimizedUrlDB.exists(urlHash))) try {
- final URLMetadata urlEntry = currentUrlDB.load(urlHash, null, 0);
+ final MetadataRowContainer urlEntry = currentUrlDB.load(urlHash, null, 0);
urlCounter++;
minimizedUrlDB.store(urlEntry);
if (urlCounter % 500 == 0) {
@@ -849,7 +849,7 @@ public final class yacy {
final File root = homePath;
final File indexroot = new File(root, "DATA/INDEX");
try {Log.configureLogging(homePath, new File(homePath, "DATA/LOG/yacy.logging"));} catch (final Exception e) {}
- final URLMetadataRepository currentUrlDB = new URLMetadataRepository(new File(indexroot, networkName));
+ final MetadataRepository currentUrlDB = new MetadataRepository(new File(indexroot, networkName));
currentUrlDB.deadlinkCleaner(null);
currentUrlDB.close();
}