Ok... in the local file case can we avoid creating a temp file? It's always nice to avoid temp resource allocation and for big files there will be a performance hit.  I think it would be fine to not support the remote case all together at this point, but i'll leave that to you. Not supporting it would be nice as we could drop the commons-io dependency since that seems to be the only thing it is used for.