interMedia BC4J Integration

oracle.ord.im
Class OrdVideoDomain

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

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

Represents interMedia ORDSYS.ORDVideo 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 OrdVideoDomain. 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:
OrdVideo, Serialized Form

Constructor Summary
OrdVideoDomain()
          Constructs a new OrdVideoDomain instance.
OrdVideoDomain(byte[] bytes)
          Constructs a new OrdVideoDomain instance.
OrdVideoDomain(OrdHttpUploadFile ohuf)
          Constructs a new OrdVideoDomain instance.
OrdVideoDomain(java.lang.String fileName)
          Constructs a new OrdVideoDomain 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 OrdVideoDomain 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 video 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.
 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.
 int getBitRate()
           
 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 video data.
 int getContentLength(byte[][] ctx)
           
 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()
           
static oracle.sql.CustomDatumFactory getFactory()
          Returns the OrdVideoDomain CustomDatumFactory for use by the getCustomDatum method.
 java.lang.String getFormat()
           
 int getFrameRate()
           
 int getFrameResolution()
           
 int getHeight()
           
 java.lang.String getMimeType()
          Returns the mimeType attribute.
 int getNumberOfColors()
           
 int getNumberOfFrames()
           
 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.
 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.
 int getVideoDuration()
           
 int getWidth()
           
 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)
           
 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[] processSourceCommand(byte[][] ctx, java.lang.String cmd, java.lang.String args, byte[][] result)
           
 byte[] processVideoCommand(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 setBitRate(int bitRate)
           
 void setComments(oracle.sql.CLOB comments)
          Sets the comments attribute.
 void setCompressionType(java.lang.String compressionType)
           
 void setContentLength(int contentLength)
          Does nothing for OrdVideoDomain 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 setFormat(java.lang.String format)
           
 void setFrameRate(int frameRate)
           
 void setFrameResolution(int frameResolution)
           
 void setHeight(int height)
           
 void setKnownAttributes(java.lang.String knownformat, int knownwidth, int knownheight, int knownframeresolution, int knownframerate, int knownvideoduration, int knownnumberofframes, java.lang.String knowncompressiontype, int knownnumberofcolors, int knownbitrate)
           
 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 setNumberOfColors(int numberOfColors)
           
 void setNumberOfFrames(int numberOfFrames)
           
 void setProperties()
          Parses the video data properties and sets the attributes in the OrdVideoDomain Java object.
 void setProperties(byte[][] ctx)
           
 void setProperties(byte[][] ctx, boolean setComments)
           
 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 setVideoDuration(int videoDuration)
           
 void setWidth(int width)
           
 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

OrdVideoDomain

public OrdVideoDomain()
Constructs a new OrdVideoDomain 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.ORDVideo object.

OrdVideoDomain

public OrdVideoDomain(byte[] bytes)
Constructs a new OrdVideoDomain 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.ORDVideo object. Users should use deferred loading to load the video content into the database.

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

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

OrdVideoDomain

public OrdVideoDomain(java.lang.String fileName)
Constructs a new OrdVideoDomain 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.ORDVideo object. Users should use deferred loading to load the video content into the database.

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

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

OrdVideoDomain

public OrdVideoDomain(OrdHttpUploadFile ohuf)
Constructs a new OrdVideoDomain 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.ORDVideo object. Users should use deferred loading to load the video content into the database.

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

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

getFactory

public static oracle.sql.CustomDatumFactory getFactory()
Returns the OrdVideoDomain CustomDatumFactory for use by the getCustomDatum method. Specify this method as the factory parameter of the getCustomDatum method when retrieving an OrdVideoDomain object from an OracleResultSet or OracleCallableStatement. For example:
  OrdVideoDomain video = (OrdVideoDomain)rset.
                           getCustomDatum( 1, OrdVideoDomain.getFactory() );
Returns:
the OrdVideoDomain 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 "OrdVideoDomain: <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 OrdVideoDomain 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 OrdVideoDomain 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 video 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 executing the corresponding getContentLength method in the database

getContentLength

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

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.

getWidth

public int getWidth()
             throws java.sql.SQLException

setWidth

public void setWidth(int width)
              throws java.sql.SQLException

getHeight

public int getHeight()
              throws java.sql.SQLException

setHeight

public void setHeight(int height)
               throws java.sql.SQLException

getFrameResolution

public int getFrameResolution()
                       throws java.sql.SQLException

setFrameResolution

public void setFrameResolution(int frameResolution)
                        throws java.sql.SQLException

getFrameRate

public int getFrameRate()
                 throws java.sql.SQLException

setFrameRate

public void setFrameRate(int frameRate)
                  throws java.sql.SQLException

getNumberOfFrames

public int getNumberOfFrames()
                      throws java.sql.SQLException

setNumberOfFrames

public void setNumberOfFrames(int numberOfFrames)
                       throws java.sql.SQLException

getNumberOfColors

public int getNumberOfColors()
                      throws java.sql.SQLException

setNumberOfColors

public void setNumberOfColors(int numberOfColors)
                       throws java.sql.SQLException

getBitRate

public int getBitRate()
               throws java.sql.SQLException

setBitRate

public void setBitRate(int bitRate)
                throws java.sql.SQLException

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

getCompressionType

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

setCompressionType

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

getVideoDuration

public int getVideoDuration()
                     throws java.sql.SQLException

setVideoDuration

public void setVideoDuration(int videoDuration)
                      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 video data properties and sets the attributes in the OrdVideoDomain Java object. This method sets the format, mimeType, width, height, frameResolution, frameRate, videoDuration, numberOfFrames, compressionType, numberOfColors, and bitRate attributes. An attribute is set to null if the corresponding property cannot be extracted for a specific video format. This method throws a SQLException if the video 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 OrdVideoDomain 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

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

processVideoCommand

public byte[] processVideoCommand(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 video 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, width, height, frameResolution, frameRate, videoDuration, numberOfFrames, compressionType, numberOfColors, and bitRate. 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 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 video data in a temporary oracle.sql.BLOB
Throws:
java.sql.SQLException - if an error occurs while creating the temporary BLOB or executing the corresponding getContentInLob method in the database

setKnownAttributes

public void setKnownAttributes(java.lang.String knownformat,
                               int knownwidth,
                               int knownheight,
                               int knownframeresolution,
                               int knownframerate,
                               int knownvideoduration,
                               int knownnumberofframes,
                               java.lang.String knowncompressiontype,
                               int knownnumberofcolors,
                               int knownbitrate)
                        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