1 /*2 * Copyright (C) 2005 Alfresco, Inc.3 *4 * Licensed under the Mozilla Public License version 1.1 5 * with a permitted attribution clause. You may obtain a6 * copy of the License at7 *8 * http://www.alfresco.org/legal/license.txt9 *10 * Unless required by applicable law or agreed to in writing,11 * software distributed under the License is distributed on an12 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND,13 * either express or implied. See the License for the specific14 * language governing permissions and limitations under the15 * License.16 */17 package org.alfresco.repo.search;18 19 import java.util.ArrayList ;20 import java.util.List ;21 22 import org.alfresco.service.cmr.repository.ChildAssociationRef;23 import org.alfresco.service.cmr.repository.NodeRef;24 import org.alfresco.service.cmr.repository.Path;25 import org.alfresco.service.cmr.search.ResultSet;26 import org.alfresco.service.cmr.search.ResultSetRow;27 28 public abstract class AbstractResultSet implements ResultSet29 {30 31 private Path[] propertyPaths;32 33 public AbstractResultSet(Path[] propertyPaths)34 {35 super();36 this.propertyPaths = propertyPaths;37 }38 39 public Path[] getPropertyPaths()40 {41 return propertyPaths;42 }43 44 45 public float getScore(int n)46 {47 // All have equal weight by default48 return 1.0f;49 }50 51 public void close()52 {53 // default to do nothing54 }55 56 public List <NodeRef> getNodeRefs()57 {58 ArrayList <NodeRef> nodeRefs = new ArrayList <NodeRef>(length());59 for(ResultSetRow row: this)60 {61 nodeRefs.add(row.getNodeRef());62 }63 return nodeRefs;64 }65 66 public List <ChildAssociationRef> getChildAssocRefs()67 {68 ArrayList <ChildAssociationRef> cars = new ArrayList <ChildAssociationRef>(length());69 for(ResultSetRow row: this)70 {71 cars.add(row.getChildAssocRef());72 }73 return cars;74 }75 76 77 78 }79