Net_Growl
[ class tree: Net_Growl ] [ index: Net_Growl ] [ all elements ]

Source for file Icon.php

Documentation is available at Icon.php

  1. <?php
  2. /**
  3.  * Copyright (c) 2009-2013, Laurent Laville <pear@laurent-laville.org>
  4.  *                          Bertrand Mansion <bmansion@mamasam.com>
  5.  *
  6.  * All rights reserved.
  7.  *
  8.  * Redistribution and use in source and binary forms, with or without
  9.  * modification, are permitted provided that the following conditions
  10.  * are met:
  11.  *
  12.  *     * Redistributions of source code must retain the above copyright
  13.  *       notice, this list of conditions and the following disclaimer.
  14.  *     * Redistributions in binary form must reproduce the above copyright
  15.  *       notice, this list of conditions and the following disclaimer in the
  16.  *       documentation and/or other materials provided with the distribution.
  17.  *     * Neither the name of the authors nor the names of its contributors
  18.  *       may be used to endorse or promote products derived from this software
  19.  *       without specific prior written permission.
  20.  *
  21.  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
  22.  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  23.  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  24.  * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS
  25.  * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
  26.  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
  27.  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
  28.  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
  29.  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
  30.  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  31.  * POSSIBILITY OF SUCH DAMAGE.
  32.  *
  33.  * PHP version 5
  34.  *
  35.  * @category Networking
  36.  * @package  Net_Growl
  37.  * @author   Laurent Laville <pear@laurent-laville.org>
  38.  * @license  http://www.opensource.org/licenses/bsd-license.php  BSD
  39.  * @version  SVN: $Id: Icon.php 329331 2013-01-29 13:18:57Z farell $
  40.  * @link     http://growl.laurent-laville.org/
  41.  * @link     http://pear.php.net/package/Net_Growl
  42.  * @since    File available since Release 2.7.0
  43.  */
  44.  
  45. /**
  46.  * Icon resource
  47.  *
  48.  * @category Networking
  49.  * @package  Net_Growl
  50.  * @author   Laurent Laville <pear@laurent-laville.org>
  51.  * @license  http://www.opensource.org/licenses/bsd-license.php  BSD
  52.  * @version  Release: 2.7.0
  53.  * @link     http://growl.laurent-laville.org/
  54.  * @link     http://pear.php.net/package/Net_Growl
  55.  * @since    Class available since Release 2.7.0
  56.  */
  57. {
  58.     /**
  59.      * @var string 
  60.      */
  61.     protected $iconData;
  62.  
  63.     /**
  64.      * Constructor.
  65.      *
  66.      * @param string   $url            URL of icon file to read
  67.      * @param bool     $useIncludePath (optional) Trigger include path search
  68.      * @param resource $context        (optional) A valid context resource
  69.      *                                  created with stream_context_create()
  70.      *
  71.      * @return Net_Growl_Icon 
  72.      */
  73.     public function __construct($url$useIncludePath = false$context = null)
  74.     {
  75.         if (is_resource($context)) {
  76.             $data file_get_contents($urlfalse$context);
  77.         else {
  78.             if (strpos($url'://'!== false{
  79.                 $useIncludePath = false;
  80.             }
  81.             $data file_get_contents($url$useIncludePath);
  82.         }
  83.  
  84.         $this->iconData = ($data === false'' $data;
  85.     }
  86.  
  87.     /**
  88.      * Return binary data of icon resource
  89.      *
  90.      * @return string 
  91.      */
  92.     public function getContents()
  93.     {
  94.         return $this->iconData;
  95.     }
  96.  
  97. }

Documentation generated on Tue, 29 Jan 2013 18:30:05 +0000 by phpDocumentor 1.4.3. PEAR Logo Copyright © PHP Group 2004.