Index

DKDatastoreODBC

Purpose:

This class is a specific version of dkDatastore to implement the ODBC datastore. It provides documents, parts and folders storage, a retrieval mechanism as well as query and search abilities, along with other document processing features supported by the ODBC datastore.

Class summary:

class DKDatastoreODBC : public dkDatastore
{
public:
  DKDatastoreODBC();
  DKDatastoreODBC(const char* configuration);
 
  virtual ~DKDatastoreODBC();
 
  virtual void connect (const char* datastore_name,
                  const char* user_name = "",
                  const char* authentication = "",
                  const char* connect_string = "");
  virtual void disconnect();
  virtual DKAny evaluate(const char* command,
                    const short commandLangType,
                    const DKNVPair* parms = 0);
  virtual DKAny evaluate( dkQuery* query);
  virtual DKAny evaluate(DKCQExpr* qe);
  virtual dkResultSetCursor* execute( const char* command,
                                 const short commandLangType =
                                   DK_CM_SQL_QL_TYPE,
                                 const DKNVPair* parms = 0);
  virtual dkResultSetCursor* execute( dkQuery* query);
  virtual dkResultSetCursor* execute( DKCQExpr* cqe);
  virtual void executeWithCallback( const char* command,
                               const short commandLangType,
                               const DKNVPair* parms,
                               dkCallback* callbackObj);
  virtual void executeWithCallback( dkQuery* query,
                               dkCallback* callbackObj);
  virtual void executeWithCallback( DKCQExpr* qe,
                               dkCallback* callbackObj);
  virtual dkQuery*  createQuery(const char* command,
                           const short commandLangType,
                           const DKNVPair* parms=0);
  virtual dkQuery*  createQuery(DKCQExpr* qe);
  virtual void addObject(dkDataObject* dataobj);
  virtual void deleteObject(dkDataObject* dataobj);
  virtual void retrieveObject(dkDataObject* dataobj);
  virtual void updateObject(dkDataObject* dataobj);
  virtual void commit ();
  virtual void rollback ();
  virtual DKBoolean isConnected();
  virtual DKHandle* connection();
  virtual DKHandle* environment();
  virtual DKHandle* handle(const char* type);
  virtual dkCollection* listDataSources();
  virtual DKString* listDataSourceNames(long& arrarySize);
  virtual dkCollection* listEntities();
  virtual DKString* listEntityNames(long& arraySize);
  virtual dkCollection* listEntityAttrs(const char* entityName);
  virtual DKString* listEntityAttrNames(const char* entityName,
                                   long& arraySize);
  virtual dkDatastoreDef* datastoreDef();
  virtual DKString registerMapping(DKNVPair* sourceMap);
  virtual void unRegisterMapping(const char* mappingName);
  virtual DKString* listMappingNames(long& arraySize);
  virtual dkSchemaMapping* getMapping(const char* mappingName);
  virtual dkExtension* getExtension(const char* extensionName);
  virtual void addExtension(const char* extensionName,
                       dkExtension* extensionObj);
  virtual void removeExtension(const char* extensionName);
  virtual DKString* listExtensionNames(long& arraySize);
  virtual DKDDO* createDDO(const char* objectType, long Flags);
};

Members:

Constructors and destructor
  DKDatastoreODBC();
  DKDatastoreODBC(const char* configuration);
 
  virtual ~DKDatastoreODBC();

Member functions

connect
Connects a datastore. Datastore name is the name of the database or library server. connect_string describes some selected options, supported by the specific implementation of the datastore.
  virtual void connect (const char* datastore_name,
                  const char* user_name = "",
                  const char* authentication = "",
                  const char* connect_string = "");

disconnect
Disconnects a datastore.
  virtual void disconnect();

evaluate
Evaluates the query.
  virtual DKAny evaluate(const char* command,
                    const short commandLangType,
                    const DKNVPair* parms = 0);
  virtual DKAny evaluate( dkQuery* query);
  virtual DKAny evaluate(DKCQExpr* qe);

execute
Executes the query.
  virtual dkResultSetCursor* execute( const char* command,
                                 const short commandLangType =
                                   DK_CM_SQL_QL_TYPE,
                                 const DKNVPair* parms = 0);
  virtual dkResultSetCursor* execute( dkQuery* query);
  virtual dkResultSetCursor* execute( DKCQExpr* cqe);

executeWithCallback
Executes the query with a callback option.
  virtual void executeWithCallback( const char* command,
                               const short commandLangType,
                               const DKNVPair* parms,
                               dkCallback* callbackObj);
  virtual void executeWithCallback( dkQuery* query,
                               dkCallback* callbackObj);
  virtual void executeWithCallback( DKCQExpr* qe,
                               dkCallback* callbackObj);

createQuery
Creates a query object.
  virtual dkQuery*  createQuery(const char* command,
                           const short commandLangType,
                           const DKNVPair* parms=0);
  virtual dkQuery*  createQuery(DKCQExpr* qe);

addObject
Add a DDO to this datastore.
  virtual void addObject(dkDataObject* dataobj);

deleteObject
Deletes the DDO from this datastore.
  virtual void deleteObject(dkDataObject* dataobj);

retrieveObject
Retreives the DDO from this datastore.
  virtual void retrieveObject(dkDataObject* dataobj);

updateObject
Updates the DDO in this datastore.
  virtual void updateObject(dkDataObject* dataobj);

commit
Commits a datastore transaction.
  virtual void commit ();

rollback
Rolls back a datastore transaction.
  virtual void rollback ();

isConnected
Checks to see if the datastore is connected.
  virtual DKBoolean isConnected();

connection
Gets the connection handle for a datastore.
  virtual DKHandle* connection();

environment
Gets the environment handle for a datastore.
  virtual DKHandle* environment();

handle
Gets a datastore handle.
  virtual DKHandle* handle(const char* type);

listDataSources
List the available datastore sources that can be used to connect with.
  virtual dkCollection* listDataSources();

listDataSourceNames
List the available datastore source names that can be used to connect with.
  virtual DKString* listDataSourceNames(long& arrarySize);

listEntities
Gets a list of entities from the persistent datastore.
  virtual dkCollection* listEntities();

listEntityNames
Gets a list of entity names from persistent datastore.
  virtual DKString* listEntityNames(long& arraySize);

listEntityAttrs
Gets a list of attributes for a given entity name.
  virtual dkCollection* listEntityAttrs(const char* entityName);

listEntityAttrNames
Gets a list of attribute names for a given entity name.
  virtual DKString* listEntityAttrNames(const char* entityName,
                                   long& arraySize);

datastoreDef
Gets datastore definition.
  virtual dkDatastoreDef* datastoreDef();

registerMapping
Registers mapping information to this datastore.
  virtual DKString registerMapping(DKNVPair* sourceMap);

unRegisterMapping
Unregisters mapping information for this datastore.
  virtual void unRegisterMapping(const char* mappingName);

listMappingNames
Gets the list of the register mappings for this datastore.
  virtual DKString* listMappingNames(long& arraySize);

getMapping
Get mapping information for this datastore.
  virtual dkSchemaMapping* getMapping(const char* mappingName);

getExtension
Gets the extension object from a given extension name.
  virtual dkExtension* getExtension(const char* extensionName);

addExtension
Adds a new extension object.
  virtual void addExtension(const char* extensionName,
                       dkExtension* extensionObj);

removeExtension
Removes an existing extension object.
  virtual void removeExtension(const char* extensionName);

listExtensionNames
Gets the list of extension objects' names.
  virtual DKString* listExtensionNames(long& arraySize);

createDDO
Creates a new DDO with object type, properties and attributes set for a given content server.
  virtual DKDDO* createDDO(const char* objectType, long Flags);

(c) Copyright International Business Machines Corporation 1996, 2003. IBM Corp. All rights reserved.