From 103cf31c6e047229b9a74ec26a42c09e1ac6ada9 Mon Sep 17 00:00:00 2001 From: Alan Conway Date: Fri, 26 Sep 2014 15:38:02 +0000 Subject: QPID-6118: Add qmf shutdown command to the broker QMF shutdown command implemented on broker. - ACL to control shutdown: acl deny all access method name=shutdown - Added "qpid-config shutdown" command to shut down the broker. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1627811 13f79535-47bb-0310-9956-ffa450edef68 --- qpid/tools/src/py/qpid-config | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) (limited to 'qpid/tools/src') diff --git a/qpid/tools/src/py/qpid-config b/qpid/tools/src/py/qpid-config index 3fc27ab241..ac93954484 100755 --- a/qpid/tools/src/py/qpid-config +++ b/qpid/tools/src/py/qpid-config @@ -28,7 +28,7 @@ import locale home = os.environ.get("QPID_TOOLS_HOME", os.path.normpath("/usr/share/qpid-tools")) sys.path.append(os.path.join(home, "python")) -from qpid.messaging import Connection +from qpid.messaging import Connection, ConnectionError from qpidtoollibs import BrokerAgent from qpidtoollibs import Display, Header @@ -47,7 +47,8 @@ Usage: qpid-config [OPTIONS] qpid-config [OPTIONS] reload-acl qpid-config [OPTIONS] add [--argument =] qpid-config [OPTIONS] del - qpid-config [OPTIONS] list [--show-property ]""" + qpid-config [OPTIONS] list [--show-property ] + qpid-config [OPTIONS] shutdown""" description = """ Examples: @@ -813,7 +814,12 @@ def main(argv=None): headers = [Header(a) for a in desired] rows = [tuple([_clean_ref(o.get(a, "n/a")) for a in desired]) for o in objects] display.formattedTable("Objects of type '%s'" % modifier, headers, rows) - + elif cmd == "shutdown": + try: + bm.broker._method("shutdown", {}) + except ConnectionError: + pass # Normal, the broker has been shut down! + bm.conn = None # Don't try to close again else: Usage() except KeyboardInterrupt: @@ -846,5 +852,5 @@ def main(argv=None): if __name__ == "__main__": - sys.exit(main()) + sys.exit(main()) -- cgit v1.2.1