File indexing completed on 2025-01-19 05:21:36
0001 <?php 0002 /** 0003 * Zend Framework 0004 * 0005 * LICENSE 0006 * 0007 * This source file is subject to the new BSD license that is bundled 0008 * with this package in the file LICENSE.txt. 0009 * It is also available through the world-wide-web at this URL: 0010 * http://framework.zend.com/license/new-bsd 0011 * If you did not receive a copy of the license and are unable to 0012 * obtain it through the world-wide-web, please send an email 0013 * to license@zend.com so we can send you a copy immediately. 0014 * 0015 * @category Zend 0016 * @package Zend_Tool 0017 * @subpackage Framework 0018 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com) 0019 * @license http://framework.zend.com/license/new-bsd New BSD License 0020 * @version $Id$ 0021 */ 0022 0023 /** 0024 * @see Zend_Tool_Project_Context_Filesystem_Abstract 0025 */ 0026 // require_once 'Zend/Tool/Project/Context/Filesystem/Abstract.php'; 0027 0028 /** 0029 * This class is the front most class for utilizing Zend_Tool_Project 0030 * 0031 * A profile is a hierarchical set of resources that keep track of 0032 * items within a specific project. 0033 * 0034 * @category Zend 0035 * @package Zend_Tool 0036 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com) 0037 * @license http://framework.zend.com/license/new-bsd New BSD License 0038 */ 0039 class Zend_Tool_Project_Context_Filesystem_Directory extends Zend_Tool_Project_Context_Filesystem_Abstract 0040 { 0041 0042 /** 0043 * getName() 0044 * 0045 * @return string 0046 */ 0047 public function getName() 0048 { 0049 return 'directory'; 0050 } 0051 0052 /** 0053 * create() 0054 * 0055 * @return Zend_Tool_Project_Context_Filesystem_Directory; 0056 */ 0057 public function create() 0058 { 0059 // check to ensure the parent exists, if not, call it and create it 0060 if (($parentResource = $this->_resource->getParentResource()) instanceof Zend_Tool_Project_Profile_Resource) { 0061 if ((($parentContext = $parentResource->getContext()) instanceof Zend_Tool_Project_Context_Filesystem_Abstract) 0062 && (!$parentContext->exists())) { 0063 $parentResource->create(); 0064 } 0065 } 0066 0067 if (!file_exists($this->getPath())) { 0068 mkdir($this->getPath()); 0069 } 0070 0071 return $this; 0072 } 0073 0074 /** 0075 * delete() 0076 * 0077 * @return Zend_Tool_Project_Context_Filesystem_Directory 0078 */ 0079 public function delete() 0080 { 0081 $this->_resource->setDeleted(true); 0082 rmdir($this->getPath()); 0083 0084 return $this; 0085 } 0086 0087 }