com.atlassian.jira.entity
Class Select

java.lang.Object
  extended by com.atlassian.jira.entity.Select

public class Select
extends Object

Select is the entry point to building up a SelectQuery which can be run in OfBiz Entity Engine.

eg

 SelectQuery<GenericValue> query = Select.columns().from("FilterSubscription")
      .whereEqual("group", (String) null)
      .andEqual("username", username)
      .orderBy("id desc");
 
 

If you are selecting a single column, then you can it can return String objects instead of GenericValues like

 SelectQuery<String> query = Select.distinctString("username").from("FilterSubscription");
 List<String> vals = query.runWith(delegator).asList();
 
 

You can also use an EntityFactory to automatically convert the GenericValues to other entity objects.

 List<ProjectCategory> categories = Select.from(Entity.PROJECT_CATEGORY).runWith(delegator).asList();
 
 

Since:
v5.2

Nested Class Summary
static class Select.ExecutableContext<E>
          Provides the implementation for contexts that can run the select
static class Select.LimitContext<E>
           
static class Select.OrderByContext<E>
           
static class Select.SelectColumnsContext
           
static class Select.SelectColumnsFromContext<E>
           
static class Select.SelectSingleColumnContext<E>
           
static class Select.WhereClauseAwareContext<E>
          Marker for contexts that can accept a where clause
static class Select.WhereContext<E>
           
 
Constructor Summary
Select()
           
 
Method Summary
static Select.SelectColumnsContext columns(String... columns)
           
static Select.SelectColumnsFromContext<Long> countFrom(String entityName)
          Builds a "SELECT COUNT(*) FROM ..." query for the given entity.
static Select.SelectColumnsContext distinct(String... columns)
           
static Select.SelectSingleColumnContext<String> distinctString(String columnName)
           
static
<E> Select.SelectColumnsFromContext<E>
from(NamedEntityBuilder<E> entityFactory)
           
static Select.SelectColumnsFromContext<org.ofbiz.core.entity.GenericValue> from(String entityName)
           
static Select.SelectSingleColumnContext<Long> id()
           
static Select.SelectSingleColumnContext<String> stringColumn(String columnName)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Select

public Select()
Method Detail

columns

public static Select.SelectColumnsContext columns(String... columns)

distinct

public static Select.SelectColumnsContext distinct(String... columns)

id

public static Select.SelectSingleColumnContext<Long> id()

distinctString

public static Select.SelectSingleColumnContext<String> distinctString(String columnName)

stringColumn

public static Select.SelectSingleColumnContext<String> stringColumn(String columnName)

from

public static <E> Select.SelectColumnsFromContext<E> from(NamedEntityBuilder<E> entityFactory)

from

public static Select.SelectColumnsFromContext<org.ofbiz.core.entity.GenericValue> from(String entityName)

countFrom

public static Select.SelectColumnsFromContext<Long> countFrom(String entityName)
Builds a "SELECT COUNT(*) FROM ..." query for the given entity.

For example:

 long count = Select.countFrom(Entity.Name.COMMENT)
                    .whereEqual("author", userKey)
                    .runWith(ofBizDelegator).singleValue();
 

Parameters:
entityName - the Entity
Returns:
a query builder for a "SELECT COUNT(*) FROM ..." query


Copyright © 2002-2014 Atlassian. All Rights Reserved.