asterix-bad/src/main/java/org/apache/asterix/bad/function/runtime/CurrentChannelTimeDescriptor.java [62:85]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
                return new IScalarEvaluator() {

                    private ArrayBackedValueStorage resultStorage = new ArrayBackedValueStorage();
                    private DataOutput out = resultStorage.getDataOutput();

                    private final IPointable argPtr0 = new VoidPointable();
                    private final IScalarEvaluator eval0 = args[0].createScalarEvaluator(ctx);

                    @SuppressWarnings("unchecked")
                    private ISerializerDeserializer<ADateTime> datetimeSerde =
                            SerializerDeserializerProvider.INSTANCE.getSerializerDeserializer(BuiltinType.ADATETIME);
                    private AMutableDateTime aDateTime = new AMutableDateTime(0);
                    private IHyracksJobletContext jobletCtx = ctx.getTaskContext().getJobletContext();

                    @Override
                    public void evaluate(IFrameTupleReference tuple, IPointable result) throws HyracksDataException {
                        ActiveTimestampState existingState =
                                (ActiveTimestampState) ctx.getTaskContext().getStateObject(ActiveStateKey);
                        resultStorage.reset();

                        if (existingState == null) {
                            eval0.evaluate(tuple, argPtr0);
                            String channelName = new String(argPtr0.getByteArray(), argPtr0.getStartOffset() + 2,
                                    argPtr0.getLength() - 2);
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



asterix-bad/src/main/java/org/apache/asterix/bad/function/runtime/PreviousChannelTimeDescriptor.java [63:87]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
                return new IScalarEvaluator() {

                    private ArrayBackedValueStorage resultStorage = new ArrayBackedValueStorage();
                    private DataOutput out = resultStorage.getDataOutput();
                    private final IPointable argPtr0 = new VoidPointable();
                    private final IScalarEvaluator eval0 = args[0].createScalarEvaluator(ctx);

                    @SuppressWarnings("unchecked")
                    private ISerializerDeserializer<ADateTime> datetimeSerde =
                            SerializerDeserializerProvider.INSTANCE.getSerializerDeserializer(BuiltinType.ADATETIME);
                    private AMutableDateTime aDateTime = new AMutableDateTime(0);
                    private IHyracksJobletContext jobletCtx = ctx.getTaskContext().getJobletContext();

                    @Override
                    public void evaluate(IFrameTupleReference tuple, IPointable result) throws HyracksDataException {

                        ActiveTimestampState existingState =
                                (ActiveTimestampState) ctx.getTaskContext().getStateObject(ActiveStateKey);
                        resultStorage.reset();

                        if (existingState == null) {
                            eval0.evaluate(tuple, argPtr0);
                            // offset the type
                            String channelName = new String(argPtr0.getByteArray(), argPtr0.getStartOffset() + 2,
                                    argPtr0.getLength() - 2);
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



