ConLite/conlite/tools/mpAutoloaderClassMap/mpClassMapFileCreatorConten...

116 Zeilen
3.3 KiB
PHP

<?php
/**
* Contains class to create a class map file.
*
* @category Development
* @package mpAutoloaderClassMap
* @author Murat Purc <murat@purc.de>
* @copyright Copyright (c) 2010 Murat Purc (http://www.purc.de)
* @license http://www.gnu.org/licenses/gpl-2.0.html - GNU General Public License, version 2
* @version $Id$
*/
include_once('mpClassMapFileCreator.php');
/**
* Class to create a PHP file which contains a assoziative PHP array.
*
* Generated file will contain a PHP array as following:
* <code>
* return array(
* '{classname}' => '{path_to_classfile}',
* '{classname2}' => '{path_to_classfile2}',
* );
* </code>
*
* @category Development
* @package mpAutoloaderClassMap
* @author Murat Purc <murat@purc.de>
*/
class mpClassMapFileCreatorContenido extends mpClassMapFileCreator
{
private $_contenidoInstallPath;
public function __construct($contenidoInstallPath)
{
parent::__construct();
$this->_contenidoInstallPath = $contenidoInstallPath;
$this->_template = trim('
<?php
/**
* Project:
* Contenido Content Management System
*
* Description:
{DESCRIPTION}
*
* Requirements:
* {REQUIREMENTS}
*
* @package {PACKAGE}
* @version {VERSION}
* @author {AUTHOR}
* @copyright {COPYRIGHT}
* @license {LICENSE}
* @link {LINK}
* @link {LINK2}
* @since {SINCE}
*
* {@internal
* created {INTERNAL_DATE}
* }}
*/
{CONTENT}
');
$this->_data->description = ' ' . trim('
* Contenido autoloader classmap file. Contains all available classes and
* related class files in several Contenido folder.
*
* NOTES:
* - Don\'t edit this file manually, it was generated by ' . __CLASS__ . '!
* - Use ' . __CLASS__ . ' again, if you want to regenerate this file
* - See related sources in
* - contenido/tools/create_autoloader_cfg.php
* - contenido/tools/mpAutoloaderClassMap/
* for more details
* - Read also docs/techref/backend/backend.autoloader.html to get involved in
* Contenido autoloader mechanism
*');
$this->_data->internal_date = date('Y-m-d');
$this->_data->requirements = '@con_php_req 5.0';
$this->_data->package = 'Contenido Backend includes';
$this->_data->version = '0.1';
$this->_data->author = 'System';
$this->_data->copyright = 'four for business AG <www.4fb.de>';
$this->_data->license = 'http://www.contenido.org/license/LIZENZ.txt';
$this->_data->link = 'http://www.4fb.de';
$this->_data->link2 = 'http://www.contenido.org';
$this->_data->since = 'file available since Contenido release >= 4.8.15';
}
/**
* Creates classmap file with passed data list. Prepares the classmap entries
* before passing them to parents create function.
*
* @param array $data Assoziative list which contains class type tokens and
* the related path to the class file.
* @param string $file Destination class map file
* @return void
*/
public function create(array $data, $file)
{
// remove path from root to contenido installation
foreach ($data as $k => $v) {
$data[$k] = str_replace($this->_contenidoInstallPath, '', $v);
}
return parent::create($data, $file);
}
}