interMedia BC4J Integration

oracle.ord.im
Class OrdAudioDomain

oracle.ord.im.OrdAudioDomain
All Implemented Interfaces:
OrdDomainIOInterface, OrdDomainState, java.io.Serializable

public class OrdAudioDomain
implements OrdDomainIOInterface, OrdDomainState, java.io.Serializable

Represents interMedia ORDSYS.ORDAudio database type as a domain class in the Business Components for Java (BC4J) framework. Most methods in this class are BC4J tier independent. They can work on either the client tier or the middle tier, which allows the application which uses these methods to work in a tier independent fashion. There are some exceptions which are marked as local mode only:

The BC4J tier-independent counterparts of the first three methods are the following: There are no corresponding BC4J tier-independent methods for setComments, getAllAttributes and getContentInLob.

The term client tier refers to the machine on which the application client is running. Middle tier refers to the server on which the BC4J business components are deployed. The user can use "local mode only" methods when he deploys BC4J and the client application to the same machine. Whereas, the user should use tier independent methods when the application client and BC4J reside on separate machines.

The constructor for this class will create an instance of an OrdAudioDomain. The user should either manually obtain a valid BLOB locator and a JDBC connection for this instance, or rely on the BC4J framework to obtain a BLOB locator and a JDBC connection for it. See OrdContentSource for discussion about how to load media content to the database by using the interMedia BC4J domain classes.

Since:
JDev3.2
See Also:
OrdAudio, Serialized Form

Constructor Summary
OrdAudioDomain()
          Constructs a new OrdAudioDomain instance.
OrdAudioDomain(byte[] bytes)
          Constructs a new OrdAudioDomain instance.
OrdAudioDomain(OrdHttpUploadFile ohuf)
          Constructs a new OrdAudioDomain instance.
OrdAudioDomain(java.lang.String fileName)
          Constructs a new OrdAudioDomain instance.
 
Method Summary
TypeMethod
 boolean checkProperties(byte[][] ctx)
           
 void clearLocal()
          Clears the attribute called local to indicate that the content data is stored externally.
 int closeSource(byte[][] ctx)
           
 oracle.sql.CustomDatum create(oracle.sql.Datum d, int sqlType)
          Internal: Applications should not use this method.
 void deleteContent()
          Deletes any data stored in the database BLOB specified by the localData attribute.
 void domainToBeModified(oracle.jbo.domain.DomainInterface d)
          Internal: Applications should not use this method.
 void doneCommit(oracle.jbo.TransactionStateEvent event)
          Internal: Applications should not use this method.
 void doneRollback(oracle.jbo.TransactionStateEvent event)
          Internal: Applications should not use this method.
 boolean equals(java.lang.Object obj)
          Compares two OrdAudioDomain objects by their last update time and content length.
 void export(byte[][] ctx, java.lang.String sourceType, java.lang.String sourceLocation, java.lang.String sourceName)
           
 oracle.sql.CLOB getAllAttributes(byte[][] ctx)
          Returns the audio properties in a temporary CLOB in a form defined by the format plug-in.
 java.lang.String getAttribute(byte[][] ctx, java.lang.String name)
           
 java.lang.Object getAttribute(int index)
          Internal: Applications should not use this method.
 java.lang.Object getAttribute(java.lang.String name)
          Internal: Applications should not use this method.
 int getAttributeCount()
          Internal: Applications should not use this method.
 int getAttributeIndexOf(java.lang.String name)
          Internal: Applications should not use this method.
 int getAudioDuration()
           
 oracle.sql.BFILE getBFILE()
          Returns a BFILE locator from the database when the srcType attribute is "FILE".
 oracle.jbo.domain.BFileDomain getBFileDomain()
          Returns a BFileDomain object which wraps the BFILE locator obtained from the getBFILE method.
 oracle.sql.CLOB getComments()
          Returns the CLOB locator from the comments attribute.
 oracle.jbo.domain.ClobDomain getCommentsAsClobDomain()
          Returns a ClobDomain object which wraps the CLOB locator obtained from the getComments() method.
 java.lang.String getCompressionType()
           
 oracle.sql.BLOB getContent()
          Returns the BLOB locator from the localData attribute.
 oracle.jbo.domain.BlobDomain getContentAsBlobDomain()
          Returns a BlobDomain object which wraps the BLOB locator from the localData attribute.
 oracle.sql.BLOB getContentInLob(byte[][] ctx, java.lang.String[] mimetype, java.lang.String[] format)
          Returns the data from the BLOB specified by the localData attribute in a temporary BLOB in the database.
 int getContentLength()
          Returns the length of the audio data.
 int getContentLength(byte[][] ctx)
          Returns the length of the audio data using source plug-in context information.
 OrdContentSource getContentSource()
          Gets the content source which was previously set by the setContentSource method.
static oracle.sql.CustomDatumFactory getCustomDatumFactory()
          Internal: Applications should not use this method.
 java.lang.Object getData()
          Internal: Applications should not use this method.
 byte[] getDataInByteArray()
          Returns a byte array containing the data from the database BLOB specified by the localData attribute.
 boolean getDataInFile(java.lang.String filename)
          Writes the data from the database BLOB specified by the localData attribute to a local file.
 java.io.InputStream getDataInStream()
          Returns an InputStream from which the data in the database BLOB specified by the localData attribute can be read.
 java.lang.String getDescription()
           
 java.lang.String getEncoding()
           
static oracle.sql.CustomDatumFactory getFactory()
          Returns the OrdAudioDomain CustomDatumFactory for use by the getCustomDatum method.
 java.lang.String getFormat()
           
 java.lang.String getMimeType()
          Returns the mimeType attribute.
 int getNumberOfChannels()
           
 oracle.jbo.domain.DomainOwnerInterface getOwner()
          Internal: Applications should not use this method.
 int getOwnerAttributeIndex()
          Internal: Applications should not use this method.
 java.lang.String getRemoteIdString()
          Internal: Applications should not use this method.
 int getSampleSize()
           
 int getSamplingRate()
           
 long getSize()
          Internal: Applications should not use this method.
 java.lang.String getSource()
           
 java.lang.String getSourceLocation()
          Returns the srcLocation attribute.
 java.lang.String getSourceName()
          Returns the srcName attribute.
 java.lang.String getSourceType()
          Returns the srcType attribute.
 int getTierInfo()
          Gets the tier number information that this object lives in.
 java.sql.Timestamp getUpdateTime()
          Returns the updateTime attribute.
 org.w3c.dom.Node getXMLContentNode(org.w3c.dom.Document xmlDoc)
          Internal: Applications should not use this method.
static oracle.jbo.domain.XMLDomainFactory getXMLDomainFactory(java.lang.Class attrClass)
          Internal: Applications should not use this method.
 int hashCode()
          Returns the hash code as a int
 void importData(byte[][] ctx)
           
 void importFrom(byte[][] ctx, java.lang.String sourceType, java.lang.String sourceLocation, java.lang.String sourceName)
           
 boolean isConnected()
          Determines whether the domain object has an internal JDBC connection to the database.
 boolean isLocal()
          Determines whether the content data is stored locally in the database in a BLOB specified by the localData attribute.
 boolean loadDataFromByteArray(byte[] byteArr)
          Loads data from a byte array into the database BLOB specified by the localData attribute.
 boolean loadDataFromFile(java.lang.String filename)
          Loads data from a file into the database BLOB specified by the localData attribute.
 boolean loadDataFromInputStream(java.io.InputStream inpStream)
          Loads data from an InputStream into the database BLOB specified by the localData attribute.
 void loadFromDatabase(oracle.jbo.Transaction xAct)
          Internal: Applications should not use this method.
 int openSource(byte[] userarg, byte[][] ctx)
          Opens a data source.
 void prepareForDML(java.lang.Object context)
          Internal: Applications should not use this method.
 java.lang.String printXMLDefinition(java.util.Hashtable allDefs, java.io.PrintWriter pw, boolean bContainees)
          Internal: Applications should not use this method.
 byte[] processAudioCommand(byte[][] ctx, java.lang.String cmd, java.lang.String args, byte[][] result)
           
 byte[] processSourceCommand(byte[][] ctx, java.lang.String cmd, java.lang.String args, byte[][] result)
           
 int readFromSource(byte[][] ctx, int startpos, int numbytes, byte[][] buffer)
           
 void removeListenerFromTransaction()
          Internal: Applications should not use this method.
 void saveToDatabase(oracle.jbo.Transaction xAct)
          Internal: Applications should not use this method.
 void saveToDatabase(oracle.jbo.Transaction xAct, java.lang.Object emptySQLObject)
          Internal: Applications should not use this method.
 void setAttribute(int index, java.lang.Object value)
          Internal: Applications should not use this method.
 void setAttribute(java.lang.String name, java.lang.Object value)
          Internal: Applications should not use this method.
 void setAudioDuration(int audioDuration)
           
 void setComments(oracle.sql.CLOB comments)
          Sets the comments attribute.
 void setCompressionType(java.lang.String compressionType)
           
 void setContentLength(int contentLength)
          Does nothing for OrdAudioDomain objects.
 void setContentSource(OrdContentSource source)
          Sets the content source for deferred loading.
 void setContext(oracle.jbo.domain.DomainOwnerInterface owner, oracle.jbo.Transaction trans, java.lang.Object ctx)
          Internal: Applications should not use this method.
 void setDescription(java.lang.String description)
           
 void setEncoding(java.lang.String encoding)
           
 void setFormat(java.lang.String format)
           
 void setKnownAttributes(java.lang.String knownformat, java.lang.String knownencoding, int knownnumberofchannels, int knownsamplingrate, int knownsamplesize, java.lang.String knowncompressiontype, int knownaudioduration)
           
 void setLocal()
          Sets the attribute called local to indicate that the content data is stored locally in the database in a BLOB > specified by the localData attribute.
 void setMimeType(java.lang.String MimeType)
          Sets the mimeType attribute.
 void setNumberOfChannels(int numberOfChannels)
           
 void setProperties()
          Parses the audio data properties and sets the attributes in the OrdAudioDomain Java object.
 void setProperties(byte[][] ctx)
           
 void setProperties(byte[][] ctx, boolean setComments)
           
 void setSampleSize(int sampleSize)
           
 void setSamplingRate(int samplingRate)
           
 void setSource(java.lang.String sourceType, java.lang.String sourceLocation, java.lang.String sourceName)
          Sets the srcType, srcLocation, and srcName attributes.
 void setUpdateTime(java.sql.Timestamp currentTime)
          Sets the updateTime attribute.
 void syncClientLob(oracle.jbo.domain.LobInterface newArrival)
          Internal: Applications should not use this method.
 void syncServerLob(oracle.jbo.domain.LobInterface oldObj)
          Internal: Applications should not use this method.
 java.lang.String toString()
          Returns a String object describing this object.
 int trimSource(byte[][] ctx, int newLen)
           
 int writeToSource(byte[][] ctx, int startpos, int numbytes, byte[] buffer)
           
 

Constructor Detail

OrdAudioDomain

public OrdAudioDomain()
Constructs a new OrdAudioDomain instance. Before it's been inserted into the database table and selected back, this new instance doesn't have a JDBC connection to the database. It also doesn't have a corresponding existing database ORDSYS.ORDAudio object.

OrdAudioDomain

public OrdAudioDomain(byte[] bytes)
Constructs a new OrdAudioDomain instance. Before it has been inserted into the database table and selected back; this new instance doesn't have a JDBC connection to the database. It also doesn't have a corresponding existing database ORDSYS.ORDAudio object. Users should use deferred loading to load the audio content into the database.

Calling this constructor has the same effect of calling the following two statements.

     OrdAudioDomain audio = new OrdAudioDomain();
     audio.setContentSource(new OrdByteArraySource(bytes));
 
Parameters:
bytes - the byte array that contains the audio content
See Also:
OrdContentSource, OrdByteArraySource

OrdAudioDomain

public OrdAudioDomain(java.lang.String fileName)
Constructs a new OrdAudioDomain instance. Before it has been inserted into the database table and selected back; this new instance doesn't have a JDBC connection to the database. It also doesn't have a corresponding existing database ORDSYS.ORDAudio object. Users should use deferred loading to load the audio content into the database.

Calling this constructor has the same effect of calling the following two statements.

     OrdAudioDomain audio = new OrdAudioDomain();
     audio.setContentSource(new OrdFileSource(fileName));
 
Parameters:
fileName - the audio file name
See Also:
OrdContentSource, OrdFileSource

OrdAudioDomain

public OrdAudioDomain(OrdHttpUploadFile ohuf)
Constructs a new OrdAudioDomain instance. Before it has been inserted into the database table and selected back; this new instance doesn't have a JDBC connection to the database. It also doesn't have a corresponding existing database ORDSYS.ORDAudio object. Users should use deferred loading to load the audio content into the database.

Calling this constructor has the same effect of calling the following two statements.

     OrdAudioDomain audio = new OrdAudioDomain();
     audio.setContentSource(new OrdHttpUploadFileSource(ohuf));
 
Parameters:
ohuf - the audio content wrapped as an OrdHttpUploadFile object
See Also:
OrdContentSource, OrdHttpUploadFileSource
Method Detail

getFactory

public static oracle.sql.CustomDatumFactory getFactory()
Returns the OrdAudioDomain CustomDatumFactory for use by the getCustomDatum method. Specify this method as the factory parameter of the getCustomDatum method when retrieving an OrdAudioDomain object from an OracleResultSet or OracleCallableStatement. For example:
  OrdAudioDomain audio = (OrdAudioDomain)rset.
                           getCustomDatum( 1, OrdAudioDomain.getFactory() );
Returns:
the OrdAudioDomain implementation of the CustomDatumFactory interface

getCustomDatumFactory

public static oracle.sql.CustomDatumFactory getCustomDatumFactory()
Internal: Applications should not use this method.

toString

public java.lang.String toString()
Returns a String object describing this object. The format of the description is "OrdAudioDomain: <mimetype>:<length>".
Returns:
a String object describing this object

hashCode

public int hashCode()
Returns the hash code as a int

equals

public boolean equals(java.lang.Object obj)
Compares two OrdAudioDomain objects by their last update time and content length. For performance reasons, bit by bit comparison of binary content is not done.
Parameters:
obj - the object to be compared with this object
Returns:
true if the two OrdAudioDomain objects have the same last update time and content length; otherwise, returns false

getContent

public oracle.sql.BLOB getContent()
                           throws java.sql.SQLException
Returns the BLOB locator from the localData attribute.

Note

local mode only

Returns:
an oracle.sql.BLOB
Throws:
java.sql.SQLException - if an error occurs when accessing the localData attribute

getBFILE

public oracle.sql.BFILE getBFILE()
                          throws java.sql.SQLException
Returns a BFILE locator from the database when the srcType attribute is "FILE". This method calls the corresponding getBFILE method in the database, which creates the BFILE using the srcLocation and srcName attributes.

Note

local mode only

Returns:
an oracle.sql.BFILE
Throws:
java.sql.SQLException - if an error occurs while executing the corresponding getBFILE method in the database

isLocal

public boolean isLocal()
                throws java.sql.SQLException
Description copied from interface: OrdDomainIOInterface
Determines whether the content data is stored locally in the database in a BLOB specified by the localData attribute.
Specified by:
isLocal in interface OrdDomainIOInterface
Following copied from interface: oracle.ord.im.OrdDomainIOInterface
Returns:
true if the data is stored locally in the database in a BLOB; otherwise, returns false
Throws:
java.sql.SQLException - if an error occurs when accessing the attribute called local.

clearLocal

public void clearLocal()
                throws java.sql.SQLException
Description copied from interface: OrdDomainIOInterface
Clears the attribute called local to indicate that the content data is stored externally.
Specified by:
clearLocal in interface OrdDomainIOInterface
Following copied from interface: oracle.ord.im.OrdDomainIOInterface
Throws:
java.sql.SQLException - if an error occurs when accessing the attribute called local.

setLocal

public void setLocal()
              throws java.sql.SQLException
Description copied from interface: OrdDomainIOInterface
Sets the attribute called local to indicate that the content data is stored locally in the database in a BLOB > specified by the localData attribute.
Specified by:
setLocal in interface OrdDomainIOInterface
Following copied from interface: oracle.ord.im.OrdDomainIOInterface
Throws:
java.sql.SQLException - if an error occurs when accessing the attribute called local.

deleteContent

public void deleteContent()
                   throws java.sql.SQLException
Description copied from interface: OrdDomainIOInterface
Deletes any data stored in the database BLOB specified by the localData attribute.
Specified by:
deleteContent in interface OrdDomainIOInterface
Following copied from interface: oracle.ord.im.OrdDomainIOInterface
Throws:
java.sql.SQLException - if an error occurs when executing the corresponding deleteContent method in the database.

importData

public void importData(byte[][] ctx)
                throws java.sql.SQLException

importFrom

public void importFrom(byte[][] ctx,
                       java.lang.String sourceType,
                       java.lang.String sourceLocation,
                       java.lang.String sourceName)
                throws java.sql.SQLException

loadDataFromFile

public boolean loadDataFromFile(java.lang.String filename)
                         throws java.sql.SQLException,
                                java.io.IOException
Description copied from interface: OrdDomainIOInterface
Loads data from a file into the database BLOB specified by the localData attribute. Before loading the data, this method calls the following methods:
Specified by:
loadDataFromFile in interface OrdDomainIOInterface
Following copied from interface: oracle.ord.im.OrdDomainIOInterface
Parameters:
filename - name of the file from which to load data
Returns:
true if the data is loaded successfully; otherwise, an exception is raised if an error occurs. This method never returns false.
Throws:
java.sql.SQLException - if an error occurs when accessing an object attribute or when executing a method in the database.
java.io.IOException - if an error occurs when reading the data file.

loadDataFromInputStream

public boolean loadDataFromInputStream(java.io.InputStream inpStream)
                                throws java.sql.SQLException,
                                       java.io.IOException
Description copied from interface: OrdDomainIOInterface
Loads data from an InputStream into the database BLOB specified by the localData attribute. Before loading the data, this method calls the following methods:
Specified by:
loadDataFromInputStream in interface OrdDomainIOInterface
Following copied from interface: oracle.ord.im.OrdDomainIOInterface
Parameters:
inpStream - the InputStream from which to load data
Returns:
true if the data is loaded successfully; otherwise, an exception is raised if an error occurs. This method never returns false.
Throws:
java.sql.SQLException - if an error occurs when accessing an object attribute or when executing a method in the database.
java.io.IOException - if an error occurs when reading the InputStream.

loadDataFromByteArray

public boolean loadDataFromByteArray(byte[] byteArr)
                              throws java.sql.SQLException,
                                     java.io.IOException
Description copied from interface: OrdDomainIOInterface
Loads data from a byte array into the database BLOB specified by the localData attribute. Before loading the data, this method calls the following methods:
Specified by:
loadDataFromByteArray in interface OrdDomainIOInterface
Following copied from interface: oracle.ord.im.OrdDomainIOInterface
Parameters:
byteArr - a byte[] arrary from which to load data
Returns:
true if the data is loaded successfully; otherwise, an exception is raised if an error occurs. This method never returns false.
Throws:
java.sql.SQLException - if an error occurs when accessing an object attribute or when executing a method in the database.
java.io.IOException - if an error occurs reading the byte array.

getContentLength

public int getContentLength()
                     throws java.sql.SQLException
Returns the length of the audio data. This method calls the corresponding getContentLength method in the database.

Note

Specified by:
getContentLength in interface OrdDomainIOInterface
Returns:
the content length as an int
Throws:
java.sql.SQLException - if an error occurs while executing the corresponding getContentLength method in the database

getContentLength

public int getContentLength(byte[][] ctx)
                     throws java.sql.SQLException
Returns the length of the audio data using source plug-in context information. This method calls the corresponding getContentLength method in the database.

Note

Parameters:
ctx - the source plug-in context information
Returns:
the content length as an int
Throws:
java.sql.SQLException - if an error occurs while executing the corresponding getContentLength method in the database

setMimeType

public void setMimeType(java.lang.String MimeType)
                 throws java.sql.SQLException
Description copied from interface: OrdDomainIOInterface
Sets the mimeType attribute.
Specified by:
setMimeType in interface OrdDomainIOInterface
Following copied from interface: oracle.ord.im.OrdDomainIOInterface
Parameters:
mimeType - the new attribute value.
Throws:
java.sql.SQLException - if an error occurs when accessing the mimeType attribute.

getMimeType

public java.lang.String getMimeType()
                             throws java.sql.SQLException
Description copied from interface: OrdDomainIOInterface
Returns the mimeType attribute.
Specified by:
getMimeType in interface OrdDomainIOInterface
Following copied from interface: oracle.ord.im.OrdDomainIOInterface
Returns:
the mimeType attribute as a String.
Throws:
java.sql.SQLException - if an error occurs when accessing the mimeType attribute.

setSource

public void setSource(java.lang.String sourceType,
                      java.lang.String sourceLocation,
                      java.lang.String sourceName)
               throws java.sql.SQLException
Description copied from interface: OrdDomainIOInterface
Sets the srcType, srcLocation, and srcName attributes.
Specified by:
setSource in interface OrdDomainIOInterface
Following copied from interface: oracle.ord.im.OrdDomainIOInterface
Parameters:
srcType - the source type, for example, "FILE", "HTTP".
srcLocation - the source location, for example, MEDIA_DIR, www.xyzcoimages.com/public.
srcName - the source name, for example, media_content.dat
Throws:
java.sql.SQLException - if an error occurs when accessing the srcType, srcLocation, or srcName attributes.

getSourceType

public java.lang.String getSourceType()
                               throws java.sql.SQLException
Description copied from interface: OrdDomainIOInterface
Returns the srcType attribute. For example, "FILE" or "HTTP".
Specified by:
getSourceType in interface OrdDomainIOInterface
Following copied from interface: oracle.ord.im.OrdDomainIOInterface
Returns:
the srcType attribute as a String.
Throws:
java.sql.SQLException - if an error occurs when accessing the srcType attribute.

getSourceLocation

public java.lang.String getSourceLocation()
                                   throws java.sql.SQLException
Description copied from interface: OrdDomainIOInterface
Returns the srcLocation attribute. For example, IMAGES_DIR or www.xyzcoimages.com/public.
Specified by:
getSourceLocation in interface OrdDomainIOInterface
Following copied from interface: oracle.ord.im.OrdDomainIOInterface
Returns:
the srcLocation attribute as a String.
Throws:
java.sql.SQLException - if an error occurs when accessing the srcLocation attribute.

getSourceName

public java.lang.String getSourceName()
                               throws java.sql.SQLException
Description copied from interface: OrdDomainIOInterface
Returns the srcName attribute. For example, scenery1.jpg.
Specified by:
getSourceName in interface OrdDomainIOInterface
Following copied from interface: oracle.ord.im.OrdDomainIOInterface
Returns:
the srcName attribute as a String.
Throws:
java.sql.SQLException - if an error occurs when accessing the srcName attribute.

getSource

public java.lang.String getSource()
                           throws java.sql.SQLException

getDescription

public java.lang.String getDescription()
                                throws java.sql.SQLException

setDescription

public void setDescription(java.lang.String description)
                    throws java.sql.SQLException

getComments

public oracle.sql.CLOB getComments()
                            throws java.sql.SQLException
Returns the CLOB locator from the comments attribute.

Note

local mode only

Returns:
the comments attribute as an oracle.sql.CLOB
Throws:
java.sql.SQLException - if an error occurs when accessing the comments attribute

setComments

public void setComments(oracle.sql.CLOB comments)
                 throws java.sql.SQLException
Sets the comments attribute.

Note

Note

local mode only

Parameters:
comments - the new attribute value
Throws:
java.sql.SQLException - if an error occurs when accessing the comments attribute

getEncoding

public java.lang.String getEncoding()
                             throws java.sql.SQLException

setEncoding

public void setEncoding(java.lang.String encoding)
                 throws java.sql.SQLException

getNumberOfChannels

public int getNumberOfChannels()
                        throws java.sql.SQLException

setNumberOfChannels

public void setNumberOfChannels(int numberOfChannels)
                         throws java.sql.SQLException

getSamplingRate

public int getSamplingRate()
                    throws java.sql.SQLException

setSamplingRate

public void setSamplingRate(int samplingRate)
                     throws java.sql.SQLException

getSampleSize

public int getSampleSize()
                  throws java.sql.SQLException

setSampleSize

public void setSampleSize(int sampleSize)
                   throws java.sql.SQLException

getCompressionType

public java.lang.String getCompressionType()
                                    throws java.sql.SQLException

setCompressionType

public void setCompressionType(java.lang.String compressionType)
                        throws java.sql.SQLException

getAudioDuration

public int getAudioDuration()
                     throws java.sql.SQLException

setAudioDuration

public void setAudioDuration(int audioDuration)
                      throws java.sql.SQLException

getFormat

public java.lang.String getFormat()
                           throws java.sql.SQLException

setFormat

public void setFormat(java.lang.String format)
               throws java.sql.SQLException

checkProperties

public boolean checkProperties(byte[][] ctx)
                        throws java.sql.SQLException

setProperties

public void setProperties()
                   throws java.sql.SQLException
Parses the audio data properties and sets the attributes in the OrdAudioDomain Java object. This method sets the format, mimeType, encoding, numberOfChannels, samplingRate, sampleSize, compressionType, and audioDuration attributes. An attribute is set to null if the corresponding property cannot be extracted for a specific audio format. This method throws a SQLException if the audio format is not recognized.

Note

Note

Specified by:
setProperties in interface OrdDomainIOInterface
Throws:
java.sql.SQLException - if an error occurs while executing the corresponding setProperties method in the database

setProperties

public void setProperties(byte[][] ctx)
                   throws java.sql.SQLException

setProperties

public void setProperties(byte[][] ctx,
                          boolean setComments)
                   throws java.sql.SQLException

setContentLength

public void setContentLength(int contentLength)
                      throws java.sql.SQLException
Does nothing for OrdAudioDomain objects. This method exists only for the OrdDomainIOInterface.
Specified by:
setContentLength in interface OrdDomainIOInterface
Following copied from interface: oracle.ord.im.OrdDomainIOInterface
Parameters:
contentLength - the new attribute value.
Throws:
java.sql.SQLException - if an error occurs when accessing the contentLength attribute.
See Also:
OrdImage.setContentLength(int), OrdDoc.setContentLength(int)

trimSource

public int trimSource(byte[][] ctx,
                      int newLen)
               throws java.sql.SQLException

openSource

public int openSource(byte[] userarg,
                      byte[][] ctx)
               throws java.sql.SQLException
Opens a data source.

Note

This method throws Exception instead of SQLException in Oracle 817 version OrdAudioDomain class.

Parameters:
userarg - additional source plug-in information that may be required by user-defined source plug-ins.
ctx - the source plug-in context information.
Returns:
the status as an int, where 0 indicates success and a non-0 value indicates a failure code specific to the source plug-in.
Throws:
java.sql.SQLException - if an error occurs executing the corresponding openSource method in the database.

closeSource

public int closeSource(byte[][] ctx)
                throws java.sql.SQLException

processSourceCommand

public byte[] processSourceCommand(byte[][] ctx,
                                   java.lang.String cmd,
                                   java.lang.String args,
                                   byte[][] result)
                            throws java.sql.SQLException

processAudioCommand

public byte[] processAudioCommand(byte[][] ctx,
                                  java.lang.String cmd,
                                  java.lang.String args,
                                  byte[][] result)
                           throws java.sql.SQLException

setUpdateTime

public void setUpdateTime(java.sql.Timestamp currentTime)
                   throws java.sql.SQLException
Description copied from interface: OrdDomainIOInterface
Sets the updateTime attribute. This method sets the updateTime attribute to the specified time, or to the database server's current SYSDATE time if currentTime is specified as null.
Specified by:
setUpdateTime in interface OrdDomainIOInterface
Following copied from interface: oracle.ord.im.OrdDomainIOInterface
Parameters:
currentTime - the update time in a java.sql.Timestamp, or null to set the update time to the database server's current SYSDATE time.
Throws:
java.sql.SQLException - if an error occurs when executing the corresponding setUpdateTime method in the database.

getUpdateTime

public java.sql.Timestamp getUpdateTime()
                                 throws java.sql.SQLException
Description copied from interface: OrdDomainIOInterface
Returns the updateTime attribute.
Specified by:
getUpdateTime in interface OrdDomainIOInterface
Following copied from interface: oracle.ord.im.OrdDomainIOInterface
Returns:
the lastUpdate attribute as a java.sql.Timestamp.
Throws:
java.sql.SQLException - if an error occurs when accessing the updateTime attribute.

getAttribute

public java.lang.String getAttribute(byte[][] ctx,
                                     java.lang.String name)
                              throws java.sql.SQLException

getAllAttributes

public oracle.sql.CLOB getAllAttributes(byte[][] ctx)
                                 throws java.sql.SQLException
Returns the audio properties in a temporary CLOB in a form defined by the format plug-in. For natively supported formats, the information is presented as a comma-separated list of attributes in the form attributeName=attributeValue, where the list contains the following attributes: format, mimeType, encoding, numberOfChannels, samplingRate, sampleSize, compressionType, and audioDuration. For user-defined formats, the information is presented in a form defined by the format plug-in.

Important


Note

local mode only

Parameters:
ctx - the format plug-in context information
Returns:
the attributes as a temporary oracle.sql.CLOB
Throws:
java.sql.SQLException - if an error occurs while executing the corresponding getAllAttributes method in the database

getContentInLob

public oracle.sql.BLOB getContentInLob(byte[][] ctx,
                                       java.lang.String[] mimetype,
                                       java.lang.String[] format)
                                throws java.sql.SQLException
Returns the data from the BLOB specified by the localData attribute in a temporary BLOB in the database. This method creates a temporary BLOB in the database, reads the data from the BLOB specified by the localData attribute, writes the data to the temporary BLOB, then returns the temporary BLOB locator to the caller.

Important

Note

local mode only

Parameters:
ctx - the format plug-in context information
mimetype - a String[] array, 1 element in length, into which the mimeType attribute is written as element 0
format - a String[] array, 1 element in length, into which the format attribute is written as element 0
Returns:
the audio data in a temporary oracle.sql.BLOB
Throws:
java.sql.SQLException - if an error occurs while creating the temporary BLOB or while executing the corresponding getContentInLob method in the database

setKnownAttributes

public void setKnownAttributes(java.lang.String knownformat,
                               java.lang.String knownencoding,
                               int knownnumberofchannels,
                               int knownsamplingrate,
                               int knownsamplesize,
                               java.lang.String knowncompressiontype,
                               int knownaudioduration)
                        throws java.sql.SQLException

readFromSource

public int readFromSource(byte[][] ctx,
                          int startpos,
                          int numbytes,
                          byte[][] buffer)
                   throws java.sql.SQLException

writeToSource

public int writeToSource(byte[][] ctx,
                         int startpos,
                         int numbytes,
                         byte[] buffer)
                  throws java.sql.SQLException

export

public void export(byte[][] ctx,
                   java.lang.String sourceType,
                   java.lang.String sourceLocation,
                   java.lang.String sourceName)
            throws java.sql.SQLException

getDataInFile

public boolean getDataInFile(java.lang.String filename)
                      throws java.sql.SQLException,
                             java.io.IOException
Description copied from interface: OrdDomainIOInterface
Writes the data from the database BLOB specified by the localData attribute to a local file.
Specified by:
getDataInFile in interface OrdDomainIOInterface
Following copied from interface: oracle.ord.im.OrdDomainIOInterface
Parameters:
filename - name of the file to which the data is to be written.
Returns:
true if the data is written to the file successfully; otherwise, an exception is raised if an error occurs. This method never returns false.
Throws:
java.sql.SQLException - if an error occurs when accessing an object attribute.
java.io.IOException - if an error occurs when reading the data from the BLOB or when writing the data to the output file.

getDataInStream

public java.io.InputStream getDataInStream()
                                    throws java.sql.SQLException
Description copied from interface: OrdDomainIOInterface
Returns an InputStream from which the data in the database BLOB specified by the localData attribute can be read.
Specified by:
getDataInStream in interface OrdDomainIOInterface
Following copied from interface: oracle.ord.im.OrdDomainIOInterface
Returns:
an InputStream from which the data can be read.
Throws:
java.sql.SQLException - if an error occurs when accessing an object attribute.

getDataInByteArray

public byte[] getDataInByteArray()
                          throws java.sql.SQLException,
                                 java.io.IOException,
                                 java.lang.OutOfMemoryError
Description copied from interface: OrdDomainIOInterface
Returns a byte array containing the data from the database BLOB specified by the localData attribute.
Specified by:
getDataInByteArray in interface OrdDomainIOInterface
Following copied from interface: oracle.ord.im.OrdDomainIOInterface
Returns:
a byte[] array containing the data.
Throws:
java.sql.SQLException - if an error occurs when accessing an object attribute.
java.io.IOException - if an error occurs when reading the data from the BLOB.
java.lang.OutOfMemoryError - if sufficient memory cannot be allocated to hold the data.

getContentAsBlobDomain

public oracle.jbo.domain.BlobDomain getContentAsBlobDomain()
                                                    throws java.sql.SQLException
Description copied from interface: OrdDomainIOInterface
Returns a BlobDomain object which wraps the BLOB locator from the localData attribute.
Specified by:
getContentAsBlobDomain in interface OrdDomainIOInterface
Following copied from interface: oracle.ord.im.OrdDomainIOInterface
Returns:
a BlobDomain object
Throws:
java.sql.SQLException - if an error occurs in calling getContent method.
See Also:
OrdImage.getContent(), OrdAudio.getContent(), OrdVideo.getContent(), OrdDoc.getContent()

getBFileDomain

public oracle.jbo.domain.BFileDomain getBFileDomain()
                                             throws java.sql.SQLException
Description copied from interface: OrdDomainIOInterface
Returns a BFileDomain object which wraps the BFILE locator obtained from the getBFILE method.
Specified by:
getBFileDomain in interface OrdDomainIOInterface
Following copied from interface: oracle.ord.im.OrdDomainIOInterface
Returns:
a BFileDomain object
Throws:
java.sql.SQLException - if an error occurs in calling getBFILE method.
See Also:
OrdImage.getBFILE(), OrdAudio.getBFILE(), OrdVideo.getBFILE(), OrdDoc.getBFILE()

getCommentsAsClobDomain

public oracle.jbo.domain.ClobDomain getCommentsAsClobDomain()
                                                     throws java.sql.SQLException
Returns a ClobDomain object which wraps the CLOB locator obtained from the getComments() method.
Returns:
a ClobDomain object
Throws:
java.sql.SQLException - if an error occurs while calling the getComments method

setContentSource

public void setContentSource(OrdContentSource source)
Description copied from interface: OrdDomainIOInterface
Sets the content source for deferred loading. Three predefined content source implementations support loading content from a file, a byte array, or a OrdHttpUploadFile object. The loading of content from the client into the database doesn't happen inside this method. It's deferred to the next postChanges method call.

If the source parameter is null, this method just resets the previously set content source.

Specified by:
setContentSource in interface OrdDomainIOInterface
Following copied from interface: oracle.ord.im.OrdDomainIOInterface
Parameters:
source - the content source for the deferred loading
See Also:
OrdContentSource

getContentSource

public OrdContentSource getContentSource()
Description copied from interface: OrdDomainIOInterface
Gets the content source which was previously set by the setContentSource method.
Specified by:
getContentSource in interface OrdDomainIOInterface
Following copied from interface: oracle.ord.im.OrdDomainIOInterface
Returns:
the content source object

create

public oracle.sql.CustomDatum create(oracle.sql.Datum d,
                                     int sqlType)
                              throws java.sql.SQLException
Internal: Applications should not use this method.

getXMLDomainFactory

public static oracle.jbo.domain.XMLDomainFactory getXMLDomainFactory(java.lang.Class attrClass)
Internal: Applications should not use this method.

getXMLContentNode

public org.w3c.dom.Node getXMLContentNode(org.w3c.dom.Document xmlDoc)
Internal: Applications should not use this method.

printXMLDefinition

public java.lang.String printXMLDefinition(java.util.Hashtable allDefs,
                                           java.io.PrintWriter pw,
                                           boolean bContainees)
Internal: Applications should not use this method.

domainToBeModified

public void domainToBeModified(oracle.jbo.domain.DomainInterface d)
Internal: Applications should not use this method.

getAttribute

public java.lang.Object getAttribute(int index)
Internal: Applications should not use this method.

getAttribute

public java.lang.Object getAttribute(java.lang.String name)
Internal: Applications should not use this method.

setAttribute

public void setAttribute(int index,
                         java.lang.Object value)
Internal: Applications should not use this method.

setAttribute

public void setAttribute(java.lang.String name,
                         java.lang.Object value)
Internal: Applications should not use this method.

getAttributeCount

public int getAttributeCount()
Internal: Applications should not use this method.

getAttributeIndexOf

public int getAttributeIndexOf(java.lang.String name)
Internal: Applications should not use this method.

syncServerLob

public void syncServerLob(oracle.jbo.domain.LobInterface oldObj)
Internal: Applications should not use this method.

syncClientLob

public void syncClientLob(oracle.jbo.domain.LobInterface newArrival)
Internal: Applications should not use this method.

getSize

public long getSize()
Internal: Applications should not use this method.

getRemoteIdString

public java.lang.String getRemoteIdString()
Internal: Applications should not use this method.

saveToDatabase

public void saveToDatabase(oracle.jbo.Transaction xAct)
                    throws java.sql.SQLException
Internal: Applications should not use this method.

saveToDatabase

public void saveToDatabase(oracle.jbo.Transaction xAct,
                           java.lang.Object emptySQLObject)
                    throws java.sql.SQLException,
                           java.io.IOException
Internal: Applications should not use this method.

prepareForDML

public void prepareForDML(java.lang.Object context)
Internal: Applications should not use this method.

loadFromDatabase

public void loadFromDatabase(oracle.jbo.Transaction xAct)
                      throws java.lang.Exception
Internal: Applications should not use this method.

getOwner

public oracle.jbo.domain.DomainOwnerInterface getOwner()
Internal: Applications should not use this method.

getOwnerAttributeIndex

public int getOwnerAttributeIndex()
Internal: Applications should not use this method.

getData

public java.lang.Object getData()
Internal: Applications should not use this method.

setContext

public void setContext(oracle.jbo.domain.DomainOwnerInterface owner,
                       oracle.jbo.Transaction trans,
                       java.lang.Object ctx)
Internal: Applications should not use this method.

isConnected

public boolean isConnected()
Description copied from interface: OrdDomainState
Determines whether the domain object has an internal JDBC connection to the database.
Specified by:
isConnected in interface OrdDomainState
Following copied from interface: oracle.ord.im.OrdDomainState
Returns:
true if the there exists an internal JDBC connection; otherwise, returns false

getTierInfo

public int getTierInfo()
Description copied from interface: OrdDomainState
Gets the tier number information that this object lives in.

The returned value indicates the tier information.

Specified by:
getTierInfo in interface OrdDomainState

removeListenerFromTransaction

public void removeListenerFromTransaction()
Description copied from interface: OrdDomainState
Internal: Applications should not use this method.
Specified by:
removeListenerFromTransaction in interface OrdDomainState

doneCommit

public void doneCommit(oracle.jbo.TransactionStateEvent event)
Internal: Applications should not use this method.

doneRollback

public void doneRollback(oracle.jbo.TransactionStateEvent event)
Internal: Applications should not use this method.

interMedia BC4J Integration