<?php
/*
 *  $Id$
 *
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
 * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 *
 * This software consists of voluntary contributions made by many individuals
 * and is licensed under the LGPL. For more information, see
 * <http://www.phpdoctrine.org>.
 */

/**
 * Doctrine
 * the base class of Doctrine framework
 *
 * @package     Doctrine
 * @author      Konsta Vesterinen <kvesteri@cc.hut.fi>
 * @author      Lukas Smith <smith@pooteeweet.org> (PEAR MDB2 library)
 * @license     http://www.opensource.org/licenses/lgpl-license.php LGPL
 * @link        www.phpdoctrine.org
 * @since       1.0
 * @version     $Revision$
 * @todo Remove all the constants, attributes to the new attribute system,
 *       All methods to appropriate classes.
 *       Finally remove this class.
 */
final class Doctrine
{
    /**
     * PDO derived constants
     */
    const CASE_NATURAL              = 0;
    const CASE_UPPER                = 1;
    const CASE_LOWER                = 2;
    const CURSOR_FWDONLY            = 0;
    const CURSOR_SCROLL             = 1;
    const ERRMODE_EXCEPTION         = 2;
    const ERRMODE_SILENT            = 0;
    const ERRMODE_WARNING           = 1;
    const FETCH_ASSOC               = 2;
    const FETCH_BOTH                = 4;
    const FETCH_BOUND               = 6;
    const FETCH_CLASS               = 8;
    const FETCH_CLASSTYPE           = 262144;
    const FETCH_COLUMN              = 7;
    const FETCH_FUNC                = 10;
    const FETCH_GROUP               = 65536;
    const FETCH_INTO                = 9;
    const FETCH_LAZY                = 1;
    const FETCH_NAMED               = 11;
    const FETCH_NUM                 = 3;
    const FETCH_OBJ                 = 5;
    const FETCH_ORI_ABS             = 4;
    const FETCH_ORI_FIRST           = 2;
    const FETCH_ORI_LAST            = 3;
    const FETCH_ORI_NEXT            = 0;
    const FETCH_ORI_PRIOR           = 1;
    const FETCH_ORI_REL             = 5;
    const FETCH_SERIALIZE           = 524288;
    const FETCH_UNIQUE              = 196608;
    const NULL_EMPTY_STRING         = 1;
    const NULL_NATURAL              = 0;
    const NULL_TO_STRING            = NULL;
    const PARAM_BOOL                = 5;
    const PARAM_INPUT_OUTPUT        = -2147483648;
    const PARAM_INT                 = 1;
    const PARAM_LOB                 = 3;
    const PARAM_NULL                = 0;
    const PARAM_STMT                = 4;
    const PARAM_STR                 = 2;
    const ATTR_AUTOCOMMIT           = 0;
    const ATTR_PREFETCH             = 1;
    const ATTR_TIMEOUT              = 2;
    const ATTR_ERRMODE              = 3;
    const ATTR_SERVER_VERSION       = 4;
    const ATTR_CLIENT_VERSION       = 5;
    const ATTR_SERVER_INFO          = 6;
    const ATTR_CONNECTION_STATUS    = 7;
    const ATTR_CASE                 = 8;
    const ATTR_CURSOR_NAME          = 9;
    const ATTR_CURSOR               = 10;
    const ATTR_ORACLE_NULLS         = 11;
    const ATTR_PERSISTENT           = 12;
    const ATTR_STATEMENT_CLASS      = 13;
    const ATTR_FETCH_TABLE_NAMES    = 14;
    const ATTR_FETCH_CATALOG_NAMES  = 15;
    const ATTR_DRIVER_NAME          = 16;
    const ATTR_STRINGIFY_FETCHES    = 17;
    const ATTR_MAX_COLUMN_LEN       = 18;

    /**
     * __construct
     *
     * @return void
     * @throws Doctrine_Exception
     */
    public function __construct()
    {
        throw new Doctrine_Exception('Doctrine is static class. No instances can be created.');
    }
}