@Override public void wrote(T tuple, long nbytes) { curSize += nbytes; curTupleCnt++; flushIt = flushConfig.evaluate(curTupleCnt, tuple); cycleIt = cycleConfig.evaluate(curSize, curTupleCnt, tuple); }
private static <T> void checkFileWriterConfig(FileWriterCycleConfig<T> cfg, long fileSize, int cntTuples, long periodMsec, Predicate<T> tuplePredicate, T trueTuple, T falseTuple) { assertEquals(fileSize, cfg.getFileSize()); assertEquals(cntTuples, cfg.getCntTuples()); assertEquals(periodMsec, cfg.getPeriodMsec()); assertEquals(tuplePredicate, cfg.getTuplePredicate()); cfg.toString(); long falseFileSize = fileSize-1; long trueFileSize = fileSize+1; int falseNTuples = cntTuples==1 ? 0 : cntTuples+1; int trueNTuples = 3*cntTuples; assertFalse("fileSize:"+fileSize+" cntTuples:"+cntTuples+" pred:"+tuplePredicate, cfg.evaluate(falseFileSize, falseNTuples, falseTuple)); if (fileSize!=0) assertTrue("fileSize:"+fileSize+" cntTuples:"+cntTuples+" pred:"+tuplePredicate, cfg.evaluate(trueFileSize, trueNTuples, falseTuple)); if (cntTuples!=0) assertTrue("fileSize:"+fileSize+" cntTuples:"+cntTuples+" pred:"+tuplePredicate, cfg.evaluate(falseFileSize, trueNTuples, falseTuple)); if (tuplePredicate!=null) assertTrue("fileSize:"+fileSize+" cntTuples:"+cntTuples+" pred:"+tuplePredicate, cfg.evaluate(falseFileSize, falseNTuples, trueTuple)); }