source: sandbox/workflow/branches/609/lib/factory/WorkflowFactory.php @ 2222

Revision 2222, 2.1 KB checked in by pedroerp, 14 years ago (diff)

Ticket #609 - Atualizando comentários para seguir o padrão phpdoc.

  • Property svn:executable set to *
Line 
1<?php
2/**************************************************************************\
3* eGroupWare                                                               *
4* http://www.egroupware.org                                                *
5* --------------------------------------------                             *
6*  This program is free software; you can redistribute it and/or modify it *
7*  under the terms of the GNU General Public License as published by the   *
8*  Free Software Foundation; either version 2 of the License, or (at your  *
9*  option) any later version.                                              *
10\**************************************************************************/
11
12/**
13 * Specialization of the BaseFactory class.
14 * This class is used to instantiate classes by
15 * the workflow module (not by processes). You
16 * cannot access this class directly, but requests
17 * to the Factory frontend class in 'unsecured mode'
18 * will be forwarded to this class.
19 *
20 * @package Factory
21 * @license http://www.gnu.org/copyleft/gpl.html GPL
22 * @author Pedro Eugênio Rocha - pedro.eugenio.rocha@gmail.com
23 */
24final class WorkflowFactory extends BaseFactory {
25
26
27        /**
28         * @var boolean $_instantiated Attribute that stores whether this
29         *              class was instantiated or not. This is used to limit the
30         *              instantiation of this class.
31         * @access private
32         * @static
33         */
34        private static $_instantiated = false;
35
36
37        /**
38         * Construct the class. This function will inform which classes
39         * you will be able to instantiate and where to find it.
40         * This function implements a kind of singleton design pattern too.
41         * @access public
42         */
43        public function __construct() {
44
45                /* don't let the user to instantiate this class more than once. */
46                if (self::$_instantiated)
47                        throw new Exception("You can't instantiate this class again.");
48
49                /* registering allowed classes */
50                $this->registerFileInfo('WorkflowObjects', 'class.WorkflowObjects.inc.php', 'inc');
51
52                $this->registerFileInfo('db', 'x', 'inc', PHPGW_API_INC);
53
54                /* ok. no more instances of this class.. */
55                self::$_instantiated = true;
56        }
57}
58
59?>
Note: See TracBrowser for help on using the repository browser.