1 17 package org.alfresco.webservice.sample; 18 19 import org.alfresco.webservice.classification.ClassificationServiceSoapBindingStub; 20 import org.alfresco.webservice.repository.QueryResult; 21 import org.alfresco.webservice.repository.RepositoryServiceSoapBindingStub; 22 import org.alfresco.webservice.types.Category; 23 import org.alfresco.webservice.types.Classification; 24 import org.alfresco.webservice.types.Query; 25 import org.alfresco.webservice.types.QueryLanguageEnum; 26 import org.alfresco.webservice.util.AuthenticationUtils; 27 import org.alfresco.webservice.util.ISO9075; 28 import org.alfresco.webservice.util.WebServiceFactory; 29 30 37 public class WebServiceSample6 extends WebServiceSampleBase 38 { 39 42 public static void main(String [] args) 43 throws Exception  44 { 45 AuthenticationUtils.startSession(USERNAME, PASSWORD); 46 try 47 { 48 createSampleData(); 50 51 RepositoryServiceSoapBindingStub repositoryService = WebServiceFactory.getRepositoryService(); 53 ClassificationServiceSoapBindingStub classificationService = WebServiceFactory.getClassificationService(); 54 55 Classification[] classifications = classificationService.getClassifications(STORE); 57 58 System.out.println("All classifications:"); 60 for (Classification classification : classifications) 61 { 62 System.out.println(classification.getClassification()); 63 System.out.println("Classification = " + classification.getTitle() + "; Root category = " + classification.getRootCategory().getTitle()); 64 } 65 66 Classification classification = classifications[0]; 68 69 Category[] categories = null; 71 if (classifications.length > 0) 72 { 73 categories = classificationService.getChildCategories(classifications[0].getRootCategory().getId()); 74 if (categories != null) 75 { 76 System.out.println("The child categories of classification '" + classifications[0].getTitle() + "':"); 78 for (Category category : categories) 79 { 80 System.out.println("Title = " + category.getTitle()); 81 } 82 } 83 else 84 { 85 System.out.println("No child categories found."); 86 } 87 } 88 89 StringBuilder pathQuery = new StringBuilder (128); 91 92 94 String encodedRoot = ISO9075.encode(classification.getRootCategory().getTitle()); 96 97 if (categories != null && categories.length != 0) 99 { 100 for (int i=0; i<categories.length; i++) 101 { 102 if (pathQuery.length() != 0) 103 { 104 pathQuery.append("OR"); 105 } 106 107 String encoded = ISO9075.encode(categories[i].getTitle()); 108 pathQuery.append(" PATH:\"cm:generalclassifiable/cm:" + encodedRoot + "/cm:" + encoded + "/member\" "); 109 } 110 } 111 112 System.out.println("Query path: " + pathQuery.toString()); 113 114 Query query = new Query(QueryLanguageEnum.lucene, pathQuery.toString()); 116 117 QueryResult queryResult = repositoryService.query(STORE, query, true); 119 120 System.out.println("Category query results:"); 121 WebServiceSample2.outputResultSet(queryResult.getResultSet().getRows()); 122 } 123 finally 124 { 125 AuthenticationUtils.endSession(); 126 } 127 } 128 } 129
| Popular Tags
|