Projet

Général

Profil

Paste
Télécharger (2,51 ko) Statistiques
| Branche: | Révision:

root / htmltest / sites / all / libraries / CAS.dgeo / CAS / ProxyTicketException.php @ 3753f249

1
<?php
2
/*
3
 * Copyright © 2003-2010, The ESUP-Portail consortium & the JA-SIG Collaborative.
4
 * All rights reserved.
5
 *
6
 * Redistribution and use in source and binary forms, with or without
7
 * modification, are permitted provided that the following conditions are met:
8
 *
9
 *                 * Redistributions of source code must retain the above copyright notice,
10
 *                         this list of conditions and the following disclaimer.
11
 *                 * Redistributions in binary form must reproduce the above copyright notice,
12
 *                         this list of conditions and the following disclaimer in the documentation
13
 *                         and/or other materials provided with the distribution.
14
 *                 * Neither the name of the ESUP-Portail consortium & the JA-SIG
15
 *                         Collaborative nor the names of its contributors may be used to endorse or
16
 *                         promote products derived from this software without specific prior
17
 *                         written permission.
18
 *
19
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
20
 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
21
 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
22
 * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
23
 * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
24
 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
25
 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
26
 * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
27
 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
28
 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29
 */
30

    
31
require_once(dirname(__FILE__).'/Exception.php');
32

    
33
/**
34
 * An Exception for errors related to fetching or validating proxy tickets.
35
 */
36
class CAS_ProxyTicketException
37
        extends BadMethodCallException
38
        implements CAS_Exception
39
{
40
        
41
        /**
42
         * Constructor
43
         * 
44
         * @param string $message
45
         * @param optional int $code
46
         * @param optional Exception $previous
47
         * @return void
48
         */
49
        public function __construct ($message, $code = PHPCAS_SERVICE_PT_FAILURE) {
50
                // Warn if the code is not in our allowed list
51
                $ptCodes = array(
52
                        PHPCAS_SERVICE_PT_FAILURE, 
53
                        PHPCAS_SERVICE_PT_NO_SERVER_RESPONSE, 
54
                        PHPCAS_SERVICE_PT_BAD_SERVER_RESPONSE,
55
                );
56
                if (!in_array($code, $ptCodes)) {
57
                        trigger_error('Invalid code '.$code.' passed. Must be one of PHPCAS_SERVICE_PT_FAILURE, PHPCAS_SERVICE_PT_NO_SERVER_RESPONSE, or PHPCAS_SERVICE_PT_BAD_SERVER_RESPONSE.');
58
                }
59
                
60
                parent::__construct($message, $code);
61
        }
62
}