BytesArrayPool write(Object object) { pool.reset(); Object value = extractor.field(object); if (value == FieldExtractor.NOT_FOUND) { String obj = (extractor instanceof FieldExplainer ? ((FieldExplainer) extractor).toString(object) : object.toString()); throw new EsHadoopIllegalArgumentException(String.format("[%s] cannot extract value from entity [%s] | instance [%s]", extractor, obj.getClass(), obj)); } else if (value == FieldExtractor.SKIP) { // Skip it return pool; } if (headerValue != null) { pool.get().bytes(headerValue); } if (value instanceof List) { for (Object val : (List) value) { doWrite(val); } } // if/else to save one collection/iterator instance else { doWrite(value); } return pool; }
@Test public void testAddAndReset() throws Exception { BytesArrayPool pool = new BytesArrayPool(); pool.get().bytes("Test"); pool.get().bytes("Data"); pool.get().bytes("Rules"); BytesRef ref = new BytesRef(); assertEquals(13, pool.length()); ref.add(pool); assertEquals("TestDataRules", ref.toString()); BytesRef ref2 = new BytesRef(); pool.reset(); pool.get().bytes("New"); pool.get().bytes("Info"); assertEquals(7, pool.length()); ref2.add(pool); assertEquals("NewInfo", ref2.toString()); } }
BytesArrayPool write(Object object) { pool.reset(); Object value = extractor.field(object); if (value == FieldExtractor.NOT_FOUND) { String obj = (extractor instanceof FieldExplainer ? ((FieldExplainer) extractor).toString(object) : object.toString()); throw new EsHadoopIllegalArgumentException(String.format("[%s] cannot extract value from entity [%s] | instance [%s]", extractor, obj.getClass(), obj)); } if (value instanceof List) { for (Object val : (List) value) { doWrite(val); } } // if/else to save one collection/iterator instance else { doWrite(value); } return pool; }
BytesArrayPool write(Object object) { pool.reset(); Object value = extractor.field(object); if (value == FieldExtractor.NOT_FOUND) { String obj = (extractor instanceof FieldExplainer ? ((FieldExplainer) extractor).toString(object) : object.toString()); throw new EsHadoopIllegalArgumentException(String.format("[%s] cannot extract value from entity [%s] | instance [%s]", extractor, obj.getClass(), obj)); } else if (value == FieldExtractor.SKIP) { // Skip it return pool; } if (headerValue != null) { pool.get().bytes(headerValue); } if (value instanceof List) { for (Object val : (List) value) { doWrite(val); } } // if/else to save one collection/iterator instance else { doWrite(value); } return pool; }
BytesArrayPool write(Object object) { pool.reset(); Object value = extractor.field(object); if (value == FieldExtractor.NOT_FOUND) { String obj = (extractor instanceof FieldExplainer ? ((FieldExplainer) extractor).toString(object) : object.toString()); throw new EsHadoopIllegalArgumentException(String.format("[%s] cannot extract value from entity [%s] | instance [%s]", extractor, obj.getClass(), obj)); } else if (value == FieldExtractor.SKIP) { // Skip it return pool; } if (headerValue != null) { pool.get().bytes(headerValue); } if (value instanceof List) { for (Object val : (List) value) { doWrite(val); } } // if/else to save one collection/iterator instance else { doWrite(value); } return pool; }
BytesArrayPool write(Object object) { pool.reset(); Object value = extractor.field(object); if (value == FieldExtractor.NOT_FOUND) { String obj = (extractor instanceof FieldExplainer ? ((FieldExplainer) extractor).toString(object) : object.toString()); throw new EsHadoopIllegalArgumentException(String.format("[%s] cannot extract value from entity [%s] | instance [%s]", extractor, obj.getClass(), obj)); } else if (value == FieldExtractor.SKIP) { // Skip it return pool; } if (headerValue != null) { pool.get().bytes(headerValue); } if (value instanceof List) { for (Object val : (List) value) { doWrite(val); } } // if/else to save one collection/iterator instance else { doWrite(value); } return pool; }