private void init() { ImmutableBytesWritable ptr = new ImmutableBytesWritable(); Expression e = getPatternStrExpression(); if (e.isStateless() && e.getDeterminism() == Determinism.ALWAYS && e.evaluate(null, ptr)) { String pattern = (String) TYPE.toObject(ptr, TYPE, e.getSortOrder()); if (pattern != null) { initializedSplitter = compilePatternSpec(pattern); } } }
@Override public boolean evaluate(Tuple tuple, ImmutableBytesWritable ptr) { AbstractBaseSplitter splitter = initializedSplitter; if (splitter == null) { Expression e = getPatternStrExpression(); if (e.evaluate(tuple, ptr)) { String pattern = (String) TYPE.toObject(ptr, TYPE, e.getSortOrder()); if (pattern != null) { splitter = compilePatternSpec(pattern); } else { ptr.set(ByteUtil.EMPTY_BYTE_ARRAY); // set ptr to null return true; } } else { return false; } } Expression e = getSourceStrExpression(); if (!e.evaluate(tuple, ptr)) { return false; } TYPE.coerceBytes(ptr, TYPE, e.getSortOrder(), SortOrder.ASC); return splitter.split(ptr); }
private void init() { ImmutableBytesWritable ptr = new ImmutableBytesWritable(); Expression e = getPatternStrExpression(); if (e.isStateless() && e.getDeterminism() == Determinism.ALWAYS && e.evaluate(null, ptr)) { String pattern = (String) TYPE.toObject(ptr, TYPE, e.getSortOrder()); if (pattern != null) { initializedSplitter = compilePatternSpec(pattern); } } }
private void init() { ImmutableBytesWritable ptr = new ImmutableBytesWritable(); Expression e = getPatternStrExpression(); if (e.isStateless() && e.getDeterminism() == Determinism.ALWAYS && e.evaluate(null, ptr)) { String pattern = (String) TYPE.toObject(ptr, TYPE, e.getSortOrder()); if (pattern != null) { initializedSplitter = compilePatternSpec(pattern); } } }
@Override public boolean evaluate(Tuple tuple, ImmutableBytesWritable ptr) { AbstractBaseSplitter splitter = initializedSplitter; if (splitter == null) { Expression e = getPatternStrExpression(); if (e.evaluate(tuple, ptr)) { String pattern = (String) TYPE.toObject(ptr, TYPE, e.getSortOrder()); if (pattern != null) { splitter = compilePatternSpec(pattern); } else { ptr.set(ByteUtil.EMPTY_BYTE_ARRAY); // set ptr to null return true; } } else { return false; } } Expression e = getSourceStrExpression(); if (!e.evaluate(tuple, ptr)) { return false; } TYPE.coerceBytes(ptr, TYPE, e.getSortOrder(), SortOrder.ASC); return splitter.split(ptr); }
@Override public boolean evaluate(Tuple tuple, ImmutableBytesWritable ptr) { AbstractBaseSplitter splitter = initializedSplitter; if (splitter == null) { Expression e = getPatternStrExpression(); if (e.evaluate(tuple, ptr)) { String pattern = (String) TYPE.toObject(ptr, TYPE, e.getSortOrder()); if (pattern != null) { splitter = compilePatternSpec(pattern); } else { ptr.set(ByteUtil.EMPTY_BYTE_ARRAY); // set ptr to null return true; } } else { return false; } } Expression e = getSourceStrExpression(); if (!e.evaluate(tuple, ptr)) { return false; } TYPE.coerceBytes(ptr, TYPE, e.getSortOrder(), SortOrder.ASC); return splitter.split(ptr); }