Package org.rumbledb.runtime
Class AtMostOneItemLocalRuntimeIterator
java.lang.Object
org.rumbledb.runtime.RuntimeIterator
org.rumbledb.runtime.AtMostOneItemLocalRuntimeIterator
- All Implemented Interfaces:
com.esotericsoftware.kryo.KryoSerializable,Serializable,RuntimeIteratorInterface
- Direct Known Subclasses:
AbsFunctionIterator,ACosFunctionIterator,AdditiveOperationIterator,AdjustDateTimeToTimezone,AdjustDateToTimezone,AdjustTimeToTimezone,AndOperationIterator,ApplyStatementIterator,ArrayRuntimeIterator,ArraySizeFunctionIterator,ASinFunctionIterator,AssignStatementIterator,ATan2FunctionIterator,ATanFunctionIterator,AtMostOneItemIfRuntimeIterator,AtMostOneItemTypePromotionIterator,AttributeNodeContentRuntimeIterator,AttributeNodeRuntimeIterator,AvgFunctionIterator,BooleanFunctionIterator,BooleanRuntimeIterator,BreakStatementIterator,CardinalityFunctionIterator,CastableIterator,CastIterator,CeilingFunctionIterator,CodepointEqualFunctionIterator,CodepointsToStringFunctionIterator,CommaVariableDeclStatementIterator,CompareFunctionIterator,ComparisonIterator,ComputedAttributeConstructorRuntimeIterator,ComputedElementConstructorRuntimeIterator,ConcatFunctionIterator,ConditionalStatementIterator,ConstantRuntimeIterator,ContainsFunctionIterator,ContextExpressionIterator,ContinueStatementIterator,CosFunctionIterator,CoshFunctionIterator,CountFunctionIterator,CurrentDateFunctionIterator,CurrentDateTimeFunctionIterator,CurrentTimeFunctionIterator,DateTimeFunctionIterator,DayFromDateFunctionIterator,DayFromDateTimeFunctionIterator,DaysFromDurationFunctionIterator,DebugFunctionIterator,DecimalRuntimeIterator,DeepEqualFunctionIterator,DefaultCollationFunctionIterator,DirElemConstructorRuntimeIterator,DocumentNodeConstructorRuntimeIterator,DoubleRuntimeIterator,DynamicItemTypeIterator,EmptyFunctionIterator,EmptySequenceIterator,EndsWithFunctionIterator,ExactlyOneIterator,ExistsFunctionIterator,Exp10FunctionIterator,ExpFunctionIterator,FalseFunctionIterator,FloorFunctionIterator,FormatDateFunctionIterator,FormatDateTimeFunctionIterator,FormatTimeFunctionIterator,FunctionRuntimeIterator,HeadFunctionIterator,HoursFromDateTimeFunctionIterator,HoursFromDurationFunctionIterator,HoursFromTimeFunctionIterator,ImplicitTimezoneIterator,InstanceOfIterator,IntegerRuntimeIterator,IsNullIterator,LastFunctionIterator,Log10FunctionIterator,LogFunctionIterator,LowerCaseFunctionIterator,MatchesFunctionIterator,MaxFunctionIterator,MinFunctionIterator,MinutesFromDateTimeFunctionIterator,MinutesFromDurationFunctionIterator,MinutesFromTimeFunctionIterator,MonthFromDateFunctionIterator,MonthFromDateTimeFunctionIterator,MonthsFromDurationFunctionIterator,MultiplicativeOperationIterator,NamedFunctionRefRuntimeIterator,NodeComparisonRuntimeIterator,NormalizeSpaceFunctionIterator,NormalizeUnicodeFunctionIterator,NotFunctionIterator,NotOperationIterator,NullFunctionIterator,NullRuntimeIterator,NumberFunctionIterator,ObjectAccumulateFunctionIterator,ObjectConstructorRuntimeIterator,ObjectIntersectFunctionIterator,OrOperationIterator,ParseJsonFunctionIterator,PiFunctionIterator,PositionFunctionIterator,PowFunctionIterator,RandomNumberGeneratorIterator,ReplaceFunctionIterator,ResolveURIFunctionIterator,ReturnStatementClauseIterator,RoundFunctionIterator,RoundHalfToEvenFunctionIterator,SecondsFromDateTimeFunctionIterator,SecondsFromDurationFunctionIterator,SecondsFromTimeFunctionIterator,SequenceLookupIterator,SinFunctionIterator,SinhFunctionIterator,SqrtFunctionIterator,StartsWithFunctionIterator,StatementsOnlyIterator,StaticBaseURIFunctionIterator,StringConcatIterator,StringFunctionIterator,StringJoinFunctionIterator,StringLengthFunctionIterator,StringRuntimeIterator,SubstringAfterFunctionIterator,SubstringBeforeFunctionIterator,SubstringFunctionIterator,SumFunctionIterator,SwitchStatementIterator,TanFunctionIterator,TextNodeConstructorRuntimeIterator,TextNodeRuntimeIterator,ThrowErrorIterator,TimeInMillis,TimezoneFromDateFunctionIterator,TimezoneFromDateTimeFunctionIterator,TimezoneFromTimeFunctionIterator,TranslateFunctionIterator,TrueFunctionIterator,TryCatchStatementIterator,TypeSwitchStatementIterator,UnaryOperationIterator,UpperCaseFunctionIterator,VariableDeclStatementIterator,WhileStatementIterator,YearFromDateFunctionIterator,YearFromDateTimeFunctionIterator,YearsFromDurationFunctionIterator,ZeroOrOneIterator
- See Also:
-
Field Summary
Fields inherited from class org.rumbledb.runtime.RuntimeIterator
children, currentDynamicContextForLocalExecution, FLOW_EXCEPTION_MESSAGE, hasNext, isOpen, isSequential, isUpdating, staticContext, staticURI -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedAtMostOneItemLocalRuntimeIterator(List<RuntimeIterator> children, RuntimeStaticContext staticContext) -
Method Summary
Modifier and TypeMethodDescriptionvoidclose()booleangetEffectiveBooleanValueOrCheckPosition(DynamicContext dynamicContext, Item position) This function calculates the effective boolean value of the sequence given by iterator.org.apache.spark.api.java.JavaRDD<Item>getRDD(DynamicContext context) voidmaterialize(DynamicContext dynamicContext, List<Item> result) Materialize the items of the iterator into the result list.materializeAtMostOneItemOrNull(DynamicContext dynamicContext) materializeExactlyOneItem(DynamicContext dynamicContext) abstract ItemmaterializeFirstItemOrNull(DynamicContext context) voidmaterializeNFirstItems(DynamicContext dynamicContext, List<Item> result, int n) next()voidopen(DynamicContext dynamicContext) voidreset(DynamicContext dynamicContext) Methods inherited from class org.rumbledb.runtime.RuntimeIterator
bindToVariableInDynamicContext, canProduceDataFrame, deepCopy, generateNativeQuery, getConfiguration, getDataFrame, getEffectiveBooleanValue, getHighestExecutionMode, getMetadata, getOrCreateDataFrame, getPendingUpdateList, getStaticType, getVariableDependencies, hasNext, isDataFrame, isLocal, isOpen, isRDD, isRDDOrDataFrame, isSequential, isSparkJobNeeded, isUpdating, materialize, materializeAtMostOneItemOrDefault, print, printToStandardError, read, setStaticContext, write
-
Constructor Details
-
AtMostOneItemLocalRuntimeIterator
protected AtMostOneItemLocalRuntimeIterator(List<RuntimeIterator> children, RuntimeStaticContext staticContext)
-
-
Method Details
-
getRDD
- Overrides:
getRDDin classRuntimeIterator
-
materializeFirstItemOrNull
- Overrides:
materializeFirstItemOrNullin classRuntimeIterator
-
open
- Specified by:
openin interfaceRuntimeIteratorInterface- Overrides:
openin classRuntimeIterator
-
next
- Specified by:
nextin interfaceRuntimeIteratorInterface- Specified by:
nextin classRuntimeIterator
-
reset
- Specified by:
resetin interfaceRuntimeIteratorInterface- Overrides:
resetin classRuntimeIterator
-
close
public void close()- Specified by:
closein interfaceRuntimeIteratorInterface- Overrides:
closein classRuntimeIterator
-
materializeExactlyOneItem
public Item materializeExactlyOneItem(DynamicContext dynamicContext) throws NoItemException, MoreThanOneItemException - Overrides:
materializeExactlyOneItemin classRuntimeIterator- Throws:
NoItemExceptionMoreThanOneItemException
-
materializeAtMostOneItemOrNull
public Item materializeAtMostOneItemOrNull(DynamicContext dynamicContext) throws MoreThanOneItemException - Overrides:
materializeAtMostOneItemOrNullin classRuntimeIterator- Throws:
MoreThanOneItemException
-
materialize
Description copied from class:RuntimeIteratorMaterialize the items of the iterator into the result list.- Overrides:
materializein classRuntimeIterator- Parameters:
dynamicContext- the dynamic contextresult- the list to materialize the items into. The list is cleared before the materialization.
-
materializeNFirstItems
- Overrides:
materializeNFirstItemsin classRuntimeIterator
-
getEffectiveBooleanValueOrCheckPosition
public boolean getEffectiveBooleanValueOrCheckPosition(DynamicContext dynamicContext, Item position) Description copied from class:RuntimeIteratorThis function calculates the effective boolean value of the sequence given by iterator. Non-empty objects and arrays always return true. Empty sequence returns false. Singleton atomic values are evaluated to their effective boolean value. Multiple atomic values throw an exception. If the sequence is a single numeric item and a non-null position is supplied, then instead it is checked whether the numeric item is equal to the position.- Overrides:
getEffectiveBooleanValueOrCheckPositionin classRuntimeIterator- Parameters:
dynamicContext- the dynamic contextposition- the context position, or null if none- Returns:
- the effective boolean value.
-