|
16 | 16 | throw new BaseException($string, $code);
|
17 | 17 | }
|
18 | 18 |
|
19 |
| - /* void */ function __autoload_failed($classname, $message) |
20 |
| - { |
21 |
| - eval( |
22 |
| - 'if (!class_exists("ClassNotFoundException", false)) { ' |
23 |
| - .'final class ClassNotFoundException extends BaseException {/*_*/} }' |
24 |
| - .'throw new ClassNotFoundException("'.$classname.': '.$message.'");' |
25 |
| - ); |
26 |
| - } |
27 |
| - |
28 | 19 | // file extensions
|
29 | 20 | define('EXT_CLASS', '.class.php');
|
30 | 21 | define('EXT_TPL', '.tpl.html');
|
|
40 | 31 | sys_get_temp_dir().DIRECTORY_SEPARATOR.'onPHP'.DIRECTORY_SEPARATOR
|
41 | 32 | );
|
42 | 33 |
|
43 |
| - if (!defined('ONPHP_CLASS_CACHE')) |
44 |
| - define('ONPHP_CLASS_CACHE', ONPHP_TEMP_PATH); |
45 |
| - |
46 |
| - // classes autoload magic |
47 |
| - if (!defined('ONPHP_CLASS_CACHE_TYPE')) |
48 |
| - define('ONPHP_CLASS_CACHE_TYPE', 'classPathCache'); |
49 |
| - |
50 |
| - require |
51 |
| - dirname(__FILE__).DIRECTORY_SEPARATOR |
52 |
| - .'misc'.DIRECTORY_SEPARATOR |
53 |
| - .'Autoloader'.EXT_MOD; |
54 |
| - |
55 |
| - spl_autoload_register(array('Autoloader', ONPHP_CLASS_CACHE_TYPE), false); |
56 |
| - |
57 | 34 | // system settings
|
58 | 35 | error_reporting(E_ALL | E_STRICT);
|
59 | 36 | set_error_handler('error2Exception', E_ALL | E_STRICT);
|
|
89 | 66 | ONPHP_ROOT_PATH.'incubator'.DIRECTORY_SEPARATOR
|
90 | 67 | );
|
91 | 68 |
|
92 |
| - set_include_path( |
93 |
| - // current path |
94 |
| - get_include_path().PATH_SEPARATOR |
95 |
| - |
| 69 | + if (!defined('ONPHP_CLASS_CACHE')) |
| 70 | + define('ONPHP_CLASS_CACHE', ONPHP_TEMP_PATH); |
| 71 | + |
| 72 | + // classes autoload magic |
| 73 | + if (!defined('ONPHP_CLASS_CACHE_TYPE')) |
| 74 | + define('ONPHP_CLASS_CACHE_TYPE', 'AutoloaderClassPathCache'); |
| 75 | + |
| 76 | + require ONPHP_MAIN_PATH.'Autoloader'.DIRECTORY_SEPARATOR.'require'.EXT_MOD; |
| 77 | + |
| 78 | + $autoloader = ONPHP_CLASS_CACHE_TYPE; |
| 79 | + AutoloaderPool::set('onPHP', $autoloader = new $autoloader()); |
| 80 | + /* @var $autoloader AutoloaderClassPathCache */ |
| 81 | + $autoloader->setNamespaceResolver(NamespaceResolverOnPHP::create())->register(); |
| 82 | + |
| 83 | + $autoloader->addPaths(array( |
96 | 84 | // core classes
|
97 |
| - .ONPHP_CORE_PATH.'Base' .PATH_SEPARATOR |
98 |
| - .ONPHP_CORE_PATH.'Cache' .PATH_SEPARATOR |
| 85 | + ONPHP_CORE_PATH.'Base' , |
| 86 | + ONPHP_CORE_PATH.'Cache' , |
99 | 87 |
|
100 |
| - .ONPHP_CORE_PATH.'DB' .PATH_SEPARATOR |
101 |
| - .ONPHP_CORE_PATH.'DB'.DIRECTORY_SEPARATOR.'Transaction'.PATH_SEPARATOR |
102 |
| - .ONPHP_CORE_PATH.'DB'.DIRECTORY_SEPARATOR.'NoSQL'.PATH_SEPARATOR |
| 88 | + ONPHP_CORE_PATH.'DB' , |
| 89 | + ONPHP_CORE_PATH.'DB'.DIRECTORY_SEPARATOR.'Transaction', |
| 90 | + ONPHP_CORE_PATH.'DB'.DIRECTORY_SEPARATOR.'NoSQL', |
103 | 91 |
|
104 |
| - .ONPHP_CORE_PATH.'Exceptions' .PATH_SEPARATOR |
| 92 | + ONPHP_CORE_PATH.'Exceptions' , |
105 | 93 |
|
106 |
| - .ONPHP_CORE_PATH.'Form' .PATH_SEPARATOR |
107 |
| - .ONPHP_CORE_PATH.'Form'.DIRECTORY_SEPARATOR.'Filters'.PATH_SEPARATOR |
108 |
| - .ONPHP_CORE_PATH.'Form'.DIRECTORY_SEPARATOR.'Primitives'.PATH_SEPARATOR |
| 94 | + ONPHP_CORE_PATH.'Form' , |
| 95 | + ONPHP_CORE_PATH.'Form'.DIRECTORY_SEPARATOR.'Filters', |
| 96 | + ONPHP_CORE_PATH.'Form'.DIRECTORY_SEPARATOR.'Primitives', |
109 | 97 |
|
110 |
| - .ONPHP_CORE_PATH.'Logic' .PATH_SEPARATOR |
111 |
| - .ONPHP_CORE_PATH.'OSQL' .PATH_SEPARATOR |
| 98 | + ONPHP_CORE_PATH.'Logic' , |
| 99 | + ONPHP_CORE_PATH.'OSQL' , |
112 | 100 |
|
113 | 101 | // main framework
|
114 |
| - .ONPHP_MAIN_PATH.'Base' .PATH_SEPARATOR |
| 102 | + ONPHP_MAIN_PATH.'Base' , |
115 | 103 |
|
116 |
| - .ONPHP_MAIN_PATH.'Criteria' .PATH_SEPARATOR |
117 |
| - .ONPHP_MAIN_PATH.'Criteria'.DIRECTORY_SEPARATOR.'Projections'.PATH_SEPARATOR |
| 104 | + ONPHP_MAIN_PATH.'Criteria' , |
| 105 | + ONPHP_MAIN_PATH.'Criteria'.DIRECTORY_SEPARATOR.'Projections', |
118 | 106 |
|
119 |
| - .ONPHP_MAIN_PATH.'Crypto' .PATH_SEPARATOR |
| 107 | + ONPHP_MAIN_PATH.'Crypto' , |
120 | 108 |
|
121 |
| - .ONPHP_MAIN_PATH.'DAOs' .PATH_SEPARATOR |
122 |
| - .ONPHP_MAIN_PATH.'DAOs'.DIRECTORY_SEPARATOR.'Handlers'.PATH_SEPARATOR |
123 |
| - .ONPHP_MAIN_PATH.'DAOs'.DIRECTORY_SEPARATOR.'Workers'.PATH_SEPARATOR |
124 |
| - .ONPHP_MAIN_PATH.'DAOs'.DIRECTORY_SEPARATOR.'Uncachers'.PATH_SEPARATOR |
| 109 | + ONPHP_MAIN_PATH.'DAOs' , |
| 110 | + ONPHP_MAIN_PATH.'DAOs'.DIRECTORY_SEPARATOR.'Handlers', |
| 111 | + ONPHP_MAIN_PATH.'DAOs'.DIRECTORY_SEPARATOR.'Workers', |
| 112 | + ONPHP_MAIN_PATH.'DAOs'.DIRECTORY_SEPARATOR.'Uncachers', |
125 | 113 |
|
126 |
| - .ONPHP_MAIN_PATH.'Flow' .PATH_SEPARATOR |
127 |
| - .ONPHP_MAIN_PATH.'SPL' .PATH_SEPARATOR |
| 114 | + ONPHP_MAIN_PATH.'Flow' , |
| 115 | + ONPHP_MAIN_PATH.'SPL' , |
128 | 116 |
|
129 |
| - .ONPHP_MAIN_PATH.'Net' .PATH_SEPARATOR |
130 |
| - .ONPHP_MAIN_PATH.'Net'.DIRECTORY_SEPARATOR.'Http'.PATH_SEPARATOR |
131 |
| - .ONPHP_MAIN_PATH.'Net'.DIRECTORY_SEPARATOR.'Mail'.PATH_SEPARATOR |
132 |
| - .ONPHP_MAIN_PATH.'Net'.DIRECTORY_SEPARATOR.'Ip'.PATH_SEPARATOR |
133 |
| - .ONPHP_MAIN_PATH.'Net'.DIRECTORY_SEPARATOR.'Soap'.PATH_SEPARATOR |
| 117 | + ONPHP_MAIN_PATH.'Net' , |
| 118 | + ONPHP_MAIN_PATH.'Net'.DIRECTORY_SEPARATOR.'Http', |
| 119 | + ONPHP_MAIN_PATH.'Net'.DIRECTORY_SEPARATOR.'Mail', |
| 120 | + ONPHP_MAIN_PATH.'Net'.DIRECTORY_SEPARATOR.'Ip', |
| 121 | + ONPHP_MAIN_PATH.'Net'.DIRECTORY_SEPARATOR.'Soap', |
134 | 122 |
|
135 |
| - .ONPHP_MAIN_PATH.'Math' .PATH_SEPARATOR |
| 123 | + ONPHP_MAIN_PATH.'Math' , |
136 | 124 |
|
137 |
| - .ONPHP_MAIN_PATH.'Markup' .PATH_SEPARATOR |
138 |
| - .ONPHP_MAIN_PATH.'Markup'.DIRECTORY_SEPARATOR.'Feed'.PATH_SEPARATOR |
139 |
| - .ONPHP_MAIN_PATH.'Markup'.DIRECTORY_SEPARATOR.'Html'.PATH_SEPARATOR |
| 125 | + ONPHP_MAIN_PATH.'Markup' , |
| 126 | + ONPHP_MAIN_PATH.'Markup'.DIRECTORY_SEPARATOR.'Feed', |
| 127 | + ONPHP_MAIN_PATH.'Markup'.DIRECTORY_SEPARATOR.'Html', |
140 | 128 |
|
141 |
| - .ONPHP_MAIN_PATH.'OQL' .PATH_SEPARATOR |
142 |
| - .ONPHP_MAIN_PATH.'OQL'.DIRECTORY_SEPARATOR.'Expressions'.PATH_SEPARATOR |
143 |
| - .ONPHP_MAIN_PATH.'OQL'.DIRECTORY_SEPARATOR.'Parsers'.PATH_SEPARATOR |
144 |
| - .ONPHP_MAIN_PATH.'OQL'.DIRECTORY_SEPARATOR.'Statements'.PATH_SEPARATOR |
| 129 | + ONPHP_MAIN_PATH.'OQL' , |
| 130 | + ONPHP_MAIN_PATH.'OQL'.DIRECTORY_SEPARATOR.'Expressions', |
| 131 | + ONPHP_MAIN_PATH.'OQL'.DIRECTORY_SEPARATOR.'Parsers', |
| 132 | + ONPHP_MAIN_PATH.'OQL'.DIRECTORY_SEPARATOR.'Statements', |
145 | 133 |
|
146 |
| - .ONPHP_MAIN_PATH.'OpenId' .PATH_SEPARATOR |
| 134 | + ONPHP_MAIN_PATH.'OpenId' , |
147 | 135 |
|
148 |
| - .ONPHP_MAIN_PATH.'EntityProto'.PATH_SEPARATOR |
149 |
| - .ONPHP_MAIN_PATH.'EntityProto'.DIRECTORY_SEPARATOR.'Builders'.PATH_SEPARATOR |
150 |
| - .ONPHP_MAIN_PATH.'EntityProto'.DIRECTORY_SEPARATOR.'Accessors'.PATH_SEPARATOR |
| 136 | + ONPHP_MAIN_PATH.'EntityProto', |
| 137 | + ONPHP_MAIN_PATH.'EntityProto'.DIRECTORY_SEPARATOR.'Builders', |
| 138 | + ONPHP_MAIN_PATH.'EntityProto'.DIRECTORY_SEPARATOR.'Accessors', |
151 | 139 |
|
152 |
| - .ONPHP_MAIN_PATH.'UnifiedContainer'.PATH_SEPARATOR |
| 140 | + ONPHP_MAIN_PATH.'UnifiedContainer', |
153 | 141 |
|
154 |
| - .ONPHP_MAIN_PATH.'UI'.PATH_SEPARATOR |
155 |
| - .ONPHP_MAIN_PATH.'UI'.DIRECTORY_SEPARATOR.'View'.PATH_SEPARATOR |
156 |
| - |
157 |
| - .ONPHP_MAIN_PATH.'Utils' .PATH_SEPARATOR |
158 |
| - .ONPHP_MAIN_PATH.'Utils'.DIRECTORY_SEPARATOR.'TuringTest'.PATH_SEPARATOR |
159 |
| - .ONPHP_MAIN_PATH.'Utils'.DIRECTORY_SEPARATOR.'Archivers'.PATH_SEPARATOR |
160 |
| - .ONPHP_MAIN_PATH.'Utils'.DIRECTORY_SEPARATOR.'IO'.PATH_SEPARATOR |
161 |
| - .ONPHP_MAIN_PATH.'Utils'.DIRECTORY_SEPARATOR.'Logging'.PATH_SEPARATOR |
162 |
| - .ONPHP_MAIN_PATH.'Utils'.DIRECTORY_SEPARATOR.'Mobile'.PATH_SEPARATOR |
163 |
| - .ONPHP_MAIN_PATH.'Utils'.DIRECTORY_SEPARATOR.'CommandLine'.PATH_SEPARATOR |
164 |
| - .ONPHP_MAIN_PATH.'Utils'.DIRECTORY_SEPARATOR.'Routers'.PATH_SEPARATOR |
| 142 | + ONPHP_MAIN_PATH.'UI', |
| 143 | + ONPHP_MAIN_PATH.'UI'.DIRECTORY_SEPARATOR.'View', |
| 144 | + |
| 145 | + ONPHP_MAIN_PATH.'Utils' , |
| 146 | + ONPHP_MAIN_PATH.'Utils'.DIRECTORY_SEPARATOR.'TuringTest', |
| 147 | + ONPHP_MAIN_PATH.'Utils'.DIRECTORY_SEPARATOR.'Archivers', |
| 148 | + ONPHP_MAIN_PATH.'Utils'.DIRECTORY_SEPARATOR.'IO', |
| 149 | + ONPHP_MAIN_PATH.'Utils'.DIRECTORY_SEPARATOR.'Logging', |
| 150 | + ONPHP_MAIN_PATH.'Utils'.DIRECTORY_SEPARATOR.'Mobile', |
| 151 | + ONPHP_MAIN_PATH.'Utils'.DIRECTORY_SEPARATOR.'CommandLine', |
| 152 | + ONPHP_MAIN_PATH.'Utils'.DIRECTORY_SEPARATOR.'Routers', |
165 | 153 |
|
166 |
| - .ONPHP_MAIN_PATH.'Utils'.DIRECTORY_SEPARATOR.'AMQP'.PATH_SEPARATOR |
167 |
| - .ONPHP_MAIN_PATH.'Utils'.DIRECTORY_SEPARATOR.'AMQP' |
168 |
| - .DIRECTORY_SEPARATOR.'Pecl'.PATH_SEPARATOR |
169 |
| - .ONPHP_MAIN_PATH.'Utils'.DIRECTORY_SEPARATOR.'AMQP' |
170 |
| - .DIRECTORY_SEPARATOR.'Exceptions'.PATH_SEPARATOR |
| 154 | + ONPHP_MAIN_PATH.'Utils'.DIRECTORY_SEPARATOR.'AMQP', |
| 155 | + ONPHP_MAIN_PATH.'Utils'.DIRECTORY_SEPARATOR.'AMQP' |
| 156 | + .DIRECTORY_SEPARATOR.'Pecl', |
| 157 | + ONPHP_MAIN_PATH.'Utils'.DIRECTORY_SEPARATOR.'AMQP' |
| 158 | + .DIRECTORY_SEPARATOR.'Exceptions', |
171 | 159 |
|
172 |
| - .ONPHP_MAIN_PATH.'Messages' .PATH_SEPARATOR |
173 |
| - .ONPHP_MAIN_PATH.'Messages'.DIRECTORY_SEPARATOR.'Interface'.PATH_SEPARATOR |
| 160 | + ONPHP_MAIN_PATH.'Messages' , |
| 161 | + ONPHP_MAIN_PATH.'Messages'.DIRECTORY_SEPARATOR.'Interface', |
174 | 162 |
|
175 |
| - .ONPHP_MAIN_PATH.'Application' .PATH_SEPARATOR |
| 163 | + ONPHP_MAIN_PATH.'Application' , |
176 | 164 |
|
177 |
| - .ONPHP_MAIN_PATH.'Charts'.PATH_SEPARATOR |
178 |
| - .ONPHP_MAIN_PATH.'Charts'.DIRECTORY_SEPARATOR.'Google'.PATH_SEPARATOR |
179 |
| - .ONPHP_MAIN_PATH.'Monitoring'.PATH_SEPARATOR |
| 165 | + ONPHP_MAIN_PATH.'Charts', |
| 166 | + ONPHP_MAIN_PATH.'Charts'.DIRECTORY_SEPARATOR.'Google', |
| 167 | + ONPHP_MAIN_PATH.'Monitoring', |
180 | 168 |
|
181 |
| - .ONPHP_META_CLASSES.PATH_SEPARATOR |
| 169 | + ONPHP_META_CLASSES, |
182 | 170 |
|
183 | 171 | /*
|
184 |
| - .ONPHP_INCUBATOR_PATH |
185 |
| - .'classes'.DIRECTORY_SEPARATOR |
186 |
| - .'Application'.DIRECTORY_SEPARATOR.PATH_SEPARATOR |
| 172 | + ONPHP_INCUBATOR_PATH |
| 173 | + .'classes'.DIRECTORY_SEPARATOR |
| 174 | + .'Application'.DIRECTORY_SEPARATOR, |
187 | 175 |
|
188 |
| - .ONPHP_INCUBATOR_PATH |
189 |
| - .'classes'.DIRECTORY_SEPARATOR |
190 |
| - .'Application'.DIRECTORY_SEPARATOR |
191 |
| - .'Markups'.DIRECTORY_SEPARATOR.PATH_SEPARATOR |
192 |
| - |
193 |
| - .ONPHP_INCUBATOR_PATH |
194 |
| - .'classes'.DIRECTORY_SEPARATOR |
195 |
| - .'Application'.DIRECTORY_SEPARATOR |
196 |
| - .'Markups'.DIRECTORY_SEPARATOR |
197 |
| - .'Documents'.DIRECTORY_SEPARATOR.PATH_SEPARATOR |
| 176 | + ONPHP_INCUBATOR_PATH |
| 177 | + .'classes'.DIRECTORY_SEPARATOR |
| 178 | + .'Application'.DIRECTORY_SEPARATOR |
| 179 | + .'Markups'.DIRECTORY_SEPARATOR, |
| 180 | + |
| 181 | + ONPHP_INCUBATOR_PATH |
| 182 | + .'classes'.DIRECTORY_SEPARATOR |
| 183 | + .'Application'.DIRECTORY_SEPARATOR |
| 184 | + .'Markups'.DIRECTORY_SEPARATOR |
| 185 | + .'Documents'.DIRECTORY_SEPARATOR, |
198 | 186 | */
|
199 |
| - ); |
| 187 | + )); |
200 | 188 |
|
201 | 189 | //NOTE: disable by default
|
202 | 190 | //see http://pgfoundry.org/docman/view.php/1000079/117/README.txt
|
|
0 commit comments