X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=doc%2FDocBookLocal.py;h=2bed21ab5e3091dc6326c5c1ed99e3707501d562;hb=be1560a0ece794e0f047e6e3c18d4b78ec746b15;hp=1eef1a28d2ca9dafeafcd79714fa7641060a308c;hpb=9209215079f81084e1ecf14661999ed4b12fde49;p=plcapi.git diff --git a/doc/DocBookLocal.py b/doc/DocBookLocal.py index 1eef1a2..2bed21a 100755 --- a/doc/DocBookLocal.py +++ b/doc/DocBookLocal.py @@ -1,11 +1,27 @@ #!/usr/bin/env python from PLC.API import PLCAPI +from PLC.Faults import PLCInvalidAPIMethod from DocBook import DocBook +import sys -def api_methods(): - api = PLCAPI(None) - methods = api.all_methods - return [api.callable(method) for method in methods] +api = PLCAPI(None) +methods = api.all_methods +methods.sort() +good_apis = [] +bad_apis = [] +for method in methods: + try: + good_api = api.callable(method) + good_apis.append(good_api) + except PLCInvalidAPIMethod as exc: + bad_apis.append((method, exc)) -DocBook(api_methods ()).Process() +DocBook(good_apis).Process() + +if bad_apis: + sys.stderr.write("UNEXPECTED: There are %d non-callable methods:\n" + % (len(bad_apis))) + for method, exc in bad_apis: + sys.stderr.write("\tmethod=<%s> exc=%s\n" % (method, exc)) + sys.exit(-1)