ILIAS  eassessment Revision 61809
 All Data Structures Namespaces Files Functions Variables Groups Pages
PGTStorageDB Class Reference

The PGTStorageDB class is a class for PGT database storage. More...

+ Inheritance diagram for PGTStorageDB:
+ Collaboration diagram for PGTStorageDB:

Public Member Functions

 getStorageType ()
 This method returns an informational string giving the type of storage used by the object (used for debugging purposes).
 getStorageInfo ()
 This method returns an informational string giving informations on the parameters of the storage.
 PGTStorageDB ($cas_parent, $user, $password, $database_type, $hostname, $port, $database, $table)
 The class constructor, called by CASClient::SetPGTStorageDB().
 init ()
 This method is used to initialize the storage.
 getStorageType ()
 This method returns an informational string giving the type of storage used by the object (used for debugging purposes).
 getStorageInfo ()
 This method returns an informational string giving informations on the parameters of the storage.
 PGTStorageDB ($cas_parent, $user, $password, $database_type, $hostname, $port, $database, $table)
 The class constructor, called by CASClient::SetPGTStorageDB().
 init ()
 This method is used to initialize the storage.
- Public Member Functions inherited from PGTStorage
 getErrorMessage ()
 This method returns an error message set by PGTStorage::setErrorMessage().
 getErrorMessage ()
 This method returns an error message set by PGTStorage::setErrorMessage().

Private Member Functions

 getURL ()
 This method returns the PEAR DB URL to use to connect to the database.
 getLink ()
 This method returns the handle of the connection to the database where PGT's are stored.
 getTable ()
 This method returns the name of the table where PGT's are stored.
 getURL ()
 This method returns the PEAR DB URL to use to connect to the database.
 getLink ()
 This method returns the handle of the connection to the database where PGT's are stored.
 getTable ()
 This method returns the name of the table where PGT's are stored.

Private Attributes

 $_url
 a string representing a PEAR DB URL to connect to the database.
 $_link
 The handle of the connection to the database where PGT's are stored.
 $_table
 The name of the table where PGT's are stored.

Additional Inherited Members

- Protected Member Functions inherited from PGTStorage
 PGTStorage ($cas_parent)
 The constructor of the class, should be called only by inherited classes.
 setErrorMessage ($error_message)
 This method sets en error message, which can be read later by PGTStorage::getErrorMessage().
 isInitialized ()
 This method tells if the storage has already been intialized.
 write ($pgt, $pgt_iou)
 This virtual method stores a PGT and its corresponding PGT Iuo.
 read ($pgt_iou)
 This virtual method reads a PGT corresponding to a PGT Iou and deletes the corresponding storage entry.
 PGTStorage ($cas_parent)
 The constructor of the class, should be called only by inherited classes.
 setErrorMessage ($error_message)
 This method sets en error message, which can be read later by PGTStorage::getErrorMessage().
 isInitialized ()
 This method tells if the storage has already been intialized.
 write ($pgt, $pgt_iou)
 This virtual method stores a PGT and its corresponding PGT Iuo.
 read ($pgt_iou)
 This virtual method reads a PGT corresponding to a PGT Iou and deletes the corresponding storage entry.

Detailed Description

The PGTStorageDB class is a class for PGT database storage.

An instance of this class is returned by CASClient::SetPGTStorageDB().

Author
Pascal Aubry <pascal.aubry at univ-rennes1.fr>

Definition at line 46 of file pgt-db.php.

Member Function Documentation

PGTStorageDB::getLink ( )
private

This method returns the handle of the connection to the database where PGT's are stored.

Returns
a handle of connection.

Definition at line 69 of file pgt-db.php.

References $_link.

{
return $this->_link;
}
PGTStorageDB::getStorageInfo ( )

This method returns an informational string giving informations on the parameters of the storage.

(used for debugging purposes).

Reimplemented from PGTStorage.

Definition at line 117 of file pgt-db.php.

{
return 'url=`'.$this->getURL().'\', table=`'.$this->getTable().'\'';
}
PGTStorageDB::getStorageType ( )

This method returns an informational string giving the type of storage used by the object (used for debugging purposes).

Returns
an informational string.

Reimplemented from PGTStorage.

Definition at line 106 of file pgt-db.php.

{
return "database";
}
PGTStorageDB::getTable ( )
private

This method returns the name of the table where PGT's are stored.

Returns
the name of a table.

Definition at line 90 of file pgt-db.php.

References $_table.

{
return $this->_table;
}
PGTStorageDB::getURL ( )
private

This method returns the PEAR DB URL to use to connect to the database.

Returns
a PEAR DB URL

Definition at line 47 of file pgt-db.php.

References $_url.

{
return $this->_url;
}
PGTStorageDB::init ( )

This method is used to initialize the storage.

Halts on error.

Reimplemented from PGTStorage.

Definition at line 169 of file pgt-db.php.

References phpCAS\error(), getURL(), init(), PGTStorage\isInitialized(), and phpCAS\traceBegin().

{
// if the storage has already been initialized, return immediatly
if ( $this->isInitialized() )
return;
// call the ancestor's method (mark as initialized)
// try to connect to the database
$this->_link = DB::connect($this->getURL());
if ( DB::isError($this->_link) ) {
phpCAS::error('could not connect to database ('.DB::errorMessage($this->_link).')');
}
var_dump($this->_link);
phpCAS::traceBEnd();
}

+ Here is the call graph for this function:

PGTStorageDB::PGTStorageDB (   $cas_parent,
  $user,
  $password,
  $database_type,
  $hostname,
  $port,
  $database,
  $table 
)

The class constructor, called by CASClient::SetPGTStorageDB().

Parameters
$cas_parentthe CASClient instance that creates the object.
$userthe user to access the data with
$passwordthe user's password
$database_typethe type of the database hosting the data
$hostnamethe server hosting the database
$portthe port the server is listening on
$databasethe name of the database
$tablethe name of the table storing the data

Definition at line 140 of file pgt-db.php.

References $server, CAS_PGT_STORAGE_DB_DEFAULT_DATABASE, CAS_PGT_STORAGE_DB_DEFAULT_DATABASE_TYPE, CAS_PGT_STORAGE_DB_DEFAULT_HOSTNAME, CAS_PGT_STORAGE_DB_DEFAULT_PORT, CAS_PGT_STORAGE_DB_DEFAULT_TABLE, PGTStorage\PGTStorage(), phpCAS\traceBegin(), and phpCAS\traceEnd().

{
// call the ancestor's constructor
$this->PGTStorage($cas_parent);
if ( empty($database_type) ) $database_type = CAS_PGT_STORAGE_DB_DEFAULT_DATABASE_TYPE;
if ( empty($hostname) ) $hostname = CAS_PGT_STORAGE_DB_DEFAULT_HOSTNAME;
if ( $port==0 ) $port = CAS_PGT_STORAGE_DB_DEFAULT_PORT;
if ( empty($database) ) $database = CAS_PGT_STORAGE_DB_DEFAULT_DATABASE;
if ( empty($table) ) $table = CAS_PGT_STORAGE_DB_DEFAULT_TABLE;
// build and store the PEAR DB URL
$this->_url = $database_type.':'.'//'.$user.':'.$password.'@'.$server.':'.$port.'/'.$database;
// XXX should use setURL and setTable
}

+ Here is the call graph for this function:


The documentation for this class was generated from the following files: