@Override public void truncate() throws IOException { execute(new Callable<Void>() { @Override public Void call() throws Exception { delegate.truncate(); return null; } }); }
private <T> T performDatasetAdmin(final DatasetId datasetInstanceId, Operation<T> operation) throws Exception { try (SystemDatasetInstantiator datasetInstantiator = datasetInstantiatorFactory.create()) { DatasetAdmin admin = impersonator.doAs(datasetInstanceId, (Callable<DatasetAdmin>) () -> { DatasetAdmin admin1 = datasetInstantiator.getDatasetAdmin(datasetInstanceId); if (admin1 == null) { throw new NotFoundException("Couldn't obtain DatasetAdmin for dataset instance " + datasetInstanceId); } // returns a DatasetAdmin that executes operations as a particular user, for a particular namespace return new ImpersonatingDatasetAdmin(admin1, impersonator, datasetInstanceId); }); try { return operation.perform(admin); } finally { Closeables.closeQuietly(admin); } } }
private <T> T performDatasetAdmin(final DatasetId datasetInstanceId, Operation<T> operation) throws Exception { try (SystemDatasetInstantiator datasetInstantiator = datasetInstantiatorFactory.create()) { DatasetAdmin admin = impersonator.doAs(datasetInstanceId, (Callable<DatasetAdmin>) () -> { DatasetAdmin admin1 = datasetInstantiator.getDatasetAdmin(datasetInstanceId); if (admin1 == null) { throw new NotFoundException("Couldn't obtain DatasetAdmin for dataset instance " + datasetInstanceId); } // returns a DatasetAdmin that executes operations as a particular user, for a particular namespace return new ImpersonatingDatasetAdmin(admin1, impersonator, datasetInstanceId); }); try { return operation.perform(admin); } finally { Closeables.closeQuietly(admin); } } }
@Override public void create() throws IOException { execute(new Callable<Void>() { @Override public Void call() throws Exception { delegate.create(); return null; } }); }
@Override public void upgrade() throws IOException { execute(new Callable<Void>() { @Override public Void call() throws Exception { delegate.upgrade(); return null; } }); }
@Override public boolean exists() throws IOException { return execute(new Callable<Boolean>() { @Override public Boolean call() throws Exception { return delegate.exists(); } }); }
@Override public void upgrade() throws IOException { execute(new Callable<Void>() { @Override public Void call() throws Exception { delegate.upgrade(); return null; } }); }
@Override public boolean exists() throws IOException { return execute(new Callable<Boolean>() { @Override public Boolean call() throws Exception { return delegate.exists(); } }); }
@Override public void drop() throws IOException { execute(new Callable<Void>() { @Override public Void call() throws Exception { delegate.drop(); return null; } }); }
@Override public void close() throws IOException { execute(new Callable<Void>() { @Override public Void call() throws Exception { delegate.close(); return null; } }); }
@Override public void create() throws IOException { execute(new Callable<Void>() { @Override public Void call() throws Exception { delegate.create(); return null; } }); }
@Override public void truncate() throws IOException { execute(new Callable<Void>() { @Override public Void call() throws Exception { delegate.truncate(); return null; } }); }
@Override public void drop() throws IOException { execute(new Callable<Void>() { @Override public Void call() throws Exception { delegate.drop(); return null; } }); }
@Override public void close() throws IOException { execute(new Callable<Void>() { @Override public Void call() throws Exception { delegate.close(); return null; } }); }