Data Structures | Functions | Variables

InternalPGTStorageDB

Data Structures

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

Functions

 PGTStorageDB::getURL ()
 This method returns the PEAR DB URL to use to connect to the database.
 PGTStorageDB::getLink ()
 This method returns the handle of the connection to the database where PGT's are stored.
 PGTStorageDB::getTable ()
 This method returns the name of the table where PGT's are stored.
 PGTStorageDB::getStorageType ()
 This method returns an informational string giving the type of storage used by the object (used for debugging purposes).
 PGTStorageDB::getStorageInfo ()
 This method returns an informational string giving informations on the parameters of the storage.
 PGTStorageDB::PGTStorageDB ($cas_parent, $user, $password, $database_type, $hostname, $port, $database, $table)
 The class constructor, called by CASClient::SetPGTStorageDB().
 PGTStorageDB::init ()
 This method is used to initialize the storage.

Variables

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

Function Documentation

PGTStorageDB::getLink (  )  [private, inherited]

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.

    {
      return $this->_link;
    }

PGTStorageDB::getStorageInfo (  )  [inherited]

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 (  )  [inherited]

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, inherited]

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.

    {
      return $this->_table;
    }

PGTStorageDB::getURL (  )  [private, inherited]

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.

Referenced by PGTStorageDB::init().

    {
      return $this->_url;
    }

Here is the caller graph for this function:

PGTStorageDB::init (  )  [inherited]

This method is used to initialize the storage.

Halts on error.

Reimplemented from PGTStorage.

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

References PGTStorageDB::getURL(), and PGTStorage::isInitialized().

    {
      phpCAS::traceBegin();
      // if the storage has already been initialized, return immediatly
      if ( $this->isInitialized() )
        return;
      // call the ancestor's method (mark as initialized)
      parent::init();
      
      // 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 
) [inherited]

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

Parameters:
$cas_parent the CASClient instance that creates the object.
$user the user to access the data with
$password the user's password
$database_type the type of the database hosting the data
$hostname the server hosting the database
$port the port the server is listening on
$database the name of the database
$table the name of the table storing the data

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

References $server, $table, and PGTStorage::PGTStorage().

    {
      phpCAS::traceBegin();

      // 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
      phpCAS::traceEnd();
    }

Here is the call graph for this function:


Variable Documentation

PGTStorageDB::$_link [private, inherited]

The handle of the connection to the database where PGT's are stored.

Written by PGTStorageDB::init(), read by getLink().

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

PGTStorageDB::$_table [private, inherited]

The name of the table where PGT's are stored.

Written by PGTStorageDB::PGTStorageDB(), read by getTable().

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

PGTStorageDB::$_url [private, inherited]

a string representing a PEAR DB URL to connect to the database.

Written by PGTStorageDB::PGTStorageDB(), read by getURL().

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