- Timestamp:
- 2004-05-27T14:16:05+12:00 (20 years ago)
- Location:
- trunk/gsdl3/src/java/org/greenstone/gsdl3/gs3build/classifier
- Files:
-
- 1 added
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/gsdl3/src/java/org/greenstone/gsdl3/gs3build/classifier/AZListClassifier.java
r7309 r7470 27 27 import org.greenstone.gsdl3.util.GSXML; 28 28 29 public class AZListClassifier implements ClassifierInterface29 public class AZListClassifier extends AbstractClassifier 30 30 { 31 31 GS3SQLConnection database; 32 32 MultiMap alphaMap; 33 33 List fields; 34 String name; 34 String name; 35 35 36 class AZDocumentItem 36 37 { public DocumentID documentId; … … 84 85 85 86 public AZListClassifier(String name, List fields) 86 { this.name = name; 87 this.fields = fields; 87 { this.fields = fields; 88 88 this.alphaMap = new MultiMap(); 89 this.name = name; 89 90 // System.out.println("AZList :"+fields.size()); 90 91 } … … 256 257 this.name = prefix; 257 258 } 259 258 260 int leafCount = 0; 259 261 keys = this.alphaMap.keySet().iterator(); -
trunk/gsdl3/src/java/org/greenstone/gsdl3/gs3build/classifier/AbstractHierarchyNode.java
r7307 r7470 108 108 109 109 public void addDocument(DocumentID document, String sortKey) 110 { this.childDocs.add(new AbstractHierarchyDocument(document, sortKey)); 111 110 { if (sortKey == null && false) { 111 System.err.println("attempt to classify by an unset key"); 112 return; 113 } 114 this.childDocs.add(new AbstractHierarchyDocument(document, sortKey)); 115 116 System.out.println("Adding " + document.toString() + " to " + this.name + " " + this.childDocs.size()); 112 117 if (sortKey != null) { 113 118 int first = 0; … … 117 122 int at = (first + last) / 2; 118 123 119 if (this.childDocs.get(at) == null) { 124 System.out.println(this.name + " " + at + " " + this.childDocs.size() + " " + this.childDocs.get(at) + " " + sortKey); 125 if (this.childDocs.get(at) == null || 126 this.childDocs.get(at).toString() == null) { 120 127 last = at; 128 System.out.println("COntinuing"); 121 129 continue; 122 130 } … … 138 146 this.childDocs.set(first, newItem); 139 147 } 148 149 // System.out.println("Added " + document.toString() + " to " + this.name + " " + this.childDocs.size()); 150 // for (int a = 0; a < this.childDocs.size(); a ++) { 151 //System.out.println(this.childDocs.get(a)); 152 //} 140 153 } 141 154 -
trunk/gsdl3/src/java/org/greenstone/gsdl3/gs3build/classifier/ClassifierInterface.java
r7309 r7470 17 17 */ 18 18 public void configure(List parameters); 19 public void configure(java.net.URL baseURL, org.w3c.dom.Node node); 19 20 20 21 public void setDatabase(org.greenstone.gsdl3.gs3build.util.GS3SQLConnection connection); -
trunk/gsdl3/src/java/org/greenstone/gsdl3/gs3build/classifier/ClassifierManager.java
r7309 r7470 106 106 } 107 107 108 public static ClassifierInterface loadClassifier(String classifierName , List params)109 { 108 public static ClassifierInterface loadClassifier(String classifierName) 109 { System.out.println("Loading classifier " + classifierName); 110 110 try { 111 111 ClassifierInterface classifier = 112 (ClassifierInterface) Class.forName("org.greenstone.gsdl3.gs3build.classifier."+classifierName).newInstance(); 113 if (classifier != null) { 114 classifier.configure(params); 115 } 112 (ClassifierInterface) Class.forName("org.greenstone.gsdl3.gs3build.classifier."+classifierName+"Classifier").newInstance(); 116 113 return classifier; 117 114 } … … 127 124 return null; 128 125 } 126 127 public static ClassifierInterface loadClassifier(String classifierName, List params) 128 { ClassifierInterface classifier = loadClassifier(classifierName); 129 if (classifier != null) { 130 classifier.configure(params); 131 } 132 return classifier; 133 } 129 134 130 public boolean addServiceDescriptions(Element service_class_list) { 131 if (this.used==0) { 132 // no classiifers 133 return true; 134 } 135 Element retrieve_service = GSXML.getNamedElement(service_class_list, GSXML.SERVICE_CLASS_ELEM, GSXML.NAME_ATT, "GS3Retrieve"); 136 Document owner_doc = service_class_list.getOwnerDocument(); 137 if (retrieve_service == null) { 138 System.err.println("didn't find a retrieve service"); 139 // create it 140 retrieve_service = owner_doc.createElement(GSXML.SERVICE_CLASS_ELEM); 141 retrieve_service.setAttribute(GSXML.NAME_ATT, "GS3Retrieve"); 142 service_class_list.appendChild(retrieve_service); 143 } 144 Element classifier_list = owner_doc.createElement(GSXML.CLASSIFIER_ELEM+GSXML.LIST_MODIFIER); 145 retrieve_service.appendChild(classifier_list); 146 boolean success = true; 147 for (int i = 0; i < this.used; i ++) { 148 if (!this.list[i].addClassifierDescription(classifier_list)) { 149 success = false; 150 } 151 } 152 return success; 135 public boolean addServiceDescriptions(Element service_class_list) { 136 if (this.used==0) { 137 // no classiifers 138 return true; 153 139 } 140 Element retrieve_service = GSXML.getNamedElement(service_class_list, GSXML.SERVICE_CLASS_ELEM, GSXML.NAME_ATT, "GS3Retrieve"); 141 Document owner_doc = service_class_list.getOwnerDocument(); 142 if (retrieve_service == null) { 143 System.err.println("didn't find a retrieve service"); 144 // create it 145 retrieve_service = owner_doc.createElement(GSXML.SERVICE_CLASS_ELEM); 146 retrieve_service.setAttribute(GSXML.NAME_ATT, "GS3Retrieve"); 147 service_class_list.appendChild(retrieve_service); 148 } 149 Element classifier_list = owner_doc.createElement(GSXML.CLASSIFIER_ELEM+GSXML.LIST_MODIFIER); 150 retrieve_service.appendChild(classifier_list); 151 boolean success = true; 152 for (int i = 0; i < this.used; i ++) { 153 if (!this.list[i].addClassifierDescription(classifier_list)) { 154 success = false; 155 } 156 } 157 return success; 158 } 154 159 } -
trunk/gsdl3/src/java/org/greenstone/gsdl3/gs3build/classifier/GS2HierarchyClassifier.java
r7309 r7470 2 2 3 3 import java.io.*; 4 5 import java.net.URL; 4 6 5 7 import java.util.List; … … 168 170 } 169 171 172 public void configure(URL url, org.w3c.dom.Node node) 173 { 174 } 175 170 176 public void configure(List parameters) 171 177 { -
trunk/gsdl3/src/java/org/greenstone/gsdl3/gs3build/classifier/HierarchyClassifier.java
r7309 r7470 24 24 25 25 26 public class HierarchyClassifier implements ClassifierInterface26 public class HierarchyClassifier extends AbstractClassifier 27 27 { 28 28 class HierarchyClassifierObserver implements ClassifierObserverInterface
Note:
See TracChangeset
for help on using the changeset viewer.