Package org.apache.openjpa.lib.rop
Interface ResultObjectProvider
- 
- All Superinterfaces:
- Closeable
 - All Known Subinterfaces:
- BatchedResultObjectProvider,- PCResultObjectProvider
 - All Known Implementing Classes:
- AbstractPCResultObjectProvider,- GenericResultObjectProvider,- InstanceResultObjectProvider,- ListResultObjectProvider,- MergedResultObjectProvider,- OrderingMergedResultObjectProvider,- PagingResultObjectProvider,- PreparedResultObjectProvider,- QueryImpl.PackingResultObjectProvider,- RangeResultObjectProvider,- SelectResultObjectProvider,- UniqueResultObjectProvider,- XROP
 
 public interface ResultObjectProvider extends Closeable Interface that allows lazy/custom instantiation of input objects.ResultListobjects do not necessarily load in data all at once. Instead, they may lazily load objects as necessary. So, the lifespan of aResultObjectProviderinstance is related to how the application deals with processing theResultListcreated with a givenResultObjectProviderinstance.- Author:
- Marc Prud'hommeaux, Patrick Linskey, Abe White
 
- 
- 
Method SummaryAll Methods Instance Methods Abstract Methods Modifier and Type Method Description booleanabsolute(int pos)Move to the given 0-based position.voidclose()Free the resources associated with this provider.java.lang.ObjectgetResultObject()Instantiate the current result object.voidhandleCheckedException(java.lang.Exception e)Any checked exceptions that are thrown will be passed to this method.booleannext()Advance the input to the next position.voidopen()Open the result.voidreset()Reset this provider.intsize()Return the number of items in the input, orInteger.MAX_VALUEif the size in unknown.booleansupportsRandomAccess()Return true if this provider supports random access.
 
- 
- 
- 
Method Detail- 
supportsRandomAccessboolean supportsRandomAccess() Return true if this provider supports random access.
 - 
openvoid open() throws java.lang.Exception - Throws:
- java.lang.Exception
 
 - 
getResultObjectjava.lang.Object getResultObject() throws java.lang.ExceptionInstantiate the current result object. This method will only be called afternext()orabsolute(int).- Throws:
- java.lang.Exception
 
 - 
nextboolean next() throws java.lang.ExceptionAdvance the input to the next position. Returntrueif there is more data; otherwisefalse.- Throws:
- java.lang.Exception
 
 - 
absoluteboolean absolute(int pos) throws java.lang.ExceptionMove to the given 0-based position. This method is only called for providers that support random access. Returntrueif there is data at this position; otherwisefalse. This may be invoked in place ofnext().- Throws:
- java.lang.Exception
 
 - 
sizeint size() throws java.lang.Exception Return the number of items in the input, orInteger.MAX_VALUEif the size in unknown.- Throws:
- java.lang.Exception
 
 - 
resetvoid reset() throws java.lang.ExceptionReset this provider. This is an optional operation. If supported, it should move the position of the provider to before the first element. Non-random-access providers may be able to support this method by re-acquiring all resources as if the result were just opened.- Throws:
- java.lang.Exception
 
 - 
closevoid close() throws java.lang.ExceptionFree the resources associated with this provider.
 - 
handleCheckedExceptionvoid handleCheckedException(java.lang.Exception e) Any checked exceptions that are thrown will be passed to this method. The provider should re-throw the exception as an appropriate unchecked exception.
 
- 
 
-