1 package org.alfresco.webservice.sample; 4 5 import java.util.ArrayList ; 6 import java.util.List ; 7 8 import org.alfresco.webservice.repository.QueryResult; 9 import org.alfresco.webservice.repository.RepositoryServiceSoapBindingStub; 10 import org.alfresco.webservice.types.NamedValue; 11 import org.alfresco.webservice.types.Node; 12 import org.alfresco.webservice.types.Predicate; 13 import org.alfresco.webservice.types.Query; 14 import org.alfresco.webservice.types.QueryLanguageEnum; 15 import org.alfresco.webservice.types.Reference; 16 import org.alfresco.webservice.types.ResultSet; 17 import org.alfresco.webservice.types.ResultSetRow; 18 import org.alfresco.webservice.util.AuthenticationUtils; 19 import org.alfresco.webservice.util.Constants; 20 import org.alfresco.webservice.util.WebServiceFactory; 21 22 public class WebServiceSampleGetRankedContent extends WebServiceSampleBase 23 { 24 29 public static void main(String [] args) 30 { 31 WebServiceSampleGetRankedContent sample = new WebServiceSampleGetRankedContent(); 32 List <ContentResult> results = sample.getRankedContent("Web Service Sample Folder", "Alfresco Development Team"); 33 34 int iCount = 1; 36 for (ContentResult result : results) 37 { 38 System.out.println("Result " + iCount + ": " + result.toString()); 39 iCount ++; 40 } 41 } 42 43 51 public List <ContentResult> getRankedContent(String spaceName, String searchValue) 52 { 53 List <ContentResult> results = new ArrayList <ContentResult>(); 54 55 try 56 { 57 AuthenticationUtils.startSession(USERNAME, PASSWORD); 58 try 59 { 60 RepositoryServiceSoapBindingStub repositoryService = WebServiceFactory.getRepositoryService(); 61 62 Reference reference = new Reference(STORE, null, "/app:company_home/*[@cm:name=\"" + spaceName + "\"]"); 64 Predicate predicate = new Predicate(new Reference[]{reference}, null, null); 65 Node[] nodes = repositoryService.get(predicate); 66 67 Query query = new Query( 69 QueryLanguageEnum.lucene, 70 "+PARENT:\"workspace://SpacesStore/"+ nodes[0].getReference().getUuid() + "\" +TEXT:\"" + searchValue + "\""); 71 72 QueryResult queryResult = repositoryService.query(STORE, query, false); 74 75 ResultSet resultSet = queryResult.getResultSet(); 77 ResultSetRow[] rows = resultSet.getRows(); 78 79 if (rows != null) 80 { 81 for(ResultSetRow row : rows) 83 { 84 String nodeId = row.getNode().getId(); 85 ContentResult contentResult = new ContentResult(nodeId); 86 87 for (NamedValue namedValue : row.getColumns()) 88 { 89 if (namedValue.getName().endsWith(Constants.PROP_CREATED) == true) 90 { 91 contentResult.setCreateDate(namedValue.getValue()); 92 } 93 else if (namedValue.getName().endsWith(Constants.PROP_NAME) == true) 94 { 95 contentResult.setName(namedValue.getValue()); 96 } 97 else if (namedValue.getName().endsWith(Constants.PROP_DESCRIPTION) == true) 98 { 99 contentResult.setDescription(namedValue.getValue()); 100 } 101 else if (namedValue.getName().endsWith(Constants.PROP_CONTENT) == true) 102 { 103 String contentString = namedValue.getValue(); 106 String [] values = contentString.split("[|=]"); 107 contentResult.setUrl(values[1]); 108 } 109 } 110 111 results.add(contentResult); 112 } 113 } 114 } 115 finally 116 { 117 AuthenticationUtils.endSession(); 119 } 120 } 121 catch (Exception serviceException) 122 { 123 throw new RuntimeException ("Unable to perform search.", serviceException); 124 } 125 126 return results; 127 } 128 129 132 public class ContentResult 133 { 134 private String id; 135 private String name; 136 private String description; 137 private String url; 138 private String createDate; 139 140 public ContentResult(String id) 141 { 142 this.id = id; 143 } 144 145 public String getCreateDate() 146 { 147 return createDate; 148 } 149 150 public void setCreateDate(String createDate) 151 { 152 this.createDate = createDate; 153 } 154 155 public String getDescription() 156 { 157 return description; 158 } 159 160 public void setDescription(String description) 161 { 162 this.description = description; 163 } 164 165 public String getId() 166 { 167 return id; 168 } 169 170 public String getName() 171 { 172 return name; 173 } 174 175 public void setName(String name) 176 { 177 this.name = name; 178 } 179 180 public String getUrl() 181 { 182 return url; 183 } 184 185 public void setUrl(String url) 186 { 187 this.url = url; 188 } 189 190 @Override  191 public String toString() 192 { 193 return "id=" + this.id + 194 "; name=" + this.name + 195 "; description=" + this.description + 196 "; created=" + this.createDate + 197 "; url=" + this.url; 198 } 199 } 200 } 201
| Popular Tags
|