GemFire 6.0.1

com.gemstone.gemfire.cache.query
Interface SelectResults<E>

All Superinterfaces:
Collection<E>, Iterable<E>

public interface SelectResults<E>
extends Collection<E>

Contains the results of a executing a SELECT expression within a query. A SELECT expression results in SelectResults that contain instances of Struct if: (a) there is more than one projection in the projection attributes, or (b) if the projection is * and there is more than one collection specified in the FROM clause.

Otherwise, a SELECT expression over a collection of domain objects results in SelectResults that contain domain objects, i.e. instances of domain classes such as String or Address.

 Cache cache = ...
 QueryService qs = cache.getQueryService();

 String select = "SELECT DISTINCT * FROM /root/employees " +
   "WHERE salary > 50000";
 Query query = qs.newQuery(select);
 SelectResults results = query.execute();

 for (Iterator iter = results.iterator(); iter.hasNext(); ) {
   Employee emp = (Employee) iter.next();
   System.out.println("Highly compensated: " + emp);
 }

 select = "SELECT DISTINCT age, address.zipCode FROM /root/employees " +
    "WHERE salary > 50000";
 query = qs.newQuery(select);
 results = query.execute();

 for (Iterator iter = results.iterator(); iter.hasNext(); ) {
   Struct struct = (Struct) iter.next();
   int age = ((Integer) struct.get("age")).intValue();
   String zipCode = (String) struct.get("zipCode");
   System.out.println(age + " -> " + zipCode);
 }

 

Since:
4.0
See Also:
Query.execute()

Method Summary
 List<E> asList()
          Returns this SelectedResults as a java.util.List.
 Set<E> asSet()
          Returns this SelectResults as a java.util.Set.
 CollectionType getCollectionType()
          Return the ObjectType for the type of collection this represents.
 boolean isModifiable()
          Return whether this collection is modifiable.
 int occurrences(E element)
          Return the number of times element occurs in this collection, that is the number of duplicates element has in this collection as defined by the equals> method.
 void setElementType(ObjectType elementType)
          Specify a new elementType, overriding any existing known elementType.
 
Methods inherited from interface java.util.Collection
add, addAll, clear, contains, containsAll, equals, hashCode, isEmpty, iterator, remove, removeAll, retainAll, size, toArray, toArray
 

Method Detail

isModifiable

boolean isModifiable()
Return whether this collection is modifiable. The result of this method has no bearing on whether the elements in the collection themselves are modifiable.

Returns:
true if this collection is modifiable, false if not.

occurrences

int occurrences(E element)
Return the number of times element occurs in this collection, that is the number of duplicates element has in this collection as defined by the equals> method. If element is not present in this collection, then 0 is returned.

Parameters:
element - the element
Returns:
the number of occurrances of element
Since:
5.1

asSet

Set<E> asSet()
Returns this SelectResults as a java.util.Set. If this collection is distinct and unordered, then no copying is necessary. Otherwise, the contents of this collection will be copied into a new instance of java.util.HashSet.

Returns:
Is this collection as a java.util.Set?

asList

List<E> asList()
Returns this SelectedResults as a java.util.List. If this collection is ordered, then no copying is necessary. Otherwise, the contents of this collection will be copied into a new instance of java.util.ArrayList.

Returns:
this collection as a java.util.List

getCollectionType

CollectionType getCollectionType()
Return the ObjectType for the type of collection this represents.

Returns:
the CollectionType for the type of collection this represents

setElementType

void setElementType(ObjectType elementType)
Specify a new elementType, overriding any existing known elementType. This modifies the CollectionType for this object to be the same collection type but with the newly specified element type.

Parameters:
elementType - the new elementType

GemFire 6.0.1

Copyright © 2002-2009 GemStone Systems, Inc. All Rights Reserved.