com.irisel.oms.olapi.internal
Class OMSBrowser

java.lang.Object
  extended by com.irisel.oms.olapi.internal.OMSBrowser
All Implemented Interfaces:
Browser, SSBrowser

public class OMSBrowser
extends java.lang.Object
implements Browser, SSBrowser


Constructor Summary
OMSBrowser()
           
 
Method Summary
 void close()
           
 void connect()
           
 void connect(java.lang.String dbhType, java.lang.String dsn, java.lang.String user, java.lang.String password)
           
 void connect(java.lang.String dbhType, java.lang.String host, java.lang.String port, java.lang.String db, java.lang.String schema, java.lang.String user, java.lang.String password)
           
 long create(Instance newInstance)
           
 long create1(Instance newInstance)
          Deprecated.  
 java.lang.Long createDescriptionId()
           
 int delete(Instance theInstance)
           
 void disconnect()
           
 boolean execute(Query q)
           
 java.lang.Object executeBatch(java.lang.String sql, ResultsHandler processor)
           
 InstanceSet executeQuery(ClassVO c, SelectQuery q)
           
 java.lang.Object executeQuery(SelectQuery q, boolean formattedValues, ResultsHandler processor)
           
 java.lang.Object executeQuery(SelectQuery q, ResultsHandler processor)
           
 InstanceSet executeQuery(java.lang.String instanceType, SelectQuery q)
           
 InstanceSet executeText(java.lang.String text)
           
 void executeTextNoReturn(java.lang.String text)
           
 int executeUpdate(Query q)
           
 void finalize()
           
 long fixSequential(java.lang.String classname)
           
 long fixSequential(java.lang.String type, java.lang.String classname)
           
 int fixSequentials()
           
 AppVO getAppVO()
           
 byte[] getBytecode(java.lang.String classname)
           
 Class getClass(java.lang.String classname)
           
 java.lang.String[] getClassNames()
           
 int getClassPropertyCount(java.lang.String className)
           
 java.lang.String getClassPropertyLabel(java.lang.String className, java.lang.String propName)
           
 java.lang.String getClassPropertyName(java.lang.String className, java.lang.String propName)
           
 int getClassPropertySize(java.lang.String className, java.lang.String propName)
           
 int getClassPropertyType(java.lang.String className, java.lang.String propName)
           
 ClassVO getClassVO(java.lang.String classname)
           
 java.lang.String getDb()
           
 DBHandler getDbh()
           
 java.lang.String getDbhType()
           
 java.lang.String getDbInfo()
           
 java.sql.DatabaseMetaData getDbmd()
           
 java.lang.String[] getDBTypes()
           
 DescriptionVO getDescVOByDomainName(java.lang.String domain, java.lang.String name)
          Returns cached description
 DescriptionVO getDescVOByDomainNameFromDB(java.lang.String domain, java.lang.String name, java.lang.String lang)
          Returns description from database
 DescriptionVO getDescVOById(long id)
          Returns cached description
 DescriptionVO getDescVOByIdFromDB(long id, java.lang.String lang)
          Returns description from DB
 Model getDm()
           
 java.lang.String getDsn()
           
 java.lang.String getHost()
           
 InstanceSet getInstances(java.lang.String classname, java.lang.String[] fields, java.lang.String[] values)
           
 InstanceSet getInstances(java.lang.String classname, java.lang.String field, java.lang.String value)
           
 Model getModel()
           
 java.lang.String getPassword()
           
 long getPK(java.lang.String type, java.lang.String name)
          Shorthand equivalent to call getPrimaryKeys(type,name,1)
 java.lang.String getPort()
           
 long getPrimaryKeys(java.lang.String type, java.lang.String name, int num)
          Returns the first primary key of a set 'snum' consecutive primary keys, that become reserved.
 Property getProperty(java.lang.String classname, java.lang.String propname)
           
 java.lang.String getSchema()
           
 java.lang.String getSchFileName()
           
 long getSerial()
           
 java.lang.String getUser()
           
 long getVersion()
           
 boolean isConnected()
           
 void reconnect()
           
 void reconnectAs(java.lang.String newuser, java.lang.String newpass)
           
 void refresh()
           
 void returnPK(java.lang.String type, java.lang.String name, long pk)
          This method is to return primary keys that (due to some exception) will not be used.
 java.lang.Object runSQL(java.lang.String sql, ResultsHandler processor)
           
 java.lang.String runTest()
           
 void saveAppVO(AppVO newAppVO)
           
 int saveAttachment(java.lang.String name, byte[] data, long oid, long focusType, long focusId)
           
 int saveBlob1(byte[] data, long oid, long focusType, long focusId)
           
 int saveBlob2(java.io.InputStream is, java.lang.String name, long oid, long focusType, long focusId, java.lang.String lang)
           
 DescriptionVO saveDescriptionVO(DescriptionVO descvo, long descId, java.lang.String domain, java.lang.String name, java.lang.String description, java.lang.String shortDescription, java.lang.String comments)
           
 DescriptionVO saveDescriptionVO(DescriptionVO descvo, java.lang.String lang, long descId, java.lang.String domain, java.lang.String name, java.lang.String description, java.lang.String shortDescription, java.lang.String comments)
           
 void setSchema(java.lang.String schema)
           
 void setup()
          Creates DataModel, initilize the data model, ETC.
 void setVersion(long version)
           
static long sFixSequential(DBHandler aDbh, java.lang.String type, java.lang.String classname)
          Updates/inserts into OMS_SEQ for given classname the max id found
static int sFixSequentials(DBHandler aDbh)
           
static long sGetPrimaryKeys(DBHandler aDbh, java.lang.String type, java.lang.String name, int num)
           
 int update(Instance newInstance)
           
 int update1(Instance newInstance)
          Deprecated.  
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

OMSBrowser

public OMSBrowser()
           throws ConfigException
Throws:
ConfigException
Method Detail

setup

public void setup()
           throws ConnectionException,
                  DataModelException
Creates DataModel, initilize the data model, ETC.

Specified by:
setup in interface SSBrowser
Throws:
ConnectionException
DataModelException

getDbInfo

public java.lang.String getDbInfo()
Specified by:
getDbInfo in interface Browser
Specified by:
getDbInfo in interface SSBrowser

finalize

public void finalize()
Overrides:
finalize in class java.lang.Object

getDBTypes

public java.lang.String[] getDBTypes()
                              throws ConfigException
Specified by:
getDBTypes in interface Browser
Specified by:
getDBTypes in interface SSBrowser
Throws:
ConfigException

getModel

public Model getModel()
Specified by:
getModel in interface Browser

getProperty

public Property getProperty(java.lang.String classname,
                            java.lang.String propname)
Specified by:
getProperty in interface Browser

refresh

public void refresh()
             throws DataModelException
Specified by:
refresh in interface Browser
Specified by:
refresh in interface SSBrowser
Throws:
DataModelException

setSchema

public void setSchema(java.lang.String schema)
Specified by:
setSchema in interface Browser

connect

public void connect(java.lang.String dbhType,
                    java.lang.String dsn,
                    java.lang.String user,
                    java.lang.String password)
             throws ConnectionException
Specified by:
connect in interface Browser
Specified by:
connect in interface SSBrowser
Throws:
ConnectionException

connect

public void connect(java.lang.String dbhType,
                    java.lang.String host,
                    java.lang.String port,
                    java.lang.String db,
                    java.lang.String schema,
                    java.lang.String user,
                    java.lang.String password)
             throws ConnectionException
Specified by:
connect in interface Browser
Specified by:
connect in interface SSBrowser
Throws:
ConnectionException

disconnect

public void disconnect()
Specified by:
disconnect in interface Browser
Specified by:
disconnect in interface SSBrowser

isConnected

public boolean isConnected()
                    throws ConnectionException
Specified by:
isConnected in interface Browser
Specified by:
isConnected in interface SSBrowser
Throws:
ConnectionException

reconnect

public void reconnect()
               throws ConnectionException
Specified by:
reconnect in interface SSBrowser
Throws:
ConnectionException

reconnectAs

public void reconnectAs(java.lang.String newuser,
                        java.lang.String newpass)
                 throws ConnectionException,
                        DataModelException
Specified by:
reconnectAs in interface SSBrowser
Throws:
ConnectionException
DataModelException

getClass

public Class getClass(java.lang.String classname)
Specified by:
getClass in interface Browser
Specified by:
getClass in interface SSBrowser

getClassVO

public ClassVO getClassVO(java.lang.String classname)
                   throws java.sql.SQLException
Specified by:
getClassVO in interface SSBrowser
Throws:
java.sql.SQLException

getClassNames

public java.lang.String[] getClassNames()
Specified by:
getClassNames in interface Browser
Specified by:
getClassNames in interface SSBrowser

getClassPropertyCount

public int getClassPropertyCount(java.lang.String className)
Specified by:
getClassPropertyCount in interface Browser
Specified by:
getClassPropertyCount in interface SSBrowser

getClassPropertyName

public java.lang.String getClassPropertyName(java.lang.String className,
                                             java.lang.String propName)
Specified by:
getClassPropertyName in interface Browser
Specified by:
getClassPropertyName in interface SSBrowser

getClassPropertyLabel

public java.lang.String getClassPropertyLabel(java.lang.String className,
                                              java.lang.String propName)
Specified by:
getClassPropertyLabel in interface Browser
Specified by:
getClassPropertyLabel in interface SSBrowser

getClassPropertyType

public int getClassPropertyType(java.lang.String className,
                                java.lang.String propName)
Specified by:
getClassPropertyType in interface Browser
Specified by:
getClassPropertyType in interface SSBrowser

getClassPropertySize

public int getClassPropertySize(java.lang.String className,
                                java.lang.String propName)
Specified by:
getClassPropertySize in interface Browser
Specified by:
getClassPropertySize in interface SSBrowser

getInstances

public InstanceSet getInstances(java.lang.String classname,
                                java.lang.String field,
                                java.lang.String value)
                         throws java.sql.SQLException
Specified by:
getInstances in interface Browser
Specified by:
getInstances in interface SSBrowser
Throws:
java.sql.SQLException

getInstances

public InstanceSet getInstances(java.lang.String classname,
                                java.lang.String[] fields,
                                java.lang.String[] values)
                         throws java.sql.SQLException
Throws:
java.sql.SQLException

create

public long create(Instance newInstance)
            throws java.sql.SQLException,
                   DataException
Specified by:
create in interface Browser
Specified by:
create in interface SSBrowser
Throws:
java.sql.SQLException
DataException

create1

public long create1(Instance newInstance)
             throws java.sql.SQLException
Deprecated. 

Parameters:
newInstance -
Returns:
Throws:
java.sql.SQLException

delete

public int delete(Instance theInstance)
           throws java.sql.SQLException,
                  DataException
Specified by:
delete in interface Browser
Specified by:
delete in interface SSBrowser
Throws:
java.sql.SQLException
DataException

update

public int update(Instance newInstance)
           throws java.sql.SQLException,
                  DataException
Specified by:
update in interface Browser
Specified by:
update in interface SSBrowser
Throws:
java.sql.SQLException
DataException

saveAttachment

public int saveAttachment(java.lang.String name,
                          byte[] data,
                          long oid,
                          long focusType,
                          long focusId)
                   throws java.sql.SQLException,
                          java.io.IOException,
                          DataException
Specified by:
saveAttachment in interface SSBrowser
Throws:
java.sql.SQLException
java.io.IOException
DataException

update1

public int update1(Instance newInstance)
            throws java.sql.SQLException
Deprecated. 

Parameters:
newInstance -
Returns:
Throws:
java.sql.SQLException

saveBlob1

public int saveBlob1(byte[] data,
                     long oid,
                     long focusType,
                     long focusId)
              throws java.sql.SQLException,
                     java.io.IOException,
                     ConnectionException
Throws:
java.sql.SQLException
java.io.IOException
ConnectionException

saveBlob2

public int saveBlob2(java.io.InputStream is,
                     java.lang.String name,
                     long oid,
                     long focusType,
                     long focusId,
                     java.lang.String lang)
              throws java.sql.SQLException,
                     java.io.IOException,
                     ConnectionException
Throws:
java.sql.SQLException
java.io.IOException
ConnectionException

runTest

public java.lang.String runTest()
Specified by:
runTest in interface SSBrowser

execute

public boolean execute(Query q)
                throws java.sql.SQLException
Specified by:
execute in interface Browser
Specified by:
execute in interface SSBrowser
Throws:
java.sql.SQLException

executeQuery

public java.lang.Object executeQuery(SelectQuery q,
                                     ResultsHandler processor)
                              throws java.sql.SQLException
Specified by:
executeQuery in interface Browser
Specified by:
executeQuery in interface SSBrowser
Throws:
java.sql.SQLException

executeQuery

public java.lang.Object executeQuery(SelectQuery q,
                                     boolean formattedValues,
                                     ResultsHandler processor)
                              throws java.sql.SQLException
Specified by:
executeQuery in interface SSBrowser
Throws:
java.sql.SQLException

executeQuery

public InstanceSet executeQuery(java.lang.String instanceType,
                                SelectQuery q)
                         throws java.sql.SQLException
Specified by:
executeQuery in interface SSBrowser
Throws:
java.sql.SQLException

executeQuery

public InstanceSet executeQuery(ClassVO c,
                                SelectQuery q)
                         throws java.sql.SQLException
Throws:
java.sql.SQLException

executeUpdate

public int executeUpdate(Query q)
                  throws java.sql.SQLException
Specified by:
executeUpdate in interface Browser
Specified by:
executeUpdate in interface SSBrowser
Throws:
java.sql.SQLException

executeText

public InstanceSet executeText(java.lang.String text)
                        throws DataException
Specified by:
executeText in interface SSBrowser
Parameters:
sql -
Returns:
InstanceSet or Boolean
Throws:
DataException

executeTextNoReturn

public void executeTextNoReturn(java.lang.String text)
                         throws DataException
Specified by:
executeTextNoReturn in interface SSBrowser
Throws:
DataException

executeBatch

public java.lang.Object executeBatch(java.lang.String sql,
                                     ResultsHandler processor)
                              throws DataException
Specified by:
executeBatch in interface Browser
Throws:
DataException

returnPK

public void returnPK(java.lang.String type,
                     java.lang.String name,
                     long pk)
This method is to return primary keys that (due to some exception) will not be used. The pool of unused PKs is local to the JVM in which this class runs so this pool is not persistent.

Parameters:
type - Type of the object
name - Name of the object
pk - Primary Key returned to the pool

getPK

public long getPK(java.lang.String type,
                  java.lang.String name)
           throws java.sql.SQLException
Shorthand equivalent to call getPrimaryKeys(type,name,1)

Parameters:
type - : the type of the object, TABLE, VIEW, ...
name - : the name of the object (table or view, etc.)
Returns:
a primary key for the given object with type/name
Throws:
java.sql.SQLException

getPrimaryKeys

public long getPrimaryKeys(java.lang.String type,
                           java.lang.String name,
                           int num)
                    throws java.sql.SQLException
Returns the first primary key of a set 'snum' consecutive primary keys, that become reserved.

Specified by:
getPrimaryKeys in interface SSBrowser
Throws:
java.sql.SQLException

sGetPrimaryKeys

public static long sGetPrimaryKeys(DBHandler aDbh,
                                   java.lang.String type,
                                   java.lang.String name,
                                   int num)
                            throws java.sql.SQLException
Throws:
java.sql.SQLException

runSQL

public java.lang.Object runSQL(java.lang.String sql,
                               ResultsHandler processor)
                        throws java.sql.SQLException
Specified by:
runSQL in interface SSBrowser
Throws:
java.sql.SQLException

getAppVO

public AppVO getAppVO()
               throws java.sql.SQLException,
                      ConnectionException,
                      DataModelException
Specified by:
getAppVO in interface SSBrowser
Throws:
java.sql.SQLException
ConnectionException
DataModelException

saveAppVO

public void saveAppVO(AppVO newAppVO)
               throws DataModelException
Specified by:
saveAppVO in interface SSBrowser
Throws:
DataModelException

saveDescriptionVO

public DescriptionVO saveDescriptionVO(DescriptionVO descvo,
                                       long descId,
                                       java.lang.String domain,
                                       java.lang.String name,
                                       java.lang.String description,
                                       java.lang.String shortDescription,
                                       java.lang.String comments)
Specified by:
saveDescriptionVO in interface SSBrowser

saveDescriptionVO

public DescriptionVO saveDescriptionVO(DescriptionVO descvo,
                                       java.lang.String lang,
                                       long descId,
                                       java.lang.String domain,
                                       java.lang.String name,
                                       java.lang.String description,
                                       java.lang.String shortDescription,
                                       java.lang.String comments)
Specified by:
saveDescriptionVO in interface SSBrowser

createDescriptionId

public java.lang.Long createDescriptionId()
                                   throws java.sql.SQLException
Specified by:
createDescriptionId in interface SSBrowser
Throws:
java.sql.SQLException

setVersion

public void setVersion(long version)
Specified by:
setVersion in interface SSBrowser

getVersion

public long getVersion()
Specified by:
getVersion in interface SSBrowser

getDbh

public DBHandler getDbh()
Specified by:
getDbh in interface SSBrowser

getDb

public java.lang.String getDb()
Specified by:
getDb in interface SSBrowser

getDbhType

public java.lang.String getDbhType()
Specified by:
getDbhType in interface SSBrowser

getDbmd

public java.sql.DatabaseMetaData getDbmd()
Specified by:
getDbmd in interface SSBrowser

getDm

public Model getDm()
Specified by:
getDm in interface SSBrowser

getDsn

public java.lang.String getDsn()
Specified by:
getDsn in interface SSBrowser

getHost

public java.lang.String getHost()
Specified by:
getHost in interface SSBrowser

getPassword

public java.lang.String getPassword()
Specified by:
getPassword in interface SSBrowser

getPort

public java.lang.String getPort()
Specified by:
getPort in interface SSBrowser

getSchema

public java.lang.String getSchema()
Specified by:
getSchema in interface SSBrowser

getSchFileName

public java.lang.String getSchFileName()
Specified by:
getSchFileName in interface SSBrowser

getUser

public java.lang.String getUser()
Specified by:
getUser in interface SSBrowser

getBytecode

public byte[] getBytecode(java.lang.String classname)
Specified by:
getBytecode in interface SSBrowser

sFixSequential

public static long sFixSequential(DBHandler aDbh,
                                  java.lang.String type,
                                  java.lang.String classname)
Updates/inserts into OMS_SEQ for given classname the max id found

Parameters:
classname -
Returns:
0 if no rows found, -1 if error, otherwise the max id.

sFixSequentials

public static int sFixSequentials(DBHandler aDbh)

fixSequentials

public int fixSequentials()
Specified by:
fixSequentials in interface SSBrowser

fixSequential

public long fixSequential(java.lang.String type,
                          java.lang.String classname)
Specified by:
fixSequential in interface SSBrowser

fixSequential

public long fixSequential(java.lang.String classname)
Specified by:
fixSequential in interface SSBrowser

getDescVOByDomainNameFromDB

public DescriptionVO getDescVOByDomainNameFromDB(java.lang.String domain,
                                                 java.lang.String name,
                                                 java.lang.String lang)
                                          throws java.sql.SQLException
Returns description from database

Specified by:
getDescVOByDomainNameFromDB in interface SSBrowser
Throws:
java.sql.SQLException

getDescVOByDomainName

public DescriptionVO getDescVOByDomainName(java.lang.String domain,
                                           java.lang.String name)
Returns cached description

Specified by:
getDescVOByDomainName in interface SSBrowser
Parameters:
domain -
name -
Returns:

getDescVOById

public DescriptionVO getDescVOById(long id)
Returns cached description

Specified by:
getDescVOById in interface SSBrowser
Parameters:
id -
Returns:

getDescVOByIdFromDB

public DescriptionVO getDescVOByIdFromDB(long id,
                                         java.lang.String lang)
                                  throws java.sql.SQLException
Returns description from DB

Specified by:
getDescVOByIdFromDB in interface SSBrowser
Parameters:
id -
lang -
Returns:
Throws:
java.sql.SQLException

connect

public void connect()
             throws ConnectionException,
                    DataModelException
Specified by:
connect in interface SSBrowser
Throws:
ConnectionException
DataModelException

getSerial

public long getSerial()
Specified by:
getSerial in interface SSBrowser

close

public void close()
Specified by:
close in interface SSBrowser