Package ca.uqac.lif.cep.tuples
Class RegexTupleBuilder
- java.lang.Object
-
- ca.uqac.lif.cep.Processor
-
- ca.uqac.lif.cep.SynchronousProcessor
-
- ca.uqac.lif.cep.tuples.RegexTupleBuilder
-
- All Implemented Interfaces:
ca.uqac.lif.azrael.Printable,ca.uqac.lif.azrael.Readable,ca.uqac.lif.cep.Contextualizable,ca.uqac.lif.cep.Duplicable,ca.uqac.lif.cep.DuplicableProcessor
public class RegexTupleBuilder extends ca.uqac.lif.cep.SynchronousProcessorBuilds a tuple out of parts of text. The parts of text to create the tuple from are specified by a regular expression.More precisely, each element of the tuple corresponds to a capture block of the regex: the first capture block will correspond to the tuple's first element, the second to the second, and so on. By default, the name of each element is a number, with the first capture block starting at 0. Optionally, these elements can be renamed to arbitrary character strings.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classRegexTupleBuilder.RegexAttributeNameList
-
Field Summary
Fields Modifier and Type Field Description protected RegexTupleBuilder.RegexAttributeNameListm_attributeNamesThe name given to each capture block in the output tuplesprotected java.util.regex.Patternm_patternThe regex pattern to look for-
Fields inherited from class ca.uqac.lif.cep.SynchronousProcessor
m_inputPushables, m_outputPullables, m_tempQueue
-
Fields inherited from class ca.uqac.lif.cep.Processor
m_context, m_eventTracker, m_hasBeenNotifiedOfEndOfTrace, m_inputArity, m_inputCount, m_inputPullables, m_inputQueues, m_notifiedEndOfTraceDownstream, m_outputArity, m_outputCount, m_outputPushables, m_outputQueues, MAX_PULL_RETRIES, s_versionString
-
-
Constructor Summary
Constructors Constructor Description RegexTupleBuilder(java.lang.String regex, RegexTupleBuilder.RegexAttributeNameList attributes)Constructs a tuple builder.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static voidbuild(java.util.ArrayDeque<java.lang.Object> stack)protected booleancompute(java.lang.Object[] inputs, java.util.Queue<java.lang.Object[]> outputs)RegexTupleBuilderduplicate(boolean with_state)-
Methods inherited from class ca.uqac.lif.cep.SynchronousProcessor
getPullableOutput, getPushableInput, setEventTracker
-
Methods inherited from class ca.uqac.lif.cep.Processor
allNotifiedEndOfTrace, allNull, associateTo, associateToInput, associateToOutput, copyInputQueue, copyOutputQueue, duplicate, duplicateInto, equals, getAt, getContext, getContext, getEmptyQueue, getEventTracker, getId, getInputArity, getInputCount, getInputQueue, getInputType, getInputTypesFor, getLeaves, getLeaves, getOutputArity, getOutputCount, getOutputQueue, getOutputType, getPullableInput, getPullableOutput, getPushableInput, getPushableOutput, hashCode, leftShift, newContext, onEndOfTrace, or, or, print, printState, read, readState, reset, rightShift, setContext, setContext, setPullableInput, setPushableOutput, start, startAll, stop, stopAll
-
-
-
-
Field Detail
-
m_pattern
protected java.util.regex.Pattern m_pattern
The regex pattern to look for
-
m_attributeNames
protected RegexTupleBuilder.RegexAttributeNameList m_attributeNames
The name given to each capture block in the output tuples
-
-
Constructor Detail
-
RegexTupleBuilder
public RegexTupleBuilder(java.lang.String regex, RegexTupleBuilder.RegexAttributeNameList attributes)Constructs a tuple builder.- Parameters:
regex- The pattern. This can be any regular expression.attributes- The attribute names to give each capture block
-
-
Method Detail
-
compute
protected boolean compute(java.lang.Object[] inputs, java.util.Queue<java.lang.Object[]> outputs)- Specified by:
computein classca.uqac.lif.cep.SynchronousProcessor
-
build
public static void build(java.util.ArrayDeque<java.lang.Object> stack)
-
duplicate
public RegexTupleBuilder duplicate(boolean with_state)
- Specified by:
duplicatein interfaceca.uqac.lif.cep.Duplicable- Specified by:
duplicatein classca.uqac.lif.cep.Processor
-
-