@Override public void close() throws IOException { if (reader != null) { reader.close(); reader = null; closed = true; } }
@Override public void close() { wrappedReader.close(); }
@Override public void close() { wrappedReader.close(); }
/** * Print all user profiles. * * This method demonstrates how to open a reader that will read the entire * table. It has no start or stop keys specified. */ public void printUserProfies() { DatasetReader<UserProfileModel2> reader = userProfileDataset.newReader(); try { for (UserProfileModel2 userProfile : reader) { System.out.println(userProfile.toString()); } } finally { // readers need to be closed. reader.close(); } }
@Override public int run(String[] args) throws Exception { // Load the events dataset Dataset<GenericRecord> events = Datasets.load("dataset:hive:/tmp/data/default/events"); // Get a reader for the dataset and read all the events DatasetReader<GenericRecord> reader = events.newReader(); try { for (GenericRecord event : reader) { System.out.println(event); } } finally { reader.close(); } return 0; }
@Override public boolean isEmpty() { DatasetReader<E> reader = null; try { // use a reader because files may be present but empty reader = newReader(); return !reader.hasNext(); } finally { if (reader != null) { reader.close(); } } }
/** * Print all user profiles. * * This method demonstrates how to open a reader that will read the entire * table. It has no start or stop keys specified. */ public void printUserProfies() { DatasetReader<UserProfileModel2> reader = userProfileDataset.newReader(); try { for (UserProfileModel2 userProfile : reader) { System.out.println(userProfile.toString()); } } finally { // readers need to be closed. reader.close(); } }
@Override public int run(String[] args) throws Exception { Dataset<Record> movies = Datasets.load( "dataset:hdfs:/tmp/data/movies", Record.class); DatasetReader<Record> reader = null; try { reader = movies.newReader(); for (Record rec : reader) { System.err.println("Movie: " + rec); } } finally { if (reader != null) { reader.close(); } } return 0; }
@Override public int run(String[] args) throws Exception { // Load the products dataset Dataset<Product> products = Datasets.load( "dataset:hdfs:/tmp/data/products", Product.class); // Get a reader for the dataset and read all the users DatasetReader<Product> reader = null; try { reader = products.newReader(); for (Product product : reader) { System.out.println(product); } } finally { if (reader != null) { reader.close(); } } return 0; }
@Override public int run(String[] args) throws Exception { // Load the users dataset Dataset<Record> users = Datasets.load( "dataset:hdfs:/tmp/data/users", Record.class); // Get a reader for the dataset and read all the users DatasetReader<Record> reader = null; try { reader = users.newReader(); for (GenericRecord user : reader) { System.out.println(user); } } finally { if (reader != null) { reader.close(); } } return 0; }
@Override public int run(String[] args) throws Exception { // Load the users dataset Dataset<Record> users = Datasets.load( "dataset:hive?dataset=users", Record.class); // Get a reader for the dataset and read all the users DatasetReader<Record> reader = null; try { reader = users.newReader(); for (GenericRecord user : users.newReader()) { System.out.println(user); } } finally { if (reader != null) { reader.close(); } } return 0; }
@Override public int run(String[] args) throws Exception { // Load the users dataset Dataset<Record> users = Datasets.load( "dataset:hdfs:/tmp/data/users", Record.class); // Get a reader for the dataset and read all the users DatasetReader<Record> reader = null; try { reader = users.with("favoriteColor", "green").newReader(); for (GenericRecord user : reader) { System.out.println(user); } } finally { if (reader != null) { reader.close(); } } return 0; }
public static <E> Set<E> materialize(View<E> ds) { Set<E> records = Sets.newHashSet(); DatasetReader<E> reader = null; try { reader = ds.newReader(); for (E record : reader) { records.add(record); } } finally { if (reader != null) { reader.close(); } } return records; }
@Test public void testDoubleCloseIgnored() throws IOException { checkReaderBehavior(reader, totalRecords, validator); reader.close(); }
private void checkOutput(boolean existingPresent) { DatasetReader<GenericData.Record> reader = outputDataset.newReader(); Map<String, Integer> counts = new HashMap<String, Integer>(); for (GenericData.Record record : reader) { counts.put(record.get("name").toString(), (Integer) record.get("count")); } reader.close(); Assert.assertEquals(3, counts.get("apple").intValue()); Assert.assertEquals(2, counts.get("banana").intValue()); Assert.assertEquals(1, counts.get("carrot").intValue()); if (existingPresent) { Assert.assertEquals(4, counts.get("date").intValue()); } else { Assert.assertNull(counts.get("date")); } }
@Test(expected = IllegalStateException.class) public void testHasNextOnClosedWriterFails() throws IOException { checkReaderBehavior(reader, totalRecords, validator); try { reader.hasNext(); } finally { reader.close(); } }
@Test(expected = IllegalStateException.class) public void testNextOnClosedWriterFails() throws IOException { checkReaderBehavior(reader, totalRecords, validator); try { reader.next(); } finally { reader.close(); } }
private void validRange(View<TestEntity> range, int startIdx, int endIdx) { int cnt = startIdx; DatasetReader<TestEntity> reader = range.newReader(); try { for (TestEntity entity : reader) { Assert.assertEquals(Integer.toString(cnt), entity.getPart1()); Assert.assertEquals(Integer.toString(cnt), entity.getPart2()); cnt++; } } finally { reader.close(); } Assert.assertEquals(endIdx, cnt); } }
private void checkRecord(boolean shouldExist) { DatasetReader<TestEntity> dsReader = ds.newReader(); try { if (shouldExist) { assertTrue(dsReader.hasNext()); } else { assertFalse(dsReader.hasNext()); } } finally { dsReader.close(); } }
public static <R> void checkReaderBehavior( DatasetReader<R> reader, int totalRecords, RecordValidator<R> validator) { // this is now used for both initialized and not initialized records because // initialization now happens automatically in newReader if (!reader.isOpen() && reader instanceof InitializeAccessor) { ((InitializeAccessor) reader).initialize(); } try { Assert.assertTrue("Reader should be open", reader.isOpen()); checkReaderIteration(reader, totalRecords, validator); } finally { reader.close(); } Assert.assertFalse("Reader is open after close()", reader.isOpen()); }