0.10.8-alpha
ca.uqac.lif.cep.Duplicable Interface Reference

Interface indicating that an object can be duplicated. More...

Public Member Functions

Object duplicate ()
 Duplicates an object and sets it to its initial state. More...
 
Object duplicate (boolean with_state)
 Duplicates an object. More...
 

Detailed Description

Interface indicating that an object can be duplicated.

Note that while duplication looks very similar to cloning, it is actually different. A duplicated object may not have the exact same state as the original. This is particularly true of Processor objects, which always have a different numerical ID. Moreover, duplication may be dependent on a Context object, which cannot be the case with Java's meaning of cloning. Hence the need for a different interface.

Author
Sylvain Hallé
Since
0.7

Definition at line 32 of file Duplicable.java.

Member Function Documentation

◆ duplicate() [1/2]

Object ca.uqac.lif.cep.Duplicable.duplicate ( )

Duplicates an object and sets it to its initial state.

This should be the same thing as calling duplicate(false).

Returns
Another object

Implemented in ca.uqac.lif.cep.Processor, ca.uqac.lif.cep.functions.Function, ca.uqac.lif.cep.functions.DuplicableFunction, and ca.uqac.lif.cep.DuplicableProcessor.

◆ duplicate() [2/2]

Object ca.uqac.lif.cep.Duplicable.duplicate ( boolean  with_state)

Duplicates an object.

Optionally, set the object into the same state as the source object.

Parameters
with_stateSet to true to replicate the object's state, false to create a new copy in the initial state.
Returns
Another object

Implemented in ca.uqac.lif.cep.Processor, ca.uqac.lif.cep.util.Bags.Explode, ca.uqac.lif.cep.util.Numbers.NumberCast, ca.uqac.lif.cep.GroupProcessor, ca.uqac.lif.cep.util.Multiset.PutInto, ca.uqac.lif.cep.util.Multiset.GetCardinalities, ca.uqac.lif.cep.util.Lists.Unpack, ca.uqac.lif.cep.util.Multiset.Insert, ca.uqac.lif.cep.util.Bags.ToSet, ca.uqac.lif.cep.util.Lists.TimePack, ca.uqac.lif.cep.util.Bags.ToList, ca.uqac.lif.cep.util.Maps.MergeMaps, ca.uqac.lif.cep.util.Bags.ToArray, ca.uqac.lif.cep.io.Print, ca.uqac.lif.cep.util.Bags.RunOn, ca.uqac.lif.cep.functions.Function, ca.uqac.lif.cep.util.Maps.MapPutInto, ca.uqac.lif.cep.util.Lists.Pack, ca.uqac.lif.cep.tmf.QueueSource, ca.uqac.lif.cep.tmf.Window, ca.uqac.lif.cep.functions.FunctionTree, ca.uqac.lif.cep.util.Maps.PutInto, ca.uqac.lif.cep.functions.Cumulate, ca.uqac.lif.cep.util.Sets.PutIntoNew, ca.uqac.lif.cep.tmf.Splice, ca.uqac.lif.cep.functions.BinaryFunction< T, V, U >, ca.uqac.lif.cep.tmf.Pump, ca.uqac.lif.cep.util.Lists.PutIntoNew, ca.uqac.lif.cep.functions.StreamVariable, ca.uqac.lif.cep.tmf.QueueSink, ca.uqac.lif.cep.tmf.Slice, ca.uqac.lif.cep.io.WriteToFile, ca.uqac.lif.cep.tmf.CountDecimate, ca.uqac.lif.cep.tmf.WindowFunction, ca.uqac.lif.cep.io.HttpGet, ca.uqac.lif.cep.tmf.Pad, ca.uqac.lif.cep.io.ReadInputStream, ca.uqac.lif.cep.util.Sets.PutInto, ca.uqac.lif.cep.functions.ApplyFunctionPartial, ca.uqac.lif.cep.util.Strings.BuildString, ca.uqac.lif.cep.functions.RaiseArity, ca.uqac.lif.cep.functions.UnaryFunction< T, U >, ca.uqac.lif.cep.tmf.TimeDecimate, ca.uqac.lif.cep.tmf.Divert, ca.uqac.lif.cep.functions.Constant, ca.uqac.lif.cep.util.Randomize, ca.uqac.lif.cep.io.WriteOutputStream, ca.uqac.lif.cep.tmf.SimpleFilter, ca.uqac.lif.cep.functions.IfThenElse, ca.uqac.lif.cep.util.Lists.PutInto, ca.uqac.lif.cep.functions.ApplyFunction, ca.uqac.lif.cep.functions.PassthroughFunction, ca.uqac.lif.cep.functions.IdentityFunction, ca.uqac.lif.cep.tmf.Insert, ca.uqac.lif.cep.tmf.Multiplex, ca.uqac.lif.cep.util.NthElement, ca.uqac.lif.cep.functions.ContextVariable, ca.uqac.lif.cep.tmf.ResetLast, ca.uqac.lif.cep.tmf.SinkLast, ca.uqac.lif.cep.tmf.FilterOn, ca.uqac.lif.cep.tmf.Trim, ca.uqac.lif.cep.util.FindPattern, ca.uqac.lif.cep.tmf.Freeze, ca.uqac.lif.cep.tmf.SliceLast, ca.uqac.lif.cep.Doubler, ca.uqac.lif.cep.io.Call, ca.uqac.lif.cep.functions.TurnInto, ca.uqac.lif.cep.tmf.Filter, ca.uqac.lif.cep.tmf.Passthrough, ca.uqac.lif.cep.Adder, ca.uqac.lif.cep.functions.FunctionLambda, ca.uqac.lif.cep.tmf.Tank, ca.uqac.lif.cep.functions.ApplyFunctionLambda, ca.uqac.lif.cep.tmf.Stutter, ca.uqac.lif.cep.util.InstanceOf, ca.uqac.lif.cep.tmf.VariableStutter, ca.uqac.lif.cep.tmf.Fork, ca.uqac.lif.cep.functions.ApplyFunctionArgument, ca.uqac.lif.cep.tmf.BlackHole, ca.uqac.lif.cep.tmf.CallbackSink, ca.uqac.lif.cep.tmf.TankLast, and ca.uqac.lif.cep.tmf.KeepLast.


The documentation for this interface was generated from the following file: