@Override public void close() { try { resource.close(); } catch (final Exception e) { LOG.warn("Failed to close resource {}", get().getClass().getSimpleName(), e); } } }
@Override public <T> T getObject(final String ref, final Class<T> clazz) throws DataSourceException { try (QuietResource<InputStream> qr = new QuietResource<>(getStream(ref))) { try { return codec.deserialise(qr.get(), clazz); } catch (CodecException e) { throw new DataSourceException("Could not deserialise stream", e); } } }