cakephp2-php8/lib/Cake/Console/Command/Task/BakeTask.php
Mark Story 59c6b419e5 Merge branch '1.3' into merger
Conflicts:
	cake/console/libs/bake.php
	cake/libs/configure.php
	cake/libs/controller/components/request_handler.php
	cake/tests/cases/console/libs/tasks/fixture.test.php
	cake/tests/cases/libs/controller/components/request_handler.test.php
	lib/Cake/Cache/Engine/FileEngine.php
	lib/Cake/Test/Case/Controller/ScaffoldTest.php
	lib/Cake/Utility/Validation.php
2011-08-28 22:08:49 -04:00

89 lines
1.8 KiB
PHP

<?php
/**
* Base class for Bake Tasks.
*
* PHP 5
*
* CakePHP(tm) : Rapid Development Framework (http://cakephp.org)
* Copyright 2005-2011, Cake Software Foundation, Inc.
*
* Licensed under The MIT License
* Redistributions of files must retain the above copyright notice.
*
* @copyright Copyright 2005-2011, Cake Software Foundation, Inc. (http://cakefoundation.org)
* @link http://cakephp.org CakePHP(tm) Project
* @since CakePHP(tm) v 1.3
* @license MIT License (http://www.opensource.org/licenses/mit-license.php)
*/
/**
* Base class for Bake Tasks.
*
* @package Cake.Console.Command.Task
*/
class BakeTask extends Shell {
/**
* Name of plugin
*
* @var string
*/
public $plugin = null;
/**
* The db connection being used for baking
*
* @var string
*/
public $connection = null;
/**
* Flag for interactive mode
*
* @var boolean
*/
public $interactive = false;
/**
* Disable caching for baking.
* This forces the most current database schema to be used.
*
* @return void
*/
function startup() {
Configure::write('Cache.disable', 1);
parent::startup();
}
/**
* Gets the path for output. Checks the plugin property
* and returns the correct path.
*
* @return string Path to output.
*/
public function getPath() {
$path = $this->path;
if (isset($this->plugin)) {
$path = $this->_pluginPath($this->plugin) . $this->name . DS;
}
return $path;
}
/**
* Base execute method parses some parameters and sets some properties on the bake tasks.
* call when overriding execute()
*
* @return void
*/
public function execute() {
foreach($this->args as $i => $arg) {
if (strpos($arg, '.')) {
list($this->params['plugin'], $this->args[$i]) = pluginSplit($arg);
break;
}
}
if (isset($this->params['plugin'])) {
$this->plugin = $this->params['plugin'];
}
}
}