--- /dev/null
+<?php
+/*=====================================================================*\
+|| ###################################################################
+|| # ViewSVN [#]version[#]
+|| # Copyright ©2002-[#]year[#] Iris Studios, Inc.
+|| #
+|| # This program is free software; you can redistribute it and/or modify
+|| # it under the terms of the GNU General Public License as published by
+|| # the Free Software Foundation; version [#]gpl[#] of the License.
+|| #
+|| # This program is distributed in the hope that it will be useful, but
+|| # WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+|| # or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
+|| # more details.
+|| #
+|| # You should have received a copy of the GNU General Public License along
+|| # with this program; if not, write to the Free Software Foundation, Inc.,
+|| # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
+|| ###################################################################
+\*=====================================================================*/
+
+/**
+* Node Controller
+*
+* This class represents one node in SVN. For each node that you need
+* to display information about, create a new instance of this class.
+* Generally, however, this one instance should be able to handle
+* the needs of the entire class.
+*
+* @author Iris Studios, Inc.
+* @copyright Copyright ©2002 - [#]year[#], Iris Studios, Inc.
+* @version $Revision$
+* @package ViewSVN
+*
+*/
+class Node_Controller
+{
+ /**
+ * Registry class
+ * @var object
+ * @access private
+ */
+ var $registry = null;
+
+ /**
+ * Xquery layer
+ * @var object
+ * @access private
+ */
+ var $xquery = null;
+
+ /**
+ * Xquery method library
+ * @var object
+ * @access private
+ */
+ var $library = null;
+
+ // ###################################################################
+ /**
+ * Constructor
+ *
+ * @access public
+ */
+ function Node_Controller()
+ {
+ global $viewsvn;
+
+ $this->registry =& $viewsvn;
+
+ require_once('./includes/shellcmd.php');
+ $this->xquery = new Shell($this);
+
+ require_once('./includes/svnlib.php');
+ $this->library = new SVNLib($this);
+ }
+}
+
+/*=====================================================================*\
+|| ###################################################################
+|| # $HeadURL$
+|| # $Id$
+|| ###################################################################
+\*=====================================================================*/
+?>
\ No newline at end of file
*/
class Shell
{
+ /**
+ * Controller
+ * @var object
+ * @access private
+ */
+ var $controller = null;
+
+ // ###################################################################
+ /**
+ * Constructor
+ *
+ * @access public
+ *
+ * @param object Controller
+ */
+ function Shell(&$contoller)
+ {
+ $this->controller =& $controller;
+ }
+
/**
* Wrapper for escapeshellarg()
*
*/
function exec($command)
{
- global $viewsvn;
-
$start = microtime();
exec($command, $output);
- $viewsvn->debug("exec(" . $viewsvn->funct->fetch_microtime_diff($start) . "): $command");
+ $this->controller->registry->debug("exec(" . $this->controller->registry->funct->fetch_microtime_diff($start) . "): $command");
return $output;
}