Jason Gerard DeRose
|
912ab9e68b
|
Removed unneeded import of errors from plugable.py
|
2009-01-03 18:08:39 -07:00 |
|
Jason Gerard DeRose
|
bb6e9cfe9f
|
Plugin.call() now uses errors2 version of SubprocessError
|
2009-01-03 18:02:58 -07:00 |
|
Jason Gerard DeRose
|
6b6e6b1cab
|
Ported plugin registration errors into errors2.py; plugable.Registrar now raises new errors2 exceptions
|
2009-01-03 17:27:53 -07:00 |
|
Jason Gerard DeRose
|
72340a594d
|
Removed unneeded import of check_type, check_instance in plugable.py
|
2009-01-02 01:16:17 -07:00 |
|
Jason Gerard DeRose
|
b4dc333ee2
|
Removed depreciated code in ipalib.plugable that has been moving into ipalib.base
|
2009-01-02 00:46:45 -07:00 |
|
Jason Gerard DeRose
|
5b637f6a18
|
Removed depreciated code from config.py; removed corresponding unit tests
|
2008-12-22 15:41:24 -07:00 |
|
Jason Gerard DeRose
|
f82c48f775
|
Added note in Plugin.set_api() about Plugin.log attribute being depreciated
|
2008-12-21 19:58:48 -07:00 |
|
Jason Gerard DeRose
|
9d091c98f1
|
Plugin.__init__() now checks that subclass hasn't defined attributes that conflict with the logger methods; added corresponding unit test
|
2008-12-21 19:34:32 -07:00 |
|
Jason Gerard DeRose
|
4390523b7f
|
Improved Plugin.call() method and added its unit test
|
2008-12-21 17:12:00 -07:00 |
|
Jason Gerard DeRose
|
4f24f0fd88
|
Plugin.doc instance attribute is now parsed out using inspect.getdoc(); added Plugin.summary instance attribute, created in Plugin.__init__()
|
2008-12-17 23:08:52 -07:00 |
|
Jason Gerard DeRose
|
171ed58367
|
Removed Plugin.doc property and replaced with instance attribute created in Plugin.__init__()
|
2008-12-17 21:57:58 -07:00 |
|
Jason Gerard DeRose
|
69041c3b1b
|
Removed Plugin.name property and replaced with instance attribute created in Plugin.__init__()
|
2008-12-17 21:47:43 -07:00 |
|
Jason Gerard DeRose
|
2db738e899
|
Some changes to make reading dubugging output easier
|
2008-11-24 10:09:30 -07:00 |
|
Jason Gerard DeRose
|
c26a3c8542
|
Finished fist draft of plugin tutorial in ipalib/__init__.py docstring
|
2008-11-07 02:26:38 -07:00 |
|
Jason Gerard DeRose
|
5bdf860647
|
Added Plugin.call() method that calls an external executable via subprocess.call()
|
2008-11-06 11:57:21 -07:00 |
|
Jason Gerard DeRose
|
242a8183a7
|
Added custom log formatter util.LogFormatter that makes the human-readable time stamp in UTC
|
2008-10-31 20:25:33 -06:00 |
|
Jason Gerard DeRose
|
5e5a83e4e8
|
Renamed API.bootstrap_from_options() to bootstrap_with_global_options()
|
2008-10-31 19:03:07 -06:00 |
|
Jason Gerard DeRose
|
5269d1396c
|
Logging formats are now env variables; added log_format_stderr_debug format used when env.debug is True
|
2008-10-31 18:55:32 -06:00 |
|
Jason Gerard DeRose
|
a23d41a57f
|
Reoganized global option functionality to it is easy for any script to use the environment-related global options; lite-xmlrpc.py now uses same global options
|
2008-10-31 18:17:08 -06:00 |
|
Jason Gerard DeRose
|
cdfb7bfd5e
|
Logging is now configured in API.bootstrap(); removed depreciated util.configure_logging() function
|
2008-10-31 13:27:42 -06:00 |
|
Jason Gerard DeRose
|
140458cfc6
|
API.finalize() now cascades call to API.load_plugins()
|
2008-10-31 12:29:59 -06:00 |
|
Jason Gerard DeRose
|
3076cb4d2f
|
Plugin.set_api() now sets convience instance attributes from api for env, context, log, and all NameSpace
|
2008-10-30 14:11:24 -06:00 |
|
Jason Gerard DeRose
|
6879140db7
|
Added ipalib.plugins.f_misc with new 'context' Command; moved 'env' Command from cli to f_misc
|
2008-10-30 02:20:28 -06:00 |
|
Jason Gerard DeRose
|
ddb5449c7f
|
Did some initial work for Context plugins
|
2008-10-30 01:11:33 -06:00 |
|
Jason Gerard DeRose
|
fbcb55bd11
|
lite-xmlrpc.py now uses api.bootstrap() property, logs to api.logger
|
2008-10-28 02:10:56 -06:00 |
|
Jason Gerard DeRose
|
316bd855d5
|
Added util.configure_logging() function; API.bootstrap() now calls util.configure_logging()
|
2008-10-28 01:39:02 -06:00 |
|
Jason Gerard DeRose
|
83d6c95e46
|
API.load_plugins() no longer takes dry_run=False kwarg and instead checks in env.mode == 'unit_test' to decide whether to load the plugins; it also only loads ipa_server.plugins in env.in_server is True
|
2008-10-27 23:39:43 -06:00 |
|
Jason Gerard DeRose
|
bb9691099b
|
API.bootstrap() now calls Env._finalize_core(); updated unit tests
|
2008-10-27 15:36:41 -06:00 |
|
Jason Gerard DeRose
|
e6254026fe
|
Implemented basic CLI.bootstrap(); added corresponding unit tests
|
2008-10-27 15:19:49 -06:00 |
|
Jason Gerard DeRose
|
d76202fea3
|
API.env is now an Env instance rather than an Environment instance
|
2008-10-27 01:35:40 -06:00 |
|
Jason Gerard DeRose
|
03accc5fb3
|
Copied plugin loading function from load_plugins.py to util.py; API.load_plugins() method now calls functions in util
|
2008-10-27 00:23:43 -06:00 |
|
Jason Gerard DeRose
|
4fe03f5e17
|
Added API.load_plugins() place-holder, which cascades call to API.bootstrap()
|
2008-10-26 23:53:44 -06:00 |
|
Jason Gerard DeRose
|
6b8abb0d78
|
Implemented placeholder API.bootstrap() method; added API __doing(), __do_if_not_done(), isdone() methods borrowed from Env; API.finalize() now cascades call to API.bootstrap()
|
2008-10-26 23:28:06 -06:00 |
|
Jason Gerard DeRose
|
5e0a0fa745
|
In second example in NameSpace docstring, renamed 'member' class to 'Member' to make the example clearer
|
2008-10-21 08:47:08 -06:00 |
|
Jason Gerard DeRose
|
77a378bd61
|
Some PEP-257 and reStructuredText cleanup in plugable.py
|
2008-10-18 01:02:31 -06:00 |
|
Jason Gerard DeRose
|
f1eb74e22c
|
make-test now runs doctests also; fixed several broken doctests
|
2008-10-17 20:50:34 -06:00 |
|
Martin Nagy
|
3a80297b04
|
Reworking Environment, moved it to config.py
|
2008-10-17 23:11:51 +02:00 |
|
Jason Gerard DeRose
|
20fa90cfb6
|
Some small cleanup on Environment, filled in docstrings
|
2008-10-14 00:39:23 -06:00 |
|
Rob Crittenden
|
75bad44c27
|
Enable the verbose flag to pass thru xmlrpc
|
2008-10-10 05:23:00 -04:00 |
|
Martin Nagy
|
149429f305
|
Environment is now subclassed from object, rather then dict. Added tests for Environment and config.py
|
2008-10-02 17:22:41 -06:00 |
|
Martin Nagy
|
afdc721038
|
Add support for environment variables, change tests accordingly
|
2008-09-29 17:45:14 -06:00 |
|
Jason Gerard DeRose
|
023f612921
|
361: Implemented crud.Add.get_options() method; added corresponding unit tests
|
2008-09-25 02:13:16 +00:00 |
|
Jason Gerard DeRose
|
f531f7da81
|
354: Added NameSpace.__todict__() method that returns copy of NameSpace.__map; updated NameSpace unit test to also test __todict__()
|
2008-09-24 23:49:44 +00:00 |
|
Jason Gerard DeRose
|
3e70c3b56b
|
325: API.finalize() now creates instance attribtue 'plugins', which is a tuple of PluginInfo objects; renamed show_plugins cli command to namespaces; added new cli command plugins
|
2008-09-24 04:44:52 +00:00 |
|
Jason Gerard DeRose
|
19bbc48eb6
|
323: Added Command.run() method that dispatches to execute() or forward(); added corresponding unit tests
|
2008-09-24 02:52:19 +00:00 |
|
Jason Gerard DeRose
|
f3aaf65f1c
|
320: plugable.API now respects the Plugin.__proxy__ flag; added test for plugins without proxy to unit tests for API
|
2008-09-24 00:44:41 +00:00 |
|
Jason Gerard DeRose
|
b206ef6843
|
314: Completed some missing features in Command.__call__(); removed depreciated Command.print_call() method
|
2008-09-22 01:28:57 +00:00 |
|
Jason Gerard DeRose
|
f73d976bda
|
307: Split Plugin.finalize() into two steps 1) Plugin.set_api() and 2) Plugin.finalize(); updated unit tests
|
2008-09-21 21:50:56 +00:00 |
|
Jason Gerard DeRose
|
5872221bd4
|
306: Added Plugin.set_api() method; added corresponding unit tests
|
2008-09-21 21:30:19 +00:00 |
|
Jason Gerard DeRose
|
ef0d7a71ab
|
299: Cleaned up unit tests for ReadOnly class
|
2008-09-18 22:39:48 +00:00 |
|
Jason Gerard DeRose
|
81ebe078be
|
298: Cleaned up docstrings in ReadOnly methods
|
2008-09-18 22:01:04 +00:00 |
|
Jason Gerard DeRose
|
e524c826db
|
297: Added a better example in docstring for ReadOnly
|
2008-09-18 21:45:25 +00:00 |
|
Jason Gerard DeRose
|
14eb96493b
|
296: Added more to docstrings for NameSpace.__iter_() and NameSpace.__call__()
|
2008-09-18 21:23:05 +00:00 |
|
Jason Gerard DeRose
|
84a721d408
|
294: NameSpace no longer subclasses from DictProxy; NameSpace.__getitem__() now works with int and slice objects
|
2008-09-18 20:35:23 +00:00 |
|
Jason Gerard DeRose
|
0453aa465f
|
274: NameSpace.__init__() now takes sort=True keyword arument to allow for non-sorted NameSpaces; updated and improved NameSpace unit tests
|
2008-09-09 23:10:49 +00:00 |
|
Jason Gerard DeRose
|
13f030d91e
|
271: Improved __repr__ methods for better output from the show-plugins command
|
2008-09-08 21:51:05 +00:00 |
|
Jason Gerard DeRose
|
e74713a076
|
267: Finished builtin CLI api command
|
2008-09-08 21:37:02 +00:00 |
|
Jason Gerard DeRose
|
8b7fe7139d
|
228: plugable.check_name() now uses errors.check_type()
|
2008-09-02 17:29:01 +00:00 |
|
Jason Gerard DeRose
|
ab10f0843b
|
179: DictProxy now has __call__() method that iterates through the values; removed __call__() method from NameSpace as it subclasses from DictProxys; DictProxy unit tests now test __call__()
|
2008-08-15 05:19:02 +00:00 |
|
Jason Gerard DeRose
|
a24f2121d5
|
178: Registrar now subclasses from DictProxy; made Registrar.__iter__ behave same as the other container emulation in plugable.py, and made the dictorary interface return the base and the attribute interface return the MagicDict; updated API class and unit tests
|
2008-08-15 05:07:17 +00:00 |
|
Jason Gerard DeRose
|
5ed58fdb42
|
177: Docstring cleanup in NameSpace.__call__()
|
2008-08-15 03:45:07 +00:00 |
|
Jason Gerard DeRose
|
db8099febc
|
176: PluginProxy now subclasses from SetProxy
|
2008-08-15 03:41:17 +00:00 |
|
Jason Gerard DeRose
|
233293fb4a
|
175: Renamed Proxy to PluginProxy
|
2008-08-15 03:32:38 +00:00 |
|
Jason Gerard DeRose
|
ec0596b429
|
174: Fleshed out docstrings for SetProxy, DictProxy, and MagicDict
|
2008-08-15 03:24:37 +00:00 |
|
Jason Gerard DeRose
|
3e3b596f68
|
173: NameSpace now subclasses from DictProxy
|
2008-08-15 01:46:11 +00:00 |
|
Jason Gerard DeRose
|
1a92bdf29b
|
172: API now subclasses from DictProxy
|
2008-08-15 01:32:20 +00:00 |
|
Jason Gerard DeRose
|
e43a5c642e
|
171: MagicDict now subclasses from DictProxy; updated unit tests
|
2008-08-15 01:24:51 +00:00 |
|
Jason Gerard DeRose
|
f6c2181eeb
|
170: Added SetProxy and DictProxy classes to plugable so container emulation can be consolidated
|
2008-08-15 01:04:19 +00:00 |
|
Jason Gerard DeRose
|
88a5b3ae25
|
169: Renamed DictProxy to MagicDict
|
2008-08-14 23:49:36 +00:00 |
|
Jason Gerard DeRose
|
07cd537277
|
168: plugable.API now implements the all the usual container methods
|
2008-08-14 22:13:42 +00:00 |
|
Jason Gerard DeRose
|
5f38daf6de
|
167: In API.finalize(), lock(plugin) is used instead of plugin.__lock__(); more docstring improvements in plugable.py
|
2008-08-14 21:40:37 +00:00 |
|
Jason Gerard DeRose
|
d229a76474
|
165: Added unit tests for plugable.lock() function; replaced occurances of 'self.__lock__()' with 'lock(self)' in plugable.py
|
2008-08-14 20:32:35 +00:00 |
|
Jason Gerard DeRose
|
43c04f1cd3
|
163: Docstring improvement for ipalib/__init__.py and plugable.py
|
2008-08-14 19:36:54 +00:00 |
|
Jason Gerard DeRose
|
f423f2c9f0
|
162: Added link to container emulation documentation in plugable.py docstring
|
2008-08-14 18:59:12 +00:00 |
|
Jason Gerard DeRose
|
7c64c8b954
|
161: Registrar now takes advantage of DictProxy; updated corresponding unit tests
|
2008-08-14 18:50:21 +00:00 |
|
Jason Gerard DeRose
|
87cad5078a
|
160: DictProxy now checks type of d in __init__(); updated unit tests
|
2008-08-14 17:29:13 +00:00 |
|
Jason Gerard DeRose
|
b403fd822b
|
159: Added plugable.DictProxy class; added corresponding unit tests; added setitem(), delitem() functions to tstutil
|
2008-08-14 17:21:21 +00:00 |
|
Jason Gerard DeRose
|
ca53615ddd
|
158: Name local arg 'cls' to 'klass' in Registrar methods to avoid confusion with classmethods; some docstring improvement in Registrar
|
2008-08-14 09:38:28 +00:00 |
|
Jason Gerard DeRose
|
a3dc04ade4
|
157: More docstring cleanup; fixed remaining epydoc warnings
|
2008-08-14 09:01:02 +00:00 |
|
Jason Gerard DeRose
|
f0dfb9f873
|
156: Fixed all broken docstring cross references
|
2008-08-14 08:28:48 +00:00 |
|
Jason Gerard DeRose
|
8c27f4c2de
|
155: More docstring cleanup in plugable.py
|
2008-08-14 07:43:43 +00:00 |
|
Jason Gerard DeRose
|
00f4272662
|
154: Merged ProxyTarget functionality into Plugin to make things a bit clearer
|
2008-08-14 07:10:07 +00:00 |
|
Jason Gerard DeRose
|
a59d6698d2
|
153: Started cleaning up docstrings in Proxy and also experimented with restructuredtext formatting
|
2008-08-14 06:53:05 +00:00 |
|
Jason Gerard DeRose
|
ba8d32a110
|
150: NameSpace.__iter__() now iterates through the names, not the members; added NameSpace.__call__() method which iterates through the members; NameSpace no longer requires members to be Proxy instances; updated unit tests and affected code; cleaned up NameSpace docstrings and switch to epydoc param docstrings
|
2008-08-14 05:46:20 +00:00 |
|
Jason Gerard DeRose
|
0fed74b56d
|
138: Added ProxyTarget.doc property; CLI.print_commands() now uses cmd.doc instead of cmd.get_doc()
|
2008-08-13 02:34:36 +00:00 |
|
Jason Gerard DeRose
|
70cbe10624
|
124: Fixed case in example in ReadOnly class docstring
|
2008-08-12 23:45:36 +00:00 |
|
Jason Gerard DeRose
|
7db3aae1b2
|
123: API.finalize() now raises AssetionError if called more than once; added corresponding unit tests
|
2008-08-12 23:40:36 +00:00 |
|
Jason Gerard DeRose
|
b72cfa5dcc
|
121: Renamed API.__call__() method to API.finalize()
|
2008-08-12 22:52:37 +00:00 |
|
Jason Gerard DeRose
|
f767543fe7
|
120: Moved ProxyTarget below Proxy to emphasize relationship with Plugin; added docstrings for ProxyTarget.implements() and implemented_by() classmethods; fixed typo in Plugin.finalize() docstring
|
2008-08-12 22:40:06 +00:00 |
|
Jason Gerard DeRose
|
8640523632
|
119: Added ProxyTarget.implemented_by() classmethod; added corresponding unit tests
|
2008-08-12 21:45:54 +00:00 |
|
Jason Gerard DeRose
|
d7958f3fde
|
103: Fixed missing API.__keys assignment
|
2008-08-09 19:48:47 +00:00 |
|
Jason Gerard DeRose
|
0edb22c9ac
|
102: After the API instance calls plugin.finalize(), it also calls plugin.__lock__()
|
2008-08-09 19:39:58 +00:00 |
|
Jason Gerard DeRose
|
543aea31a4
|
101: Registrar now subclasses from ReadOnly
|
2008-08-09 19:33:13 +00:00 |
|
Jason Gerard DeRose
|
0e532cd7b3
|
100: Cleaned up NameSpace docstrings; cleanup up NameSpace unit tests
|
2008-08-09 19:28:01 +00:00 |
|
Jason Gerard DeRose
|
e756e12718
|
99: Cleaned up unit tests for plugable.Plugin
|
2008-08-09 19:09:10 +00:00 |
|
Jason Gerard DeRose
|
5315514f6c
|
98: Completed docstrings in Proxy
|
2008-08-09 18:58:46 +00:00 |
|
Jason Gerard DeRose
|
9712eae51c
|
97: Some whitespace and docstring cleanup; Plugin now subclasses from ProxyTarget
|
2008-08-09 05:19:40 +00:00 |
|
Jason Gerard DeRose
|
409f688ef5
|
96: Fixed typo is ReadOnly docstring
|
2008-08-09 04:37:37 +00:00 |
|
Jason Gerard DeRose
|
72f3132d2b
|
95: Improved docstrings for ReadOnly class; added ReadOnly.__islocked__() method; added corresponding unit tests
|
2008-08-09 04:35:06 +00:00 |
|
Jason Gerard DeRose
|
3495c67d57
|
94: Renamed Proxy._clone() method to Proxy.__clone__(); updated unit tests
|
2008-08-09 01:46:12 +00:00 |
|