Author: orbiter
Date: 2008-01-29 23:13:30 +0100 (Tue, 29 Jan 2008)
New Revision: 4417

Modified:
   trunk/source/de/anomic/data/bookmarksDB.java
   trunk/source/de/anomic/kelondro/kelondroMergeIterator.java
   trunk/source/de/anomic/plasma/plasmaRankingCRProcess.java
   trunk/source/de/anomic/plasma/plasmaRankingRCIEvaluation.java
Log:
more generics

Modified: trunk/source/de/anomic/data/bookmarksDB.java
===================================================================
--- trunk/source/de/anomic/data/bookmarksDB.java        2008-01-29 21:27:06 UTC 
(rev 4416)
+++ trunk/source/de/anomic/data/bookmarksDB.java        2008-01-29 22:13:30 UTC 
(rev 4417)
@@ -293,6 +293,7 @@
         }
         return set.iterator();
     }
+    
     public Iterator<String> getBookmarksIterator(String tagName, boolean priv){
         TreeSet<String> set=new TreeSet<String>(new bookmarkComparator(true));
         String tagHash=tagHash(tagName);
@@ -324,11 +325,13 @@
     public int tagsSize(){                                     // TODO: 
shouldn't this be public int tagSize()
         return tagSize(false);
     }
+    
     public int tagSize(boolean flushed){
        if(flushed)
                flushTagCache();
         return tagsTable.size();
     }
+    
     /**
      * load/retrieve an object of type Tag from the tagsTable (also save it in 
tagCache)
      * @param hash an object of type String, containing a tagHash
@@ -343,6 +346,7 @@
         }
         return ret;
     }
+    
     /**
      * retrieve an object of type Tag from the the tagCache, if object is not 
cached return loadTag(hash)
      * @param hash an object of type String, containing a tagHash
@@ -370,25 +374,28 @@
      * save a Tag in tagCache; see also flushTagCache(), addTag(), loadTag() 
      * @param tag an object of type Tag to be saved in tagCache
      */
-    public void saveTag(Tag tag){
+    public void saveTag(Tag tag) {
         if(tag!=null){
             tagCache.put(tag.getTagHash(), tag);
         }
     }
-    public void flushTagCache(){
+    
+    public void flushTagCache() {
         Iterator<String> it=tagCache.keySet().iterator();
         while(it.hasNext()){
             storeTag(tagCache.get(it.next()));
         }
         tagCache=new HashMap<String, Tag>();
     }
-    public String addTag(Tag tag){             // TODO: is addTag() really 
needed - check storeTag() and saveTag()
+    
+    public String addTag(Tag tag) {            // TODO: is addTag() really 
needed - check storeTag() and saveTag()
        //tagsTable.set(tag.getTagName(), tag.getMap());
         //tagCache.put(tag.getTagHash(), tag);
        saveTag(tag);
         return tag.getTagName();
     }
-    public void removeTag(String hash){
+    
+    public void removeTag(String hash) {
         try {
             if(tagCache.containsKey(hash)){
                 tagCache.remove(hash);
@@ -396,22 +403,25 @@
             tagsTable.remove(hash);
         } catch (IOException e) {}
     }
-    public Iterator tagIterator(boolean up){
+    
+    public Iterator<Tag> tagIterator(boolean up) {
         try {
             return new tagIterator(up);
         } catch (IOException e) {
-            return new HashSet().iterator();
+            return new HashSet<Tag>().iterator();
         }
     }
-    public Iterator<Tag> getTagIterator(boolean priv){
+    
+    public Iterator<Tag> getTagIterator(boolean priv) {
        return getTagIterator(priv,1);
     }
-    public Iterator<Tag> getTagIterator(boolean priv, int c){
-       Comparator comp;        
+    
+    public Iterator<Tag> getTagIterator(boolean priv, int c) {
+       Comparator<Tag> comp;           
        if (c == SORT_SIZE) comp = new tagSizeComparator(); 
        else comp = new tagComparator();
        TreeSet<Tag> set=new TreeSet<Tag>(comp);
-       Iterator it=tagIterator(true);
+       Iterator<Tag> it = tagIterator(true);
        Tag tag;
        while(it.hasNext()){
                tag=(Tag) it.next();
@@ -421,6 +431,7 @@
        }                       
        return set.iterator();
     }
+    
     public Iterator<Tag> getTagIterator(boolean priv, int comp, int max){
        if (max==SHOW_ALL) 
                return getTagIterator(priv, comp);
@@ -433,11 +444,13 @@
        }       
        return set.iterator();
     }
+    
     public Iterator<Tag> getTagIterator(String tagName, boolean priv){
        return getTagIterator(tagName, priv, 1);
     }
+    
     public Iterator<Tag> getTagIterator(String tagName, boolean priv, int 
comp){
-       Comparator c;           
+       Comparator<Tag> c;      
        if (comp == SORT_SIZE) c = new tagSizeComparator();
        else c = new tagComparator();
        TreeSet<Tag> set=new TreeSet<Tag>(c);
@@ -459,6 +472,7 @@
        }
        return set.iterator();
     }
+    
     public Iterator<Tag> getTagIterator(String tagName, boolean priv, int 
comp, int max){
        if (max==SHOW_ALL) 
                return getTagIterator(priv, comp);
@@ -475,7 +489,7 @@
     // rebuilds the tagsDB from the bookmarksDB
     public void rebuildTags(){
         serverLog.logInfo("BOOKMARKS", "rebuilding tags.db from 
bookmarks.db...");
-        Iterator it=bookmarkIterator(true);
+        Iterator<Bookmark> it = bookmarkIterator(true);
         Bookmark bookmark;
         Tag tag;
         String[] tags;
@@ -509,7 +523,7 @@
     // rebuilds the datesDB from the bookmarksDB
     public void rebuildDates(){
         serverLog.logInfo("BOOKMARKS", "rebuilding dates.db from 
bookmarks.db...");
-        Iterator it=bookmarkIterator(true);
+        Iterator<Bookmark> it=bookmarkIterator(true);
         Bookmark bookmark;
         String date;
         bookmarksDate bmDate;
@@ -533,12 +547,12 @@
     public boolean renameTag(String oldName, String newName){
        
        String oldHash=tagHash(oldName);
-       String newHash=tagHash(newName);
+       //String newHash=tagHash(newName);
        Tag tag=getTag(oldHash);                                                
        // set tag to oldHash
        if (tag != null) {
-               Set urlHashes = tag.getUrlHashes();                             
// preserve urlHashes of tag
+               Set<String> urlHashes = tag.getUrlHashes();                     
        // preserve urlHashes of tag
                removeTag(oldHash);
-               Iterator it = urlHashes.iterator();
+               Iterator<String> it = urlHashes.iterator();
             Bookmark bookmark;                
             Set<String> tags = new HashSet<String>(); 
             String tagsString;            
@@ -557,10 +571,6 @@
        }
        return false;
     }
-    
-    public void addBookmark(String url, String title, ArrayList tags){
-        
-    }
 
     // --------------------------------------
        // bookmarksDB's Import/Export functions
@@ -568,7 +578,7 @@
     
     public int importFromBookmarks(yacyURL baseURL, String input, String tag, 
boolean importPublic){
                try {
-                       // convert string to inputstream
+                       // convert string to input stream
                        ByteArrayInputStream byteIn = new 
ByteArrayInputStream(input.getBytes("UTF-8"));
                        InputStreamReader reader = new 
InputStreamReader(byteIn,"UTF-8");
                        
@@ -578,12 +588,12 @@
                        return 0;
                }               
     }
+    
     public int importFromBookmarks(yacyURL baseURL, InputStreamReader input, 
String tag, boolean importPublic){
                
        int importCount = 0;
        
-       HashMap links=new HashMap();
-       Iterator it;
+       Map<yacyURL, String> links = new HashMap<yacyURL, String>();
        String title;
        yacyURL url;
        Bookmark bm;
@@ -595,12 +605,11 @@
                Writer writer= new htmlFilterWriter(null,null,scraper, null, 
false);
                serverFileUtils.copy(input,writer);
                writer.close();
-               links = (HashMap) scraper.getAnchors();                 
+               links = scraper.getAnchors();                   
        } catch (IOException e) {}
-       it=links.keySet().iterator();
-       while(it.hasNext()){
-               // url=(String) it.next();
-               url= (yacyURL) it.next();
+       Iterator<yacyURL> it = links.keySet().iterator();
+       while (it.hasNext()) {
+               url= it.next();
                title=(String) links.get(url);
                serverLog.logInfo("BOOKMARKS", "links.get(url)");
                if(title.equals("")){//cannot be displayed
@@ -619,9 +628,10 @@
        
        return importCount;
     }
+    
     public int importFromXML(String input, boolean importPublic){      
                try {
-                       // convert string to inputstream
+                       // convert string to input stream
                        ByteArrayInputStream byteIn = new 
ByteArrayInputStream(input.getBytes("UTF-8"));
                        
                        // import stream
@@ -630,6 +640,7 @@
                        return 0;
                }       
     }
+    
     public int importFromXML(InputStream input, boolean importPublic){
        DocumentBuilderFactory factory=DocumentBuilderFactory.newInstance();
        factory.setValidating(false);
@@ -646,6 +657,7 @@
        return 0;
        
     }
+    
     public int parseXMLimport(Node doc, boolean importPublic){
        int importCount = 0;
         if(doc.getNodeName()=="post"){
@@ -870,7 +882,7 @@
     /**
      * Subclass of bookmarksDB, which provides the Bookmark object-type
      */
-    public class Bookmark extends kelondroObjectsMapEntry{
+    public class Bookmark extends kelondroObjectsMapEntry {
         public static final String BOOKMARK_URL="bookmarkUrl";
         public static final String BOOKMARK_TITLE="bookmarkTitle";
         public static final String BOOKMARK_DESCRIPTION="bookmarkDesc";
@@ -882,7 +894,8 @@
         private String urlHash;
         private Set<String> tags;
         private long timestamp;
-        public Bookmark(String urlHash, HashMap map){
+        
+        public Bookmark(String urlHash, HashMap<String, String> map) {
             super(map);
             this.urlHash=urlHash;
             if(map.containsKey(BOOKMARK_TAGS))
@@ -891,6 +904,7 @@
                 tags=new HashSet<String>();
             loadTimestamp();
         }
+        
         public Bookmark(String url){
             super();
             if(!url.toLowerCase().startsWith("http://";) && 
!url.toLowerCase().startsWith("https://";)){
@@ -916,14 +930,16 @@
             
             removeBookmark(this.urlHash); //prevent empty tags
         }
-        public Bookmark(String urlHash, yacyURL url){
+        
+        public Bookmark(String urlHash, yacyURL url) {
             super();
             this.urlHash=urlHash;
             entry.put(BOOKMARK_URL, url.toNormalform(false, true));
             tags=new HashSet<String>();
             timestamp=System.currentTimeMillis();
         }
-        public Bookmark(String urlHash, String url){
+        
+        public Bookmark(String urlHash, String url) {
             super();
             this.urlHash=urlHash;
             entry.put(BOOKMARK_URL, url);
@@ -935,25 +951,30 @@
             this((new yacyURL((String)map.map().get(BOOKMARK_URL), 
null)).hash(), map.map());
         }
         
-        private Map<String, String> toMap(){
+        private Map<String, String> toMap() {
             entry.put(BOOKMARK_TAGS, listManager.collection2string(tags));
             entry.put(BOOKMARK_TIMESTAMP, String.valueOf(this.timestamp));
             return entry;
         }
-        private void loadTimestamp(){
+        
+        private void loadTimestamp() {
             if(entry.containsKey(BOOKMARK_TIMESTAMP))
                 this.timestamp=Long.parseLong(entry.get(BOOKMARK_TIMESTAMP));
         }
-        public String getUrlHash(){
+        
+        public String getUrlHash() {
             return urlHash;
         }
-        public String getUrl(){
+        
+        public String getUrl() {
             return entry.get(BOOKMARK_URL);
         }
-        public Set<String> getTags(){
+        
+        public Set<String> getTags() {
             return tags;
         }
-        public String getTagsString(){         
+        
+        public String getTagsString() {                
                String s[] = 
listManager.collection2string(getTags()).split(",");
                String tagsString="";           
                for (int i=0; i<s.length; i++){
@@ -963,6 +984,7 @@
                }
                return tagsString;
         }
+        
         public String getFoldersString(){
                String s[] = 
listManager.collection2string(getTags()).split(",");
                String foldersString="";                
@@ -972,40 +994,47 @@
                        }
                }
                return foldersString;
-        }        
+        }
+        
         public String getDescription(){
             if(entry.containsKey(BOOKMARK_DESCRIPTION)){
                 return entry.get(BOOKMARK_DESCRIPTION);
             }
             return "";
         }
+        
         public String getTitle(){
             if(entry.containsKey(BOOKMARK_TITLE)){
                 return entry.get(BOOKMARK_TITLE);
             }
             return entry.get(BOOKMARK_URL);
         }
+        
         public String getOwner(){
             if(entry.containsKey(BOOKMARK_OWNER)){
                 return entry.get(BOOKMARK_OWNER);
             }
             return null; //null means admin
         }
+        
         public void setOwner(String owner){
             entry.put(BOOKMARK_OWNER, owner);
         }
+        
         public boolean getPublic(){
             if(entry.containsKey(BOOKMARK_PUBLIC)){
                 return entry.get(BOOKMARK_PUBLIC).equals("public");
             }
             return false;
         }
+        
         public boolean getFeed(){
             if(entry.containsKey(BOOKMARK_IS_FEED)){
                 return entry.get(BOOKMARK_IS_FEED).equals("true");
             }
             return false;
         }
+        
         public void setPublic(boolean isPublic){
                if(isPublic){
                 entry.put(BOOKMARK_PUBLIC, "public");
@@ -1013,6 +1042,7 @@
                 entry.put(BOOKMARK_PUBLIC, "private");
                }
         }
+        
         public void setFeed(boolean isFeed){
                if(isFeed){
                 entry.put(BOOKMARK_IS_FEED, "true");
@@ -1020,13 +1050,16 @@
                 entry.put(BOOKMARK_IS_FEED, "false");
                }
         }
+        
         public void setProperty(String name, String value){
             entry.put(name, value);
             //setBookmarksTable();
         }
+        
         public void addTag(String tag){
             tags.add(tag);
         }
+        
         /**
          * set the Tags of the bookmark, and write them into the tags table.
          * @param tags2 a ArrayList with the tags
@@ -1034,6 +1067,7 @@
         public void setTags(Set<String> tags2){
             setTags(tags2, true);
         }
+        
         /**
          * set the Tags of the bookmark
          * @param tags ArrayList with the tagnames
@@ -1060,6 +1094,7 @@
         public long getTimeStamp(){
             return timestamp;
         }
+        
         public void setTimeStamp(long ts){
                this.timestamp=ts;
         }
@@ -1070,11 +1105,13 @@
     public class tagIterator implements Iterator<Tag> {
         kelondroCloneableIterator<String> tagIter;
         bookmarksDB.Tag nextEntry;
+        
         public tagIterator(boolean up) throws IOException {
             flushTagCache(); //XXX: This costs performace :-((
             this.tagIter = bookmarksDB.this.tagsTable.keys(up, false);
             this.nextEntry = null;
         }
+        
         public boolean hasNext() {
             try {
                 return this.tagIter.hasNext();
@@ -1083,6 +1120,7 @@
                 return false;
             }
         }
+        
         public Tag next() {
             try {
                 return getTag(this.tagIter.next());
@@ -1091,6 +1129,7 @@
                 return null;
             }
         }
+        
         public void remove() {
             if (this.nextEntry != null) {
                 try {
@@ -1102,17 +1141,19 @@
             }
         }
     }
+    
     /**
      * Subclass of bookmarksDB, which provides the bookmarkIterator object-type
      */
     public class bookmarkIterator implements Iterator<Bookmark> {
-        Iterator bookmarkIter;
+        Iterator<String> bookmarkIter;
         bookmarksDB.Bookmark nextEntry;
         public bookmarkIterator(boolean up) throws IOException {
             //flushBookmarkCache(); //XXX: this will cost performance
             this.bookmarkIter = bookmarksDB.this.bookmarksTable.keys(up, 
false);
             this.nextEntry = null;
         }
+        
         public boolean hasNext() {
             try {
                 return this.bookmarkIter.hasNext();
@@ -1121,6 +1162,7 @@
                 return false;
             }
         }
+        
         public Bookmark next() {
             try {
                 return getBookmark((String) this.bookmarkIter.next());
@@ -1129,6 +1171,7 @@
                 return null;
             }
         }
+        
         public void remove() {
             if (this.nextEntry != null) {
                 try {
@@ -1140,21 +1183,24 @@
             }
         }
     }
+    
     /**
      * Comparator to sort objects of type Bookmark according to their 
timestamps
      */
-    public class bookmarkComparator implements Comparator {
+    public class bookmarkComparator implements Comparator<String> {
         
         private boolean newestFirst;
+        
         /**
          * @param newestFirst newest first, or oldest first?
          */
         public bookmarkComparator(boolean newestFirst){
             this.newestFirst=newestFirst;
         }
-        public int compare(Object obj1, Object obj2){
-            Bookmark bm1=getBookmark((String)obj1);
-            Bookmark bm2=getBookmark((String)obj2);
+        
+        public int compare(String obj1, String obj2) {
+            Bookmark bm1=getBookmark(obj1);
+            Bookmark bm2=getBookmark(obj2);
                        if(bm1==null || bm2==null)
                                return 0; //XXX: i think this should not 
happen? maybe this needs further tracing of the bug
             if(this.newestFirst){
@@ -1165,21 +1211,25 @@
             return -1;
         }
     }
+    
     /**
      * Comparator to sort objects of type Tag according to their names
      */
-    public class tagComparator implements Comparator{
-       public int compare(Object obj1, Object obj2){
-               return 
((Tag)obj1).getTagName().compareTo(((Tag)obj2).getTagName());
+    public class tagComparator implements Comparator<Tag> {
+        
+       public int compare(Tag obj1, Tag obj2){
+               return obj1.getTagName().compareTo(obj2.getTagName());
        }
+       
     }
-    public class tagSizeComparator implements Comparator{
-       public int compare(Object obj1, Object obj2){   
-               Tag t1 = (Tag)obj1;
-               Tag t2 = (Tag)obj2;             
-               if (t1.size()<t2.size()) return 1;
-               else if (t1.getTagName().equals(t2.getTagName())) return 0;
+    
+    public class tagSizeComparator implements Comparator<Tag> {
+        
+       public int compare(Tag obj1, Tag obj2) {
+               if (obj1.size() < obj2.size()) return 1;
+               else if (obj1.getTagName().equals(obj2.getTagName())) return 0;
                else return -1;
        }
+       
     }
 }
\ No newline at end of file

Modified: trunk/source/de/anomic/kelondro/kelondroMergeIterator.java
===================================================================
--- trunk/source/de/anomic/kelondro/kelondroMergeIterator.java  2008-01-29 
21:27:06 UTC (rev 4416)
+++ trunk/source/de/anomic/kelondro/kelondroMergeIterator.java  2008-01-29 
22:13:30 UTC (rev 4417)
@@ -147,19 +147,18 @@
         throw new java.lang.UnsupportedOperationException("merge does not 
support remove");
     }
     
-    public static <A> kelondroCloneableIterator<A> 
cascade(Set<kelondroCloneableIterator<A>> /*of*/ iterators, kelondroOrder<A> c, 
Method merger, boolean up) {
+    public static <A> kelondroCloneableIterator<A> 
cascade(Set<kelondroCloneableIterator<A>> iterators, kelondroOrder<A> c, Method 
merger, boolean up) {
         // this extends the ability to combine two iterators
-        // to the abiliy of combining a set of iterators
+        // to the ability of combining a set of iterators
         if (iterators == null) return null;
         if (iterators.size() == 0) return null;
-        return cascade((Set<kelondroCloneableIterator<A>>) 
iterators.iterator(), c, merger, up);
+        return cascade(iterators.iterator(), c, merger, up);
     }
     
-       @SuppressWarnings("unchecked")
-    private static <A> kelondroCloneableIterator<A> cascade(Iterator<A> /*of*/ 
iiterators, kelondroOrder<A> c, Method merger, boolean up) {
+    private static <A> kelondroCloneableIterator<A> 
cascade(Iterator<kelondroCloneableIterator<A>> iiterators, kelondroOrder<A> c, 
Method merger, boolean up) {
         if (iiterators == null) return null;
         if (!(iiterators.hasNext())) return null;
-        kelondroCloneableIterator<A> one = (kelondroCloneableIterator<A>) 
iiterators.next();
+        kelondroCloneableIterator<A> one = iiterators.next();
         if (!(iiterators.hasNext())) return one;
         return new kelondroMergeIterator<A>(one, cascade(iiterators, c, 
merger, up), c, merger, up);
     }

Modified: trunk/source/de/anomic/plasma/plasmaRankingCRProcess.java
===================================================================
--- trunk/source/de/anomic/plasma/plasmaRankingCRProcess.java   2008-01-29 
21:27:06 UTC (rev 4416)
+++ trunk/source/de/anomic/plasma/plasmaRankingCRProcess.java   2008-01-29 
22:13:30 UTC (rev 4417)
@@ -48,7 +48,6 @@
 import java.io.File;
 import java.io.IOException;
 import java.util.Iterator;
-import java.util.Map;
 
 import de.anomic.kelondro.kelondroAttrSeq;
 import de.anomic.kelondro.kelondroBase64Order;
@@ -355,12 +354,10 @@
             cr_UDate = cr_entry.getAttr("UDate", 0);
             
             // loop over all anchors
-            Iterator j = cr_entry.getSeqSet().iterator();
-            Map.Entry entry;
+            Iterator<String> j = cr_entry.getSeqSet().iterator();
             while (j.hasNext()) {
                 // get domain of anchors
-                entry = (Map.Entry) j.next();
-                anchor = (String) entry.getKey();
+                anchor = j.next();
                 if (anchor.length() == 6) anchorDom = anchor; else anchorDom = 
anchor.substring(6);
 
                 // update domain-specific entry
@@ -401,22 +398,22 @@
         int size = seq.size();
         long start = System.currentTimeMillis();
         long l;
-        final Iterator i = seq.keycollections(null, null, false);
+        final Iterator<Object[]> i = seq.keycollections(null, null, false);
         Object[] keycollection;
         String referee, refereeDom, anchor, anchorDom;
         kelondroRowSet cr_entry, rci_entry;
         while (i.hasNext()) {
-            keycollection = (Object[]) i.next();
+            keycollection = i.next();
             referee = new String((byte[]) keycollection[0]);
             if (referee.length() == 6) refereeDom = referee; else refereeDom = 
referee.substring(6);
             cr_entry = (kelondroRowSet) keycollection[1];
             
             // loop over all anchors
-            Iterator j = cr_entry.rows();
+            Iterator<kelondroRow.Entry> j = cr_entry.rows();
             kelondroRow.Entry entry;
             while (j.hasNext()) {
                 // get domain of anchors
-                entry = (kelondroRow.Entry) j.next();
+                entry = j.next();
                 anchor = (String) entry.getColString(0, null);
                 if (anchor.length() == 6) anchorDom = anchor; else anchorDom = 
anchor.substring(6);
 

Modified: trunk/source/de/anomic/plasma/plasmaRankingRCIEvaluation.java
===================================================================
--- trunk/source/de/anomic/plasma/plasmaRankingRCIEvaluation.java       
2008-01-29 21:27:06 UTC (rev 4416)
+++ trunk/source/de/anomic/plasma/plasmaRankingRCIEvaluation.java       
2008-01-29 22:13:30 UTC (rev 4417)
@@ -64,19 +64,19 @@
     public static int[] rcieval(kelondroAttrSeq rci) {
         // collect information about which entry has how many references
         // the output is a reference-count:occurrences relation
-        HashMap counts = new HashMap();
-        Iterator i = rci.keys();
+        HashMap<Integer, Integer> counts = new HashMap<Integer, Integer>();
+        Iterator<String> i = rci.keys();
         String key;
         kelondroAttrSeq.Entry entry;
         Integer count_key, count_count;
         int c, maxcount = 0;
         while (i.hasNext()) {
-            key = (String) i.next();
+            key = i.next();
             entry = rci.getEntry(key);
             c = entry.getSeqSet().size();
             if (c > maxcount) maxcount = c;
             count_key = new Integer(c);
-            count_count = (Integer) counts.get(count_key);
+            count_count = counts.get(count_key);
             if (count_count == null) {
                 count_count = new Integer(1);
             } else {
@@ -86,7 +86,7 @@
         }
         int[] ctable = new int[maxcount + 1];
         for (int j = 0; j <= maxcount; j++) {
-            count_count = (Integer) counts.get(new Integer(j));
+            count_count = counts.get(new Integer(j));
             if (count_count == null) {
                 ctable[j] = 0;
             } else {
@@ -153,10 +153,11 @@
         return partition.length - 1;
     }
     
-    public static TreeSet[] genRankingTable(kelondroAttrSeq rci, int[] 
partition) {
-        TreeSet[] ranked = new TreeSet[partition.length];
-        for (int i = 0; i < partition.length; i++) ranked[i] = new 
TreeSet(kelondroBase64Order.enhancedComparator);
-        Iterator i = rci.keys();
+    @SuppressWarnings("unchecked")
+    public static TreeSet<String>[] genRankingTable(kelondroAttrSeq rci, int[] 
partition) {
+        TreeSet<String>[] ranked = new TreeSet[partition.length];
+        for (int i = 0; i < partition.length; i++) ranked[i] = new 
TreeSet<String>(kelondroBase64Order.enhancedComparator);
+        Iterator<String> i = rci.keys();
         String key;
         kelondroAttrSeq.Entry entry;
         while (i.hasNext()) {
@@ -167,13 +168,13 @@
         return ranked;
     }
 
-    public static HashMap genReverseDomHash(File domlist) {
-        HashSet domset = serverFileUtils.loadList(domlist);
-        HashMap dommap = new HashMap();
-        Iterator i = domset.iterator();
+    public static HashMap<String, String> genReverseDomHash(File domlist) {
+        HashSet<String> domset = serverFileUtils.loadList(domlist);
+        HashMap<String, String> dommap = new HashMap<String, String>();
+        Iterator<String> i = domset.iterator();
         String dom;
         while (i.hasNext()) {
-            dom = (String) i.next();
+            dom = i.next();
             if (dom.startsWith("www.")) dom = dom.substring(4);
             try {
                 dommap.put((new yacyURL("http://"; + dom, 
null)).hash().substring(6), dom);
@@ -183,7 +184,7 @@
         return dommap;
     }
 
-    public static void storeRankingTable(TreeSet[] ranking, File tablePath) 
throws IOException {
+    public static void storeRankingTable(TreeSet<String>[] ranking, File 
tablePath) throws IOException {
         String filename;
         if (!(tablePath.exists())) tablePath.mkdirs();
         for (int i = 0; i < ranking.length - 1; i++) {
@@ -218,7 +219,7 @@
                 System.out.println("sum of all references: " + sum);
                 
                 // create ranking
-                TreeSet[] ranked = genRankingTable(rci, partition);
+                TreeSet<String>[] ranked = genRankingTable(rci, partition);
                 storeRankingTable(ranked, new File(root_path, "ranking/YBR"));
                 long seconds = java.lang.Math.max(1, 
(System.currentTimeMillis() - start) / 1000);
                 System.out.println("Finished YBR generation in " + seconds + " 
seconds.");
@@ -230,7 +231,7 @@
                 plasmaSearchRankingProcess.loadYBR(new File(root_path, 
"ranking/YBR"), 16);
                 
                 // load domain list and generate hash index for domains
-                HashMap dommap = genReverseDomHash(new File(root_path, 
"domlist.txt"));
+                HashMap<String, String> dommap = genReverseDomHash(new 
File(root_path, "domlist.txt"));
                 
                 // print out the table
                 String hash, dom;
@@ -238,7 +239,7 @@
                     System.out.print("YBR-" + i + ": ");
                     for (int j = 0; j < 
plasmaSearchRankingProcess.ybrTables[i].size(); j++) {
                         hash = new 
String(plasmaSearchRankingProcess.ybrTables[i].get(j));
-                        dom = (String) dommap.get(hash);
+                        dom = dommap.get(hash);
                         if (dom == null) System.out.print("[" + hash + "], "); 
else System.out.print(dom + ", ");
                     }
                     System.out.println();

_______________________________________________
YaCy-svn mailing list
YaCy-svn@lists.berlios.de
https://lists.berlios.de/mailman/listinfo/yacy-svn

Antwort per Email an