public final class FileContent extends AbstractInputStreamContent
AbstractInputStreamContent that generates repeatable input
streams based on the contents of a file.
Sample use:
private static void setRequestJpegContent(HttpRequest request, File jpegFile) {
request.setContent(new FileContent("image/jpeg", jpegFile));
}
Implementation is not thread-safe.
| Constructor and Description |
|---|
FileContent(String type,
File file) |
| Modifier and Type | Method and Description |
|---|---|
File |
getFile()
Returns the file.
|
InputStream |
getInputStream()
Return an input stream for the specific implementation type of
AbstractInputStreamContent. |
long |
getLength()
Returns the content length or less than zero if not known.
|
boolean |
retrySupported()
Returns whether or not retry is supported on this content type.
|
FileContent |
setCloseInputStream(boolean closeInputStream)
Sets whether the input stream should be closed at the end of
AbstractInputStreamContent.writeTo(java.io.OutputStream). |
FileContent |
setEncoding(String encoding)
Sets the content encoding (for example
"gzip") or null for none. |
FileContent |
setType(String type)
Sets the content type or
null for none. |
copy, copy, getCloseInputStream, getEncoding, getType, writeTopublic long getLength()
HttpContentpublic boolean retrySupported()
HttpContentpublic InputStream getInputStream() throws FileNotFoundException
AbstractInputStreamContentAbstractInputStreamContent. If the specific implementation will return true for
HttpContent.retrySupported() this should be a factory function which will create a new
InputStream from the source data whenever invoked.getInputStream in class AbstractInputStreamContentFileNotFoundExceptionpublic File getFile()
public FileContent setEncoding(String encoding)
AbstractInputStreamContent"gzip") or null for none. Subclasses
should override by calling super.setEncoding in class AbstractInputStreamContentpublic FileContent setType(String type)
AbstractInputStreamContentnull for none. Subclasses should override by calling super.setType in class AbstractInputStreamContentpublic FileContent setCloseInputStream(boolean closeInputStream)
AbstractInputStreamContentAbstractInputStreamContent.writeTo(java.io.OutputStream). Default is
true. Subclasses should override by calling super.setCloseInputStream in class AbstractInputStreamContentCopyright © 2011-2012 Google. All Rights Reserved.