Interface OracleBfile
- All Known Implementing Classes:
BFILE
- Since:
- 11.2.0.3.0
-
Method Summary
Modifier and TypeMethodDescriptiondefault voidclose()Deprecated, for removal: This API element is subject to removal in a future version.The name of this method is anticipated to conflict with a future version of the JDBC Specification.voidClose the FILE.voidcloseLob()Close a previously opened external LOB.booleanFind out if a given BFILE (whose locator) points to a file that actually exists on the server's filesystem.Retrieve the entire BFILE as a stream.getBinaryStream(long pos) Read from the external LOB as a stream at the requested position.byte[]getBytes(long pos, int length) Return a copy of the contents of the BFILE at the requested position.intgetBytes(long pos, int length, byte[] buf) Copy the contents of the BFILE at the requested position to supplied buffer.Gets the Bfile's directory alias.getName()Gets the Bfile's file name.booleanFind out whether a BFILE was openeddefault booleanisOpen()Deprecated, for removal: This API element is subject to removal in a future version.The name of this method is anticipated to conflict with a future version of the JDBC Specification.booleanCheck whether the external LOB is opened.longlength()The length of the BFILE in bytes.default voidopen(LargeObjectAccessMode mode) Deprecated, for removal: This API element is subject to removal in a future version.The name of this method is anticipated to conflict with a future version of the JDBC Specification.voidopenFile()Open the FILE.voidopenLob(LargeObjectAccessMode mode) Open an external LOB in the indicated mode.longposition(byte[] pattern, long start) Determine the byte position at which the given byte patternlongposition(OracleBfile pattern, long start) Determine the byte position at which the given patternFlow.Publisher<byte[]>publisherOracle(long position) Returns aPublisherthat publishes the content of thisBFilebeginning at the specified position.default Flow.Publisher<byte[]>publisherOracle(long position, ErrorSet continueOnErrorSet) Returns aPublisherthat publishes the content of thisBFilebeginning at the specified position.
-
Method Details
-
length
The length of the BFILE in bytes.- Returns:
- length of the BFILE in bytes
- Throws:
SQLException
-
getBytes
Return a copy of the contents of the BFILE at the requested position.- Parameters:
pos- is the first byte of the bfile to be extracted.(1-based)length- is the number of consecutive bytes to be copied.- Returns:
- a byte array containing a portion of the BFILE
- Throws:
SQLException
-
getBytes
Copy the contents of the BFILE at the requested position to supplied buffer.- Parameters:
pos- is the first byte of the bfile to be extracted. (1-based)length- is the number of consecutive bytes to be copied.buf- is the buffer to have the extracted bytes.- Returns:
- a byte array containing a portion of the BFILE
- Throws:
SQLException
-
getBinaryStream
Retrieve the entire BFILE as a stream.- Returns:
- a stream containing the BFILE data
- Throws:
SQLException
-
getBinaryStream
Read from the external LOB as a stream at the requested position.- Parameters:
pos- is the position of data to be read. The first position is 1.- Returns:
- an input stream to read data from the BFILE
- Throws:
SQLException- Since:
- 8.2.0
-
position
Determine the byte position at which the given byte pattern- Parameters:
pattern- is the pattern to search for.start- is the position at which to begin searching. (1-based)- Returns:
- the position at which the pattern appears, else -1.
- Throws:
SQLException
-
position
Determine the byte position at which the given pattern- Parameters:
pattern- is the pattern to search for.start- is the position at which to begin searching. (1-based)- Returns:
- the position at which the pattern appears, else -1.
- Throws:
SQLException
-
getName
Gets the Bfile's file name.- Returns:
- The file name.
- Throws:
SQLException
-
getDirAlias
Gets the Bfile's directory alias.- Returns:
- The directory alias name.
- Throws:
SQLException
-
openFile
Open the FILE.- Throws:
SQLException
-
isFileOpen
Find out whether a BFILE was opened- Returns:
- true if the BFILE was opened, false if it was not opened.
- Throws:
SQLException
-
fileExists
Find out if a given BFILE (whose locator) points to a file that actually exists on the server's filesystem.- Returns:
- true if the physical file exists, false if it does not exist.
- Throws:
SQLException
-
closeFile
Close the FILE.- Throws:
SQLException
-
open
@Deprecated(since="23.5", forRemoval=true) default void open(LargeObjectAccessMode mode) throws SQLException Deprecated, for removal: This API element is subject to removal in a future version.The name of this method is anticipated to conflict with a future version of the JDBC Specification. This method will be removed in a future version of the Oracle JDBC Driver. Any calls to this method should be replaced with a call toopenLob(LargeObjectAccessMode), which provides the exact same behavior.Open an external LOB in the indicated mode. Valid modes include MODE_READONLY only. It is an error to open the same LOB twice.- Throws:
SQLException- Since:
- 11.2.0.3.0
-
openLob
Open an external LOB in the indicated mode. Valid modes include MODE_READONLY only. It is an error to open the same LOB twice.- Throws:
SQLException- Since:
- 23.5
-
close
Deprecated, for removal: This API element is subject to removal in a future version.The name of this method is anticipated to conflict with a future version of the JDBC Specification. This method will be removed in a future version of the Oracle JDBC Driver. Any calls to this method should be replaced with a call tocloseLob(), which provides the exact same behavior.Close a previously opened external LOB.- Throws:
SQLException- Since:
- 8.2.0
-
closeLob
Close a previously opened external LOB.- Throws:
SQLException- Since:
- 23.5
-
isOpen
Deprecated, for removal: This API element is subject to removal in a future version.The name of this method is anticipated to conflict with a future version of the JDBC Specification. This method will be removed in a future version of the Oracle JDBC Driver. Any calls to this method should be replaced with a call toisOpenLob(), which provides the exact same behavior.Check whether the external LOB is opened.- Returns:
- true if the LOB is opened.
- Throws:
SQLException- Since:
- 8.2.0
-
isOpenLob
Check whether the external LOB is opened.- Returns:
- true if the LOB is opened.
- Throws:
SQLException- Since:
- 23.5
-
publisherOracle
Returns aPublisherthat publishes the content of thisBFilebeginning at the specified position. The argument to each call toSubscriber.onNextwill contain an implementation defined number of bytes.Calling any method of this
BFileexceptfileExists(),getDirAlias(),getName(), or one defined byObjectbetween the time this method is called and the time when the returned publisher terminates will block.The returned publisher terminates once all subscribers have received
Subscriber.onComplete, receivedSubscriber.onError, or cancelled their subscription.An invocation of this method is equivalent to invoking
publisherOracle(long, ErrorSet)with theErrorSetconfigured byOracleCommonConnection.continueOnError(ErrorSet).- Parameters:
position- the position at which to start reading from the BFILE value that thisBfileobject represents; The first position is 1- Returns:
- a
Publisherof the content of thisBFile - Throws:
SQLException- if a database error occurs or ifpositionis less than 1- Since:
- 21
-
publisherOracle
default Flow.Publisher<byte[]> publisherOracle(long position, ErrorSet continueOnErrorSet) throws SQLException Returns aPublisherthat publishes the content of thisBFilebeginning at the specified position. The argument to each call toSubscriber.onNextwill contain an implementation defined number of bytes.Calling any method of this
BFileexceptfileExists(),getDirAlias(),getName(), or one defined byObjectbetween the time this method is called and the time when the returned publisher terminates will block.The returned publisher terminates once all subscribers have received
Subscriber.onComplete, receivedSubscriber.onError, or cancelled their subscription.Upon signalling demand to the returned
Publisher, LOB read operations will enter into the execution pipeline of this LOB's connection. If an operation fails with an error not in thecontinueOnErrorSet, the pipeline will abort all subsequent asynchronous operations, up to the next#resume().- Parameters:
position- the position at which to start reading from the BFILE value that thisBfileobject represents; The first position is 1continueOnErrorSet- Set of errors which do not cause subsequent operations to be aborted. Not null.- Returns:
- a
Publisherof the content of thisBFile - Throws:
SQLException- if a database error occurs or ifpositionis less than 1- Since:
- 23
-