org.eclipse.persistence.queries
Class ConstructorReportItem

java.lang.Object
  extended by org.eclipse.persistence.internal.queries.ReportItem
      extended by org.eclipse.persistence.queries.ConstructorReportItem
All Implemented Interfaces:
Serializable, Cloneable

public class ConstructorReportItem
extends org.eclipse.persistence.internal.queries.ReportItem

Purpose: An item specifying a class constructor method to be used in a ReportQuery's returned results.

Example:

      ConstructorReportItem item = new ConstructorReportItem("Employee");
      item.setResultType(Employee.class);
      item.addAttribute("firstName", employees.get("firstName"));
      query.addConstructorReportItem(item);
 

When executed will return a collection of ReportQueryResults that contain Employee objects created using the new Employee(firstname) constructor.

Since:
TopLink Essentials 1.0
Author:
Chris Delahunt
See Also:
Serialized Form

Constructor Summary
ConstructorReportItem()
          Create a new constructor item.
ConstructorReportItem(String name)
          Create a new constructor item.
 
Method Summary
 void addAttribute(Expression attributeExpression)
          Method to add an expression to be used to return the parameter that is then passed into the constructor method.
 void addAttribute(String attributeName, Expression attributeExpression, List joinedExpressions)
          Add the attribute with joining.
 void addItem(org.eclipse.persistence.internal.queries.ReportItem item)
           
 Constructor getConstructor()
          INTERNAL: Return the constructor.
 Class[] getConstructorArgTypes()
           
 List getConstructorMappings()
          INTERNAL: Return the mappings for the items.
 List getReportItems()
           
 void initialize(ReportQuery query)
          INTERNAL: Looks up mapping for attribute during preExecute of ReportQuery
 boolean isConstructorItem()
           
 void setConstructor(Constructor constructor)
          INTERNAL: Set the constructor.
 void setConstructorArgTypes(Class[] constructorArgTypes)
           
 void setConstructorMappings(List constructorMappings)
          INTERNAL: Return the mappings for the items.
 void setReportItems(List reportItems)
           
 String toString()
           
 
Methods inherited from class org.eclipse.persistence.internal.queries.ReportItem
clone, getAttributeExpression, getDescriptor, getJoinedAttributeManager, getJoinedAttributeManagerInternal, getMapping, getName, getResultIndex, getResultType, hasJoining, isPlaceHolder, setDescriptor, setJoinedAttributeManager, setMapping, setResultIndex, setResultType
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

ConstructorReportItem

public ConstructorReportItem()
Create a new constructor item.


ConstructorReportItem

public ConstructorReportItem(String name)
Create a new constructor item.

Parameters:
name - string used to look up this result in the ReportQueryResult.
Method Detail

addAttribute

public void addAttribute(Expression attributeExpression)
Method to add an expression to be used to return the parameter that is then passed into the constructor method. Similar to ReportQuery's addAttribute method, but name is not needed.


addAttribute

public void addAttribute(String attributeName,
                         Expression attributeExpression,
                         List joinedExpressions)
Add the attribute with joining.


addItem

public void addItem(org.eclipse.persistence.internal.queries.ReportItem item)

getConstructorArgTypes

public Class[] getConstructorArgTypes()

getConstructorMappings

public List getConstructorMappings()
INTERNAL: Return the mappings for the items.


getConstructor

public Constructor getConstructor()
INTERNAL: Return the constructor.


setConstructor

public void setConstructor(Constructor constructor)
INTERNAL: Set the constructor.


getReportItems

public List getReportItems()

initialize

public void initialize(ReportQuery query)
                throws QueryException
INTERNAL: Looks up mapping for attribute during preExecute of ReportQuery

Overrides:
initialize in class org.eclipse.persistence.internal.queries.ReportItem
Throws:
QueryException

isConstructorItem

public boolean isConstructorItem()
Overrides:
isConstructorItem in class org.eclipse.persistence.internal.queries.ReportItem

setConstructorArgTypes

public void setConstructorArgTypes(Class[] constructorArgTypes)

setConstructorMappings

public void setConstructorMappings(List constructorMappings)
INTERNAL: Return the mappings for the items.


setReportItems

public void setReportItems(List reportItems)

toString

public String toString()
Overrides:
toString in class org.eclipse.persistence.internal.queries.ReportItem