InputSupplier<? extends InputStream>, use ByteSource instead. For InputSupplier<? extends Reader>, use CharSource. Implementations of InputSupplier that don't fall into one of those categories do not benefit from any of the methods in common.io and should use a different interface. This interface is scheduled for removal in December 2015.
@Deprecated public interface InputSupplier<T>
T getInput() throws IOException
Like Iterable, this method may be called repeatedly to get independent channels to the same underlying resource.
Where the channel maintains a position within the resource, moving that cursor within one channel should not affect the starting position of channels returned by other calls.
IOException