X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=doc%2FDocBookLocal.py;h=317330e4b65b4b897e576b06a7252b8b71c5c1de;hb=c63e5f873b83934324631c46d90884d005675853;hp=1eef1a28d2ca9dafeafcd79714fa7641060a308c;hpb=9209215079f81084e1ecf14661999ed4b12fde49;p=plcapi.git diff --git a/doc/DocBookLocal.py b/doc/DocBookLocal.py index 1eef1a2..317330e 100755 --- a/doc/DocBookLocal.py +++ b/doc/DocBookLocal.py @@ -1,11 +1,26 @@ #!/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, e: + bad_apis.append((method,e)) -DocBook(api_methods ()).Process() +DocBook(good_apis).Process() + +if len(bad_apis): + sys.stderr.write("UNEXPECTED: There are %d non-callable methods:\n"%(len(bad_apis))) + for bad_api,e in bad_apis: + sys.stderr.write("\t%s:%s\n" % (bad_api,e)) + sys.exit(-1)