public class InputStreamResource extends AbstractResource
Resource
implementation for a given InputStream
.
Should only be used if no other specific Resource
implementation
is applicable. In particular, prefer ByteArrayResource
or any of the
file-based Resource
implementations where possible.
In contrast to other Resource
implementations, this is a descriptor
for an already opened resource - therefore returning true
from
isOpen()
. Do not use an InputStreamResource
if you need to
keep the resource descriptor somewhere, or if you need to read from a stream
multiple times.
ByteArrayResource
,
ClassPathResource
,
FileSystemResource
,
UrlResource
Constructor and Description |
---|
InputStreamResource(InputStream inputStream)
Create a new InputStreamResource.
|
InputStreamResource(InputStream inputStream,
String description)
Create a new InputStreamResource.
|
Modifier and Type | Method and Description |
---|---|
boolean |
equals(Object other)
This implementation compares the underlying InputStream.
|
boolean |
exists()
This implementation always returns
true . |
String |
getDescription()
This implementation returns a description that includes the passed-in
description, if any.
|
InputStream |
getInputStream()
This implementation throws IllegalStateException if attempting to
read the underlying stream multiple times.
|
int |
hashCode()
This implementation returns the hash code of the underlying InputStream.
|
boolean |
isOpen()
This implementation always returns
true . |
contentLength, createRelative, getFile, getFileForLastModifiedCheck, getFilename, getURI, getURL, isFile, isReadable, lastModified, readableChannel, toString
public InputStreamResource(InputStream inputStream)
inputStream
- the InputStream to usepublic InputStreamResource(InputStream inputStream, @Nullable String description)
inputStream
- the InputStream to usedescription
- where the InputStream comes frompublic boolean exists()
true
.exists
in interface Resource
exists
in class AbstractResource
public boolean isOpen()
true
.isOpen
in interface Resource
isOpen
in class AbstractResource
public InputStream getInputStream() throws IOException, IllegalStateException
null
)FileNotFoundException
- if the underlying resource doesn't existIOException
- if the content stream could not be openedIllegalStateException
public String getDescription()
Object.toString()
public boolean equals(Object other)
equals
in class AbstractResource
Resource.getDescription()
public int hashCode()
hashCode
in class AbstractResource
Resource.getDescription()