Package net.sf.saxon.resource
Class BinaryResource
- java.lang.Object
-
- net.sf.saxon.resource.BinaryResource
-
-
Field Summary
Fields Modifier and Type Field Description static ResourceFactory
FACTORY
ResourceFactory suitable for creating a BinaryResource
-
Constructor Summary
Constructors Constructor Description BinaryResource(String href, String contentType, byte[] content)
Create a binary resource supplying the actual content as a byte arrayBinaryResource(AbstractResourceCollection.InputDetails in)
Create a binary resource
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static String
decode(byte[] value, int offset, int len, String encoding)
static String
decode(byte[] value, String encoding)
static byte[]
encode(String s, String encoding)
static void
error(String message)
Throw an errorString
getContentType()
Get the media type (MIME type) of the resource if known, for example "image/jpeg".byte[]
getData()
Get the content of the resource as an array of bytesBase64BinaryValue
getItem()
Get an XDM Item holding the contents of this resource.String
getResourceURI()
Get the URI of the resourcestatic byte[]
readBinaryFromStream(InputStream in, String path)
Utility method to construct an array of bytes from the content of an InputStreamvoid
setData(byte[] data)
Set the content of the resource as an array of bytes
-
-
-
Field Detail
-
FACTORY
public static final ResourceFactory FACTORY
ResourceFactory suitable for creating a BinaryResource
-
-
Constructor Detail
-
BinaryResource
public BinaryResource(AbstractResourceCollection.InputDetails in)
Create a binary resource- Parameters:
in
- details about the resource
-
-
Method Detail
-
encode
public static byte[] encode(String s, String encoding) throws XPathException
- Throws:
XPathException
-
decode
public static String decode(byte[] value, String encoding) throws XPathException
- Throws:
XPathException
-
decode
public static String decode(byte[] value, int offset, int len, String encoding) throws XPathException
- Throws:
XPathException
-
error
public static void error(String message) throws XPathException
Throw an error- Parameters:
message
- the error message- Throws:
XPathException
- always
-
setData
public void setData(byte[] data)
Set the content of the resource as an array of bytes- Parameters:
data
- the content of the resource
-
getData
public byte[] getData()
Get the content of the resource as an array of bytes- Returns:
- the content (if it has been set using setData())
-
getResourceURI
public String getResourceURI()
Get the URI of the resource- Specified by:
getResourceURI
in interfaceResource
- Returns:
- the URI of the resource
-
readBinaryFromStream
public static byte[] readBinaryFromStream(InputStream in, String path) throws XPathException
Utility method to construct an array of bytes from the content of an InputStream- Parameters:
in
- the input stream. The method consumes the input stream but does not close it.path
- file name or URI used only for diagnostics- Returns:
- byte array representing the content of the InputStream
- Throws:
XPathException
- if a failure occurs obtaining a connection or reading the stream
-
getItem
public Base64BinaryValue getItem() throws XPathException
Get an XDM Item holding the contents of this resource.- Specified by:
getItem
in interfaceResource
- Returns:
- an item holding the contents of the resource. For a binary resource
the value will always be a
Base64BinaryValue
. This does not mean that the content is actually encoded in Base64 internally; rather it means that when converted to a string, the content is presented in Base64 encoding. - Throws:
XPathException
- if a failure occurs materializing the resource
-
getContentType
public String getContentType()
Get the media type (MIME type) of the resource if known, for example "image/jpeg".- Specified by:
getContentType
in interfaceResource
- Returns:
- the media type if known; otherwise null
-
-