amps-python-client 5.3.4.2__zip → 5.3.4.4__zip
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/LICENSE +50 -39
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/PKG-INFO +1 -1
- amps-python-client-5.3.4.2/docs/user-guide/doctrees/chapters/file_format_versions.doctree → amps-python-client-5.3.4.4/docs/command-reference/doctrees/chapters/ack-messages.doctree +0 -0
- amps-python-client-5.3.4.4/docs/command-reference/doctrees/chapters/content-messages.doctree +0 -0
- amps-python-client-5.3.4.2/docs/command-reference/doctrees/chapters/ack-messages.doctree → amps-python-client-5.3.4.4/docs/command-reference/doctrees/chapters/intro.doctree +0 -0
- amps-python-client-5.3.4.2/docs/user-guide/doctrees/chapters/sow.doctree → amps-python-client-5.3.4.4/docs/command-reference/doctrees/chapters/logon.doctree +0 -0
- amps-python-client-5.3.4.4/docs/command-reference/doctrees/chapters/protocol-reference.doctree +0 -0
- amps-python-client-5.3.4.2/docs/command-reference/doctrees/chapters/logon.doctree → amps-python-client-5.3.4.4/docs/command-reference/doctrees/chapters/publishing.doctree +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/command-reference/doctrees/chapters/query-delimiters.doctree +0 -0
- amps-python-client-5.3.4.2/docs/command-reference/doctrees/chapters/content-messages.doctree → amps-python-client-5.3.4.4/docs/command-reference/doctrees/chapters/query-subscribe.doctree +0 -0
- amps-python-client-5.3.4.2/docs/user-guide/doctrees/chapters/conflated_topics.doctree → amps-python-client-5.3.4.4/docs/command-reference/doctrees/chapters/removing.doctree +0 -0
- amps-python-client-5.3.4.2/docs/user-guide/doctrees/chapters/auxiliary_modules.doctree → amps-python-client-5.3.4.4/docs/command-reference/doctrees/chapters/utilities.doctree +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/command-reference/doctrees/environment.pickle +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/command-reference/doctrees/index.doctree +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/command-reference/html/index.html +1 -1
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/command-reference/html/searchindex.js +1 -1
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/html/.buildinfo +1 -1
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/html/code.html +906 -484
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/html/genindex.html +62 -10
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/html/index.html +4 -4
- amps-python-client-5.3.4.4/docs/html/objects.inv +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/html/py-modindex.html +4 -4
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/html/search.html +4 -4
- amps-python-client-5.3.4.4/docs/html/searchindex.js +1 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/doctrees/chapters/advanced-topics.doctree +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/doctrees/chapters/cpp-compiler-list.doctree +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/doctrees/chapters/cpp-feature-table.doctree +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/doctrees/chapters/creating-commands.doctree +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/doctrees/chapters/deltas.doctree +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/doctrees/chapters/error-handling.doctree +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/doctrees/chapters/exceptions.doctree +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/doctrees/chapters/first-program.doctree +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/doctrees/chapters/high-availability.doctree +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/doctrees/chapters/installing.doctree +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/doctrees/chapters/introduction.doctree +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/doctrees/chapters/moving-from-python-lite.doctree +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/doctrees/chapters/performance-tips.doctree +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/doctrees/chapters/queues.doctree +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/doctrees/chapters/sow.doctree +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/doctrees/chapters/subscriptions.doctree +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/doctrees/chapters/utilities.doctree +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/doctrees/environment.pickle +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/doctrees/index.doctree +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/html/index.html +1 -1
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/html/searchindex.js +1 -1
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python-quickstart/doctrees/chapters/crankitup.doctree +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python-quickstart/doctrees/chapters/equipment.doctree +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python-quickstart/doctrees/environment.pickle +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python-quickstart/doctrees/index.doctree +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python-quickstart/html/index.html +1 -1
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python-quickstart/html/searchindex.js +1 -1
- amps-python-client-5.3.4.2/docs/user-guide/doctrees/chapters/delta.doctree → amps-python-client-5.3.4.4/docs/user-guide/doctrees/chapters/acks.doctree +0 -0
- amps-python-client-5.3.4.2/docs/user-guide/doctrees/chapters/glossary.doctree → amps-python-client-5.3.4.4/docs/user-guide/doctrees/chapters/actions.doctree +0 -0
- amps-python-client-5.3.4.2/docs/user-guide/doctrees/chapters/amps_expressions.doctree → amps-python-client-5.3.4.4/docs/user-guide/doctrees/chapters/amps-statistics.doctree +0 -0
- amps-python-client-5.3.4.2/docs/command-reference/doctrees/chapters/publishing.doctree → amps-python-client-5.3.4.4/docs/user-guide/doctrees/chapters/amps_expressions.doctree +0 -0
- amps-python-client-5.3.4.2/docs/user-guide/doctrees/chapters/troubleshooting.doctree → amps-python-client-5.3.4.4/docs/user-guide/doctrees/chapters/amps_functions.doctree +0 -0
- amps-python-client-5.3.4.4/docs/user-guide/doctrees/chapters/auxiliary_modules.doctree +0 -0
- amps-python-client-5.3.4.2/docs/command-reference/doctrees/chapters/query-subscribe.doctree → amps-python-client-5.3.4.4/docs/user-guide/doctrees/chapters/config-file-shortcuts.doctree +0 -0
- amps-python-client-5.3.4.4/docs/user-guide/doctrees/chapters/conflated_topics.doctree +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/doctrees/chapters/constructing-fields.doctree +0 -0
- amps-python-client-5.3.4.2/docs/user-guide/doctrees/chapters/actions.doctree → amps-python-client-5.3.4.4/docs/user-guide/doctrees/chapters/daemon.doctree +0 -0
- amps-python-client-5.3.4.2/docs/user-guide/doctrees/chapters/queues.doctree → amps-python-client-5.3.4.4/docs/user-guide/doctrees/chapters/delta.doctree +0 -0
- amps-python-client-5.3.4.2/docs/command-reference/doctrees/chapters/protocol-reference.doctree → amps-python-client-5.3.4.4/docs/user-guide/doctrees/chapters/distribution.doctree +0 -0
- amps-python-client-5.3.4.2/docs/user-guide/doctrees/chapters/replication.doctree → amps-python-client-5.3.4.4/docs/user-guide/doctrees/chapters/enrichment.doctree +0 -0
- amps-python-client-5.3.4.2/docs/user-guide/doctrees/chapters/logging.doctree → amps-python-client-5.3.4.4/docs/user-guide/doctrees/chapters/events.doctree +0 -0
- amps-python-client-5.3.4.2/docs/user-guide/doctrees/chapters/config-file-shortcuts.doctree → amps-python-client-5.3.4.4/docs/user-guide/doctrees/chapters/file_format_versions.doctree +0 -0
- amps-python-client-5.3.4.4/docs/user-guide/doctrees/chapters/glossary.doctree +0 -0
- amps-python-client-5.3.4.2/docs/user-guide/doctrees/chapters/oof.doctree → amps-python-client-5.3.4.4/docs/user-guide/doctrees/chapters/ha.doctree +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/doctrees/chapters/installing_and_starting.doctree +0 -0
- amps-python-client-5.3.4.2/docs/user-guide/doctrees/chapters/events.doctree → amps-python-client-5.3.4.4/docs/user-guide/doctrees/chapters/intro.doctree +0 -0
- amps-python-client-5.3.4.2/docs/user-guide/doctrees/chapters/securing.doctree → amps-python-client-5.3.4.4/docs/user-guide/doctrees/chapters/logging.doctree +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/doctrees/chapters/messageTypes.doctree +0 -0
- amps-python-client-5.3.4.4/docs/user-guide/doctrees/chapters/monitoring.doctree +0 -0
- amps-python-client-5.3.4.4/docs/user-guide/doctrees/chapters/oof.doctree +0 -0
- amps-python-client-5.3.4.2/docs/user-guide/doctrees/chapters/monitoring.doctree → amps-python-client-5.3.4.4/docs/user-guide/doctrees/chapters/operation.doctree +0 -0
- amps-python-client-5.3.4.2/docs/user-guide/doctrees/chapters/usecases.doctree → amps-python-client-5.3.4.4/docs/user-guide/doctrees/chapters/pub_sub.doctree +0 -0
- amps-python-client-5.3.4.2/docs/user-guide/doctrees/chapters/pub_sub.doctree → amps-python-client-5.3.4.4/docs/user-guide/doctrees/chapters/queues.doctree +0 -0
- amps-python-client-5.3.4.2/docs/user-guide/doctrees/chapters/distribution.doctree → amps-python-client-5.3.4.4/docs/user-guide/doctrees/chapters/replication.doctree +0 -0
- amps-python-client-5.3.4.2/docs/user-guide/doctrees/chapters/utilities.doctree → amps-python-client-5.3.4.4/docs/user-guide/doctrees/chapters/securing.doctree +0 -0
- amps-python-client-5.3.4.2/docs/user-guide/doctrees/chapters/acks.doctree → amps-python-client-5.3.4.4/docs/user-guide/doctrees/chapters/sow.doctree +0 -0
- amps-python-client-5.3.4.2/docs/command-reference/doctrees/chapters/intro.doctree → amps-python-client-5.3.4.4/docs/user-guide/doctrees/chapters/sow_queries.doctree +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/doctrees/chapters/spark.doctree +0 -0
- amps-python-client-5.3.4.2/docs/user-guide/doctrees/chapters/sow_queries.doctree → amps-python-client-5.3.4.4/docs/user-guide/doctrees/chapters/transports.doctree +0 -0
- amps-python-client-5.3.4.2/docs/command-reference/doctrees/chapters/utilities.doctree → amps-python-client-5.3.4.4/docs/user-guide/doctrees/chapters/troubleshooting.doctree +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/doctrees/chapters/txlog.doctree +0 -0
- amps-python-client-5.3.4.2/docs/user-guide/doctrees/chapters/operation.doctree → amps-python-client-5.3.4.4/docs/user-guide/doctrees/chapters/usecases.doctree +0 -0
- amps-python-client-5.3.4.2/docs/user-guide/doctrees/chapters/transports.doctree → amps-python-client-5.3.4.4/docs/user-guide/doctrees/chapters/utilities.doctree +0 -0
- amps-python-client-5.3.4.2/docs/user-guide/doctrees/chapters/daemon.doctree → amps-python-client-5.3.4.4/docs/user-guide/doctrees/chapters/views.doctree +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/doctrees/environment.pickle +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/doctrees/index.doctree +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/index.html +1 -1
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/searchindex.js +1 -1
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/include/ampspy_defs.hpp +11 -1
- amps-python-client-5.3.4.4/include/ampspy_ssl.hpp +31 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/include/ampspyver.h +1 -1
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/index.html +1 -1
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/setup.py +5 -5
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/setup_amps.py +12 -4
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/ampspy_shims.cpp +15 -5
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/client.cpp +24 -1
- amps-python-client-5.3.4.4/src/client_docs.h +1210 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/command_docs.h +10 -5
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/cpp/include/amps/BlockPublishStore.hpp +0 -3
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/cpp/include/amps/BlockStore.hpp +0 -3
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/cpp/include/amps/Field.hpp +6 -2
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/cpp/include/amps/HAClient.hpp +5 -1
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/cpp/include/amps/HAClientImpl.hpp +37 -18
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/cpp/include/amps/LoggedBookmarkStore.hpp +1 -1
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/cpp/include/amps/MMapStoreBuffer.hpp +24 -14
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/cpp/include/amps/MemoryBookmarkStore.hpp +54 -32
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/cpp/include/amps/MemoryStoreBuffer.hpp +4 -1
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/cpp/include/amps/Message.hpp +10 -1
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/cpp/include/amps/MessageRouter.hpp +8 -2
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/cpp/include/amps/ReconnectDelayStrategy.hpp +2 -2
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/cpp/include/amps/RingBookmarkStore.hpp +5 -2
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/cpp/include/amps/SOWRecoveryPointAdapter.hpp +15 -6
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/cpp/include/amps/ServerChooser.hpp +15 -4
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/cpp/include/amps/amps.h +14 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/cpp/include/amps/amps_impl.h +14 -1
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/cpp/include/amps/ampscrc.hpp +2 -4
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/cpp/include/amps/ampsplusplus.hpp +60 -35
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/cpp/include/amps/ampsver.h +2 -2
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/cpp/include/amps/util.hpp +77 -10
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/cpp/src/amps_protocol.c +64 -20
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/cpp/src/amps_ssl.c +207 -80
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/cpp/src/atfork.c +33 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/cpp/src/tcp.c +215 -49
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/cpp/src/tcps.c +357 -269
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/cpp/src/unix.c +93 -32
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/exponentialdelaystrategy.cpp +23 -29
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/fixeddelaystrategy.cpp +13 -12
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/haclient.cpp +1 -1
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/haclient_docs.h +34 -20
- amps-python-client-5.3.4.4/src/hybridpublishstore.cpp +275 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/memorypublishstore.cpp +141 -4
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/messagestream.cpp +8 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/nvfixbuilder.cpp +3 -3
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/nvfixbuilder_docs.h +3 -3
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/nvfixshredder_docs.h +3 -3
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/publishstore.cpp +128 -2
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/raw_wrapper.cpp +690 -20
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/serverchooser_docs.h +4 -4
- amps-python-client-5.3.4.2/docs/command-reference/doctrees/chapters/removing.doctree +0 -0
- amps-python-client-5.3.4.2/docs/html/objects.inv +0 -0
- amps-python-client-5.3.4.2/docs/html/searchindex.js +0 -1
- amps-python-client-5.3.4.2/docs/user-guide/doctrees/chapters/amps-statistics.doctree +0 -0
- amps-python-client-5.3.4.2/docs/user-guide/doctrees/chapters/amps_functions.doctree +0 -0
- amps-python-client-5.3.4.2/docs/user-guide/doctrees/chapters/enrichment.doctree +0 -0
- amps-python-client-5.3.4.2/docs/user-guide/doctrees/chapters/ha.doctree +0 -0
- amps-python-client-5.3.4.2/docs/user-guide/doctrees/chapters/intro.doctree +0 -0
- amps-python-client-5.3.4.2/docs/user-guide/doctrees/chapters/views.doctree +0 -0
- amps-python-client-5.3.4.2/src/client_docs.h +0 -956
- amps-python-client-5.3.4.2/src/hybridpublishstore.cpp +0 -137
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/HISTORY +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/README.md +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/command-reference/html/.buildinfo +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/command-reference/html/_sources/chapters/ack-messages.rst.txt +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/command-reference/html/_sources/chapters/content-messages.rst.txt +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/command-reference/html/_sources/chapters/intro.rst.txt +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/command-reference/html/_sources/chapters/logon.rst.txt +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/command-reference/html/_sources/chapters/protocol-reference.rst.txt +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/command-reference/html/_sources/chapters/publishing.rst.txt +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/command-reference/html/_sources/chapters/query-delimiters.rst.txt +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/command-reference/html/_sources/chapters/query-subscribe.rst.txt +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/command-reference/html/_sources/chapters/removing.rst.txt +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/command-reference/html/_sources/chapters/utilities.rst.txt +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/command-reference/html/_sources/index.rst.txt +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/command-reference/html/_static/ajax-loader.gif +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/command-reference/html/_static/alabaster.css +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/command-reference/html/_static/basic.css +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/command-reference/html/_static/comment-bright.png +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/command-reference/html/_static/comment-close.png +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/command-reference/html/_static/comment.png +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/command-reference/html/_static/custom.css +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/command-reference/html/_static/doctools.js +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/command-reference/html/_static/down-pressed.png +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/command-reference/html/_static/down.png +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/command-reference/html/_static/file.png +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/command-reference/html/_static/flag_logo.png +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/command-reference/html/_static/flag_logo.svg +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/command-reference/html/_static/jquery-3.1.0.js +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/command-reference/html/_static/jquery.js +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/command-reference/html/_static/minus.png +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/command-reference/html/_static/plus.png +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/command-reference/html/_static/pygments.css +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/command-reference/html/_static/searchtools.js +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/command-reference/html/_static/underscore-1.3.1.js +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/command-reference/html/_static/underscore.js +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/command-reference/html/_static/up-pressed.png +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/command-reference/html/_static/up.png +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/command-reference/html/_static/websupport.js +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/command-reference/html/chapters/ack-messages.html +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/command-reference/html/chapters/content-messages.html +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/command-reference/html/chapters/intro.html +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/command-reference/html/chapters/logon.html +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/command-reference/html/chapters/protocol-reference.html +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/command-reference/html/chapters/publishing.html +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/command-reference/html/chapters/query-delimiters.html +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/command-reference/html/chapters/query-subscribe.html +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/command-reference/html/chapters/removing.html +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/command-reference/html/chapters/utilities.html +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/command-reference/html/genindex.html +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/command-reference/html/objects.inv +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/command-reference/html/search.html +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/html/_sources/code.rst.txt +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/html/_sources/index.rst.txt +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/html/_static/ajax-loader.gif +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/html/_static/basic.css +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/html/_static/classic.css +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/html/_static/comment-bright.png +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/html/_static/comment-close.png +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/html/_static/comment.png +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/html/_static/default.css +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/html/_static/doctools.js +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/html/_static/down-pressed.png +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/html/_static/down.png +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/html/_static/file.png +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/html/_static/jquery-3.1.0.js +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/html/_static/jquery.js +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/html/_static/minus.png +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/html/_static/plus.png +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/html/_static/pygments.css +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/html/_static/searchtools.js +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/html/_static/sidebar.js +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/html/_static/underscore-1.3.1.js +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/html/_static/underscore.js +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/html/_static/up-pressed.png +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/html/_static/up.png +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/html/_static/websupport.js +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/html/.buildinfo +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/html/_images/caution.png +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/html/_images/caution.svg +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/html/_images/connection_string.svg +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/html/_images/important.png +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/html/_images/important.svg +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/html/_images/tip.png +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/html/_images/tip.svg +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/html/_images/warning.png +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/html/_sources/chapters/advanced-topics.rst.txt +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/html/_sources/chapters/cpp-compiler-list.rst.txt +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/html/_sources/chapters/cpp-feature-table.rst.txt +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/html/_sources/chapters/creating-commands.rst.txt +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/html/_sources/chapters/deltas.rst.txt +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/html/_sources/chapters/error-handling.rst.txt +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/html/_sources/chapters/exceptions.rst.txt +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/html/_sources/chapters/first-program.rst.txt +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/html/_sources/chapters/high-availability.rst.txt +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/html/_sources/chapters/installing.rst.txt +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/html/_sources/chapters/introduction.rst.txt +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/html/_sources/chapters/moving-from-python-lite.rst.txt +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/html/_sources/chapters/performance-tips.rst.txt +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/html/_sources/chapters/queues.rst.txt +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/html/_sources/chapters/sow.rst.txt +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/html/_sources/chapters/subscriptions.rst.txt +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/html/_sources/chapters/utilities.rst.txt +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/html/_sources/index.rst.txt +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/html/_static/ajax-loader.gif +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/html/_static/alabaster.css +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/html/_static/basic.css +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/html/_static/comment-bright.png +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/html/_static/comment-close.png +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/html/_static/comment.png +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/html/_static/custom.css +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/html/_static/doctools.js +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/html/_static/down-pressed.png +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/html/_static/down.png +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/html/_static/file.png +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/html/_static/flag_logo.png +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/html/_static/flag_logo.svg +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/html/_static/jquery-3.1.0.js +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/html/_static/jquery.js +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/html/_static/minus.png +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/html/_static/plus.png +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/html/_static/pygments.css +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/html/_static/searchtools.js +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/html/_static/underscore-1.3.1.js +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/html/_static/underscore.js +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/html/_static/up-pressed.png +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/html/_static/up.png +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/html/_static/websupport.js +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/html/chapters/advanced-topics.html +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/html/chapters/cpp-compiler-list.html +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/html/chapters/cpp-feature-table.html +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/html/chapters/creating-commands.html +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/html/chapters/deltas.html +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/html/chapters/error-handling.html +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/html/chapters/exceptions.html +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/html/chapters/first-program.html +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/html/chapters/high-availability.html +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/html/chapters/installing.html +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/html/chapters/introduction.html +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/html/chapters/moving-from-python-lite.html +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/html/chapters/performance-tips.html +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/html/chapters/queues.html +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/html/chapters/sow.html +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/html/chapters/subscriptions.html +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/html/chapters/utilities.html +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/html/genindex.html +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/html/objects.inv +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python/html/search.html +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python-quickstart/html/.buildinfo +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python-quickstart/html/_sources/chapters/crankitup.rst.txt +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python-quickstart/html/_sources/chapters/equipment.rst.txt +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python-quickstart/html/_sources/index.rst.txt +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python-quickstart/html/_static/ajax-loader.gif +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python-quickstart/html/_static/alabaster.css +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python-quickstart/html/_static/basic.css +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python-quickstart/html/_static/comment-bright.png +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python-quickstart/html/_static/comment-close.png +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python-quickstart/html/_static/comment.png +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python-quickstart/html/_static/custom.css +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python-quickstart/html/_static/doctools.js +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python-quickstart/html/_static/down-pressed.png +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python-quickstart/html/_static/down.png +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python-quickstart/html/_static/file.png +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python-quickstart/html/_static/flag_logo.png +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python-quickstart/html/_static/flag_logo.svg +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python-quickstart/html/_static/jquery-3.1.0.js +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python-quickstart/html/_static/jquery.js +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python-quickstart/html/_static/minus.png +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python-quickstart/html/_static/plus.png +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python-quickstart/html/_static/pygments.css +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python-quickstart/html/_static/searchtools.js +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python-quickstart/html/_static/underscore-1.3.1.js +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python-quickstart/html/_static/underscore.js +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python-quickstart/html/_static/up-pressed.png +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python-quickstart/html/_static/up.png +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python-quickstart/html/_static/websupport.js +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python-quickstart/html/chapters/crankitup.html +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python-quickstart/html/chapters/equipment.html +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python-quickstart/html/genindex.html +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python-quickstart/html/objects.inv +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/python-quickstart/html/search.html +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/resources/custom.css +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/resources/flag_logo.svg +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/.buildinfo +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/_sources/chapters/acks.rst.txt +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/_sources/chapters/actions.rst.txt +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/_sources/chapters/amps-statistics.rst.txt +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/_sources/chapters/amps_expressions.rst.txt +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/_sources/chapters/amps_functions.rst.txt +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/_sources/chapters/auxiliary_modules.rst.txt +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/_sources/chapters/config-file-shortcuts.rst.txt +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/_sources/chapters/conflated_topics.rst.txt +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/_sources/chapters/constructing-fields.rst.txt +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/_sources/chapters/daemon.rst.txt +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/_sources/chapters/delta.rst.txt +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/_sources/chapters/distribution.rst.txt +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/_sources/chapters/enrichment.rst.txt +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/_sources/chapters/events.rst.txt +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/_sources/chapters/file_format_versions.rst.txt +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/_sources/chapters/glossary.rst.txt +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/_sources/chapters/ha.rst.txt +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/_sources/chapters/installing_and_starting.rst.txt +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/_sources/chapters/intro.rst.txt +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/_sources/chapters/logging.rst.txt +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/_sources/chapters/messageTypes.rst.txt +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/_sources/chapters/monitoring.rst.txt +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/_sources/chapters/oof.rst.txt +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/_sources/chapters/operation.rst.txt +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/_sources/chapters/pub_sub.rst.txt +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/_sources/chapters/queues.rst.txt +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/_sources/chapters/replication.rst.txt +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/_sources/chapters/securing.rst.txt +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/_sources/chapters/sow.rst.txt +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/_sources/chapters/sow_queries.rst.txt +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/_sources/chapters/spark.rst.txt +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/_sources/chapters/transports.rst.txt +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/_sources/chapters/troubleshooting.rst.txt +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/_sources/chapters/txlog.rst.txt +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/_sources/chapters/usecases.rst.txt +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/_sources/chapters/utilities.rst.txt +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/_sources/chapters/views.rst.txt +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/_sources/index.rst.txt +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/_static/ajax-loader.gif +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/_static/alabaster.css +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/_static/basic.css +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/_static/comment-bright.png +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/_static/comment-close.png +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/_static/comment.png +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/_static/custom.css +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/_static/doctools.js +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/_static/down-pressed.png +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/_static/down.png +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/_static/file.png +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/_static/flag_logo.png +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/_static/flag_logo.svg +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/_static/jquery-3.1.0.js +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/_static/jquery.js +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/_static/minus.png +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/_static/plus.png +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/_static/pygments.css +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/_static/searchtools.js +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/_static/underscore-1.3.1.js +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/_static/underscore.js +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/_static/up-pressed.png +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/_static/up.png +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/_static/websupport.js +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/chapters/acks.html +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/chapters/actions.html +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/chapters/amps-statistics.html +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/chapters/amps_expressions.html +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/chapters/amps_functions.html +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/chapters/auxiliary_modules.html +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/chapters/config-file-shortcuts.html +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/chapters/conflated_topics.html +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/chapters/constructing-fields.html +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/chapters/daemon.html +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/chapters/delta.html +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/chapters/distribution.html +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/chapters/enrichment.html +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/chapters/events.html +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/chapters/file_format_versions.html +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/chapters/glossary.html +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/chapters/ha.html +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/chapters/installing_and_starting.html +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/chapters/intro.html +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/chapters/logging.html +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/chapters/messageTypes.html +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/chapters/monitoring.html +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/chapters/oof.html +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/chapters/operation.html +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/chapters/pub_sub.html +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/chapters/queues.html +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/chapters/replication.html +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/chapters/securing.html +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/chapters/sow.html +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/chapters/sow_queries.html +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/chapters/spark.html +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/chapters/transports.html +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/chapters/troubleshooting.html +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/chapters/txlog.html +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/chapters/usecases.html +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/chapters/utilities.html +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/chapters/views.html +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/genindex.html +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/objects.inv +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/docs/user-guide/html/search.html +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/include/ampspy_bookmarkstore.hpp +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/include/ampspy_compat.h +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/include/ampspy_recoverypointadapter.hpp +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/include/ampspy_shims.hpp +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/include/ampspy_type_object.hpp +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/include/ampspy_types.hpp +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/samples/AMPSConsolePublisher.py +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/samples/AMPSConsoleSubscriber.py +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/samples/AMPSFIXBuilderPublisher.py +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/samples/AMPSFIXShredderSubscriber.py +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/samples/AMPSNVFIXBuilderPublisher.py +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/samples/AMPSNVFIXShredderSubscriber.py +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/samples/AMPSPublishForReplay.py +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/samples/AMPSQueueConsumer.py +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/samples/AMPSQueuePublisher.py +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/samples/AMPSSOWConsolePublisher.py +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/samples/AMPSSOWConsoleSubscriber.py +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/samples/AMPSSOWandSubscribeConsoleSubscriber.py +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/samples/AMPSSOWandSubscribeWithOOF.py +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/samples/AMPSSubscribeForReplay.py +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/samples/AMPSUpdateForOOF.py +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/samples/CompositeMessagePublisher.py +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/samples/CompositeMessageSubscriber.py +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/samples/RandomServerChooser.py +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/samples/sample.xml +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/ampspy_type_object.cpp +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/authenticator.cpp +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/bookmarkstore.cpp +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/cmessagehandler.cpp +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/command.cpp +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/compositemessagebuilder.cpp +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/compositemessageparser.cpp +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/conflatingrecoverypointadapter.cpp +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/cpp/include/amps/BookmarkStore.hpp +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/cpp/include/amps/Buffer.hpp +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/cpp/include/amps/CompositeMessageBuilder.hpp +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/cpp/include/amps/CompositeMessageParser.hpp +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/cpp/include/amps/DefaultServerChooser.hpp +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/cpp/include/amps/HybridPublishStore.hpp +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/cpp/include/amps/MMapBookmarkStore.hpp +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/cpp/include/amps/MemoryPublishStore.hpp +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/cpp/include/amps/MemorySubscriptionManager.hpp +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/cpp/include/amps/PublishStore.hpp +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/cpp/include/amps/ReconnectDelayStrategyImpl.hpp +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/cpp/include/amps/RecoveryPoint.hpp +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/cpp/include/amps/RecoveryPointAdapter.hpp +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/cpp/include/amps/ServerChooserImpl.hpp +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/cpp/include/amps/amps_generated.h +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/cpp/include/amps/amps_ssl.h +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/cpp/include/amps/ampsuri.h +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/cpp/include/amps/ampsver.h.in +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/cpp/include/amps/constants.hpp +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/cpp/src/amps_protocol_generated.h +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/cpp/src/client.c +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/cpp/src/makefile +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/cpp/src/message.c +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/cpp/src/message_generated.h +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/cpp/src/transports.c +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/cpp/src/uri.c +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/failedwritehandler.cpp +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/fixbuilder.cpp +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/fixshredder.cpp +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/fixshredder_docs.h +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/hybridpublishstore_docs.h +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/memorybookmarkstore.cpp +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/memorybookmarkstore_docs.h +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/memorypublishstore_docs.h +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/message.cpp +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/message_docs.h +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/messagestream_docs.h +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/mmapbookmarkstore.cpp +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/nvfixshredder.cpp +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/reason.cpp +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/recoverypoint.cpp +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/recoverypointadapter.cpp +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/ringbookmarkstore.cpp +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/serverchooser.cpp +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/sowrecoverypointadapter.cpp +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/store.cpp +0 -0
- {amps-python-client-5.3.4.2 → amps-python-client-5.3.4.4}/src/versioninfo.cpp +0 -0
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
<head>
|
|
7
7
|
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
|
8
8
|
|
|
9
|
-
<title>AMPS Module Reference — AMPS Python Client 5.3.4.
|
|
9
|
+
<title>AMPS Module Reference — AMPS Python Client 5.3.4.4 documentation</title>
|
|
10
10
|
|
|
11
11
|
<link rel="stylesheet" href="_static/classic.css" type="text/css" />
|
|
12
12
|
<link rel="stylesheet" href="_static/pygments.css" type="text/css" />
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
<script type="text/javascript">
|
|
15
15
|
var DOCUMENTATION_OPTIONS = {
|
|
16
16
|
URL_ROOT: './',
|
|
17
|
-
VERSION: '5.3.4.
|
|
17
|
+
VERSION: '5.3.4.4',
|
|
18
18
|
COLLAPSE_INDEX: false,
|
|
19
19
|
FILE_SUFFIX: '.html',
|
|
20
20
|
HAS_SOURCE: true,
|
|
@@ -41,7 +41,7 @@
|
|
|
41
41
|
<li class="right" >
|
|
42
42
|
<a href="index.html" title="AMPS Python Client Reference"
|
|
43
43
|
accesskey="P">previous</a> |</li>
|
|
44
|
-
<li class="nav-item nav-item-0"><a href="index.html">AMPS Python Client 5.3.4.
|
|
44
|
+
<li class="nav-item nav-item-0"><a href="index.html">AMPS Python Client 5.3.4.4 documentation</a> »</li>
|
|
45
45
|
</ul>
|
|
46
46
|
</div>
|
|
47
47
|
|
|
@@ -153,32 +153,41 @@ a function of a different signature than that shown, results in undefined behavi
|
|
|
153
153
|
|
|
154
154
|
<dl class="class">
|
|
155
155
|
<dt id="AMPS.Client">
|
|
156
|
-
<em class="property">class </em><code class="descclassname">AMPS.</code><code class="descname">Client</code><a class="headerlink" href="#AMPS.Client" title="Permalink to this definition">¶</a></dt>
|
|
156
|
+
<em class="property">class </em><code class="descclassname">AMPS.</code><code class="descname">Client</code><span class="sig-paren">(</span><em>name</em><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.Client" title="Permalink to this definition">¶</a></dt>
|
|
157
157
|
<dd><p>Bases: <code class="xref py py-class docutils literal"><span class="pre">object</span></code></p>
|
|
158
|
-
<
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
<
|
|
163
|
-
|
|
164
|
-
|
|
158
|
+
<p>The base AMPS Client object used in AMPS applications. Each Client
|
|
159
|
+
object manages a single connection to AMPS. Each AMPS connection has
|
|
160
|
+
a name, a specific transport (such as tcp), a protocol (used for framing
|
|
161
|
+
messages to AMPS), and a message type (such as FIX or JSON).</p>
|
|
162
|
+
<p>The Client object creates and manages a background thread, and sends and
|
|
163
|
+
receives messages on that thread. The object provides both a synchronous
|
|
164
|
+
interface for processing messages on the calling thread, and an
|
|
165
|
+
asynchronous interface suitable for populating a queue to be processed by
|
|
166
|
+
worker threads.</p>
|
|
167
|
+
<p>Each Client has a name. The AMPS server uses this name for duplicate
|
|
168
|
+
message detection, so the name of each instance of the client application
|
|
169
|
+
should be unique.</p>
|
|
170
|
+
<p>An example of a Python client publishing a JSON message is listed below:</p>
|
|
171
|
+
<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">client</span> <span class="o">=</span> <span class="n">AMPS</span><span class="o">.</span><span class="n">Client</span><span class="p">(</span><span class="s2">"test_client"</span><span class="p">)</span>
|
|
165
172
|
|
|
166
173
|
<span class="k">try</span><span class="p">:</span>
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
174
|
+
<span class="n">client</span><span class="o">.</span><span class="n">connect</span><span class="p">(</span><span class="s2">"tcp://127.0.0.1:9004/amps/json"</span><span class="p">)</span>
|
|
175
|
+
<span class="n">client</span><span class="o">.</span><span class="n">logon</span><span class="p">()</span>
|
|
176
|
+
<span class="n">client</span><span class="o">.</span><span class="n">publish</span><span class="p">(</span><span class="s2">"topic_name"</span><span class="p">,</span><span class="s1">'{"a":1,"b":"2"}'</span><span class="p">)</span>
|
|
170
177
|
<span class="k">finally</span><span class="p">:</span>
|
|
171
|
-
|
|
178
|
+
<span class="n">client</span><span class="o">.</span><span class="n">close</span><span class="p">()</span>
|
|
172
179
|
</pre></div>
|
|
173
180
|
</div>
|
|
174
|
-
|
|
175
|
-
</div></blockquote>
|
|
176
|
-
<p>Constructor arguments:</p>
|
|
181
|
+
<p><strong>Constructor Arguments:</strong></p>
|
|
177
182
|
<table class="docutils field-list" frame="void" rules="none">
|
|
178
183
|
<col class="field-name" />
|
|
179
184
|
<col class="field-body" />
|
|
180
185
|
<tbody valign="top">
|
|
181
|
-
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>name</strong> –
|
|
186
|
+
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>name</strong> – The unique name for this client. AMPS does not enforce
|
|
187
|
+
specific restrictions on the character set used, however some protocols
|
|
188
|
+
(for example, XML) may not allow specific characters. 60East recommends
|
|
189
|
+
that the client name be meaningful, short, human readable, and avoid
|
|
190
|
+
using control characters, newline characters, or square brackets.</td>
|
|
182
191
|
</tr>
|
|
183
192
|
</tbody>
|
|
184
193
|
</table>
|
|
@@ -189,12 +198,14 @@ a function of a different signature than that shown, results in undefined behavi
|
|
|
189
198
|
<p>This class provides special values for bookmark subscriptions:</p>
|
|
190
199
|
<blockquote>
|
|
191
200
|
<div><ul class="simple">
|
|
192
|
-
<li><code class="docutils literal"><span class="pre">EPOCH</span></code>
|
|
193
|
-
<li><code class="docutils literal"><span class="pre">MOST_RECENT</span></code>
|
|
194
|
-
<li><code class="docutils literal"><span class="pre">NOW</span></code>
|
|
201
|
+
<li><code class="docutils literal"><span class="pre">EPOCH</span></code> - Begin the subscription at the beginning of the journal.</li>
|
|
202
|
+
<li><code class="docutils literal"><span class="pre">MOST_RECENT</span></code> - Begin the subscription at the first undiscarded message in the bookmark store, or at the end of the bookmark store if all messages have been discarded.</li>
|
|
203
|
+
<li><code class="docutils literal"><span class="pre">NOW</span></code> - Begin the subscription at the time that AMPS processes the subscription.</li>
|
|
195
204
|
</ul>
|
|
196
205
|
</div></blockquote>
|
|
197
|
-
<p>For example, to begin a bookmark subscription at the beginning of the journal,
|
|
206
|
+
<p>For example, to begin a bookmark subscription at the beginning of the journal,
|
|
207
|
+
provide <code class="docutils literal"><span class="pre">AMPS.Client.Bookmarks.EPOCH</span></code> as the bookmark in the call to
|
|
208
|
+
<a class="reference internal" href="#AMPS.Client.bookmark_subscribe" title="AMPS.Client.bookmark_subscribe"><code class="xref py py-meth docutils literal"><span class="pre">AMPS.Client.bookmark_subscribe()</span></code></a>.</p>
|
|
198
209
|
</dd></dl>
|
|
199
210
|
|
|
200
211
|
<dl class="class">
|
|
@@ -207,11 +218,21 @@ a function of a different signature than that shown, results in undefined behavi
|
|
|
207
218
|
<dl class="method">
|
|
208
219
|
<dt id="AMPS.Client.ack">
|
|
209
220
|
<code class="descclassname">Client.</code><code class="descname">ack</code><span class="sig-paren">(</span><em>message</em>, <em>options=None) OR ack(topic</em>, <em>bookmark</em>, <em>options=None</em><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.Client.ack" title="Permalink to this definition">¶</a></dt>
|
|
210
|
-
<dd><p>
|
|
211
|
-
<
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
221
|
+
<dd><p>Acknowledges a message queue message.</p>
|
|
222
|
+
<table class="docutils field-list" frame="void" rules="none">
|
|
223
|
+
<col class="field-name" />
|
|
224
|
+
<col class="field-body" />
|
|
225
|
+
<tbody valign="top">
|
|
226
|
+
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
|
|
227
|
+
<li><strong>message</strong> – An <code class="docutils literal"><span class="pre">AMPS.Message</span></code> object to ack, OR</li>
|
|
228
|
+
<li><strong>topic</strong> – The topic of the message to ack.</li>
|
|
229
|
+
<li><strong>bookmark</strong> – The bookmark of the message to ack.</li>
|
|
230
|
+
<li><strong>options</strong> – An optional string to include in the ack such as ‘cancel’.</li>
|
|
231
|
+
</ul>
|
|
232
|
+
</td>
|
|
233
|
+
</tr>
|
|
234
|
+
</tbody>
|
|
235
|
+
</table>
|
|
215
236
|
</dd></dl>
|
|
216
237
|
|
|
217
238
|
<dl class="method">
|
|
@@ -222,7 +243,10 @@ a function of a different signature than that shown, results in undefined behavi
|
|
|
222
243
|
<col class="field-name" />
|
|
223
244
|
<col class="field-body" />
|
|
224
245
|
<tbody valign="top">
|
|
225
|
-
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>listener_callable</strong> (<em>A python function</em><em> or </em><em>other callable that takes a single value
|
|
246
|
+
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>listener_callable</strong> (<em>A python function</em><em> or </em><em>other callable that takes a single value.</em>) – The function or callable to be called. This function will be passed True if a
|
|
247
|
+
connection is established, False if a disconnect occurs. Notice that when a connection
|
|
248
|
+
is established, the client has not yet logged in or completed any recovery steps.
|
|
249
|
+
The application should not issue commands on the client until recovery is completed.</td>
|
|
226
250
|
</tr>
|
|
227
251
|
</tbody>
|
|
228
252
|
</table>
|
|
@@ -231,19 +255,18 @@ a function of a different signature than that shown, results in undefined behavi
|
|
|
231
255
|
<dl class="method">
|
|
232
256
|
<dt id="AMPS.Client.add_message_handler">
|
|
233
257
|
<code class="descclassname">Client.</code><code class="descname">add_message_handler</code><span class="sig-paren">(</span><em>command_id</em>, <em>message_handler</em>, <em>acks</em>, <em>is_subscribe</em><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.Client.add_message_handler" title="Permalink to this definition">¶</a></dt>
|
|
234
|
-
<dd><
|
|
235
|
-
|
|
236
|
-
requested acks sent in response to the given command_id.</div></blockquote>
|
|
258
|
+
<dd><p>Add a message handler to the <a class="reference internal" href="#AMPS.Client" title="AMPS.Client"><code class="xref py py-class docutils literal"><span class="pre">Client</span></code></a> to handle messages and the
|
|
259
|
+
requested acknowledgments sent in response to the given <code class="docutils literal"><span class="pre">command_id</span></code>.</p>
|
|
237
260
|
<table class="docutils field-list" frame="void" rules="none">
|
|
238
261
|
<col class="field-name" />
|
|
239
262
|
<col class="field-body" />
|
|
240
263
|
<tbody valign="top">
|
|
241
264
|
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
|
|
242
|
-
<li><strong>command_id</strong> (<em>str</em>) – The command, query, or sub
|
|
265
|
+
<li><strong>command_id</strong> (<em>str</em>) – The command, query, or sub ID for messages and acks.</li>
|
|
243
266
|
<li><strong>message_handler</strong> (<code class="xref py py-class docutils literal"><span class="pre">MessageHandler</span></code>) – The message handler that will receive messages
|
|
244
|
-
for the command_id
|
|
245
|
-
<li><strong>acks</strong> (<em>
|
|
246
|
-
<li><strong>is_subscribe</strong> (<em>int</em>) – If the message_handler is for a subscribe command.</li>
|
|
267
|
+
for the <code class="docutils literal"><span class="pre">command_id</span></code>.</li>
|
|
268
|
+
<li><strong>acks</strong> (<em>str</em>) – The acknowledgments requested to go to the <code class="docutils literal"><span class="pre">message_handler</span></code>.</li>
|
|
269
|
+
<li><strong>is_subscribe</strong> (<em>int</em>) – If the <code class="docutils literal"><span class="pre">message_handler</span></code> is for a subscribe command.</li>
|
|
247
270
|
</ul>
|
|
248
271
|
</td>
|
|
249
272
|
</tr>
|
|
@@ -260,11 +283,8 @@ for the command_id.</li>
|
|
|
260
283
|
<dl class="method">
|
|
261
284
|
<dt id="AMPS.Client.allocate_message">
|
|
262
285
|
<code class="descclassname">Client.</code><code class="descname">allocate_message</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.Client.allocate_message" title="Permalink to this definition">¶</a></dt>
|
|
263
|
-
<dd><
|
|
264
|
-
<
|
|
265
|
-
<blockquote>
|
|
266
|
-
<div>This function should be called rarely, since it does allocate a handful of small objects.</div></blockquote>
|
|
267
|
-
</div></blockquote>
|
|
286
|
+
<dd><p>Creates a new <a class="reference internal" href="#AMPS.Message" title="AMPS.Message"><code class="xref py py-class docutils literal"><span class="pre">Message</span></code></a> appropriate for this client.</p>
|
|
287
|
+
<p>This function should be called rarely, since it does allocate a handful of small objects.</p>
|
|
268
288
|
<table class="docutils field-list" frame="void" rules="none">
|
|
269
289
|
<col class="field-name" />
|
|
270
290
|
<col class="field-body" />
|
|
@@ -277,31 +297,43 @@ for the command_id.</li>
|
|
|
277
297
|
|
|
278
298
|
<dl class="method">
|
|
279
299
|
<dt id="AMPS.Client.bookmark_subscribe">
|
|
280
|
-
<code class="descclassname">Client.</code><code class="descname">bookmark_subscribe</code><span class="sig-paren">(</span><
|
|
281
|
-
<dd><
|
|
282
|
-
<
|
|
283
|
-
<
|
|
284
|
-
|
|
285
|
-
</
|
|
286
|
-
</
|
|
300
|
+
<code class="descclassname">Client.</code><code class="descname">bookmark_subscribe</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.Client.bookmark_subscribe" title="Permalink to this definition">¶</a></dt>
|
|
301
|
+
<dd><p><strong>Signatures</strong>:</p>
|
|
302
|
+
<ul>
|
|
303
|
+
<li><p class="first"><code class="docutils literal"><span class="pre">Client.bookmark_subscribe(on_message,</span> <span class="pre">topic,</span> <span class="pre">bookmark,</span> <span class="pre">filter=None,</span> <span class="pre">sub_id=None,</span> <span class="pre">options=None,</span> <span class="pre">timeout=0)</span></code></p>
|
|
304
|
+
</li>
|
|
305
|
+
<li><p class="first"><code class="docutils literal"><span class="pre">Client.bookmark_subscribe(topic,</span> <span class="pre">bookmark,</span> <span class="pre">filter=None,</span> <span class="pre">sub_id=None,</span> <span class="pre">options=None,</span> <span class="pre">timeout=0)</span></code></p>
|
|
306
|
+
<p>Places a bookmark subscription with AMPS. Starts replay at the most recent message reported by the <code class="docutils literal"><span class="pre">bookmark</span></code> parameter.</p>
|
|
307
|
+
<p>There are two ways to use this method:</p>
|
|
308
|
+
<ol class="arabic simple">
|
|
309
|
+
<li>When a message handler is provided, this method submits the <code class="docutils literal"><span class="pre">bookmark_subscribe</span></code> command on a background
|
|
310
|
+
thread and calls the message handler with individual messages from the transaction log replay (if any) and
|
|
311
|
+
then cuts over to live messages that match the subscription.</li>
|
|
312
|
+
<li>When no message handler is provided, this method returns a message stream that can be iterated on to process
|
|
313
|
+
messages received from the transaction log replay (if any) and then cuts over to live messages that match
|
|
314
|
+
the subscription.</li>
|
|
315
|
+
</ol>
|
|
316
|
+
</li>
|
|
317
|
+
</ul>
|
|
287
318
|
<table class="docutils field-list" frame="void" rules="none">
|
|
288
319
|
<col class="field-name" />
|
|
289
320
|
<col class="field-body" />
|
|
290
321
|
<tbody valign="top">
|
|
291
322
|
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
|
|
292
|
-
<li><strong>on_message</strong> (<code class="xref py py-class docutils literal"><span class="pre">MessageHandler</span></code>) – The message handler to invoke with matching messages
|
|
293
|
-
|
|
294
|
-
<li><strong>
|
|
295
|
-
<
|
|
323
|
+
<li><strong>on_message</strong> (<code class="xref py py-class docutils literal"><span class="pre">MessageHandler</span></code>) – The message handler to invoke with matching messages
|
|
324
|
+
(specified only in the case where async processing is used).</li>
|
|
325
|
+
<li><strong>topic</strong> (<em>str</em>) – The topic to subscribe to.</li>
|
|
326
|
+
<li><strong>bookmark</strong> (<em>str</em>) – A bookmark identifier or one of the constants from
|
|
327
|
+
<a class="reference internal" href="#AMPS.Client.Bookmarks" title="AMPS.Client.Bookmarks"><code class="xref py py-class docutils literal"><span class="pre">Bookmarks</span></code></a>.</li>
|
|
296
328
|
<li><strong>filter</strong> (<em>str</em>) – The filter.</li>
|
|
297
|
-
<li><strong>sub_id</strong> (<em>str</em>) – The subscription ID.
|
|
329
|
+
<li><strong>sub_id</strong> (<em>str</em>) – The subscription ID. You may optionally provide a
|
|
298
330
|
subscription ID to ease recovery scenarios, instead of having the
|
|
299
331
|
system automatically generate one for you.
|
|
300
332
|
When used with the ‘replace’ option, this is the subscription to
|
|
301
333
|
be replaced.
|
|
302
334
|
With a bookmark store, this is the subscription ID used for
|
|
303
335
|
recovery. So, when using a persistent bookmark store, provide an explicit
|
|
304
|
-
subscription
|
|
336
|
+
subscription ID that is consistent across application restarts.</li>
|
|
305
337
|
<li><strong>options</strong> (<em>str</em>) – A comma separated string of options. Default is <cite>None</cite>.</li>
|
|
306
338
|
<li><strong>timeout</strong> (<em>int</em>) – The maximum time to wait for the client to receive and
|
|
307
339
|
and consume a processed ack for this subscription
|
|
@@ -309,7 +341,12 @@ and consume a processed ack for this subscription
|
|
|
309
341
|
</ul>
|
|
310
342
|
</td>
|
|
311
343
|
</tr>
|
|
312
|
-
<tr class="field-even field"><th class="field-name">
|
|
344
|
+
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body"><p class="first">The command identifier assigned to this command if a message handler was provided.
|
|
345
|
+
If no message handler was provided, returns a <code class="docutils literal"><span class="pre">MessageStream</span></code> containing the
|
|
346
|
+
results of the command.</p>
|
|
347
|
+
</td>
|
|
348
|
+
</tr>
|
|
349
|
+
<tr class="field-odd field"><th class="field-name">Raises:</th><td class="field-body"><p class="first last"><a class="reference internal" href="#AMPS.SubscriptionAlreadyExistsException" title="AMPS.SubscriptionAlreadyExistsException"><code class="xref py py-exc docutils literal"><span class="pre">SubscriptionAlreadyExistsException</span></code></a>,
|
|
313
350
|
<a class="reference internal" href="#AMPS.BadFilterException" title="AMPS.BadFilterException"><code class="xref py py-exc docutils literal"><span class="pre">BadFilterException</span></code></a>, <a class="reference internal" href="#AMPS.BadRegexTopicException" title="AMPS.BadRegexTopicException"><code class="xref py py-exc docutils literal"><span class="pre">BadRegexTopicException</span></code></a>,
|
|
314
351
|
<a class="reference internal" href="#AMPS.TimedOutException" title="AMPS.TimedOutException"><code class="xref py py-exc docutils literal"><span class="pre">TimedOutException</span></code></a>, <a class="reference internal" href="#AMPS.DisconnectedException" title="AMPS.DisconnectedException"><code class="xref py py-exc docutils literal"><span class="pre">DisconnectedException</span></code></a>.</p>
|
|
315
352
|
</td>
|
|
@@ -327,47 +364,34 @@ and consume a processed ack for this subscription
|
|
|
327
364
|
<dl class="method">
|
|
328
365
|
<dt id="AMPS.Client.connect">
|
|
329
366
|
<code class="descclassname">Client.</code><code class="descname">connect</code><span class="sig-paren">(</span><em>uri</em><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.Client.connect" title="Permalink to this definition">¶</a></dt>
|
|
330
|
-
<dd><
|
|
331
|
-
<div><p>Connects to the AMPS instance through the provided <code class="xref py py-class docutils literal"><span class="pre">URI</span></code>.</p>
|
|
367
|
+
<dd><p>Connects to the AMPS instance through the provided <code class="xref py py-class docutils literal"><span class="pre">URI</span></code>.</p>
|
|
332
368
|
<blockquote>
|
|
333
369
|
<div><dl class="docutils">
|
|
334
370
|
<dt>The <code class="xref py py-class docutils literal"><span class="pre">URI</span></code> is a string with the format:</dt>
|
|
335
|
-
<dd><code class="docutils literal"><span class="pre">transport://userId:password@host:port/protocol</span></code
|
|
371
|
+
<dd><code class="docutils literal"><span class="pre">transport://userId:password@host:port/protocol</span></code></dd>
|
|
336
372
|
</dl>
|
|
373
|
+
<p>The components of the <code class="xref py py-class docutils literal"><span class="pre">URI</span></code> are as follows:</p>
|
|
337
374
|
<ul class="simple">
|
|
338
375
|
<li><em>transport</em> – The network transport used for the connection.</li>
|
|
339
|
-
<li><
|
|
340
|
-
<
|
|
341
|
-
<
|
|
342
|
-
</dl>
|
|
343
|
-
</li>
|
|
344
|
-
<li><dl class="first docutils">
|
|
345
|
-
<dt><em>password</em> – If authentication is enabled, this is the password used</dt>
|
|
346
|
-
<dd>to authenticate the connection.</dd>
|
|
347
|
-
</dl>
|
|
348
|
-
</li>
|
|
349
|
-
<li><dl class="first docutils">
|
|
350
|
-
<dt><em>host</em> – The hostname or IP address of the host where AMPS is</dt>
|
|
351
|
-
<dd>installed.</dd>
|
|
352
|
-
</dl>
|
|
353
|
-
</li>
|
|
376
|
+
<li><em>userId</em> – If authentication is enabled, this is the unique user ID used to authenticate the connection.</li>
|
|
377
|
+
<li><em>password</em> – If authentication is enabled, this is the password used to authenticate the connection.</li>
|
|
378
|
+
<li><em>host</em> – The hostname or IP address of the host where AMPS is installed.</li>
|
|
354
379
|
<li><em>port</em> – The port to connect to the AMPS instance.</li>
|
|
355
380
|
<li><em>protocol</em> – The protocol used by this connection.</li>
|
|
356
381
|
</ul>
|
|
357
382
|
<div class="admonition note">
|
|
358
383
|
<p class="first admonition-title">Note</p>
|
|
359
|
-
<p class="last">Authentication is optional
|
|
360
|
-
default authentication with AMPS which allows all users in without
|
|
384
|
+
<p class="last">Authentication is optional. If the system is using the
|
|
385
|
+
default authentication with AMPS, which allows all users in without
|
|
361
386
|
regard for their <code class="docutils literal"><span class="pre">userId</span></code> or <code class="docutils literal"><span class="pre">password</span></code>, then the
|
|
362
387
|
<code class="docutils literal"><span class="pre">userId:password@</span></code> string can be omitted from the connect URI.</p>
|
|
363
388
|
</div>
|
|
364
389
|
</div></blockquote>
|
|
365
|
-
</div></blockquote>
|
|
366
390
|
<table class="docutils field-list" frame="void" rules="none">
|
|
367
391
|
<col class="field-name" />
|
|
368
392
|
<col class="field-body" />
|
|
369
393
|
<tbody valign="top">
|
|
370
|
-
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>uri</strong> (<em>str</em>) – The
|
|
394
|
+
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>uri</strong> (<em>str</em>) – The <code class="xref py py-class docutils literal"><span class="pre">URI</span></code> used to connect to AMPS.</td>
|
|
371
395
|
</tr>
|
|
372
396
|
<tr class="field-even field"><th class="field-name">Raises:</th><td class="field-body"><a class="reference internal" href="#AMPS.ConnectionException" title="AMPS.ConnectionException"><code class="xref py py-class docutils literal"><span class="pre">ConnectionException</span></code></a></td>
|
|
373
397
|
</tr>
|
|
@@ -377,9 +401,9 @@ regard for their <code class="docutils literal"><span class="pre">userId</span><
|
|
|
377
401
|
|
|
378
402
|
<dl class="method">
|
|
379
403
|
<dt id="AMPS.Client.convert_version_to_number">
|
|
380
|
-
<code class="descclassname">Client.</code><code class="descname">convert_version_to_number</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.Client.convert_version_to_number" title="Permalink to this definition">¶</a></dt>
|
|
381
|
-
<dd><p>
|
|
382
|
-
A value such as 4.0 will become 4000000 while 3.8.1.7 will return 3080107.</p>
|
|
404
|
+
<code class="descclassname">Client.</code><code class="descname">convert_version_to_number</code><span class="sig-paren">(</span><em>version</em><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.Client.convert_version_to_number" title="Permalink to this definition">¶</a></dt>
|
|
405
|
+
<dd><p>Converts the provided version string to a number using 2 digits for each dot.
|
|
406
|
+
A value such as 4.0.0.0 will become 4000000 while 3.8.1.7 will return 3080107.</p>
|
|
383
407
|
<table class="docutils field-list" frame="void" rules="none">
|
|
384
408
|
<col class="field-name" />
|
|
385
409
|
<col class="field-body" />
|
|
@@ -396,22 +420,18 @@ A value such as 4.0 will become 4000000 while 3.8.1.7 will return 3080107.</p>
|
|
|
396
420
|
<dt id="AMPS.Client.deltaPublish">
|
|
397
421
|
<code class="descclassname">Client.</code><code class="descname">deltaPublish</code><span class="sig-paren">(</span><em>topic</em>, <em>data</em><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.Client.deltaPublish" title="Permalink to this definition">¶</a></dt>
|
|
398
422
|
<dd><p>This is a legacy method name for <a class="reference internal" href="#AMPS.Client.delta_publish" title="AMPS.Client.delta_publish"><code class="xref py py-meth docutils literal"><span class="pre">delta_publish()</span></code></a>.</p>
|
|
399
|
-
<
|
|
400
|
-
<div><div class="deprecated">
|
|
423
|
+
<div class="deprecated">
|
|
401
424
|
<p><span class="versionmodified">Deprecated since version 3.2.0.0: </span>Use <a class="reference internal" href="#AMPS.Client.delta_publish" title="AMPS.Client.delta_publish"><code class="xref py py-func docutils literal"><span class="pre">delta_publish()</span></code></a> instead.</p>
|
|
402
425
|
</div>
|
|
403
|
-
</div></blockquote>
|
|
404
426
|
</dd></dl>
|
|
405
427
|
|
|
406
428
|
<dl class="method">
|
|
407
429
|
<dt id="AMPS.Client.deltaSubscribe">
|
|
408
430
|
<code class="descclassname">Client.</code><code class="descname">deltaSubscribe</code><span class="sig-paren">(</span><em>on_message</em>, <em>topic</em>, <em>filter=None</em>, <em>options=0</em>, <em>timeout=0</em><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.Client.deltaSubscribe" title="Permalink to this definition">¶</a></dt>
|
|
409
431
|
<dd><p>A legacy method name for <a class="reference internal" href="#AMPS.Client.delta_subscribe" title="AMPS.Client.delta_subscribe"><code class="xref py py-meth docutils literal"><span class="pre">delta_subscribe()</span></code></a>.</p>
|
|
410
|
-
<
|
|
411
|
-
<div><div class="deprecated">
|
|
432
|
+
<div class="deprecated">
|
|
412
433
|
<p><span class="versionmodified">Deprecated since version 3.2.0.0: </span>Use <a class="reference internal" href="#AMPS.Client.delta_subscribe" title="AMPS.Client.delta_subscribe"><code class="xref py py-func docutils literal"><span class="pre">delta_subscribe()</span></code></a> instead.</p>
|
|
413
434
|
</div>
|
|
414
|
-
</div></blockquote>
|
|
415
435
|
</dd></dl>
|
|
416
436
|
|
|
417
437
|
<dl class="method">
|
|
@@ -427,9 +447,9 @@ then the client will store before forwarding the message to AMPS.</p>
|
|
|
427
447
|
<col class="field-body" />
|
|
428
448
|
<tbody valign="top">
|
|
429
449
|
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
|
|
430
|
-
<li><strong>topic</strong> (<em>str</em>) –
|
|
431
|
-
<li><strong>data</strong> (<em>str</em>) –
|
|
432
|
-
<li><strong>expiration</strong> (<em>int</em>) – Number of seconds until published
|
|
450
|
+
<li><strong>topic</strong> (<em>str</em>) – The topic to publish the data to.</li>
|
|
451
|
+
<li><strong>data</strong> (<em>str</em>) – The data to publish to the topic.</li>
|
|
452
|
+
<li><strong>expiration</strong> (<em>int</em>) – Number of seconds until published messages should expire.</li>
|
|
433
453
|
</ul>
|
|
434
454
|
</td>
|
|
435
455
|
</tr>
|
|
@@ -446,15 +466,30 @@ or 0 if there is no publish store and the server is assigning sequence numbers.<
|
|
|
446
466
|
|
|
447
467
|
<dl class="method">
|
|
448
468
|
<dt id="AMPS.Client.delta_subscribe">
|
|
449
|
-
<code class="descclassname">Client.</code><code class="descname">delta_subscribe</code><span class="sig-paren">(</span><
|
|
450
|
-
<dd><p>
|
|
469
|
+
<code class="descclassname">Client.</code><code class="descname">delta_subscribe</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.Client.delta_subscribe" title="Permalink to this definition">¶</a></dt>
|
|
470
|
+
<dd><p><strong>Signatures</strong>:</p>
|
|
471
|
+
<ul>
|
|
472
|
+
<li><p class="first"><code class="docutils literal"><span class="pre">Client.delta_subscribe(on_message,</span> <span class="pre">topic,</span> <span class="pre">filter=None,</span> <span class="pre">options=None,</span> <span class="pre">timeout=0,</span> <span class="pre">sub_id=None)</span></code></p>
|
|
473
|
+
</li>
|
|
474
|
+
<li><p class="first"><code class="docutils literal"><span class="pre">Client.delta_subscribe(topic,</span> <span class="pre">filter=None,</span> <span class="pre">options=None,</span> <span class="pre">timeout=0,</span> <span class="pre">sub_id=None)</span></code></p>
|
|
475
|
+
<p>Places a delta subscription with AMPS.</p>
|
|
476
|
+
<p>There are two ways to use this method:</p>
|
|
477
|
+
<ol class="arabic simple">
|
|
478
|
+
<li>When a message handler is provided, this method submits the <code class="docutils literal"><span class="pre">delta_subscribe</span></code> command on a background thread
|
|
479
|
+
and calls the message handler with individual messages that match the subscription and that contain the updated fields.</li>
|
|
480
|
+
<li>When no message handler is provided, this method returns a message stream that can be iterated on to process
|
|
481
|
+
messages received that match the subscription and that contain the updated fields.</li>
|
|
482
|
+
</ol>
|
|
483
|
+
</li>
|
|
484
|
+
</ul>
|
|
451
485
|
<table class="docutils field-list" frame="void" rules="none">
|
|
452
486
|
<col class="field-name" />
|
|
453
487
|
<col class="field-body" />
|
|
454
488
|
<tbody valign="top">
|
|
455
489
|
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
|
|
456
|
-
<li><strong>on_message</strong> (<em>str</em>) – The message handler to invoke with matching
|
|
457
|
-
|
|
490
|
+
<li><strong>on_message</strong> (<em>str</em>) – The message handler to invoke with matching messages
|
|
491
|
+
(specified only in the case where async processing
|
|
492
|
+
is used).</li>
|
|
458
493
|
<li><strong>topic</strong> (<em>str</em>) – The topic to subscribe to.</li>
|
|
459
494
|
<li><strong>filter</strong> (<em>str</em>) – The filter.</li>
|
|
460
495
|
<li><strong>options</strong> (<em>str</em>) – A comma separated list of values indicating additional
|
|
@@ -465,12 +500,14 @@ consume the processed ack for this subscription
|
|
|
465
500
|
<li><strong>sub_id</strong> (<em>str</em>) – The subscription ID. You may optionally provide a
|
|
466
501
|
subscription ID to ease recovery scenarios, instead of having the
|
|
467
502
|
system automatically generate one for you.
|
|
468
|
-
When used with the
|
|
503
|
+
When used with the <code class="docutils literal"><span class="pre">replace</span></code> option, this is the subscription to
|
|
469
504
|
be replaced.</li>
|
|
470
505
|
</ul>
|
|
471
506
|
</td>
|
|
472
507
|
</tr>
|
|
473
|
-
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body"><p class="first">The command identifier assigned to this command
|
|
508
|
+
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body"><p class="first">The command identifier assigned to this command if a message handler was provided.
|
|
509
|
+
If no message handler was provided, returns a <code class="docutils literal"><span class="pre">MessageStream</span></code> containing the
|
|
510
|
+
results of the command.</p>
|
|
474
511
|
</td>
|
|
475
512
|
</tr>
|
|
476
513
|
<tr class="field-odd field"><th class="field-name">Raises:</th><td class="field-body"><p class="first last"><a class="reference internal" href="#AMPS.SubscriptionAlreadyExistsException" title="AMPS.SubscriptionAlreadyExistsException"><code class="xref py py-exc docutils literal"><span class="pre">SubscriptionAlreadyExistsException</span></code></a>,
|
|
@@ -490,15 +527,17 @@ be replaced.</li>
|
|
|
490
527
|
|
|
491
528
|
<dl class="method">
|
|
492
529
|
<dt id="AMPS.Client.execute">
|
|
493
|
-
<code class="descclassname">Client.</code><code class="descname">execute</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.Client.execute" title="Permalink to this definition">¶</a></dt>
|
|
494
|
-
<dd><p>
|
|
530
|
+
<code class="descclassname">Client.</code><code class="descname">execute</code><span class="sig-paren">(</span><em>command</em><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.Client.execute" title="Permalink to this definition">¶</a></dt>
|
|
531
|
+
<dd><p>Execute the provided command and process responses using a <code class="docutils literal"><span class="pre">MessageStream</span></code>. This method creates
|
|
532
|
+
a <code class="docutils literal"><span class="pre">Message</span></code> based on the provided <code class="docutils literal"><span class="pre">Command</span></code>, sends the <code class="docutils literal"><span class="pre">Message</span></code> to AMPS, and returns a
|
|
533
|
+
<code class="docutils literal"><span class="pre">MessageStream</span></code> that can be iterated on to process messages returned in response to the command.</p>
|
|
495
534
|
<table class="docutils field-list" frame="void" rules="none">
|
|
496
535
|
<col class="field-name" />
|
|
497
536
|
<col class="field-body" />
|
|
498
537
|
<tbody valign="top">
|
|
499
|
-
<tr class="field-odd field"><th class="field-name">
|
|
538
|
+
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>command</strong> (<a class="reference internal" href="#AMPS.Command" title="AMPS.Command"><em>AMPS.Command</em></a>) – The command to execute.</td>
|
|
500
539
|
</tr>
|
|
501
|
-
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body">A MessageStream to iterate over.</td>
|
|
540
|
+
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body">A <code class="docutils literal"><span class="pre">MessageStream</span></code> to iterate over.</td>
|
|
502
541
|
</tr>
|
|
503
542
|
</tbody>
|
|
504
543
|
</table>
|
|
@@ -506,17 +545,20 @@ be replaced.</li>
|
|
|
506
545
|
|
|
507
546
|
<dl class="method">
|
|
508
547
|
<dt id="AMPS.Client.execute_async">
|
|
509
|
-
<code class="descclassname">Client.</code><code class="descname">execute_async</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.Client.execute_async" title="Permalink to this definition">¶</a></dt>
|
|
510
|
-
<dd><p>Execute the provided command and process responses on the client receive thread using the provided handler
|
|
511
|
-
|
|
512
|
-
|
|
548
|
+
<code class="descclassname">Client.</code><code class="descname">execute_async</code><span class="sig-paren">(</span><em>command</em>, <em>on_message</em><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.Client.execute_async" title="Permalink to this definition">¶</a></dt>
|
|
549
|
+
<dd><p>Execute the provided command and process responses on the client receive thread using the provided handler.
|
|
550
|
+
This method creates a <code class="docutils literal"><span class="pre">Message</span></code> based on the provided <code class="docutils literal"><span class="pre">Command</span></code>, sends the <code class="docutils literal"><span class="pre">Message</span></code> to AMPS, and
|
|
551
|
+
invokes the provided handler to process messages returned in response to the command. Rather than providing
|
|
552
|
+
messages on the calling thread, the AMPS Python client runs the handler directly on the client receive thread.</p>
|
|
553
|
+
<p>When the provided handler is not <code class="docutils literal"><span class="pre">None</span></code>, this function blocks until AMPS acknowledges that the command has
|
|
554
|
+
been processed. The results of the command after that acknowledgment are provided to the handler.</p>
|
|
513
555
|
<table class="docutils field-list" frame="void" rules="none">
|
|
514
556
|
<col class="field-name" />
|
|
515
557
|
<col class="field-body" />
|
|
516
558
|
<tbody valign="top">
|
|
517
559
|
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
|
|
518
560
|
<li><strong>command</strong> (<a class="reference internal" href="#AMPS.Command" title="AMPS.Command"><em>AMPS.Command</em></a>) – The command to execute.</li>
|
|
519
|
-
<li><strong>on_message</strong> (<em>
|
|
561
|
+
<li><strong>on_message</strong> (<em>A function</em><em> or </em><em>other callable object.</em>) – A handler for messages returned by this command execution.</li>
|
|
520
562
|
</ul>
|
|
521
563
|
</td>
|
|
522
564
|
</tr>
|
|
@@ -529,8 +571,18 @@ be replaced.</li>
|
|
|
529
571
|
|
|
530
572
|
<dl class="method">
|
|
531
573
|
<dt id="AMPS.Client.flush">
|
|
532
|
-
<code class="descclassname">Client.</code><code class="descname">flush</code><span class="sig-paren">(</span><em>timeout
|
|
574
|
+
<code class="descclassname">Client.</code><code class="descname">flush</code><span class="sig-paren">(</span><em>timeout=0</em><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.Client.flush" title="Permalink to this definition">¶</a></dt>
|
|
533
575
|
<dd><p>Another name for <a class="reference internal" href="#AMPS.Client.publish_flush" title="AMPS.Client.publish_flush"><code class="xref py py-meth docutils literal"><span class="pre">publish_flush()</span></code></a>.</p>
|
|
576
|
+
<table class="docutils field-list" frame="void" rules="none">
|
|
577
|
+
<col class="field-name" />
|
|
578
|
+
<col class="field-body" />
|
|
579
|
+
<tbody valign="top">
|
|
580
|
+
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>timeout</strong> (<em>int</em>) – The maximum time to wait for the messages to be acknowledged
|
|
581
|
+
as persisted, or for the flush command to be acknowledged
|
|
582
|
+
by AMPS (in milliseconds). <code class="docutils literal"><span class="pre">0</span></code> indicates to wait indefinitely.</td>
|
|
583
|
+
</tr>
|
|
584
|
+
</tbody>
|
|
585
|
+
</table>
|
|
534
586
|
</dd></dl>
|
|
535
587
|
|
|
536
588
|
<dl class="method">
|
|
@@ -542,60 +594,112 @@ be replaced.</li>
|
|
|
542
594
|
<dl class="method">
|
|
543
595
|
<dt id="AMPS.Client.get_ack_batch_size">
|
|
544
596
|
<code class="descclassname">Client.</code><code class="descname">get_ack_batch_size</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.Client.get_ack_batch_size" title="Permalink to this definition">¶</a></dt>
|
|
545
|
-
<dd><p>
|
|
597
|
+
<dd><p>Gets the current batch size used for batching message queue acknowledgment messages.</p>
|
|
598
|
+
<table class="docutils field-list" frame="void" rules="none">
|
|
599
|
+
<col class="field-name" />
|
|
600
|
+
<col class="field-body" />
|
|
601
|
+
<tbody valign="top">
|
|
602
|
+
<tr class="field-odd field"><th class="field-name">Returns:</th><td class="field-body">The current batch size used for batching message queue ack messages.</td>
|
|
603
|
+
</tr>
|
|
604
|
+
</tbody>
|
|
605
|
+
</table>
|
|
546
606
|
</dd></dl>
|
|
547
607
|
|
|
548
608
|
<dl class="method">
|
|
549
609
|
<dt id="AMPS.Client.get_ack_timeout">
|
|
550
610
|
<code class="descclassname">Client.</code><code class="descname">get_ack_timeout</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.Client.get_ack_timeout" title="Permalink to this definition">¶</a></dt>
|
|
551
|
-
<dd><p>
|
|
611
|
+
<dd><p>Gets the current time (milliseconds) before queued acknowledgment messages are sent.</p>
|
|
612
|
+
<table class="docutils field-list" frame="void" rules="none">
|
|
613
|
+
<col class="field-name" />
|
|
614
|
+
<col class="field-body" />
|
|
615
|
+
<tbody valign="top">
|
|
616
|
+
<tr class="field-odd field"><th class="field-name">Returns:</th><td class="field-body">The current time (milliseconds) before queued ack messages are sent.</td>
|
|
617
|
+
</tr>
|
|
618
|
+
</tbody>
|
|
619
|
+
</table>
|
|
552
620
|
</dd></dl>
|
|
553
621
|
|
|
554
622
|
<dl class="method">
|
|
555
623
|
<dt id="AMPS.Client.get_auto_ack">
|
|
556
624
|
<code class="descclassname">Client.</code><code class="descname">get_auto_ack</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.Client.get_auto_ack" title="Permalink to this definition">¶</a></dt>
|
|
557
|
-
<dd><p>
|
|
625
|
+
<dd><p>Called to check if auto-acknowledgment of message queue messages is enabled.</p>
|
|
626
|
+
<table class="docutils field-list" frame="void" rules="none">
|
|
627
|
+
<col class="field-name" />
|
|
628
|
+
<col class="field-body" />
|
|
629
|
+
<tbody valign="top">
|
|
630
|
+
<tr class="field-odd field"><th class="field-name">Returns:</th><td class="field-body">True, if auto-acknowledgment of message queue messages is enabled.</td>
|
|
631
|
+
</tr>
|
|
632
|
+
</tbody>
|
|
633
|
+
</table>
|
|
558
634
|
</dd></dl>
|
|
559
635
|
|
|
560
636
|
<dl class="method">
|
|
561
637
|
<dt id="AMPS.Client.get_default_max_depth">
|
|
562
638
|
<code class="descclassname">Client.</code><code class="descname">get_default_max_depth</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.Client.get_default_max_depth" title="Permalink to this definition">¶</a></dt>
|
|
563
|
-
<dd><p
|
|
639
|
+
<dd><p>Gets the maximum depth for any new <code class="docutils literal"><span class="pre">MessageStream</span></code>.</p>
|
|
640
|
+
<table class="docutils field-list" frame="void" rules="none">
|
|
641
|
+
<col class="field-name" />
|
|
642
|
+
<col class="field-body" />
|
|
643
|
+
<tbody valign="top">
|
|
644
|
+
<tr class="field-odd field"><th class="field-name">Returns:</th><td class="field-body">The current maximum depth for any new <code class="docutils literal"><span class="pre">MessageStream</span></code>. <code class="docutils literal"><span class="pre">0</span></code> is no maximum.</td>
|
|
645
|
+
</tr>
|
|
646
|
+
</tbody>
|
|
647
|
+
</table>
|
|
564
648
|
</dd></dl>
|
|
565
649
|
|
|
566
650
|
<dl class="method">
|
|
567
651
|
<dt id="AMPS.Client.get_duplicate_message_handler">
|
|
568
652
|
<code class="descclassname">Client.</code><code class="descname">get_duplicate_message_handler</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.Client.get_duplicate_message_handler" title="Permalink to this definition">¶</a></dt>
|
|
569
|
-
<dd><p>
|
|
653
|
+
<dd><p>Gets the message handler object set with <a class="reference internal" href="#AMPS.Client.set_duplicate_message_handler" title="AMPS.Client.set_duplicate_message_handler"><code class="xref py py-meth docutils literal"><span class="pre">set_duplicate_message_handler()</span></code></a>.</p>
|
|
654
|
+
<table class="docutils field-list" frame="void" rules="none">
|
|
655
|
+
<col class="field-name" />
|
|
656
|
+
<col class="field-body" />
|
|
657
|
+
<tbody valign="top">
|
|
658
|
+
<tr class="field-odd field"><th class="field-name">Returns:</th><td class="field-body">The message handler object set with <a class="reference internal" href="#AMPS.Client.set_duplicate_message_handler" title="AMPS.Client.set_duplicate_message_handler"><code class="xref py py-meth docutils literal"><span class="pre">set_duplicate_message_handler()</span></code></a>.</td>
|
|
659
|
+
</tr>
|
|
660
|
+
</tbody>
|
|
661
|
+
</table>
|
|
570
662
|
</dd></dl>
|
|
571
663
|
|
|
572
664
|
<dl class="method">
|
|
573
665
|
<dt id="AMPS.Client.get_error_on_publish_gap">
|
|
574
666
|
<code class="descclassname">Client.</code><code class="descname">get_error_on_publish_gap</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.Client.get_error_on_publish_gap" title="Permalink to this definition">¶</a></dt>
|
|
575
|
-
<dd><
|
|
576
|
-
<
|
|
577
|
-
<
|
|
578
|
-
<
|
|
579
|
-
<
|
|
580
|
-
|
|
581
|
-
|
|
667
|
+
<dd><p>Called to check if the Store will throw <a class="reference internal" href="#AMPS.PublishStoreGapException" title="AMPS.PublishStoreGapException"><code class="xref py py-exc docutils literal"><span class="pre">PublishStoreGapException</span></code></a>.</p>
|
|
668
|
+
<table class="docutils field-list" frame="void" rules="none">
|
|
669
|
+
<col class="field-name" />
|
|
670
|
+
<col class="field-body" />
|
|
671
|
+
<tbody valign="top">
|
|
672
|
+
<tr class="field-odd field"><th class="field-name">Returns:</th><td class="field-body">If true, <a class="reference internal" href="#AMPS.PublishStoreGapException" title="AMPS.PublishStoreGapException"><code class="xref py py-exc docutils literal"><span class="pre">PublishStoreGapException</span></code></a> can be thrown
|
|
673
|
+
by the client publish store if the client logs onto a server that
|
|
674
|
+
appears to be missing messages no longer held in the store.</td>
|
|
675
|
+
</tr>
|
|
676
|
+
</tbody>
|
|
677
|
+
</table>
|
|
582
678
|
</dd></dl>
|
|
583
679
|
|
|
584
680
|
<dl class="method">
|
|
585
681
|
<dt id="AMPS.Client.get_exception_listener">
|
|
586
682
|
<code class="descclassname">Client.</code><code class="descname">get_exception_listener</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.Client.get_exception_listener" title="Permalink to this definition">¶</a></dt>
|
|
587
|
-
<dd><p>
|
|
683
|
+
<dd><p>Gets the exception listener callable set on self.</p>
|
|
684
|
+
<table class="docutils field-list" frame="void" rules="none">
|
|
685
|
+
<col class="field-name" />
|
|
686
|
+
<col class="field-body" />
|
|
687
|
+
<tbody valign="top">
|
|
688
|
+
<tr class="field-odd field"><th class="field-name">Returns:</th><td class="field-body">The exception listener callable set on self, or None.</td>
|
|
689
|
+
</tr>
|
|
690
|
+
</tbody>
|
|
691
|
+
</table>
|
|
588
692
|
</dd></dl>
|
|
589
693
|
|
|
590
694
|
<dl class="method">
|
|
591
695
|
<dt id="AMPS.Client.get_logon_correlation_data">
|
|
592
696
|
<code class="descclassname">Client.</code><code class="descname">get_logon_correlation_data</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.Client.get_logon_correlation_data" title="Permalink to this definition">¶</a></dt>
|
|
593
|
-
<dd><p>
|
|
697
|
+
<dd><p>Gets the data used to correlate the logon of this <a class="reference internal" href="#AMPS.Client" title="AMPS.Client"><code class="xref py py-class docutils literal"><span class="pre">Client</span></code></a> to the server.</p>
|
|
594
698
|
<table class="docutils field-list" frame="void" rules="none">
|
|
595
699
|
<col class="field-name" />
|
|
596
700
|
<col class="field-body" />
|
|
597
701
|
<tbody valign="top">
|
|
598
|
-
<tr class="field-odd field"><th class="field-name">Returns:</th><td class="field-body">logon correlation data
|
|
702
|
+
<tr class="field-odd field"><th class="field-name">Returns:</th><td class="field-body">The logon correlation data.</td>
|
|
599
703
|
</tr>
|
|
600
704
|
</tbody>
|
|
601
705
|
</table>
|
|
@@ -604,12 +708,12 @@ appears to be missing messages no longer held in the store.</dd>
|
|
|
604
708
|
<dl class="method">
|
|
605
709
|
<dt id="AMPS.Client.get_name">
|
|
606
710
|
<code class="descclassname">Client.</code><code class="descname">get_name</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.Client.get_name" title="Permalink to this definition">¶</a></dt>
|
|
607
|
-
<dd><p>
|
|
711
|
+
<dd><p>Gets the name of the <a class="reference internal" href="#AMPS.Client" title="AMPS.Client"><code class="xref py py-class docutils literal"><span class="pre">Client</span></code></a> object.</p>
|
|
608
712
|
<table class="docutils field-list" frame="void" rules="none">
|
|
609
713
|
<col class="field-name" />
|
|
610
714
|
<col class="field-body" />
|
|
611
715
|
<tbody valign="top">
|
|
612
|
-
<tr class="field-odd field"><th class="field-name">Returns:</th><td class="field-body">name
|
|
716
|
+
<tr class="field-odd field"><th class="field-name">Returns:</th><td class="field-body">The <a class="reference internal" href="#AMPS.Client" title="AMPS.Client"><code class="xref py py-class docutils literal"><span class="pre">Client</span></code></a> name.</td>
|
|
613
717
|
</tr>
|
|
614
718
|
</tbody>
|
|
615
719
|
</table>
|
|
@@ -618,12 +722,12 @@ appears to be missing messages no longer held in the store.</dd>
|
|
|
618
722
|
<dl class="method">
|
|
619
723
|
<dt id="AMPS.Client.get_name_hash">
|
|
620
724
|
<code class="descclassname">Client.</code><code class="descname">get_name_hash</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.Client.get_name_hash" title="Permalink to this definition">¶</a></dt>
|
|
621
|
-
<dd><p>
|
|
725
|
+
<dd><p>Gets the string name hash of the <a class="reference internal" href="#AMPS.Client" title="AMPS.Client"><code class="xref py py-class docutils literal"><span class="pre">Client</span></code></a> object.</p>
|
|
622
726
|
<table class="docutils field-list" frame="void" rules="none">
|
|
623
727
|
<col class="field-name" />
|
|
624
728
|
<col class="field-body" />
|
|
625
729
|
<tbody valign="top">
|
|
626
|
-
<tr class="field-odd field"><th class="field-name">Returns:</th><td class="field-body">name hash string
|
|
730
|
+
<tr class="field-odd field"><th class="field-name">Returns:</th><td class="field-body">The name hash string.</td>
|
|
627
731
|
</tr>
|
|
628
732
|
</tbody>
|
|
629
733
|
</table>
|
|
@@ -632,12 +736,12 @@ appears to be missing messages no longer held in the store.</dd>
|
|
|
632
736
|
<dl class="method">
|
|
633
737
|
<dt id="AMPS.Client.get_name_hash_value">
|
|
634
738
|
<code class="descclassname">Client.</code><code class="descname">get_name_hash_value</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.Client.get_name_hash_value" title="Permalink to this definition">¶</a></dt>
|
|
635
|
-
<dd><p>
|
|
739
|
+
<dd><p>Gets the numeric name hash of the <a class="reference internal" href="#AMPS.Client" title="AMPS.Client"><code class="xref py py-class docutils literal"><span class="pre">Client</span></code></a> object.</p>
|
|
636
740
|
<table class="docutils field-list" frame="void" rules="none">
|
|
637
741
|
<col class="field-name" />
|
|
638
742
|
<col class="field-body" />
|
|
639
743
|
<tbody valign="top">
|
|
640
|
-
<tr class="field-odd field"><th class="field-name">Returns:</th><td class="field-body">name hash int
|
|
744
|
+
<tr class="field-odd field"><th class="field-name">Returns:</th><td class="field-body">The name hash int.</td>
|
|
641
745
|
</tr>
|
|
642
746
|
</tbody>
|
|
643
747
|
</table>
|
|
@@ -646,18 +750,26 @@ appears to be missing messages no longer held in the store.</dd>
|
|
|
646
750
|
<dl class="method">
|
|
647
751
|
<dt id="AMPS.Client.get_retry_on_disconnect">
|
|
648
752
|
<code class="descclassname">Client.</code><code class="descname">get_retry_on_disconnect</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.Client.get_retry_on_disconnect" title="Permalink to this definition">¶</a></dt>
|
|
649
|
-
<dd><p>
|
|
753
|
+
<dd><p>Called to check if automatic retry of a command to AMPS after a reconnect is enabled.</p>
|
|
754
|
+
<table class="docutils field-list" frame="void" rules="none">
|
|
755
|
+
<col class="field-name" />
|
|
756
|
+
<col class="field-body" />
|
|
757
|
+
<tbody valign="top">
|
|
758
|
+
<tr class="field-odd field"><th class="field-name">Returns:</th><td class="field-body">True, if automatic retry of a command to AMPS after a reconnect is enabled.</td>
|
|
759
|
+
</tr>
|
|
760
|
+
</tbody>
|
|
761
|
+
</table>
|
|
650
762
|
</dd></dl>
|
|
651
763
|
|
|
652
764
|
<dl class="method">
|
|
653
765
|
<dt id="AMPS.Client.get_server_version">
|
|
654
766
|
<code class="descclassname">Client.</code><code class="descname">get_server_version</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.Client.get_server_version" title="Permalink to this definition">¶</a></dt>
|
|
655
|
-
<dd><p>
|
|
767
|
+
<dd><p>Gets the connected server’s version as a numeric value.</p>
|
|
656
768
|
<table class="docutils field-list" frame="void" rules="none">
|
|
657
769
|
<col class="field-name" />
|
|
658
770
|
<col class="field-body" />
|
|
659
771
|
<tbody valign="top">
|
|
660
|
-
<tr class="field-odd field"><th class="field-name">Returns:</th><td class="field-body">The version converted to a number
|
|
772
|
+
<tr class="field-odd field"><th class="field-name">Returns:</th><td class="field-body">The version converted to a number. For example, server version 3.8.1.7 would be 3080107.</td>
|
|
661
773
|
</tr>
|
|
662
774
|
</tbody>
|
|
663
775
|
</table>
|
|
@@ -666,26 +778,32 @@ appears to be missing messages no longer held in the store.</dd>
|
|
|
666
778
|
<dl class="method">
|
|
667
779
|
<dt id="AMPS.Client.get_server_version_info">
|
|
668
780
|
<code class="descclassname">Client.</code><code class="descname">get_server_version_info</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.Client.get_server_version_info" title="Permalink to this definition">¶</a></dt>
|
|
669
|
-
<dd><p>
|
|
781
|
+
<dd><p>Gets the connected server’s version as a VersionInfo.</p>
|
|
670
782
|
<table class="docutils field-list" frame="void" rules="none">
|
|
671
783
|
<col class="field-name" />
|
|
672
784
|
<col class="field-body" />
|
|
673
785
|
<tbody valign="top">
|
|
674
|
-
<tr class="field-odd field"><th class="field-name">Returns:</th><td class="field-body">The version in a VersionInfo
|
|
786
|
+
<tr class="field-odd field"><th class="field-name">Returns:</th><td class="field-body">The version in a VersionInfo.</td>
|
|
675
787
|
</tr>
|
|
676
788
|
</tbody>
|
|
677
789
|
</table>
|
|
678
790
|
</dd></dl>
|
|
679
791
|
|
|
792
|
+
<dl class="method">
|
|
793
|
+
<dt id="AMPS.Client.get_ssl">
|
|
794
|
+
<code class="descclassname">Client.</code><code class="descname">get_ssl</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.Client.get_ssl" title="Permalink to this definition">¶</a></dt>
|
|
795
|
+
<dd><p>For a tcps client, returns the PySSLSocket of the connection</p>
|
|
796
|
+
</dd></dl>
|
|
797
|
+
|
|
680
798
|
<dl class="method">
|
|
681
799
|
<dt id="AMPS.Client.get_unpersisted_count">
|
|
682
800
|
<code class="descclassname">Client.</code><code class="descname">get_unpersisted_count</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.Client.get_unpersisted_count" title="Permalink to this definition">¶</a></dt>
|
|
683
|
-
<dd><p>
|
|
801
|
+
<dd><p>Gets the count of unpersisted publishes.</p>
|
|
684
802
|
<table class="docutils field-list" frame="void" rules="none">
|
|
685
803
|
<col class="field-name" />
|
|
686
804
|
<col class="field-body" />
|
|
687
805
|
<tbody valign="top">
|
|
688
|
-
<tr class="field-odd field"><th class="field-name">Returns:</th><td class="field-body">count of unpersisted publishes.</td>
|
|
806
|
+
<tr class="field-odd field"><th class="field-name">Returns:</th><td class="field-body">The count of unpersisted publishes.</td>
|
|
689
807
|
</tr>
|
|
690
808
|
</tbody>
|
|
691
809
|
</table>
|
|
@@ -694,13 +812,12 @@ appears to be missing messages no longer held in the store.</dd>
|
|
|
694
812
|
<dl class="method">
|
|
695
813
|
<dt id="AMPS.Client.get_uri">
|
|
696
814
|
<code class="descclassname">Client.</code><code class="descname">get_uri</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.Client.get_uri" title="Permalink to this definition">¶</a></dt>
|
|
697
|
-
<dd><p>
|
|
698
|
-
during the <a class="reference internal" href="#AMPS.Client.connect" title="AMPS.Client.connect"><code class="xref py py-meth docutils literal"><span class="pre">connect()</span></code></a> invocation.</p>
|
|
815
|
+
<dd><p>Gets the <code class="xref py py-class docutils literal"><span class="pre">URI</span></code> string passed into the <a class="reference internal" href="#AMPS.Client" title="AMPS.Client"><code class="xref py py-class docutils literal"><span class="pre">Client</span></code></a> during the <a class="reference internal" href="#AMPS.Client.connect" title="AMPS.Client.connect"><code class="xref py py-meth docutils literal"><span class="pre">connect()</span></code></a> invocation.</p>
|
|
699
816
|
<table class="docutils field-list" frame="void" rules="none">
|
|
700
817
|
<col class="field-name" />
|
|
701
818
|
<col class="field-body" />
|
|
702
819
|
<tbody valign="top">
|
|
703
|
-
<tr class="field-odd field"><th class="field-name">Returns:</th><td class="field-body">
|
|
820
|
+
<tr class="field-odd field"><th class="field-name">Returns:</th><td class="field-body">The URI string.</td>
|
|
704
821
|
</tr>
|
|
705
822
|
</tbody>
|
|
706
823
|
</table>
|
|
@@ -708,7 +825,7 @@ during the <a class="reference internal" href="#AMPS.Client.connect" title="AMPS
|
|
|
708
825
|
|
|
709
826
|
<dl class="method">
|
|
710
827
|
<dt id="AMPS.Client.logon">
|
|
711
|
-
<code class="descclassname">Client.</code><code class="descname">logon</code><span class="sig-paren">(</span><em>timeout=0</em>, <em>authenticator=AMPS.DefaultAuthenticator</em>, <em>options=
|
|
828
|
+
<code class="descclassname">Client.</code><code class="descname">logon</code><span class="sig-paren">(</span><em>timeout=0</em>, <em>authenticator=AMPS.DefaultAuthenticator</em>, <em>options=None</em><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.Client.logon" title="Permalink to this definition">¶</a></dt>
|
|
712
829
|
<dd><p>Logs into AMPS with the parameters provided in the <a class="reference internal" href="#AMPS.Client.connect" title="AMPS.Client.connect"><code class="xref py py-meth docutils literal"><span class="pre">connect()</span></code></a> method.</p>
|
|
713
830
|
<table class="docutils field-list" frame="void" rules="none">
|
|
714
831
|
<col class="field-name" />
|
|
@@ -717,10 +834,9 @@ during the <a class="reference internal" href="#AMPS.Client.connect" title="AMPS
|
|
|
717
834
|
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
|
|
718
835
|
<li><strong>timeout</strong> (<em>int</em>) – The maximum time to wait for the command to
|
|
719
836
|
receive a processed ack from AMPS for the logon command
|
|
720
|
-
(in milliseconds). <code class="docutils literal"><span class="pre">0
|
|
837
|
+
(in milliseconds). <code class="docutils literal"><span class="pre">0</span></code> indicates to wait indefinitely.</li>
|
|
721
838
|
<li><strong>authenticator</strong> (<em>Authenticator</em>) – An <cite>Authenticator</cite> object used to negotiate logon.</li>
|
|
722
|
-
<li><strong>options</strong> (<em>string</em>) – An options string to
|
|
723
|
-
execute (milliseconds). <code class="docutils literal"><span class="pre">0</span></code> indicates to wait indefinitely.</li>
|
|
839
|
+
<li><strong>options</strong> (<em>string</em>) – An options string to be passed to the server during logon, such as <code class="docutils literal"><span class="pre">ack_conflation=100ms</span></code>.</li>
|
|
724
840
|
</ul>
|
|
725
841
|
</td>
|
|
726
842
|
</tr>
|
|
@@ -737,12 +853,12 @@ execute (milliseconds). <code class="docutils literal"><span class="pre">0</span
|
|
|
737
853
|
<dl class="method">
|
|
738
854
|
<dt id="AMPS.Client.name">
|
|
739
855
|
<code class="descclassname">Client.</code><code class="descname">name</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.Client.name" title="Permalink to this definition">¶</a></dt>
|
|
740
|
-
<dd><p>
|
|
856
|
+
<dd><p>The name of the <a class="reference internal" href="#AMPS.Client" title="AMPS.Client"><code class="xref py py-class docutils literal"><span class="pre">Client</span></code></a> object.</p>
|
|
741
857
|
<table class="docutils field-list" frame="void" rules="none">
|
|
742
858
|
<col class="field-name" />
|
|
743
859
|
<col class="field-body" />
|
|
744
860
|
<tbody valign="top">
|
|
745
|
-
<tr class="field-odd field"><th class="field-name">Returns:</th><td class="field-body">name
|
|
861
|
+
<tr class="field-odd field"><th class="field-name">Returns:</th><td class="field-body">The <a class="reference internal" href="#AMPS.Client" title="AMPS.Client"><code class="xref py py-class docutils literal"><span class="pre">Client</span></code></a> name.</td>
|
|
746
862
|
</tr>
|
|
747
863
|
</tbody>
|
|
748
864
|
</table>
|
|
@@ -751,13 +867,10 @@ execute (milliseconds). <code class="docutils literal"><span class="pre">0</span
|
|
|
751
867
|
<dl class="method">
|
|
752
868
|
<dt id="AMPS.Client.publish">
|
|
753
869
|
<code class="descclassname">Client.</code><code class="descname">publish</code><span class="sig-paren">(</span><em>topic</em>, <em>data</em>, <em>expiration=None</em><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.Client.publish" title="Permalink to this definition">¶</a></dt>
|
|
754
|
-
<dd><p>Publish a
|
|
755
|
-
|
|
756
|
-
|
|
757
|
-
|
|
758
|
-
then the client will store before forwarding the message to AMPS.
|
|
759
|
-
If a DisconnectException occurs, the message
|
|
760
|
-
is still stored in the publish store.</p>
|
|
870
|
+
<dd><p>Publish a message to an AMPS topic. This method does not wait for a response from the AMPS server.
|
|
871
|
+
To detect failure, install a failed write handler. If the client was created with a persistent store
|
|
872
|
+
on construction, then the client will store before forwarding the message to AMPS. If a <code class="docutils literal"><span class="pre">DisconnectException</span></code>
|
|
873
|
+
occurs, the message is still stored in the publish store.</p>
|
|
761
874
|
<table class="docutils field-list" frame="void" rules="none">
|
|
762
875
|
<col class="field-name" />
|
|
763
876
|
<col class="field-body" />
|
|
@@ -773,7 +886,7 @@ is still stored in the publish store.</p>
|
|
|
773
886
|
or 0 if there is no publish store and the server is assigning sequence numbers.</p>
|
|
774
887
|
</td>
|
|
775
888
|
</tr>
|
|
776
|
-
<tr class="field-odd field"><th class="field-name">Raises:</th><td class="field-body"><p class="first last"><a class="reference internal" href="#AMPS.DisconnectedException" title="AMPS.DisconnectedException"><code class="xref py py-exc docutils literal"><span class="pre">DisconnectedException</span></code></a
|
|
889
|
+
<tr class="field-odd field"><th class="field-name">Raises:</th><td class="field-body"><p class="first last"><a class="reference internal" href="#AMPS.DisconnectedException" title="AMPS.DisconnectedException"><code class="xref py py-exc docutils literal"><span class="pre">DisconnectedException</span></code></a></p>
|
|
777
890
|
</td>
|
|
778
891
|
</tr>
|
|
779
892
|
</tbody>
|
|
@@ -782,9 +895,19 @@ or 0 if there is no publish store and the server is assigning sequence numbers.<
|
|
|
782
895
|
|
|
783
896
|
<dl class="method">
|
|
784
897
|
<dt id="AMPS.Client.publish_flush">
|
|
785
|
-
<code class="descclassname">Client.</code><code class="descname">publish_flush</code><span class="sig-paren">(</span><em>timeout
|
|
786
|
-
<dd><
|
|
787
|
-
|
|
898
|
+
<code class="descclassname">Client.</code><code class="descname">publish_flush</code><span class="sig-paren">(</span><em>timeout=0</em>, <em>ack_type=Message.AckType.ProcessedEnum</em><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.Client.publish_flush" title="Permalink to this definition">¶</a></dt>
|
|
899
|
+
<dd><p>Ensures that pending AMPS messages are sent and have been processed by the
|
|
900
|
+
AMPS server. When the client has a publish store configured, waits until
|
|
901
|
+
all messages that are in the store at the time the command is called have
|
|
902
|
+
been acknowledged by AMPS. Otherwise, issues a <code class="docutils literal"><span class="pre">flush</span></code> command
|
|
903
|
+
and waits for the server to acknowledge that command.</p>
|
|
904
|
+
<p>This method blocks until messages have been processed or
|
|
905
|
+
until the timeout expires, and is most useful when the application reaches
|
|
906
|
+
a point at which it is acceptable to block to ensure that messages are
|
|
907
|
+
delivered to the AMPS server. For example, an application might call
|
|
908
|
+
<code class="docutils literal"><span class="pre">publish_flush</span></code> before exiting.</p>
|
|
909
|
+
<p>One thing to note is that if AMPS is unavailable (HA Client), <code class="docutils literal"><span class="pre">publish_flush</span></code>
|
|
910
|
+
needs to wait for a connection to come back up, which may look like it’s hanging.</p>
|
|
788
911
|
<table class="docutils field-list" frame="void" rules="none">
|
|
789
912
|
<col class="field-name" />
|
|
790
913
|
<col class="field-body" />
|
|
@@ -792,9 +915,9 @@ or 0 if there is no publish store and the server is assigning sequence numbers.<
|
|
|
792
915
|
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
|
|
793
916
|
<li><strong>timeout</strong> (<em>int</em>) – The maximum time to wait for the messages to be acknowledged
|
|
794
917
|
as persisted, or for the flush command to be acknowledged
|
|
795
|
-
by AMPS (in milliseconds)
|
|
918
|
+
by AMPS (in milliseconds). <code class="docutils literal"><span class="pre">0</span></code> indicates to wait indefinitely.</li>
|
|
796
919
|
<li><strong>ack_type</strong> (<em>int</em>) – Whether the command should wait for a Processed or a
|
|
797
|
-
Persisted ack when sending the <
|
|
920
|
+
Persisted ack when sending the <code class="docutils literal"><span class="pre">flush</span></code> command.</li>
|
|
798
921
|
</ul>
|
|
799
922
|
</td>
|
|
800
923
|
</tr>
|
|
@@ -805,19 +928,26 @@ Persisted ack when sending the <cite>flush</cite> command.</li>
|
|
|
805
928
|
<dl class="method">
|
|
806
929
|
<dt id="AMPS.Client.remove_connection_state_listener">
|
|
807
930
|
<code class="descclassname">Client.</code><code class="descname">remove_connection_state_listener</code><span class="sig-paren">(</span><em>listener_callable</em><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.Client.remove_connection_state_listener" title="Permalink to this definition">¶</a></dt>
|
|
808
|
-
<dd><p>Removes a listener function previously supplied to add_connection_state_listener
|
|
931
|
+
<dd><p>Removes a listener function previously supplied to <a class="reference internal" href="#AMPS.Client.add_connection_state_listener" title="AMPS.Client.add_connection_state_listener"><code class="xref py py-meth docutils literal"><span class="pre">add_connection_state_listener()</span></code></a>.</p>
|
|
932
|
+
<table class="docutils field-list" frame="void" rules="none">
|
|
933
|
+
<col class="field-name" />
|
|
934
|
+
<col class="field-body" />
|
|
935
|
+
<tbody valign="top">
|
|
936
|
+
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>listener_callable</strong> (<em>A python function</em><em> or </em><em>other callable that takes a single value.</em>) – The function or callable to be removed.</td>
|
|
937
|
+
</tr>
|
|
938
|
+
</tbody>
|
|
939
|
+
</table>
|
|
809
940
|
</dd></dl>
|
|
810
941
|
|
|
811
942
|
<dl class="method">
|
|
812
943
|
<dt id="AMPS.Client.remove_message_handler">
|
|
813
944
|
<code class="descclassname">Client.</code><code class="descname">remove_message_handler</code><span class="sig-paren">(</span><em>command_id</em><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.Client.remove_message_handler" title="Permalink to this definition">¶</a></dt>
|
|
814
|
-
<dd><
|
|
815
|
-
<div>Remove a message handler from the <code class="xref py py-class docutils literal"><span class="pre">Client.</span></code></div></blockquote>
|
|
945
|
+
<dd><p>Remove a message handler from the <a class="reference internal" href="#AMPS.Client" title="AMPS.Client"><code class="xref py py-class docutils literal"><span class="pre">Client</span></code></a>.</p>
|
|
816
946
|
<table class="docutils field-list" frame="void" rules="none">
|
|
817
947
|
<col class="field-name" />
|
|
818
948
|
<col class="field-body" />
|
|
819
949
|
<tbody valign="top">
|
|
820
|
-
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>command_id</strong> (<em>str</em>) – The
|
|
950
|
+
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>command_id</strong> (<em>str</em>) – The command ID for the handler to remove.</td>
|
|
821
951
|
</tr>
|
|
822
952
|
</tbody>
|
|
823
953
|
</table>
|
|
@@ -826,12 +956,7 @@ Persisted ack when sending the <cite>flush</cite> command.</li>
|
|
|
826
956
|
<dl class="method">
|
|
827
957
|
<dt id="AMPS.Client.send">
|
|
828
958
|
<code class="descclassname">Client.</code><code class="descname">send</code><span class="sig-paren">(</span><em>message</em>, <em>message_handler=None</em>, <em>timeout=None</em><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.Client.send" title="Permalink to this definition">¶</a></dt>
|
|
829
|
-
<dd><
|
|
830
|
-
<div><dl class="docutils">
|
|
831
|
-
<dt>Send a <a class="reference internal" href="#AMPS.Message" title="AMPS.Message"><code class="xref py py-class docutils literal"><span class="pre">Message</span></code></a> to AMPS via the <code class="xref py py-class docutils literal"><span class="pre">Transport</span></code> used in</dt>
|
|
832
|
-
<dd>the <a class="reference internal" href="#AMPS.Client" title="AMPS.Client"><code class="xref py py-class docutils literal"><span class="pre">Client</span></code></a>.</dd>
|
|
833
|
-
</dl>
|
|
834
|
-
</div></blockquote>
|
|
959
|
+
<dd><p>Send a <a class="reference internal" href="#AMPS.Message" title="AMPS.Message"><code class="xref py py-class docutils literal"><span class="pre">Message</span></code></a> to AMPS via the <code class="xref py py-class docutils literal"><span class="pre">Transport</span></code> used in the <a class="reference internal" href="#AMPS.Client" title="AMPS.Client"><code class="xref py py-class docutils literal"><span class="pre">Client</span></code></a>.</p>
|
|
835
960
|
<table class="docutils field-list" frame="void" rules="none">
|
|
836
961
|
<col class="field-name" />
|
|
837
962
|
<col class="field-body" />
|
|
@@ -857,95 +982,102 @@ one is not assigned.</p>
|
|
|
857
982
|
<dl class="method">
|
|
858
983
|
<dt id="AMPS.Client.setDisconnectHandler">
|
|
859
984
|
<code class="descclassname">Client.</code><code class="descname">setDisconnectHandler</code><span class="sig-paren">(</span><em>client_disconnect_handler</em><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.Client.setDisconnectHandler" title="Permalink to this definition">¶</a></dt>
|
|
860
|
-
<dd><
|
|
861
|
-
<
|
|
862
|
-
<dd><div class="first last deprecated">
|
|
985
|
+
<dd><p>A legacy method name for <a class="reference internal" href="#AMPS.Client.set_disconnect_handler" title="AMPS.Client.set_disconnect_handler"><code class="xref py py-meth docutils literal"><span class="pre">set_disconnect_handler()</span></code></a>.</p>
|
|
986
|
+
<div class="deprecated">
|
|
863
987
|
<p><span class="versionmodified">Deprecated since version 3.2.0.0: </span>Use <a class="reference internal" href="#AMPS.Client.set_disconnect_handler" title="AMPS.Client.set_disconnect_handler"><code class="xref py py-func docutils literal"><span class="pre">set_disconnect_handler()</span></code></a> instead.</p>
|
|
864
988
|
</div>
|
|
865
|
-
</dd>
|
|
866
|
-
</dl>
|
|
867
989
|
</dd></dl>
|
|
868
990
|
|
|
869
991
|
<dl class="method">
|
|
870
992
|
<dt id="AMPS.Client.setExceptionListener">
|
|
871
993
|
<code class="descclassname">Client.</code><code class="descname">setExceptionListener</code><span class="sig-paren">(</span><em>exception_listener</em><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.Client.setExceptionListener" title="Permalink to this definition">¶</a></dt>
|
|
872
|
-
<dd><
|
|
873
|
-
<
|
|
874
|
-
<dd><div class="first last deprecated">
|
|
994
|
+
<dd><p>A legacy method name for <a class="reference internal" href="#AMPS.Client.set_exception_listener" title="AMPS.Client.set_exception_listener"><code class="xref py py-meth docutils literal"><span class="pre">set_exception_listener()</span></code></a>.</p>
|
|
995
|
+
<div class="deprecated">
|
|
875
996
|
<p><span class="versionmodified">Deprecated since version 3.2.0.0: </span>Use <a class="reference internal" href="#AMPS.Client.set_exception_listener" title="AMPS.Client.set_exception_listener"><code class="xref py py-func docutils literal"><span class="pre">set_exception_listener()</span></code></a> instead.</p>
|
|
876
997
|
</div>
|
|
877
|
-
</dd>
|
|
878
|
-
</dl>
|
|
879
998
|
</dd></dl>
|
|
880
999
|
|
|
881
1000
|
<dl class="method">
|
|
882
1001
|
<dt id="AMPS.Client.setName">
|
|
883
1002
|
<code class="descclassname">Client.</code><code class="descname">setName</code><span class="sig-paren">(</span><em>name</em><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.Client.setName" title="Permalink to this definition">¶</a></dt>
|
|
884
|
-
<dd><
|
|
885
|
-
<
|
|
886
|
-
<dd><div class="first last deprecated">
|
|
1003
|
+
<dd><p>A legacy method name for <a class="reference internal" href="#AMPS.Client.set_name" title="AMPS.Client.set_name"><code class="xref py py-meth docutils literal"><span class="pre">set_name()</span></code></a>.</p>
|
|
1004
|
+
<div class="deprecated">
|
|
887
1005
|
<p><span class="versionmodified">Deprecated since version 3.2.0.0: </span>Use <a class="reference internal" href="#AMPS.Client.set_name" title="AMPS.Client.set_name"><code class="xref py py-func docutils literal"><span class="pre">set_name()</span></code></a> instead.</p>
|
|
888
1006
|
</div>
|
|
889
|
-
</dd>
|
|
890
|
-
</dl>
|
|
891
1007
|
</dd></dl>
|
|
892
1008
|
|
|
893
1009
|
<dl class="method">
|
|
894
1010
|
<dt id="AMPS.Client.setOnDisconnectHandler">
|
|
895
1011
|
<code class="descclassname">Client.</code><code class="descname">setOnDisconnectHandler</code><span class="sig-paren">(</span><em>client_disconnect_handler</em><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.Client.setOnDisconnectHandler" title="Permalink to this definition">¶</a></dt>
|
|
896
|
-
<dd><
|
|
897
|
-
<
|
|
898
|
-
<dd><div class="first last deprecated">
|
|
1012
|
+
<dd><p>A legacy method name for <a class="reference internal" href="#AMPS.Client.set_disconnect_handler" title="AMPS.Client.set_disconnect_handler"><code class="xref py py-meth docutils literal"><span class="pre">set_disconnect_handler()</span></code></a>.</p>
|
|
1013
|
+
<div class="deprecated">
|
|
899
1014
|
<p><span class="versionmodified">Deprecated since version 3.2.0.0: </span>Use <a class="reference internal" href="#AMPS.Client.set_disconnect_handler" title="AMPS.Client.set_disconnect_handler"><code class="xref py py-func docutils literal"><span class="pre">set_disconnect_handler()</span></code></a> instead.</p>
|
|
900
1015
|
</div>
|
|
901
|
-
</dd>
|
|
902
|
-
</dl>
|
|
903
1016
|
</dd></dl>
|
|
904
1017
|
|
|
905
1018
|
<dl class="method">
|
|
906
1019
|
<dt id="AMPS.Client.setUnhandledMessageHandler">
|
|
907
1020
|
<code class="descclassname">Client.</code><code class="descname">setUnhandledMessageHandler</code><span class="sig-paren">(</span><em>message_handler</em><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.Client.setUnhandledMessageHandler" title="Permalink to this definition">¶</a></dt>
|
|
908
|
-
<dd><
|
|
909
|
-
<
|
|
910
|
-
<dd><div class="first last deprecated">
|
|
1021
|
+
<dd><p>A legacy method name for <a class="reference internal" href="#AMPS.Client.set_last_chance_message_handler" title="AMPS.Client.set_last_chance_message_handler"><code class="xref py py-meth docutils literal"><span class="pre">set_last_chance_message_handler()</span></code></a>.</p>
|
|
1022
|
+
<div class="deprecated">
|
|
911
1023
|
<p><span class="versionmodified">Deprecated since version 3.2.0.0: </span>Use <a class="reference internal" href="#AMPS.Client.set_last_chance_message_handler" title="AMPS.Client.set_last_chance_message_handler"><code class="xref py py-func docutils literal"><span class="pre">set_last_chance_message_handler()</span></code></a> instead.</p>
|
|
912
1024
|
</div>
|
|
913
|
-
</dd>
|
|
914
|
-
</dl>
|
|
915
1025
|
</dd></dl>
|
|
916
1026
|
|
|
917
1027
|
<dl class="method">
|
|
918
1028
|
<dt id="AMPS.Client.set_ack_batch_size">
|
|
919
1029
|
<code class="descclassname">Client.</code><code class="descname">set_ack_batch_size</code><span class="sig-paren">(</span><em>batch_size</em><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.Client.set_ack_batch_size" title="Permalink to this definition">¶</a></dt>
|
|
920
|
-
<dd><p>Sets the batch size used for batching message queue
|
|
921
|
-
<
|
|
1030
|
+
<dd><p>Sets the batch size used for batching message queue ack messages.</p>
|
|
1031
|
+
<table class="docutils field-list" frame="void" rules="none">
|
|
1032
|
+
<col class="field-name" />
|
|
1033
|
+
<col class="field-body" />
|
|
1034
|
+
<tbody valign="top">
|
|
1035
|
+
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>batch_size</strong> – The number of ack messages to batch before sending.</td>
|
|
1036
|
+
</tr>
|
|
1037
|
+
</tbody>
|
|
1038
|
+
</table>
|
|
922
1039
|
</dd></dl>
|
|
923
1040
|
|
|
924
1041
|
<dl class="method">
|
|
925
1042
|
<dt id="AMPS.Client.set_ack_timeout">
|
|
926
1043
|
<code class="descclassname">Client.</code><code class="descname">set_ack_timeout</code><span class="sig-paren">(</span><em>timeout</em><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.Client.set_ack_timeout" title="Permalink to this definition">¶</a></dt>
|
|
927
1044
|
<dd><p>Sets the time before queued ack messages are sent.</p>
|
|
928
|
-
<
|
|
1045
|
+
<table class="docutils field-list" frame="void" rules="none">
|
|
1046
|
+
<col class="field-name" />
|
|
1047
|
+
<col class="field-body" />
|
|
1048
|
+
<tbody valign="top">
|
|
1049
|
+
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>timeout</strong> – The maximum amount of time to wait after adding the first message to an acknowledgment
|
|
1050
|
+
batch before sending the batch, in milliseconds. 0 indicates that the client will wait
|
|
1051
|
+
until the batch is full. A value of 0 is not recommended unless the batch size is set to 1.</td>
|
|
1052
|
+
</tr>
|
|
1053
|
+
</tbody>
|
|
1054
|
+
</table>
|
|
929
1055
|
</dd></dl>
|
|
930
1056
|
|
|
931
1057
|
<dl class="method">
|
|
932
1058
|
<dt id="AMPS.Client.set_auto_ack">
|
|
933
1059
|
<code class="descclassname">Client.</code><code class="descname">set_auto_ack</code><span class="sig-paren">(</span><em>enabled</em><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.Client.set_auto_ack" title="Permalink to this definition">¶</a></dt>
|
|
934
|
-
<dd><p>Enables or disables auto-
|
|
935
|
-
<
|
|
1060
|
+
<dd><p>Enables or disables auto-acknowledgment of message queue messages.</p>
|
|
1061
|
+
<table class="docutils field-list" frame="void" rules="none">
|
|
1062
|
+
<col class="field-name" />
|
|
1063
|
+
<col class="field-body" />
|
|
1064
|
+
<tbody valign="top">
|
|
1065
|
+
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>enabled</strong> (<em>Boolean</em>) – True to enable auto-acknowledgment of message queue messages.</td>
|
|
1066
|
+
</tr>
|
|
1067
|
+
</tbody>
|
|
1068
|
+
</table>
|
|
936
1069
|
</dd></dl>
|
|
937
1070
|
|
|
938
1071
|
<dl class="method">
|
|
939
1072
|
<dt id="AMPS.Client.set_bookmark_store">
|
|
940
|
-
<code class="descclassname">Client.</code><code class="descname">set_bookmark_store</code><span class="sig-paren">(</span><em>
|
|
1073
|
+
<code class="descclassname">Client.</code><code class="descname">set_bookmark_store</code><span class="sig-paren">(</span><em>bookmark_store</em><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.Client.set_bookmark_store" title="Permalink to this definition">¶</a></dt>
|
|
941
1074
|
<dd><p>Sets a bookmark store on self.</p>
|
|
942
1075
|
<table class="docutils field-list" frame="void" rules="none">
|
|
943
1076
|
<col class="field-name" />
|
|
944
1077
|
<col class="field-body" />
|
|
945
1078
|
<tbody valign="top">
|
|
946
|
-
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>
|
|
947
|
-
|
|
948
|
-
implements the required bookmark store methods.</td>
|
|
1079
|
+
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>bookmark_store</strong> – A <a class="reference internal" href="#AMPS.MMapBookmarkStore" title="AMPS.MMapBookmarkStore"><code class="xref py py-class docutils literal"><span class="pre">MMapBookmarkStore</span></code></a> or <a class="reference internal" href="#AMPS.MemoryBookmarkStore" title="AMPS.MemoryBookmarkStore"><code class="xref py py-class docutils literal"><span class="pre">MemoryBookmarkStore</span></code></a> instance,
|
|
1080
|
+
or a custom object that implements the required bookmark store methods.</td>
|
|
949
1081
|
</tr>
|
|
950
1082
|
</tbody>
|
|
951
1083
|
</table>
|
|
@@ -954,26 +1086,23 @@ implements the required bookmark store methods.</td>
|
|
|
954
1086
|
<dl class="method">
|
|
955
1087
|
<dt id="AMPS.Client.set_default_max_depth">
|
|
956
1088
|
<code class="descclassname">Client.</code><code class="descname">set_default_max_depth</code><span class="sig-paren">(</span><em>depth</em><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.Client.set_default_max_depth" title="Permalink to this definition">¶</a></dt>
|
|
957
|
-
<dd><
|
|
958
|
-
<
|
|
959
|
-
<
|
|
960
|
-
<
|
|
961
|
-
|
|
962
|
-
|
|
963
|
-
<
|
|
964
|
-
|
|
1089
|
+
<dd><p>Sets a default maximum depth for all new <code class="docutils literal"><span class="pre">MessageStream</span></code> objects
|
|
1090
|
+
that are returned from synchronous API calls such as <a class="reference internal" href="#AMPS.Client.execute" title="AMPS.Client.execute"><code class="xref py py-meth docutils literal"><span class="pre">execute()</span></code></a>.</p>
|
|
1091
|
+
<table class="docutils field-list" frame="void" rules="none">
|
|
1092
|
+
<col class="field-name" />
|
|
1093
|
+
<col class="field-body" />
|
|
1094
|
+
<tbody valign="top">
|
|
1095
|
+
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>depth</strong> (<em>int</em>) – The new depth to use. A depth of <code class="docutils literal"><span class="pre">0</span></code> means no max and is the default.</td>
|
|
1096
|
+
</tr>
|
|
1097
|
+
</tbody>
|
|
1098
|
+
</table>
|
|
965
1099
|
</dd></dl>
|
|
966
1100
|
|
|
967
1101
|
<dl class="method">
|
|
968
1102
|
<dt id="AMPS.Client.set_disconnect_handler">
|
|
969
1103
|
<code class="descclassname">Client.</code><code class="descname">set_disconnect_handler</code><span class="sig-paren">(</span><em>client_disconnect_handler</em><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.Client.set_disconnect_handler" title="Permalink to this definition">¶</a></dt>
|
|
970
|
-
<dd><
|
|
971
|
-
<
|
|
972
|
-
<dt>Sets the <code class="xref py py-class docutils literal"><span class="pre">DisconnectHandler</span></code> used by the <a class="reference internal" href="#AMPS.Client" title="AMPS.Client"><code class="xref py py-class docutils literal"><span class="pre">Client</span></code></a>. In</dt>
|
|
973
|
-
<dd>the event that the <cite>Client</cite> is unintentionally disconnected from AMPS, the invoke
|
|
974
|
-
method from the <code class="xref py py-class docutils literal"><span class="pre">ClientDisconnectHandler</span></code> will be invoked.</dd>
|
|
975
|
-
</dl>
|
|
976
|
-
</div></blockquote>
|
|
1104
|
+
<dd><p>Sets the <code class="xref py py-class docutils literal"><span class="pre">DisconnectHandler</span></code> used by the <a class="reference internal" href="#AMPS.Client" title="AMPS.Client"><code class="xref py py-class docutils literal"><span class="pre">Client</span></code></a>. In the event that the <cite>Client</cite> is unintentionally
|
|
1105
|
+
disconnected from AMPS, the invoke method from the <code class="xref py py-class docutils literal"><span class="pre">ClientDisconnectHandler</span></code> will be invoked.</p>
|
|
977
1106
|
<table class="docutils field-list" frame="void" rules="none">
|
|
978
1107
|
<col class="field-name" />
|
|
979
1108
|
<col class="field-body" />
|
|
@@ -987,18 +1116,13 @@ method from the <code class="xref py py-class docutils literal"><span class="pre
|
|
|
987
1116
|
<dl class="method">
|
|
988
1117
|
<dt id="AMPS.Client.set_duplicate_message_handler">
|
|
989
1118
|
<code class="descclassname">Client.</code><code class="descname">set_duplicate_message_handler</code><span class="sig-paren">(</span><em>message_handler</em><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.Client.set_duplicate_message_handler" title="Permalink to this definition">¶</a></dt>
|
|
990
|
-
<dd><
|
|
991
|
-
|
|
992
|
-
<dt>Sets the <code class="xref py py-class docutils literal"><span class="pre">MessageHandler</span></code> instance used for messages that arrive from AMPS</dt>
|
|
993
|
-
<dd>that are deemed to be duplicates of previous messages, according to the local bookmark store.</dd>
|
|
994
|
-
</dl>
|
|
995
|
-
</div></blockquote>
|
|
1119
|
+
<dd><p>Sets the <code class="xref py py-class docutils literal"><span class="pre">MessageHandler</span></code> instance used for messages that arrive from AMPS that are deemed to be duplicates
|
|
1120
|
+
of previous messages, according to the local bookmark store.</p>
|
|
996
1121
|
<table class="docutils field-list" frame="void" rules="none">
|
|
997
1122
|
<col class="field-name" />
|
|
998
1123
|
<col class="field-body" />
|
|
999
1124
|
<tbody valign="top">
|
|
1000
|
-
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>message_handler</strong> (<code class="xref py py-class docutils literal"><span class="pre">MessageHandler</span></code>) – The message handler to invoke for
|
|
1001
|
-
messages.</td>
|
|
1125
|
+
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>message_handler</strong> (<code class="xref py py-class docutils literal"><span class="pre">MessageHandler</span></code>) – The message handler to invoke for duplicate messages.</td>
|
|
1002
1126
|
</tr>
|
|
1003
1127
|
</tbody>
|
|
1004
1128
|
</table>
|
|
@@ -1007,14 +1131,13 @@ messages.</td>
|
|
|
1007
1131
|
<dl class="method">
|
|
1008
1132
|
<dt id="AMPS.Client.set_error_on_publish_gap">
|
|
1009
1133
|
<code class="descclassname">Client.</code><code class="descname">set_error_on_publish_gap</code><span class="sig-paren">(</span><em>error_on_publish_gap</em><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.Client.set_error_on_publish_gap" title="Permalink to this definition">¶</a></dt>
|
|
1010
|
-
<dd><
|
|
1011
|
-
<div>Called to enable or disable throwing PublishStoreGapException.</div></blockquote>
|
|
1134
|
+
<dd><p>Called to enable or disable throwing <a class="reference internal" href="#AMPS.PublishStoreGapException" title="AMPS.PublishStoreGapException"><code class="xref py py-exc docutils literal"><span class="pre">PublishStoreGapException</span></code></a>.</p>
|
|
1012
1135
|
<table class="docutils field-list" frame="void" rules="none">
|
|
1013
1136
|
<col class="field-name" />
|
|
1014
1137
|
<col class="field-body" />
|
|
1015
1138
|
<tbody valign="top">
|
|
1016
|
-
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>error_on_publish_gap</strong> (<em>Boolean</em>) – If true, PublishStoreGapException can be thrown
|
|
1017
|
-
|
|
1139
|
+
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>error_on_publish_gap</strong> (<em>Boolean</em>) – If true, <a class="reference internal" href="#AMPS.PublishStoreGapException" title="AMPS.PublishStoreGapException"><code class="xref py py-exc docutils literal"><span class="pre">PublishStoreGapException</span></code></a> can be thrown by the
|
|
1140
|
+
client publish store if the client logs onto a server that
|
|
1018
1141
|
appears to be missing messages no longer held in the store.</td>
|
|
1019
1142
|
</tr>
|
|
1020
1143
|
</tbody>
|
|
@@ -1024,18 +1147,12 @@ appears to be missing messages no longer held in the store.</td>
|
|
|
1024
1147
|
<dl class="method">
|
|
1025
1148
|
<dt id="AMPS.Client.set_exception_listener">
|
|
1026
1149
|
<code class="descclassname">Client.</code><code class="descname">set_exception_listener</code><span class="sig-paren">(</span><em>exception_listener</em><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.Client.set_exception_listener" title="Permalink to this definition">¶</a></dt>
|
|
1027
|
-
<dd><
|
|
1028
|
-
<div><dl class="docutils">
|
|
1029
|
-
<dt>Sets the exception listener instance used for communicating</dt>
|
|
1030
|
-
<dd>absorbed exceptions.</dd>
|
|
1031
|
-
</dl>
|
|
1032
|
-
</div></blockquote>
|
|
1150
|
+
<dd><p>Sets the exception listener instance used for communicating absorbed exceptions.</p>
|
|
1033
1151
|
<table class="docutils field-list" frame="void" rules="none">
|
|
1034
1152
|
<col class="field-name" />
|
|
1035
1153
|
<col class="field-body" />
|
|
1036
1154
|
<tbody valign="top">
|
|
1037
|
-
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>exception_listener</strong> (<code class="xref py py-exc docutils literal"><span class="pre">Exception</span></code>) – The exception listener instance to invoke
|
|
1038
|
-
for exceptions.</td>
|
|
1155
|
+
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>exception_listener</strong> (<code class="xref py py-exc docutils literal"><span class="pre">Exception</span></code>) – The exception listener instance to invoke for exceptions.</td>
|
|
1039
1156
|
</tr>
|
|
1040
1157
|
</tbody>
|
|
1041
1158
|
</table>
|
|
@@ -1045,39 +1162,42 @@ for exceptions.</td>
|
|
|
1045
1162
|
<dt id="AMPS.Client.set_failed_write_handler">
|
|
1046
1163
|
<code class="descclassname">Client.</code><code class="descname">set_failed_write_handler</code><span class="sig-paren">(</span><em>failedWriteHandler</em><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.Client.set_failed_write_handler" title="Permalink to this definition">¶</a></dt>
|
|
1047
1164
|
<dd><p>Sets a failed write handler on self.</p>
|
|
1048
|
-
<table class="docutils field-list" frame="void" rules="none">
|
|
1049
|
-
<col class="field-name" />
|
|
1050
|
-
<col class="field-body" />
|
|
1051
|
-
<tbody valign="top">
|
|
1052
|
-
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>failedWriteHandler</strong> – a callable object to be invoked when AMPS indicates that a published message is not written. This could be because a duplicate message already exists in the transaction log, this client is not entitled to publish to the topic, the message failed to parse, or other similar reasons.
|
|
1053
|
-
Parameters to this callable are an AMPS <em>message</em> when the client has a message saved in the publish store, and a string that contains the <em>reason</em> the publish failed.</td>
|
|
1054
|
-
</tr>
|
|
1055
|
-
</tbody>
|
|
1056
|
-
</table>
|
|
1057
1165
|
<p>For example, you might implement a function like:</p>
|
|
1058
1166
|
<div class="highlight-default"><div class="highlight"><pre><span></span><span class="k">def</span> <span class="nf">PrintFailedWrites</span><span class="p">(</span><span class="n">message</span><span class="p">,</span> <span class="n">reason</span><span class="p">):</span>
|
|
1059
1167
|
<span class="n">output</span> <span class="o">=</span> <span class="s2">"Uh-oh, something went wrong writing to AMPS. (</span><span class="si">%s</span><span class="s2">) "</span> <span class="o">%</span> <span class="n">reason</span>
|
|
1060
1168
|
<span class="k">if</span> <span class="p">(</span><span class="n">message</span> <span class="o">!=</span> <span class="kc">None</span><span class="p">):</span>
|
|
1061
|
-
<span class="n">output</span> <span class="o">+=</span> <span class="s2">"Topic: </span><span class="si">%s</span><span class="s2">, Data snippet: </span><span class="si">%s</span><span class="s2">..."</span> <span class="o">%</span>
|
|
1169
|
+
<span class="n">output</span> <span class="o">+=</span> <span class="s2">"Topic: </span><span class="si">%s</span><span class="s2">, Data snippet: </span><span class="si">%s</span><span class="s2">..."</span> <span class="o">%</span>
|
|
1062
1170
|
<span class="p">(</span><span class="n">message</span><span class="o">.</span><span class="n">get_topic</span><span class="p">(),</span> <span class="n">message</span><span class="o">.</span><span class="n">get_data</span><span class="p">()[</span><span class="mi">0</span><span class="p">:</span><span class="mi">20</span><span class="p">])</span>
|
|
1063
1171
|
<span class="nb">print</span> <span class="n">output</span>
|
|
1064
1172
|
</pre></div>
|
|
1065
1173
|
</div>
|
|
1174
|
+
<table class="docutils field-list" frame="void" rules="none">
|
|
1175
|
+
<col class="field-name" />
|
|
1176
|
+
<col class="field-body" />
|
|
1177
|
+
<tbody valign="top">
|
|
1178
|
+
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>failedWriteHandler</strong> – A callable object to be invoked when AMPS indicates that a published message is not
|
|
1179
|
+
written. This could be because a duplicate message already exists in the transaction
|
|
1180
|
+
log, this client is not entitled to publish to the topic, the message failed to parse,
|
|
1181
|
+
or other similar reasons.
|
|
1182
|
+
Parameters to this callable are an AMPS <em>message</em> when the client has a message saved
|
|
1183
|
+
in the publish store, and a string that contains the <em>reason</em> the publish failed.</td>
|
|
1184
|
+
</tr>
|
|
1185
|
+
</tbody>
|
|
1186
|
+
</table>
|
|
1066
1187
|
</dd></dl>
|
|
1067
1188
|
|
|
1068
1189
|
<dl class="method">
|
|
1069
1190
|
<dt id="AMPS.Client.set_global_command_type_message_handler">
|
|
1070
1191
|
<code class="descclassname">Client.</code><code class="descname">set_global_command_type_message_handler</code><span class="sig-paren">(</span><em>command</em>, <em>message_handler</em><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.Client.set_global_command_type_message_handler" title="Permalink to this definition">¶</a></dt>
|
|
1071
|
-
<dd><
|
|
1072
|
-
|
|
1073
|
-
server with the specified command.</div></blockquote>
|
|
1192
|
+
<dd><p>Add a message handler to the <a class="reference internal" href="#AMPS.Client" title="AMPS.Client"><code class="xref py py-class docutils literal"><span class="pre">Client</span></code></a> to handle messages from the
|
|
1193
|
+
server with the specified command.</p>
|
|
1074
1194
|
<table class="docutils field-list" frame="void" rules="none">
|
|
1075
1195
|
<col class="field-name" />
|
|
1076
1196
|
<col class="field-body" />
|
|
1077
1197
|
<tbody valign="top">
|
|
1078
1198
|
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
|
|
1079
1199
|
<li><strong>command</strong> (<em>str</em>) – The command to send to the handler.
|
|
1080
|
-
Valid values are
|
|
1200
|
+
Valid values are <code class="docutils literal"><span class="pre">ack</span></code> and <code class="docutils literal"><span class="pre">heartbeat</span></code>.</li>
|
|
1081
1201
|
<li><strong>message_handler</strong> (<code class="xref py py-class docutils literal"><span class="pre">MessageHandler</span></code>) – The message handler that will receive messages
|
|
1082
1202
|
of the command specified.</li>
|
|
1083
1203
|
</ul>
|
|
@@ -1090,34 +1210,29 @@ of the command specified.</li>
|
|
|
1090
1210
|
<dl class="method">
|
|
1091
1211
|
<dt id="AMPS.Client.set_heartbeat">
|
|
1092
1212
|
<code class="descclassname">Client.</code><code class="descname">set_heartbeat</code><span class="sig-paren">(</span><em>interval_seconds</em>, <em>timeout_seconds=None</em><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.Client.set_heartbeat" title="Permalink to this definition">¶</a></dt>
|
|
1093
|
-
<dd><
|
|
1094
|
-
<
|
|
1095
|
-
<dd><blockquote class="first">
|
|
1096
|
-
<div><a class="reference internal" href="#AMPS.Client" title="AMPS.Client"><code class="xref py py-class docutils literal"><span class="pre">Client</span></code></a> sends a heartbeat message to an AMPS instance, the AMPS
|
|
1213
|
+
<dd><p>Used to enable heartbeating between the client and the AMPS Server. When a
|
|
1214
|
+
<a class="reference internal" href="#AMPS.Client" title="AMPS.Client"><code class="xref py py-class docutils literal"><span class="pre">Client</span></code></a> sends a heartbeat message to an AMPS instance, the AMPS
|
|
1097
1215
|
instance will send back an acknowledgment message. From this point forward the
|
|
1098
1216
|
<a class="reference internal" href="#AMPS.Client" title="AMPS.Client"><code class="xref py py-class docutils literal"><span class="pre">Client</span></code></a> and AMPS instance will each monitor that the other is still active.
|
|
1099
1217
|
AMPS sends heartbeat messages to the client at the specified interval.
|
|
1100
1218
|
If the <a class="reference internal" href="#AMPS.Client" title="AMPS.Client"><code class="xref py py-class docutils literal"><span class="pre">Client</span></code></a> does not receive a heartbeat message within
|
|
1101
|
-
the time interval specified in
|
|
1219
|
+
the time interval specified in <code class="docutils literal"><span class="pre">timeout_seconds</span></code>, then the <cite>Client</cite>
|
|
1102
1220
|
will assume that the connection has ended, close the connection and
|
|
1103
1221
|
invoke the <code class="xref py py-exc docutils literal"><span class="pre">DisconnectHandler</span></code>. Likewise, if the server
|
|
1104
1222
|
sends a heartbeat and does not receive a response within the timeout,
|
|
1105
1223
|
the server will consider the client to be nonresponsive and close
|
|
1106
|
-
the connection.</
|
|
1107
|
-
<p
|
|
1224
|
+
the connection.</p>
|
|
1225
|
+
<p>Heartbeats are processed in the client receive thread. If you use
|
|
1108
1226
|
asynchronous message processing, your message handler must process
|
|
1109
1227
|
messages within the timeout interval, or risk being disconnected
|
|
1110
1228
|
by the server.</p>
|
|
1111
|
-
</dd>
|
|
1112
|
-
</dl>
|
|
1113
1229
|
<table class="docutils field-list" frame="void" rules="none">
|
|
1114
1230
|
<col class="field-name" />
|
|
1115
1231
|
<col class="field-body" />
|
|
1116
1232
|
<tbody valign="top">
|
|
1117
1233
|
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
|
|
1118
|
-
<li><strong>interval_seconds</strong> (<em>int</em>) – The time between heartbeat messages being sent
|
|
1119
|
-
to AMPS.</li>
|
|
1120
|
-
<li><strong>timeout</strong> – The maximum time to wait for AMPS to acknowledge the start of heartbeating (in seconds)</li>
|
|
1234
|
+
<li><strong>interval_seconds</strong> (<em>int</em>) – The time between heartbeat messages being sent to AMPS.</li>
|
|
1235
|
+
<li><strong>timeout_seconds</strong> (<em>int</em>) – The maximum time to wait for AMPS to acknowledge the start of heartbeating (in seconds).</li>
|
|
1121
1236
|
</ul>
|
|
1122
1237
|
</td>
|
|
1123
1238
|
</tr>
|
|
@@ -1128,8 +1243,7 @@ to AMPS.</li>
|
|
|
1128
1243
|
<dl class="method">
|
|
1129
1244
|
<dt id="AMPS.Client.set_last_chance_message_handler">
|
|
1130
1245
|
<code class="descclassname">Client.</code><code class="descname">set_last_chance_message_handler</code><span class="sig-paren">(</span><em>message_handler</em><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.Client.set_last_chance_message_handler" title="Permalink to this definition">¶</a></dt>
|
|
1131
|
-
<dd><
|
|
1132
|
-
<div>Sets the <code class="xref py py-class docutils literal"><span class="pre">MessageHandler</span></code> instance called when no other incoming message handler matches.</div></blockquote>
|
|
1246
|
+
<dd><p>Sets the <code class="xref py py-class docutils literal"><span class="pre">MessageHandler</span></code> instance called when no other incoming message handler matches.</p>
|
|
1133
1247
|
<table class="docutils field-list" frame="void" rules="none">
|
|
1134
1248
|
<col class="field-name" />
|
|
1135
1249
|
<col class="field-body" />
|
|
@@ -1142,13 +1256,13 @@ to AMPS.</li>
|
|
|
1142
1256
|
|
|
1143
1257
|
<dl class="method">
|
|
1144
1258
|
<dt id="AMPS.Client.set_logon_correlation_data">
|
|
1145
|
-
<code class="descclassname">Client.</code><code class="descname">set_logon_correlation_data</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.Client.set_logon_correlation_data" title="Permalink to this definition">¶</a></dt>
|
|
1259
|
+
<code class="descclassname">Client.</code><code class="descname">set_logon_correlation_data</code><span class="sig-paren">(</span><em>logon_correlation_data</em><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.Client.set_logon_correlation_data" title="Permalink to this definition">¶</a></dt>
|
|
1146
1260
|
<dd><p>Sets the data used to correlate the logon of this Client in the server.</p>
|
|
1147
1261
|
<table class="docutils field-list" frame="void" rules="none">
|
|
1148
1262
|
<col class="field-name" />
|
|
1149
1263
|
<col class="field-body" />
|
|
1150
1264
|
<tbody valign="top">
|
|
1151
|
-
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>
|
|
1265
|
+
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>logon_correlation_data</strong> – The base64 data string to send with the logon.</td>
|
|
1152
1266
|
</tr>
|
|
1153
1267
|
</tbody>
|
|
1154
1268
|
</table>
|
|
@@ -1157,18 +1271,26 @@ to AMPS.</li>
|
|
|
1157
1271
|
<dl class="method">
|
|
1158
1272
|
<dt id="AMPS.Client.set_name">
|
|
1159
1273
|
<code class="descclassname">Client.</code><code class="descname">set_name</code><span class="sig-paren">(</span><em>name</em><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.Client.set_name" title="Permalink to this definition">¶</a></dt>
|
|
1160
|
-
<dd><p>
|
|
1274
|
+
<dd><p>Sets the <a class="reference internal" href="#AMPS.Client" title="AMPS.Client"><code class="xref py py-class docutils literal"><span class="pre">Client</span></code></a> name.</p>
|
|
1275
|
+
<table class="docutils field-list" frame="void" rules="none">
|
|
1276
|
+
<col class="field-name" />
|
|
1277
|
+
<col class="field-body" />
|
|
1278
|
+
<tbody valign="top">
|
|
1279
|
+
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>name</strong> – The <a class="reference internal" href="#AMPS.Client" title="AMPS.Client"><code class="xref py py-class docutils literal"><span class="pre">Client</span></code></a> name.</td>
|
|
1280
|
+
</tr>
|
|
1281
|
+
</tbody>
|
|
1282
|
+
</table>
|
|
1161
1283
|
</dd></dl>
|
|
1162
1284
|
|
|
1163
1285
|
<dl class="method">
|
|
1164
1286
|
<dt id="AMPS.Client.set_publish_store">
|
|
1165
|
-
<code class="descclassname">Client.</code><code class="descname">set_publish_store</code><span class="sig-paren">(</span><em>
|
|
1287
|
+
<code class="descclassname">Client.</code><code class="descname">set_publish_store</code><span class="sig-paren">(</span><em>publish_store</em><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.Client.set_publish_store" title="Permalink to this definition">¶</a></dt>
|
|
1166
1288
|
<dd><p>Sets a publish store on self.</p>
|
|
1167
1289
|
<table class="docutils field-list" frame="void" rules="none">
|
|
1168
1290
|
<col class="field-name" />
|
|
1169
1291
|
<col class="field-body" />
|
|
1170
1292
|
<tbody valign="top">
|
|
1171
|
-
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>
|
|
1293
|
+
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>publish_store</strong> – a <a class="reference internal" href="#AMPS.PublishStore" title="AMPS.PublishStore"><code class="xref py py-class docutils literal"><span class="pre">PublishStore</span></code></a> or <a class="reference internal" href="#AMPS.MemoryPublishStore" title="AMPS.MemoryPublishStore"><code class="xref py py-class docutils literal"><span class="pre">MemoryPublishStore</span></code></a> instance.</td>
|
|
1172
1294
|
</tr>
|
|
1173
1295
|
</tbody>
|
|
1174
1296
|
</table>
|
|
@@ -1177,18 +1299,24 @@ to AMPS.</li>
|
|
|
1177
1299
|
<dl class="method">
|
|
1178
1300
|
<dt id="AMPS.Client.set_retry_on_disconnect">
|
|
1179
1301
|
<code class="descclassname">Client.</code><code class="descname">set_retry_on_disconnect</code><span class="sig-paren">(</span><em>enabled</em><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.Client.set_retry_on_disconnect" title="Permalink to this definition">¶</a></dt>
|
|
1180
|
-
<dd><
|
|
1181
|
-
<
|
|
1182
|
-
<
|
|
1183
|
-
<
|
|
1184
|
-
|
|
1302
|
+
<dd><p>Enables or disables automatic retry of a command to AMPS after a reconnect. This behavior is enabled by default.</p>
|
|
1303
|
+
<blockquote>
|
|
1304
|
+
<div><div class="admonition note">
|
|
1305
|
+
<p class="first admonition-title">Note</p>
|
|
1306
|
+
<p class="last">Clients using a publish store will have all publish
|
|
1185
1307
|
messages sent, regardless of this setting. Also, Clients with
|
|
1186
1308
|
a subscription manager, including all HAClients, will have all
|
|
1187
|
-
subscribe calls placed.</
|
|
1188
|
-
</
|
|
1309
|
+
subscribe calls placed.</p>
|
|
1310
|
+
</div>
|
|
1189
1311
|
</div></blockquote>
|
|
1190
|
-
<
|
|
1191
|
-
|
|
1312
|
+
<table class="docutils field-list" frame="void" rules="none">
|
|
1313
|
+
<col class="field-name" />
|
|
1314
|
+
<col class="field-body" />
|
|
1315
|
+
<tbody valign="top">
|
|
1316
|
+
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>enabled</strong> (<em>Boolean</em>) – False to disable automatic retry of commands to AMPS.</td>
|
|
1317
|
+
</tr>
|
|
1318
|
+
</tbody>
|
|
1319
|
+
</table>
|
|
1192
1320
|
</dd></dl>
|
|
1193
1321
|
|
|
1194
1322
|
<dl class="method">
|
|
@@ -1213,6 +1341,10 @@ subscribe calls placed.</dd>
|
|
|
1213
1341
|
<col class="field-name" />
|
|
1214
1342
|
<col class="field-body" />
|
|
1215
1343
|
<tbody valign="top">
|
|
1344
|
+
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>transport_filter_callable</strong> (<em>A python function</em><em> or </em><em>other callable that takes two parameters: data and direction.</em>) – The function or callable to be called. This function is passed a string (‘data’)
|
|
1345
|
+
containing the raw bytes sent or received. The ‘direction’ parameter is False if
|
|
1346
|
+
the data is being sent to the server, or True if data is received from the server.</td>
|
|
1347
|
+
</tr>
|
|
1216
1348
|
</tbody>
|
|
1217
1349
|
</table>
|
|
1218
1350
|
</dd></dl>
|
|
@@ -1220,62 +1352,71 @@ subscribe calls placed.</dd>
|
|
|
1220
1352
|
<dl class="method">
|
|
1221
1353
|
<dt id="AMPS.Client.set_unhandled_message_handler">
|
|
1222
1354
|
<code class="descclassname">Client.</code><code class="descname">set_unhandled_message_handler</code><span class="sig-paren">(</span><em>message_handler</em><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.Client.set_unhandled_message_handler" title="Permalink to this definition">¶</a></dt>
|
|
1223
|
-
<dd><
|
|
1224
|
-
<
|
|
1225
|
-
<dd><div class="first last deprecated">
|
|
1355
|
+
<dd><p>A legacy method name for <a class="reference internal" href="#AMPS.Client.set_last_chance_message_handler" title="AMPS.Client.set_last_chance_message_handler"><code class="xref py py-meth docutils literal"><span class="pre">set_last_chance_message_handler()</span></code></a>.</p>
|
|
1356
|
+
<div class="deprecated">
|
|
1226
1357
|
<p><span class="versionmodified">Deprecated since version 4.0.0.0: </span>Use <a class="reference internal" href="#AMPS.Client.set_last_chance_message_handler" title="AMPS.Client.set_last_chance_message_handler"><code class="xref py py-func docutils literal"><span class="pre">set_last_chance_message_handler()</span></code></a> instead.</p>
|
|
1227
1358
|
</div>
|
|
1228
|
-
</dd>
|
|
1229
|
-
</dl>
|
|
1230
1359
|
</dd></dl>
|
|
1231
1360
|
|
|
1232
1361
|
<dl class="method">
|
|
1233
1362
|
<dt id="AMPS.Client.sow">
|
|
1234
|
-
<code class="descclassname">Client.</code><code class="descname">sow</code><span class="sig-paren">(</span><
|
|
1235
|
-
<dd><p>
|
|
1236
|
-
|
|
1237
|
-
|
|
1238
|
-
|
|
1239
|
-
<
|
|
1363
|
+
<code class="descclassname">Client.</code><code class="descname">sow</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.Client.sow" title="Permalink to this definition">¶</a></dt>
|
|
1364
|
+
<dd><p><strong>Signatures</strong>:</p>
|
|
1365
|
+
<ul>
|
|
1366
|
+
<li><p class="first"><code class="docutils literal"><span class="pre">Client.sow(on_message,</span> <span class="pre">topic,</span> <span class="pre">filter=None,</span> <span class="pre">batch_size=10,</span> <span class="pre">timeout=0,</span> <span class="pre">top_n=None,</span> <span class="pre">order_by=None,</span> <span class="pre">bookmark=None,</span> <span class="pre">options=0)</span></code></p>
|
|
1367
|
+
</li>
|
|
1368
|
+
<li><p class="first"><code class="docutils literal"><span class="pre">Client.sow(topic,</span> <span class="pre">filter=None,</span> <span class="pre">batch_size=10,</span> <span class="pre">timeout=0,</span> <span class="pre">top_n=None,</span> <span class="pre">order_by=None,</span> <span class="pre">bookmark=None,</span> <span class="pre">options=0)</span></code></p>
|
|
1369
|
+
<p>Executes a SOW query.</p>
|
|
1370
|
+
<p>There are two ways to use this method:</p>
|
|
1371
|
+
<ol class="arabic simple">
|
|
1372
|
+
<li>When a message handler is provided, this method submits the SOW query on a background thread and calls the
|
|
1373
|
+
message handler with individual messages, including the <code class="docutils literal"><span class="pre">group_begin</span></code> and <code class="docutils literal"><span class="pre">group_end</span></code> messages, that indicate
|
|
1374
|
+
the beginning and end of the SOW results.</li>
|
|
1375
|
+
<li>When no message handler is provided, this method returns a message stream that can be iterated on to process
|
|
1376
|
+
messages received including the <code class="docutils literal"><span class="pre">group_begin</span></code> and <code class="docutils literal"><span class="pre">group_end</span></code> messages, that indicate the beginning and end of
|
|
1377
|
+
the SOW results.</li>
|
|
1378
|
+
</ol>
|
|
1379
|
+
</li>
|
|
1380
|
+
</ul>
|
|
1381
|
+
<p>For example:</p>
|
|
1382
|
+
<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">client</span> <span class="o">=</span> <span class="n">AMPS</span><span class="o">.</span><span class="n">Client</span><span class="p">(</span><span class="s2">"test_client"</span><span class="p">)</span>
|
|
1240
1383
|
|
|
1241
1384
|
<span class="k">try</span><span class="p">:</span>
|
|
1242
|
-
<span class="n">
|
|
1243
|
-
<span class="n">
|
|
1244
|
-
<span class="k">for</span> <span class="n">
|
|
1245
|
-
<span class="nb">print</span>
|
|
1385
|
+
<span class="n">client</span><span class="o">.</span><span class="n">connect</span><span class="p">(</span><span class="s2">"tcp://127.0.0.1:9004/amps/fix"</span><span class="p">)</span>
|
|
1386
|
+
<span class="n">client</span><span class="o">.</span><span class="n">logon</span><span class="p">()</span>
|
|
1387
|
+
<span class="k">for</span> <span class="n">message</span> <span class="ow">in</span> <span class="n">client</span><span class="o">.</span><span class="n">sow</span><span class="p">(</span><span class="s2">"MySowTopic"</span><span class="p">):</span>
|
|
1388
|
+
<span class="nb">print</span><span class="p">(</span><span class="n">message</span><span class="o">.</span><span class="n">get_data</span><span class="p">())</span>
|
|
1246
1389
|
<span class="k">finally</span><span class="p">:</span>
|
|
1247
|
-
<span class="n">
|
|
1390
|
+
<span class="n">client</span><span class="o">.</span><span class="n">close</span><span class="p">()</span>
|
|
1248
1391
|
</pre></div>
|
|
1249
1392
|
</div>
|
|
1250
|
-
<p>Second, you can provide a message handler. In this case, the method creates
|
|
1251
|
-
a background thread and calls the message handler with each message
|
|
1252
|
-
received from AMPS, including the <cite>group_begin</cite> and <cite>group_end</cite> messages
|
|
1253
|
-
that indicate the beginning and end of the SOW query.</p>
|
|
1254
1393
|
<table class="docutils field-list" frame="void" rules="none">
|
|
1255
1394
|
<col class="field-name" />
|
|
1256
1395
|
<col class="field-body" />
|
|
1257
1396
|
<tbody valign="top">
|
|
1258
1397
|
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
|
|
1259
1398
|
<li><strong>on_message</strong> (<code class="xref py py-class docutils literal"><span class="pre">MessageHandler</span></code>) – The message handler to invoke with matching
|
|
1260
|
-
messages. If this parameter is not present, AMPS creates a
|
|
1261
|
-
|
|
1262
|
-
from the call to sow
|
|
1399
|
+
messages. If this parameter is not present, AMPS creates a
|
|
1400
|
+
<a class="reference internal" href="#AMPS.MessageStream" title="AMPS.MessageStream"><code class="xref py py-class docutils literal"><span class="pre">MessageStream</span></code></a> and returns that message stream
|
|
1401
|
+
from the call to sow (specified only in the case where async
|
|
1402
|
+
processing is used).</li>
|
|
1263
1403
|
<li><strong>topic</strong> (<em>str</em>) – The topic to execute the SOW query against.</li>
|
|
1264
1404
|
<li><strong>filter</strong> (<em>str</em>) – The filter.</li>
|
|
1265
1405
|
<li><strong>batch_size</strong> (<em>int</em>) – The batching parameter to use for the results.</li>
|
|
1266
|
-
<li><strong>timeout</strong> (<em>int</em>) – The maximum time to wait for the client to receive and
|
|
1406
|
+
<li><strong>timeout</strong> (<em>int</em>) – The maximum time to wait for the client to receive and
|
|
1267
1407
|
consume a processed ack for this command (in milliseconds).
|
|
1268
1408
|
<code class="docutils literal"><span class="pre">0</span></code> indicates to wait indefinitely.</li>
|
|
1269
|
-
<li><strong>top_n</strong> (<em>int</em>) – The maximum number of records to return from the
|
|
1409
|
+
<li><strong>top_n</strong> (<em>int</em>) – The maximum number of records to return from the SOW.</li>
|
|
1270
1410
|
<li><strong>order_by</strong> (<em>str</em>) – To have the records ordered by the server.</li>
|
|
1271
|
-
<li><strong>bookmark</strong> (<em>int</em>) – The bookmark for historical query of the
|
|
1411
|
+
<li><strong>bookmark</strong> (<em>int</em>) – The bookmark for historical query of the SOW.</li>
|
|
1272
1412
|
<li><strong>options</strong> (<em>str</em>) – A comma separated list of values indicating additional
|
|
1273
1413
|
processing options.</li>
|
|
1274
1414
|
</ul>
|
|
1275
1415
|
</td>
|
|
1276
1416
|
</tr>
|
|
1277
|
-
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body"><p class="first">
|
|
1278
|
-
|
|
1417
|
+
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body"><p class="first">The command identifier assigned to this command if a message handler was provided.
|
|
1418
|
+
If no message handler was provided, returns a <code class="docutils literal"><span class="pre">MessageStream</span></code> containing the
|
|
1419
|
+
results of the command.</p>
|
|
1279
1420
|
</td>
|
|
1280
1421
|
</tr>
|
|
1281
1422
|
<tr class="field-odd field"><th class="field-name">Raises:</th><td class="field-body"><p class="first last"><a class="reference internal" href="#AMPS.BadFilterException" title="AMPS.BadFilterException"><code class="xref py py-exc docutils literal"><span class="pre">BadFilterException</span></code></a>, <a class="reference internal" href="#AMPS.BadRegexTopicException" title="AMPS.BadRegexTopicException"><code class="xref py py-exc docutils literal"><span class="pre">BadRegexTopicException</span></code></a>,
|
|
@@ -1289,68 +1430,77 @@ assigned to this command. If no message handler is present, returns a
|
|
|
1289
1430
|
<dl class="method">
|
|
1290
1431
|
<dt id="AMPS.Client.sowAndDeltaSubscribe">
|
|
1291
1432
|
<code class="descclassname">Client.</code><code class="descname">sowAndDeltaSubscribe</code><span class="sig-paren">(</span><em>on_message</em>, <em>topic</em>, <em>filter=None</em>, <em>batch_size=1</em>, <em>oof_enabled=False</em>, <em>send_empties=False</em>, <em>options=0</em>, <em>timeout=0</em>, <em>top_n=None</em><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.Client.sowAndDeltaSubscribe" title="Permalink to this definition">¶</a></dt>
|
|
1292
|
-
<dd><
|
|
1293
|
-
<
|
|
1294
|
-
<dd><div class="first last deprecated">
|
|
1433
|
+
<dd><p>A legacy method name for <a class="reference internal" href="#AMPS.Client.sow_and_delta_subscribe" title="AMPS.Client.sow_and_delta_subscribe"><code class="xref py py-meth docutils literal"><span class="pre">sow_and_delta_subscribe()</span></code></a>.</p>
|
|
1434
|
+
<div class="deprecated">
|
|
1295
1435
|
<p><span class="versionmodified">Deprecated since version 3.2.0.0: </span>Use <a class="reference internal" href="#AMPS.Client.sow_and_delta_subscribe" title="AMPS.Client.sow_and_delta_subscribe"><code class="xref py py-func docutils literal"><span class="pre">sow_and_delta_subscribe()</span></code></a> instead.</p>
|
|
1296
1436
|
</div>
|
|
1297
|
-
</dd>
|
|
1298
|
-
</dl>
|
|
1299
1437
|
</dd></dl>
|
|
1300
1438
|
|
|
1301
1439
|
<dl class="method">
|
|
1302
1440
|
<dt id="AMPS.Client.sowAndSubscribe">
|
|
1303
1441
|
<code class="descclassname">Client.</code><code class="descname">sowAndSubscribe</code><span class="sig-paren">(</span><em>on_message</em>, <em>topic</em>, <em>filter</em>, <em>batch_size=1</em>, <em>oof_enabled=False</em>, <em>options=0</em>, <em>timeout=0</em>, <em>top_n=None</em><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.Client.sowAndSubscribe" title="Permalink to this definition">¶</a></dt>
|
|
1304
|
-
<dd><
|
|
1305
|
-
<
|
|
1306
|
-
<dd><div class="first last deprecated">
|
|
1442
|
+
<dd><p>A legacy method name for <a class="reference internal" href="#AMPS.Client.sow_and_subscribe" title="AMPS.Client.sow_and_subscribe"><code class="xref py py-meth docutils literal"><span class="pre">sow_and_subscribe()</span></code></a>.</p>
|
|
1443
|
+
<div class="deprecated">
|
|
1307
1444
|
<p><span class="versionmodified">Deprecated since version 3.2.0.0: </span>Use <a class="reference internal" href="#AMPS.Client.sow_and_subscribe" title="AMPS.Client.sow_and_subscribe"><code class="xref py py-func docutils literal"><span class="pre">sow_and_subscribe()</span></code></a> instead.</p>
|
|
1308
1445
|
</div>
|
|
1309
|
-
</dd>
|
|
1310
|
-
</dl>
|
|
1311
1446
|
</dd></dl>
|
|
1312
1447
|
|
|
1313
1448
|
<dl class="method">
|
|
1314
1449
|
<dt id="AMPS.Client.sowDelete">
|
|
1315
|
-
<code class="descclassname">Client.</code><code class="descname">sowDelete</code><span class="sig-paren">(</span><em>on_message</em>, <em>topic</em>, <em>filter=None</em>, <em>
|
|
1316
|
-
<dd><
|
|
1317
|
-
<
|
|
1318
|
-
<dd><div class="first last deprecated">
|
|
1450
|
+
<code class="descclassname">Client.</code><code class="descname">sowDelete</code><span class="sig-paren">(</span><em>on_message</em>, <em>topic</em>, <em>filter=None</em>, <em>timeout=0</em><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.Client.sowDelete" title="Permalink to this definition">¶</a></dt>
|
|
1451
|
+
<dd><p>A legacy method name for <a class="reference internal" href="#AMPS.Client.sow_delete" title="AMPS.Client.sow_delete"><code class="xref py py-meth docutils literal"><span class="pre">sow_delete()</span></code></a>.</p>
|
|
1452
|
+
<div class="deprecated">
|
|
1319
1453
|
<p><span class="versionmodified">Deprecated since version 3.2.0.0: </span>Use <a class="reference internal" href="#AMPS.Client.sow_delete" title="AMPS.Client.sow_delete"><code class="xref py py-func docutils literal"><span class="pre">sow_delete()</span></code></a> instead.</p>
|
|
1320
1454
|
</div>
|
|
1321
|
-
</dd>
|
|
1322
|
-
</dl>
|
|
1323
1455
|
</dd></dl>
|
|
1324
1456
|
|
|
1325
1457
|
<dl class="method">
|
|
1326
1458
|
<dt id="AMPS.Client.sow_and_delta_subscribe">
|
|
1327
|
-
<code class="descclassname">Client.</code><code class="descname">sow_and_delta_subscribe</code><span class="sig-paren">(</span><
|
|
1328
|
-
<dd><p>
|
|
1459
|
+
<code class="descclassname">Client.</code><code class="descname">sow_and_delta_subscribe</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.Client.sow_and_delta_subscribe" title="Permalink to this definition">¶</a></dt>
|
|
1460
|
+
<dd><p><strong>Signatures</strong>:</p>
|
|
1461
|
+
<ul>
|
|
1462
|
+
<li><p class="first"><code class="docutils literal"><span class="pre">Client.sow_and_delta_subscribe(on_message,</span> <span class="pre">topic,</span> <span class="pre">filter=None,</span> <span class="pre">batch_size=1,</span> <span class="pre">oof_enabled=False,</span> <span class="pre">send_empties=False,</span> <span class="pre">timeout=0,</span> <span class="pre">top_n=None,</span> <span class="pre">order_by=None,</span> <span class="pre">options=None)</span></code></p>
|
|
1463
|
+
</li>
|
|
1464
|
+
<li><p class="first"><code class="docutils literal"><span class="pre">Client.sow_and_delta_subscribe(topic,</span> <span class="pre">filter=None,</span> <span class="pre">batch_size=1,</span> <span class="pre">oof_enabled=False,</span> <span class="pre">send_empties=False,</span> <span class="pre">timeout=0,</span> <span class="pre">top_n=None,</span> <span class="pre">order_by=None,</span> <span class="pre">options=None)</span></code></p>
|
|
1465
|
+
<p>Executes a SOW query and places a delta subscription.</p>
|
|
1466
|
+
<p>There are two ways to use this method:</p>
|
|
1467
|
+
<ol class="arabic simple">
|
|
1468
|
+
<li>When a message handler is provided, this method submits the <code class="docutils literal"><span class="pre">sow_and_delta_subscribe</span></code> command on a background
|
|
1469
|
+
thread and calls the message handler with individual messages received from the SOW query, including the
|
|
1470
|
+
<code class="docutils literal"><span class="pre">group_begin</span></code> and <code class="docutils literal"><span class="pre">group_end</span></code> messages, that indicate the beginning and end of the SOW results and then with
|
|
1471
|
+
messages received that match the subscription and that contain the updated fields.</li>
|
|
1472
|
+
<li>When no message handler is provided, this method returns a message stream that can be iterated on to process
|
|
1473
|
+
messages received from the SOW query, including the <code class="docutils literal"><span class="pre">group_begin</span></code> and <code class="docutils literal"><span class="pre">group_end</span></code> messages, that indicate the
|
|
1474
|
+
beginning and end of the SOW results and then processes messages received that match the subscription and that
|
|
1475
|
+
contain the updated fields.</li>
|
|
1476
|
+
</ol>
|
|
1477
|
+
</li>
|
|
1478
|
+
</ul>
|
|
1329
1479
|
<table class="docutils field-list" frame="void" rules="none">
|
|
1330
1480
|
<col class="field-name" />
|
|
1331
1481
|
<col class="field-body" />
|
|
1332
1482
|
<tbody valign="top">
|
|
1333
1483
|
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
|
|
1334
1484
|
<li><strong>on_message</strong> (<code class="xref py py-class docutils literal"><span class="pre">MessageHandler</span></code>) – The message handler to invoke with matching
|
|
1335
|
-
messages.</li>
|
|
1336
|
-
<li><strong>topic</strong> (<em>str</em>) – The
|
|
1485
|
+
messages (specified only in the case where async processing is used).</li>
|
|
1486
|
+
<li><strong>topic</strong> (<em>str</em>) – The topic to execute the SOW query against.</li>
|
|
1337
1487
|
<li><strong>filter</strong> (<em>str</em>) – The filter.</li>
|
|
1338
1488
|
<li><strong>batch_size</strong> (<em>int</em>) – The batch sizing parameter to use for the results.</li>
|
|
1339
|
-
<li><strong>oof_enabled</strong> (<em>boolean</em>) – Specifies whether or not Out-of-Focus processing is
|
|
1340
|
-
enabled.</li>
|
|
1489
|
+
<li><strong>oof_enabled</strong> (<em>boolean</em>) – Specifies whether or not Out-of-Focus processing is enabled.</li>
|
|
1341
1490
|
<li><strong>send_empties</strong> (<em>boolean</em>) – Specifies whether or not unchanged records are
|
|
1342
1491
|
received on the delta subscription.</li>
|
|
1343
|
-
<li><strong>timeout</strong> (<em>int</em>) – The maximum time to wait for the client to receive and
|
|
1492
|
+
<li><strong>timeout</strong> (<em>int</em>) – The maximum time to wait for the client to receive and
|
|
1344
1493
|
consume the processed ack for this command (in milliseconds).
|
|
1345
1494
|
<code class="docutils literal"><span class="pre">0</span></code> indicates to wait indefinitely.</li>
|
|
1346
|
-
<li><strong>top_n</strong> (<em>int</em>) – The maximum number of records to return from the
|
|
1495
|
+
<li><strong>top_n</strong> (<em>int</em>) – The maximum number of records to return from the SOW.</li>
|
|
1347
1496
|
<li><strong>order_by</strong> (<em>str</em>) – To have the records ordered by the server.</li>
|
|
1348
|
-
<li><strong>options</strong> (<em>str</em>) – A comma separated list of values indicating additional
|
|
1349
|
-
processing options.</li>
|
|
1497
|
+
<li><strong>options</strong> (<em>str</em>) – A comma separated list of values indicating additional processing options.</li>
|
|
1350
1498
|
</ul>
|
|
1351
1499
|
</td>
|
|
1352
1500
|
</tr>
|
|
1353
|
-
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body"><p class="first">The command identifier assigned to this command
|
|
1501
|
+
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body"><p class="first">The command identifier assigned to this command if a message handler was provided.
|
|
1502
|
+
If no message handler was provided, returns a <code class="docutils literal"><span class="pre">MessageStream</span></code> containing the results
|
|
1503
|
+
of the command.</p>
|
|
1354
1504
|
</td>
|
|
1355
1505
|
</tr>
|
|
1356
1506
|
<tr class="field-odd field"><th class="field-name">Raises:</th><td class="field-body"><p class="first last"><a class="reference internal" href="#AMPS.SubscriptionAlreadyExistsException" title="AMPS.SubscriptionAlreadyExistsException"><code class="xref py py-exc docutils literal"><span class="pre">SubscriptionAlreadyExistsException</span></code></a>,
|
|
@@ -1364,32 +1514,49 @@ processing options.</li>
|
|
|
1364
1514
|
|
|
1365
1515
|
<dl class="method">
|
|
1366
1516
|
<dt id="AMPS.Client.sow_and_subscribe">
|
|
1367
|
-
<code class="descclassname">Client.</code><code class="descname">sow_and_subscribe</code><span class="sig-paren">(</span><
|
|
1368
|
-
<dd><p>
|
|
1517
|
+
<code class="descclassname">Client.</code><code class="descname">sow_and_subscribe</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.Client.sow_and_subscribe" title="Permalink to this definition">¶</a></dt>
|
|
1518
|
+
<dd><p><strong>Signatures</strong>:</p>
|
|
1519
|
+
<ul>
|
|
1520
|
+
<li><p class="first"><code class="docutils literal"><span class="pre">Client.sow_and_subscribe(on_message,</span> <span class="pre">topic,</span> <span class="pre">filter=None,</span> <span class="pre">batch_size=1,</span> <span class="pre">oof_enabled=False,</span> <span class="pre">timeout=0,</span> <span class="pre">top_n=None,</span> <span class="pre">order_by=None,</span> <span class="pre">bookmark=None,</span> <span class="pre">options=None)</span></code></p>
|
|
1521
|
+
</li>
|
|
1522
|
+
<li><p class="first"><code class="docutils literal"><span class="pre">Client.sow_and_subscribe(topic,</span> <span class="pre">filter=None,</span> <span class="pre">batch_size=1,</span> <span class="pre">oof_enabled=False,</span> <span class="pre">timeout=0,</span> <span class="pre">top_n=None,</span> <span class="pre">order_by=None,</span> <span class="pre">bookmark=None,</span> <span class="pre">options=None)</span></code></p>
|
|
1523
|
+
<p>Executes a SOW query and places a subscription.</p>
|
|
1524
|
+
<p>There are two ways to use this method:</p>
|
|
1525
|
+
<ol class="arabic simple">
|
|
1526
|
+
<li>When a message handler is provided, this method submits the <code class="docutils literal"><span class="pre">sow_and_subscribe</span></code> command on a background thread
|
|
1527
|
+
and calls the message handler with individual messages received from the SOW query, including the <code class="docutils literal"><span class="pre">group_begin</span></code>
|
|
1528
|
+
and <code class="docutils literal"><span class="pre">group_end</span></code> messages, that indicate the beginning and end of the SOW results and then with messages received
|
|
1529
|
+
that match the subscription.</li>
|
|
1530
|
+
<li>When no message handler is provided, this method returns a message stream that can be iterated on to process
|
|
1531
|
+
messages received from the SOW query, including the <code class="docutils literal"><span class="pre">group_begin</span></code> and <code class="docutils literal"><span class="pre">group_end</span></code> messages, that indicate the
|
|
1532
|
+
beginning and end of the SOW results and then processes messages received that match the subscription.</li>
|
|
1533
|
+
</ol>
|
|
1534
|
+
</li>
|
|
1535
|
+
</ul>
|
|
1369
1536
|
<table class="docutils field-list" frame="void" rules="none">
|
|
1370
1537
|
<col class="field-name" />
|
|
1371
1538
|
<col class="field-body" />
|
|
1372
1539
|
<tbody valign="top">
|
|
1373
1540
|
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
|
|
1374
1541
|
<li><strong>on_message</strong> (<code class="xref py py-class docutils literal"><span class="pre">MessageHandler</span></code>) – The message handler to invoke with matching
|
|
1375
|
-
messages.</li>
|
|
1542
|
+
messages (specified only in the case where async processing is used).</li>
|
|
1376
1543
|
<li><strong>topic</strong> (<em>str</em>) – The topic to execute the SOW query against.</li>
|
|
1377
1544
|
<li><strong>filter</strong> (<em>str</em>) – The filter.</li>
|
|
1378
1545
|
<li><strong>batch_size</strong> (<em>int</em>) – The batching parameter to use for the results.</li>
|
|
1379
|
-
<li><strong>oof_enabled</strong> (<em>boolean</em>) – Specifies whether or not Out-of-Focus processing is
|
|
1380
|
-
enabled.</li>
|
|
1546
|
+
<li><strong>oof_enabled</strong> (<em>boolean</em>) – Specifies whether or not Out-of-Focus processing is enabled.</li>
|
|
1381
1547
|
<li><strong>timeout</strong> (<em>int</em>) – The maximum time to wait for the client to receive and
|
|
1382
|
-
consume the processed ack for this command
|
|
1383
|
-
|
|
1384
|
-
<li><strong>top_n</strong> (<em>int</em>) – The maximum number of records to return from the
|
|
1548
|
+
consume the processed ack for this command (in milliseconds).
|
|
1549
|
+
<code class="docutils literal"><span class="pre">0</span></code> indicates to wait indefinitely.</li>
|
|
1550
|
+
<li><strong>top_n</strong> (<em>int</em>) – The maximum number of records to return from the SOW.</li>
|
|
1385
1551
|
<li><strong>order_by</strong> (<em>str</em>) – To have the records ordered by the server.</li>
|
|
1386
|
-
<li><strong>bookmark</strong> (<em>str</em>) – The bookmark for historical query of the
|
|
1387
|
-
<li><strong>options</strong> (<em>str</em>) – A comma separated list of values indicating additional
|
|
1388
|
-
processing options.</li>
|
|
1552
|
+
<li><strong>bookmark</strong> (<em>str</em>) – The bookmark for historical query of the SOW.</li>
|
|
1553
|
+
<li><strong>options</strong> (<em>str</em>) – A comma separated list of values indicating additional processing options.</li>
|
|
1389
1554
|
</ul>
|
|
1390
1555
|
</td>
|
|
1391
1556
|
</tr>
|
|
1392
|
-
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body"><p class="first">The command identifier assigned to this command
|
|
1557
|
+
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body"><p class="first">The command identifier assigned to this command if a message handler was provided.
|
|
1558
|
+
If no message handler was provided, returns a <code class="docutils literal"><span class="pre">MessageStream</span></code> containing the results
|
|
1559
|
+
of the command.</p>
|
|
1393
1560
|
</td>
|
|
1394
1561
|
</tr>
|
|
1395
1562
|
<tr class="field-odd field"><th class="field-name">Raises:</th><td class="field-body"><p class="first last"><a class="reference internal" href="#AMPS.SubscriptionAlreadyExistsException" title="AMPS.SubscriptionAlreadyExistsException"><code class="xref py py-exc docutils literal"><span class="pre">SubscriptionAlreadyExistsException</span></code></a>,
|
|
@@ -1403,18 +1570,26 @@ processing options.</li>
|
|
|
1403
1570
|
|
|
1404
1571
|
<dl class="method">
|
|
1405
1572
|
<dt id="AMPS.Client.sow_delete">
|
|
1406
|
-
<code class="descclassname">Client.</code><code class="descname">sow_delete</code><span class="sig-paren">(</span><
|
|
1407
|
-
<dd><p>
|
|
1408
|
-
<
|
|
1409
|
-
|
|
1410
|
-
|
|
1411
|
-
<p
|
|
1412
|
-
|
|
1413
|
-
|
|
1573
|
+
<code class="descclassname">Client.</code><code class="descname">sow_delete</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.Client.sow_delete" title="Permalink to this definition">¶</a></dt>
|
|
1574
|
+
<dd><p><strong>Signatures</strong>:</p>
|
|
1575
|
+
<ul>
|
|
1576
|
+
<li><p class="first"><code class="docutils literal"><span class="pre">Client.sow_delete(on_message,</span> <span class="pre">topic,</span> <span class="pre">filter=None,</span> <span class="pre">timeout=0)</span></code></p>
|
|
1577
|
+
</li>
|
|
1578
|
+
<li><p class="first"><code class="docutils literal"><span class="pre">Client.sow_delete(topic,</span> <span class="pre">filter=None,</span> <span class="pre">timeout=0)</span></code></p>
|
|
1579
|
+
<p>Executes a SOW delete with a filter.</p>
|
|
1580
|
+
<p>There are two ways to use this method:</p>
|
|
1581
|
+
<ol class="arabic simple">
|
|
1582
|
+
<li>When a message handler is provided, this method submits the <code class="docutils literal"><span class="pre">sow_delete</span></code> command on a background thread and
|
|
1583
|
+
calls the message handler with the results of the delete.</li>
|
|
1584
|
+
<li>When no message handler is provided, this method returns an acknowledgment message with the result of the
|
|
1585
|
+
delete command.</li>
|
|
1586
|
+
</ol>
|
|
1587
|
+
</li>
|
|
1588
|
+
</ul>
|
|
1414
1589
|
<p>For example, to delete all messages that match a filter:</p>
|
|
1415
1590
|
<div class="highlight-default"><div class="highlight"><pre><span></span><span class="o">...</span>
|
|
1416
1591
|
<span class="n">ackMessage</span> <span class="o">=</span> <span class="n">client</span><span class="o">.</span><span class="n">sow_delete</span><span class="p">(</span><span class="s2">"sow_topic"</span><span class="p">,</span><span class="s2">"/status = 'obsolete'"</span><span class="p">)</span>
|
|
1417
|
-
<span class="nb">print</span>
|
|
1592
|
+
<span class="nb">print</span><span class="p">(</span><span class="s2">"</span><span class="si">%s</span><span class="s2">: </span><span class="si">%s</span><span class="s2">"</span> <span class="o">%</span> <span class="p">(</span><span class="n">ackMessage</span><span class="o">.</span><span class="n">get_ack_type</span><span class="p">(),</span> <span class="n">ackMessage</span><span class="o">.</span><span class="n">get_status</span><span class="p">()))</span>
|
|
1418
1593
|
<span class="o">...</span>
|
|
1419
1594
|
</pre></div>
|
|
1420
1595
|
</div>
|
|
@@ -1423,19 +1598,18 @@ delete.</p>
|
|
|
1423
1598
|
<col class="field-body" />
|
|
1424
1599
|
<tbody valign="top">
|
|
1425
1600
|
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
|
|
1426
|
-
<li><strong>on_message</strong> (<code class="xref py py-exc docutils literal"><span class="pre">MessageHandler</span></code>) – The message handler to invoke with <cite>stats</cite> and
|
|
1427
|
-
|
|
1601
|
+
<li><strong>on_message</strong> (<code class="xref py py-exc docutils literal"><span class="pre">MessageHandler</span></code>) – The message handler to invoke with <cite>stats</cite> and <cite>completed</cite> acknowledgments
|
|
1602
|
+
(specified only in the case where async processing is used).</li>
|
|
1428
1603
|
<li><strong>topic</strong> (<em>str</em>) – The topic to execute the SOW delete against.</li>
|
|
1429
|
-
<li><strong>filter</strong> (<em>str</em>) – The filter. To delete all records, set a filter that is always true (‘1=1’)
|
|
1430
|
-
<li><strong>options</strong> (<em>str</em>) – A comma separated list of values indicating additional
|
|
1431
|
-
processing options.</li>
|
|
1604
|
+
<li><strong>filter</strong> (<em>str</em>) – The filter. To delete all records, set a filter that is always true (‘1=1’).</li>
|
|
1432
1605
|
<li><strong>timeout</strong> (<em>int</em>) – The maximum time to wait for the client to receive and
|
|
1433
1606
|
consume the processed ack for this command (in milliseconds).
|
|
1434
1607
|
<code class="docutils literal"><span class="pre">0</span></code> indicates to wait indefinitely.</li>
|
|
1435
1608
|
</ul>
|
|
1436
1609
|
</td>
|
|
1437
1610
|
</tr>
|
|
1438
|
-
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body"><p class="first">The command identifier assigned to this command
|
|
1611
|
+
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body"><p class="first">The command identifier assigned to this command if a message handler was provided.
|
|
1612
|
+
If no message handler was provided, returns an acknowledgment.</p>
|
|
1439
1613
|
</td>
|
|
1440
1614
|
</tr>
|
|
1441
1615
|
<tr class="field-odd field"><th class="field-name">Raises:</th><td class="field-body"><p class="first last"><a class="reference internal" href="#AMPS.BadFilterException" title="AMPS.BadFilterException"><code class="xref py py-exc docutils literal"><span class="pre">BadFilterException</span></code></a>, <a class="reference internal" href="#AMPS.BadRegexTopicException" title="AMPS.BadRegexTopicException"><code class="xref py py-exc docutils literal"><span class="pre">BadRegexTopicException</span></code></a>,
|
|
@@ -1448,31 +1622,36 @@ consume the processed ack for this command (in milliseconds).
|
|
|
1448
1622
|
|
|
1449
1623
|
<dl class="method">
|
|
1450
1624
|
<dt id="AMPS.Client.sow_delete_by_data">
|
|
1451
|
-
<code class="descclassname">Client.</code><code class="descname">sow_delete_by_data</code><span class="sig-paren">(</span><
|
|
1452
|
-
<dd><p>
|
|
1453
|
-
<
|
|
1454
|
-
|
|
1455
|
-
|
|
1456
|
-
<p
|
|
1457
|
-
|
|
1458
|
-
|
|
1459
|
-
<
|
|
1460
|
-
|
|
1625
|
+
<code class="descclassname">Client.</code><code class="descname">sow_delete_by_data</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.Client.sow_delete_by_data" title="Permalink to this definition">¶</a></dt>
|
|
1626
|
+
<dd><p><strong>Signatures</strong>:</p>
|
|
1627
|
+
<ul>
|
|
1628
|
+
<li><p class="first"><code class="docutils literal"><span class="pre">Client.sow_delete_by_data(on_message,</span> <span class="pre">topic,</span> <span class="pre">data,</span> <span class="pre">timeout=0)</span></code></p>
|
|
1629
|
+
</li>
|
|
1630
|
+
<li><p class="first"><code class="docutils literal"><span class="pre">Client.sow_delete_by_data(topic,</span> <span class="pre">data,</span> <span class="pre">timeout=0)</span></code></p>
|
|
1631
|
+
<p>Executes a SOW delete using the provided message data to determine the SOW key of the record to delete.</p>
|
|
1632
|
+
<p>There are two ways to use this method:</p>
|
|
1633
|
+
<ol class="arabic simple">
|
|
1634
|
+
<li>When a message handler is provided, this method submits the <code class="docutils literal"><span class="pre">sow_delete_by_data</span></code> on a background thread,
|
|
1635
|
+
and calls the message handler with the results of the delete.</li>
|
|
1636
|
+
<li>When no message handler is provided, this method provides an acknowledgment message with the result of
|
|
1637
|
+
the delete command.</li>
|
|
1638
|
+
</ol>
|
|
1639
|
+
</li>
|
|
1640
|
+
</ul>
|
|
1641
|
+
<p>For example, to efficiently delete a message that your program has received from AMPS:</p>
|
|
1461
1642
|
<div class="highlight-default"><div class="highlight"><pre><span></span><span class="o">...</span>
|
|
1462
1643
|
<span class="n">topic</span><span class="o">=</span> <span class="n">aMessage</span><span class="o">.</span><span class="n">get_topic</span><span class="p">()</span>
|
|
1463
1644
|
<span class="n">data</span> <span class="o">=</span> <span class="n">aMessage</span><span class="o">.</span><span class="n">get_data</span><span class="p">()</span>
|
|
1464
1645
|
<span class="n">ackMessage</span> <span class="o">=</span> <span class="n">client</span><span class="o">.</span><span class="n">sow_delete_by_data</span><span class="p">(</span><span class="n">topic</span><span class="p">,</span><span class="n">data</span><span class="p">)</span>
|
|
1465
|
-
<span class="nb">print</span>
|
|
1646
|
+
<span class="nb">print</span><span class="p">(</span><span class="s2">"</span><span class="si">%s</span><span class="s2">: </span><span class="si">%s</span><span class="s2">"</span> <span class="o">%</span> <span class="p">(</span><span class="n">ackMessage</span><span class="o">.</span><span class="n">get_ack_type</span><span class="p">(),</span> <span class="n">ackMessage</span><span class="o">.</span><span class="n">get_status</span><span class="p">()))</span>
|
|
1466
1647
|
<span class="o">...</span>
|
|
1467
1648
|
</pre></div>
|
|
1468
1649
|
</div>
|
|
1469
|
-
<p>In addition to deleting a message from AMPS, this method allows deletion of
|
|
1470
|
-
|
|
1471
|
-
<div class="highlight-default"><div class="highlight"><pre><span></span><span class="o"
|
|
1472
|
-
<span class="n">data</span> <span class="o">=</span> <span class="n">orders</span><span class="p">[</span><span class="n">orderId</span><span class="p">]</span>
|
|
1650
|
+
<p>In addition to deleting a message from AMPS, this method allows deletion of a message whose keys match one
|
|
1651
|
+
that is already stored, for example:</p>
|
|
1652
|
+
<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">data</span> <span class="o">=</span> <span class="n">orders</span><span class="p">[</span><span class="n">orderId</span><span class="p">]</span>
|
|
1473
1653
|
<span class="n">ackMessage</span> <span class="o">=</span> <span class="n">client</span><span class="o">.</span><span class="n">sow_delete_by_data</span><span class="p">(</span><span class="s1">'orders'</span><span class="p">,</span> <span class="n">data</span><span class="p">)</span>
|
|
1474
1654
|
<span class="k">del</span> <span class="n">orders</span><span class="p">[</span><span class="n">orderId</span><span class="p">]</span>
|
|
1475
|
-
<span class="o">...</span>
|
|
1476
1655
|
</pre></div>
|
|
1477
1656
|
</div>
|
|
1478
1657
|
<table class="docutils field-list" frame="void" rules="none">
|
|
@@ -1480,8 +1659,8 @@ a message whose keys match one that is already stored, for example:</p>
|
|
|
1480
1659
|
<col class="field-body" />
|
|
1481
1660
|
<tbody valign="top">
|
|
1482
1661
|
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
|
|
1483
|
-
<li><strong>on_message</strong> (<code class="xref py py-exc docutils literal"><span class="pre">MessageHandler</span></code>) – The message handler to invoke with <cite>stats</cite> and
|
|
1484
|
-
|
|
1662
|
+
<li><strong>on_message</strong> (<code class="xref py py-exc docutils literal"><span class="pre">MessageHandler</span></code>) – The message handler to invoke with <cite>stats</cite> and <cite>completed</cite> acknowledgments
|
|
1663
|
+
(specified only in the case where async processing is used).</li>
|
|
1485
1664
|
<li><strong>topic</strong> (<em>str</em>) – The topic to execute the SOW delete against.</li>
|
|
1486
1665
|
<li><strong>data</strong> (<em>str</em>) – A message whose keys match the message to be deleted in the server’s SOW.</li>
|
|
1487
1666
|
<li><strong>timeout</strong> (<em>int</em>) – The maximum time to wait for the client to receive and
|
|
@@ -1490,7 +1669,8 @@ consume the processed ack for this command (in milliseconds).
|
|
|
1490
1669
|
</ul>
|
|
1491
1670
|
</td>
|
|
1492
1671
|
</tr>
|
|
1493
|
-
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body"><p class="first last">The command identifier assigned to this command
|
|
1672
|
+
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body"><p class="first last">The command identifier assigned to this command if a message handler was provided.
|
|
1673
|
+
If no message handler was provided, returns an acknowledgment.</p>
|
|
1494
1674
|
</td>
|
|
1495
1675
|
</tr>
|
|
1496
1676
|
</tbody>
|
|
@@ -1499,30 +1679,39 @@ consume the processed ack for this command (in milliseconds).
|
|
|
1499
1679
|
|
|
1500
1680
|
<dl class="method">
|
|
1501
1681
|
<dt id="AMPS.Client.sow_delete_by_keys">
|
|
1502
|
-
<code class="descclassname">Client.</code><code class="descname">sow_delete_by_keys</code><span class="sig-paren">(</span><
|
|
1503
|
-
<dd><p>
|
|
1504
|
-
<
|
|
1505
|
-
|
|
1506
|
-
|
|
1507
|
-
<p
|
|
1508
|
-
|
|
1509
|
-
|
|
1682
|
+
<code class="descclassname">Client.</code><code class="descname">sow_delete_by_keys</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.Client.sow_delete_by_keys" title="Permalink to this definition">¶</a></dt>
|
|
1683
|
+
<dd><p><strong>Signatures</strong>:</p>
|
|
1684
|
+
<ul>
|
|
1685
|
+
<li><p class="first"><code class="docutils literal"><span class="pre">Client.sow_delete_by_keys(on_message,</span> <span class="pre">topic,</span> <span class="pre">keys,</span> <span class="pre">timeout=0)</span></code></p>
|
|
1686
|
+
</li>
|
|
1687
|
+
<li><p class="first"><code class="docutils literal"><span class="pre">Client.sow_delete_by_keys(topic,</span> <span class="pre">keys,</span> <span class="pre">timeout=0)</span></code></p>
|
|
1688
|
+
<p>Executes a SOW delete using the provided SOW key(s) to determine the record(s) to delete.</p>
|
|
1689
|
+
<p>There are two ways to use this method:</p>
|
|
1690
|
+
<ol class="arabic simple">
|
|
1691
|
+
<li>When a message handler is provided, this method submits the <code class="docutils literal"><span class="pre">sow_delete_by_keys</span></code> command on a background
|
|
1692
|
+
thread and calls the message handler with the results of the delete.</li>
|
|
1693
|
+
<li>When no message handler is provided, this method provides an acknowledgment message with the result of
|
|
1694
|
+
the delete command.</li>
|
|
1695
|
+
</ol>
|
|
1696
|
+
</li>
|
|
1697
|
+
</ul>
|
|
1510
1698
|
<table class="docutils field-list" frame="void" rules="none">
|
|
1511
1699
|
<col class="field-name" />
|
|
1512
1700
|
<col class="field-body" />
|
|
1513
1701
|
<tbody valign="top">
|
|
1514
1702
|
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
|
|
1515
|
-
<li><strong>on_message</strong> (<code class="xref py py-exc docutils literal"><span class="pre">MessageHandler</span></code>) – The message handler to invoke with <cite>stats</cite> and
|
|
1516
|
-
|
|
1703
|
+
<li><strong>on_message</strong> (<code class="xref py py-exc docutils literal"><span class="pre">MessageHandler</span></code>) – The message handler to invoke with <cite>stats</cite> and <cite>completed</cite> acknowledgments
|
|
1704
|
+
(specified only in the case where async processing is used).</li>
|
|
1517
1705
|
<li><strong>topic</strong> (<em>str</em>) – The topic to execute the SOW delete against.</li>
|
|
1518
|
-
<li><strong>keys</strong> (<em>str</em>) – A comma separated list of SOW keys to be deleted
|
|
1706
|
+
<li><strong>keys</strong> (<em>str</em>) – A comma separated list of SOW keys to be deleted.</li>
|
|
1519
1707
|
<li><strong>timeout</strong> (<em>int</em>) – The maximum time to wait for the client to receive and
|
|
1520
1708
|
consume the processed ack for this command (in millseconds).
|
|
1521
1709
|
<code class="docutils literal"><span class="pre">0</span></code> indicates to wait indefinitely.</li>
|
|
1522
1710
|
</ul>
|
|
1523
1711
|
</td>
|
|
1524
1712
|
</tr>
|
|
1525
|
-
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body"><p class="first last">The command identifier assigned to this command
|
|
1713
|
+
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body"><p class="first last">The command identifier assigned to this command if a message handler was provided.
|
|
1714
|
+
If no message handler was provided, returns an acknowledgment.</p>
|
|
1526
1715
|
</td>
|
|
1527
1716
|
</tr>
|
|
1528
1717
|
</tbody>
|
|
@@ -1532,43 +1721,70 @@ consume the processed ack for this command (in millseconds).
|
|
|
1532
1721
|
<dl class="method">
|
|
1533
1722
|
<dt id="AMPS.Client.start_timer">
|
|
1534
1723
|
<code class="descclassname">Client.</code><code class="descname">start_timer</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.Client.start_timer" title="Permalink to this definition">¶</a></dt>
|
|
1535
|
-
<dd><p>
|
|
1724
|
+
<dd><p>Used to start a timer on an AMPS Server for the client.</p>
|
|
1725
|
+
<div class="deprecated">
|
|
1726
|
+
<p><span class="versionmodified">Deprecated since version 5.3.2.0.</span></p>
|
|
1727
|
+
</div>
|
|
1536
1728
|
</dd></dl>
|
|
1537
1729
|
|
|
1538
1730
|
<dl class="method">
|
|
1539
1731
|
<dt id="AMPS.Client.stop_timer">
|
|
1540
1732
|
<code class="descclassname">Client.</code><code class="descname">stop_timer</code><span class="sig-paren">(</span><em>handler</em><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.Client.stop_timer" title="Permalink to this definition">¶</a></dt>
|
|
1541
|
-
<dd><p>
|
|
1542
|
-
|
|
1733
|
+
<dd><p>Used to stop a timer on an AMPS Server previously started for the client.</p>
|
|
1734
|
+
<div class="deprecated">
|
|
1735
|
+
<p><span class="versionmodified">Deprecated since version 5.3.2.0.</span></p>
|
|
1736
|
+
</div>
|
|
1737
|
+
<table class="docutils field-list" frame="void" rules="none">
|
|
1738
|
+
<col class="field-name" />
|
|
1739
|
+
<col class="field-body" />
|
|
1740
|
+
<tbody valign="top">
|
|
1741
|
+
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>handler</strong> – The handler to be invoked with the timer response.</td>
|
|
1742
|
+
</tr>
|
|
1743
|
+
</tbody>
|
|
1744
|
+
</table>
|
|
1543
1745
|
</dd></dl>
|
|
1544
1746
|
|
|
1545
1747
|
<dl class="method">
|
|
1546
1748
|
<dt id="AMPS.Client.subscribe">
|
|
1547
|
-
<code class="descclassname">Client.</code><code class="descname">subscribe</code><span class="sig-paren">(</span><
|
|
1548
|
-
<dd><p>
|
|
1749
|
+
<code class="descclassname">Client.</code><code class="descname">subscribe</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.Client.subscribe" title="Permalink to this definition">¶</a></dt>
|
|
1750
|
+
<dd><p><strong>Signatures</strong>:</p>
|
|
1751
|
+
<ul>
|
|
1752
|
+
<li><p class="first"><code class="docutils literal"><span class="pre">Client.subscribe(on_message,</span> <span class="pre">topic,</span> <span class="pre">filter=None,</span> <span class="pre">options=None,</span> <span class="pre">timeout=0,</span> <span class="pre">sub_id=None)</span></code></p>
|
|
1753
|
+
</li>
|
|
1754
|
+
<li><p class="first"><code class="docutils literal"><span class="pre">Client.subscribe(topic,</span> <span class="pre">filter=None,</span> <span class="pre">options=None,</span> <span class="pre">timeout=0,</span> <span class="pre">sub_id=None)</span></code></p>
|
|
1755
|
+
<p>Places a subscription with AMPS.</p>
|
|
1756
|
+
<p>There are two ways to use this method:</p>
|
|
1757
|
+
<ol class="arabic simple">
|
|
1758
|
+
<li>When a message handler is provided, this method submits the <code class="docutils literal"><span class="pre">subscribe</span></code> command on a background thread and
|
|
1759
|
+
calls the message handler with individual messages that match the subscription.</li>
|
|
1760
|
+
<li>When no message handler is provided, this method returns a message stream that can be iterated on to process
|
|
1761
|
+
messages received that match the subscription.</li>
|
|
1762
|
+
</ol>
|
|
1763
|
+
</li>
|
|
1764
|
+
</ul>
|
|
1549
1765
|
<table class="docutils field-list" frame="void" rules="none">
|
|
1550
1766
|
<col class="field-name" />
|
|
1551
1767
|
<col class="field-body" />
|
|
1552
1768
|
<tbody valign="top">
|
|
1553
1769
|
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
|
|
1554
1770
|
<li><strong>on_message</strong> (<em>str</em>) – The message handler to invoke with matching
|
|
1555
|
-
messages.</li>
|
|
1771
|
+
messages (specified only in the case where async processing is used).</li>
|
|
1556
1772
|
<li><strong>topic</strong> (<em>str</em>) – The topic to subscribe to.</li>
|
|
1557
1773
|
<li><strong>filter</strong> (<em>str</em>) – The filter.</li>
|
|
1558
|
-
<li><strong>options</strong> (<em>str</em>) – A comma separated list of values indicating additional
|
|
1559
|
-
|
|
1560
|
-
<li><strong>timeout</strong> (<em>int</em>) – The maximum time to wait for the client to receive and
|
|
1774
|
+
<li><strong>options</strong> (<em>str</em>) – A comma separated list of values indicating additional processing options.</li>
|
|
1775
|
+
<li><strong>timeout</strong> (<em>int</em>) – The maximum time to wait for the client to receive and
|
|
1561
1776
|
consume the processed ack for this command (in milliseconds).
|
|
1562
1777
|
<code class="docutils literal"><span class="pre">0</span></code> indicates to wait indefinitely.</li>
|
|
1563
|
-
<li><strong>sub_id</strong> (<em>str</em>) – The subscription ID.
|
|
1778
|
+
<li><strong>sub_id</strong> (<em>str</em>) – The subscription ID. You may optionally provide a
|
|
1564
1779
|
subscription ID to ease recovery scenarios, instead of having the
|
|
1565
|
-
system automatically generate one for you.
|
|
1566
|
-
|
|
1567
|
-
be replaced.</li>
|
|
1780
|
+
system automatically generate one for you. When used with the ‘replace’ option,
|
|
1781
|
+
this is the subscription to be replaced.</li>
|
|
1568
1782
|
</ul>
|
|
1569
1783
|
</td>
|
|
1570
1784
|
</tr>
|
|
1571
|
-
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body"><p class="first">The command identifier assigned to this command
|
|
1785
|
+
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body"><p class="first">The command identifier assigned to this command if a message handler was provided.
|
|
1786
|
+
If no message handler was provided, returns a <code class="docutils literal"><span class="pre">MessageStream</span></code> containing the results
|
|
1787
|
+
of the command.</p>
|
|
1572
1788
|
</td>
|
|
1573
1789
|
</tr>
|
|
1574
1790
|
<tr class="field-odd field"><th class="field-name">Raises:</th><td class="field-body"><p class="first last"><a class="reference internal" href="#AMPS.SubscriptionAlreadyExistsException" title="AMPS.SubscriptionAlreadyExistsException"><code class="xref py py-exc docutils literal"><span class="pre">SubscriptionAlreadyExistsException</span></code></a>,
|
|
@@ -1583,13 +1799,18 @@ be replaced.</li>
|
|
|
1583
1799
|
<dl class="method">
|
|
1584
1800
|
<dt id="AMPS.Client.unsubscribe">
|
|
1585
1801
|
<code class="descclassname">Client.</code><code class="descname">unsubscribe</code><span class="sig-paren">(</span><em>sub_id=None</em><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.Client.unsubscribe" title="Permalink to this definition">¶</a></dt>
|
|
1586
|
-
<dd><
|
|
1587
|
-
<
|
|
1802
|
+
<dd><p>Remove a subscription from AMPS.</p>
|
|
1803
|
+
<blockquote>
|
|
1804
|
+
<div><div class="admonition note">
|
|
1805
|
+
<p class="first admonition-title">Note</p>
|
|
1806
|
+
<p class="last">Using the keyword <code class="docutils literal"><span class="pre">all</span></code> with <code class="docutils literal"><span class="pre">sub_id</span></code> will remove all subscriptions to AMPS.</p>
|
|
1807
|
+
</div>
|
|
1808
|
+
</div></blockquote>
|
|
1588
1809
|
<table class="docutils field-list" frame="void" rules="none">
|
|
1589
1810
|
<col class="field-name" />
|
|
1590
1811
|
<col class="field-body" />
|
|
1591
1812
|
<tbody valign="top">
|
|
1592
|
-
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>sub_id</strong> – The subscription
|
|
1813
|
+
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>sub_id</strong> (<em>str</em>) – The subscription ID to remove.</td>
|
|
1593
1814
|
</tr>
|
|
1594
1815
|
</tbody>
|
|
1595
1816
|
</table>
|
|
@@ -1606,9 +1827,9 @@ be replaced.</li>
|
|
|
1606
1827
|
|
|
1607
1828
|
<dl class="class">
|
|
1608
1829
|
<dt id="AMPS.Command">
|
|
1609
|
-
<em class="property">class </em><code class="descclassname">AMPS.</code><code class="descname">Command</code><a class="headerlink" href="#AMPS.Command" title="Permalink to this definition">¶</a></dt>
|
|
1830
|
+
<em class="property">class </em><code class="descclassname">AMPS.</code><code class="descname">Command</code><span class="sig-paren">(</span><em>command_name</em><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.Command" title="Permalink to this definition">¶</a></dt>
|
|
1610
1831
|
<dd><p>Bases: <code class="xref py py-class docutils literal"><span class="pre">object</span></code></p>
|
|
1611
|
-
<p>AMPS.Command represents a single message (or <em>command</em>) sent to the
|
|
1832
|
+
<p><code class="docutils literal"><span class="pre">AMPS.Command</span></code> represents a single message (or <em>command</em>) sent to the
|
|
1612
1833
|
AMPS server. The class provides methods for headers that are used
|
|
1613
1834
|
for commands to the server. Applications typically use this class
|
|
1614
1835
|
to create outgoing requests to AMPS. The responses to requests,
|
|
@@ -1625,6 +1846,16 @@ Command, set options as described in the Command Cookbook in the
|
|
|
1625
1846
|
Python Developer Guide or the AMPS Command Reference, and then use
|
|
1626
1847
|
<a class="reference internal" href="#AMPS.Client.execute_async" title="AMPS.Client.execute_async"><code class="xref py py-func docutils literal"><span class="pre">AMPS.Client.execute_async()</span></code></a> to process messages asynchronously,
|
|
1627
1848
|
or <a class="reference internal" href="#AMPS.Client.execute" title="AMPS.Client.execute"><code class="xref py py-func docutils literal"><span class="pre">AMPS.Client.execute()</span></code></a> to process messages synchronously.</p>
|
|
1849
|
+
<p><strong>Constructor Arguments:</strong></p>
|
|
1850
|
+
<table class="docutils field-list" frame="void" rules="none">
|
|
1851
|
+
<col class="field-name" />
|
|
1852
|
+
<col class="field-body" />
|
|
1853
|
+
<tbody valign="top">
|
|
1854
|
+
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>command_name</strong> – The name of the command to send to the server.
|
|
1855
|
+
For example, <code class="docutils literal"><span class="pre">sow</span></code>, <code class="docutils literal"><span class="pre">sow_and_subscribe</span></code> or <code class="docutils literal"><span class="pre">publish</span></code>.</td>
|
|
1856
|
+
</tr>
|
|
1857
|
+
</tbody>
|
|
1858
|
+
</table>
|
|
1628
1859
|
<dl class="method">
|
|
1629
1860
|
<dt id="AMPS.Command.add_ack_type">
|
|
1630
1861
|
<code class="descname">add_ack_type</code><span class="sig-paren">(</span><em>value</em><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.Command.add_ack_type" title="Permalink to this definition">¶</a></dt>
|
|
@@ -1676,6 +1907,14 @@ that have been previously set or that will be set by the Client.</p>
|
|
|
1676
1907
|
<dd><p>Gets the sequence of self for <code class="docutils literal"><span class="pre">publish</span></code>, <code class="docutils literal"><span class="pre">delta_publish</span></code>, or <code class="docutils literal"><span class="pre">sow_delete</span></code> commands.
|
|
1677
1908
|
This can be checked after calling <code class="docutils literal"><span class="pre">execute</span></code> or <code class="docutils literal"><span class="pre">executeAsync</span></code> to query the sequence
|
|
1678
1909
|
number that was used, if any.</p>
|
|
1910
|
+
<table class="docutils field-list" frame="void" rules="none">
|
|
1911
|
+
<col class="field-name" />
|
|
1912
|
+
<col class="field-body" />
|
|
1913
|
+
<tbody valign="top">
|
|
1914
|
+
<tr class="field-odd field"><th class="field-name">Returns:</th><td class="field-body">The sequence number used in the last <code class="docutils literal"><span class="pre">publish</span></code>, <code class="docutils literal"><span class="pre">delta_publish</span></code>, or <code class="docutils literal"><span class="pre">sow_delete</span></code> command.</td>
|
|
1915
|
+
</tr>
|
|
1916
|
+
</tbody>
|
|
1917
|
+
</table>
|
|
1679
1918
|
</dd></dl>
|
|
1680
1919
|
|
|
1681
1920
|
<dl class="method">
|
|
@@ -1751,7 +1990,7 @@ details on SOW query batches.</p>
|
|
|
1751
1990
|
<dd><p>Sets the value of the bookmark header. For a subscription, this identifies the point in the
|
|
1752
1991
|
transaction log at which to begin the replay. For a <code class="docutils literal"><span class="pre">sow_delete</span></code> (queue acknowledgment), this
|
|
1753
1992
|
indicates the message or messages to acknowledge. For a query on a SOW topic with
|
|
1754
|
-
History configured, this indicates the point at which to query the topic.</p>
|
|
1993
|
+
<code class="docutils literal"><span class="pre">History</span></code> configured, this indicates the point at which to query the topic.</p>
|
|
1755
1994
|
<p>Not all headers are processed by AMPS for all commands. See the AMPS Command Reference for which headers are used by AMPS for a specific command.</p>
|
|
1756
1995
|
<table class="docutils field-list" frame="void" rules="none">
|
|
1757
1996
|
<col class="field-name" />
|
|
@@ -2293,20 +2532,19 @@ If no sub_id is provided, remove all records for this client.
|
|
|
2293
2532
|
<dt id="AMPS.DefaultServerChooser">
|
|
2294
2533
|
<em class="property">class </em><code class="descclassname">AMPS.</code><code class="descname">DefaultServerChooser</code><a class="headerlink" href="#AMPS.DefaultServerChooser" title="Permalink to this definition">¶</a></dt>
|
|
2295
2534
|
<dd><p>Bases: <code class="xref py py-class docutils literal"><span class="pre">object</span></code></p>
|
|
2296
|
-
<p>A simple
|
|
2535
|
+
<p>A simple server chooser that keeps a list of AMPS instances and
|
|
2297
2536
|
Authenticators, and advances to the next one when failure occurs.</p>
|
|
2298
2537
|
<p>To use the <code class="docutils literal"><span class="pre">DefaultServerChooser</span></code>, you add the URIs for the server to
|
|
2299
|
-
choose from, then set the server for the HAClient as shown below:</p>
|
|
2300
|
-
<div class="highlight-default"><div class="highlight"><pre><span></span
|
|
2301
|
-
|
|
2302
|
-
|
|
2303
|
-
|
|
2304
|
-
|
|
2305
|
-
|
|
2306
|
-
|
|
2307
|
-
<span class="n">You</span> <span class="n">can</span> <span class="n">add</span> <span class="nb">any</span> <span class="n">number</span> <span class="n">of</span> <span class="n">URIs</span> <span class="n">to</span> <span class="n">the</span> <span class="n">DefaultServerChooser</span><span class="o">.</span>
|
|
2538
|
+
choose from, then set the server for the <code class="docutils literal"><span class="pre">HAClient</span></code> as shown below:</p>
|
|
2539
|
+
<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">client</span> <span class="o">=</span> <span class="n">AMPS</span><span class="o">.</span><span class="n">HAClient</span><span class="p">(</span><span class="s2">"showchooser"</span><span class="p">)</span>
|
|
2540
|
+
<span class="n">chooser</span> <span class="o">=</span> <span class="n">AMPS</span><span class="o">.</span><span class="n">DefaultServerChooser</span><span class="p">()</span>
|
|
2541
|
+
<span class="n">chooser</span><span class="o">.</span><span class="n">add</span><span class="p">(</span><span class="s2">"tcp://server:9005/nvfix"</span><span class="p">)</span>
|
|
2542
|
+
<span class="n">chooser</span><span class="o">.</span><span class="n">add</span><span class="p">(</span><span class="s2">"tcp://server-two:9005/nvfix"</span><span class="p">)</span>
|
|
2543
|
+
<span class="n">client</span><span class="o">.</span><span class="n">set_server_chooser</span><span class="p">(</span><span class="n">chooser</span><span class="p">)</span>
|
|
2544
|
+
<span class="n">client</span><span class="o">.</span><span class="n">connect_and_logon</span><span class="p">()</span>
|
|
2308
2545
|
</pre></div>
|
|
2309
2546
|
</div>
|
|
2547
|
+
<p>You can add any number of URIs to the <code class="docutils literal"><span class="pre">DefaultServerChooser</span></code>.</p>
|
|
2310
2548
|
<dl class="method">
|
|
2311
2549
|
<dt id="AMPS.DefaultServerChooser.add">
|
|
2312
2550
|
<code class="descname">add</code><span class="sig-paren">(</span><em>uri</em><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.DefaultServerChooser.add" title="Permalink to this definition">¶</a></dt>
|
|
@@ -2440,40 +2678,31 @@ choose from, then set the server for the HAClient as shown below:</p>
|
|
|
2440
2678
|
|
|
2441
2679
|
<dl class="class">
|
|
2442
2680
|
<dt id="AMPS.ExponentialDelayStrategy">
|
|
2443
|
-
<em class="property">class </em><code class="descclassname">AMPS.</code><code class="descname">ExponentialDelayStrategy</code><a class="headerlink" href="#AMPS.ExponentialDelayStrategy" title="Permalink to this definition">¶</a></dt>
|
|
2681
|
+
<em class="property">class </em><code class="descclassname">AMPS.</code><code class="descname">ExponentialDelayStrategy</code><span class="sig-paren">(</span><em>initial_delay=200</em>, <em>maximum_delay=20000</em>, <em>backoff_exponent=2.0</em>, <em>maximum_retry_time=0</em>, <em>jitter=1.0</em><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.ExponentialDelayStrategy" title="Permalink to this definition">¶</a></dt>
|
|
2444
2682
|
<dd><p>Bases: <code class="xref py py-class docutils literal"><span class="pre">object</span></code></p>
|
|
2445
|
-
<p>ExponentialDelayStrategy is an implementation that exponentially
|
|
2446
|
-
|
|
2447
|
-
|
|
2448
|
-
|
|
2449
|
-
|
|
2450
|
-
2.0, and has no limit to the amount of time to retry the connection.</p>
|
|
2451
|
-
<p>Constructor parameters:</p>
|
|
2683
|
+
<p><code class="docutils literal"><span class="pre">ExponentialDelayStrategy</span></code> is an implementation that exponentially backs off when reconnecting to
|
|
2684
|
+
the same server, with a maximum time to retry before it gives up entirely.</p>
|
|
2685
|
+
<p>By default, an <code class="docutils literal"><span class="pre">ExponentialDelayStrategy</span></code> has an initial delay of 200 ms, a maximum delay of 20 seconds,
|
|
2686
|
+
a backoff exponent of 2.0, and has no limit to the amount of time to retry the connection.</p>
|
|
2687
|
+
<p><strong>Constructor Arguments:</strong></p>
|
|
2452
2688
|
<table class="docutils field-list" frame="void" rules="none">
|
|
2453
2689
|
<col class="field-name" />
|
|
2454
2690
|
<col class="field-body" />
|
|
2455
2691
|
<tbody valign="top">
|
|
2456
2692
|
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
|
|
2457
|
-
<li><strong>initial_delay</strong> – The time (in milliseconds) to wait before
|
|
2458
|
-
reconnecting to a server for the first
|
|
2693
|
+
<li><strong>initial_delay</strong> – The time (in milliseconds) to wait before reconnecting to a server for the first
|
|
2459
2694
|
time after a failed connection.</li>
|
|
2460
|
-
<li><strong>maximum_delay</strong> – The maximum time to wait for any reconnect
|
|
2461
|
-
|
|
2462
|
-
|
|
2463
|
-
|
|
2464
|
-
next delay time. For example, if the
|
|
2465
|
-
initial time is 200ms and the exponent
|
|
2466
|
-
is 2.0, the next delay will be 400ms,
|
|
2695
|
+
<li><strong>maximum_delay</strong> – The maximum time to wait for any reconnect attempt (milliseconds).
|
|
2696
|
+
Exponential backoff will not exceed this maximum.</li>
|
|
2697
|
+
<li><strong>backoff_exponent</strong> – The exponent to use for calculating the next delay time. For example, if the
|
|
2698
|
+
initial time is 200ms and the exponent is 2.0, the next delay will be 400ms,
|
|
2467
2699
|
then 800ms, etc.</li>
|
|
2468
|
-
<li><strong>maximum_retry_time</strong> – The maximum time (milliseconds) to allow
|
|
2469
|
-
|
|
2470
|
-
|
|
2471
|
-
|
|
2472
|
-
|
|
2473
|
-
|
|
2474
|
-
of the initial delay. Jitter is used to reduce
|
|
2475
|
-
the number of simultaneous reconnects that may
|
|
2476
|
-
be issued from multiple clients.</li>
|
|
2700
|
+
<li><strong>maximum_retry_time</strong> – The maximum time (milliseconds) to allow reconnect attempts to continue
|
|
2701
|
+
without a successful connection, before ‘giving up’ and abandoning the
|
|
2702
|
+
connection attempt.</li>
|
|
2703
|
+
<li><strong>jitter</strong> – The amount of ‘jitter’ to apply when calculating a delay time, measured in multiples
|
|
2704
|
+
of the initial delay. Jitter is used to reduce the number of simultaneous reconnects
|
|
2705
|
+
that may be issued from multiple clients.</li>
|
|
2477
2706
|
</ul>
|
|
2478
2707
|
</td>
|
|
2479
2708
|
</tr>
|
|
@@ -2565,23 +2794,21 @@ be issued from multiple clients.</li>
|
|
|
2565
2794
|
|
|
2566
2795
|
<dl class="class">
|
|
2567
2796
|
<dt id="AMPS.FixedDelayStrategy">
|
|
2568
|
-
<em class="property">class </em><code class="descclassname">AMPS.</code><code class="descname">FixedDelayStrategy</code><a class="headerlink" href="#AMPS.FixedDelayStrategy" title="Permalink to this definition">¶</a></dt>
|
|
2797
|
+
<em class="property">class </em><code class="descclassname">AMPS.</code><code class="descname">FixedDelayStrategy</code><span class="sig-paren">(</span><em>initial_delay</em>, <em>maximum</em><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.FixedDelayStrategy" title="Permalink to this definition">¶</a></dt>
|
|
2569
2798
|
<dd><p>Bases: <code class="xref py py-class docutils literal"><span class="pre">object</span></code></p>
|
|
2570
|
-
<p>FixedDelayStrategy is a reconnect delay strategy implementation that
|
|
2571
|
-
|
|
2572
|
-
<p>By default, a FixedDelayStrategy waits for 200ms between connection attempts
|
|
2799
|
+
<p><code class="docutils literal"><span class="pre">FixedDelayStrategy</span></code> is a reconnect delay strategy implementation that waits a
|
|
2800
|
+
fixed amount of time before retrying a connection.</p>
|
|
2801
|
+
<p>By default, a <code class="docutils literal"><span class="pre">FixedDelayStrategy</span></code> waits for 200ms between connection attempts
|
|
2573
2802
|
and does not have a maximum timeout.</p>
|
|
2574
|
-
<p>Constructor
|
|
2803
|
+
<p><strong>Constructor Arguments:</strong></p>
|
|
2575
2804
|
<table class="docutils field-list" frame="void" rules="none">
|
|
2576
2805
|
<col class="field-name" />
|
|
2577
2806
|
<col class="field-body" />
|
|
2578
2807
|
<tbody valign="top">
|
|
2579
2808
|
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
|
|
2580
|
-
<li><strong>initial_delay</strong> – The time (in milliseconds) to wait before
|
|
2581
|
-
|
|
2582
|
-
time
|
|
2583
|
-
<li><strong>maximum</strong> – The maximum time (in milliseconds) to keep
|
|
2584
|
-
retrying before giving up.</li>
|
|
2809
|
+
<li><strong>initial_delay</strong> – The time (in milliseconds) to wait before reconnecting to a
|
|
2810
|
+
server for the first time after a failed connection.</li>
|
|
2811
|
+
<li><strong>maximum</strong> – The maximum time (in milliseconds) to keep retrying before giving up.</li>
|
|
2585
2812
|
</ul>
|
|
2586
2813
|
</td>
|
|
2587
2814
|
</tr>
|
|
@@ -2603,10 +2830,24 @@ retrying before giving up.</li>
|
|
|
2603
2830
|
|
|
2604
2831
|
<dl class="class">
|
|
2605
2832
|
<dt id="AMPS.HAClient">
|
|
2606
|
-
<em class="property">class </em><code class="descclassname">AMPS.</code><code class="descname">HAClient</code><a class="headerlink" href="#AMPS.HAClient" title="Permalink to this definition">¶</a></dt>
|
|
2833
|
+
<em class="property">class </em><code class="descclassname">AMPS.</code><code class="descname">HAClient</code><span class="sig-paren">(</span><em>name</em>, <em>publish_store=None</em>, <em>bookmark_store=None</em>, <em>no_store=False</em><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.HAClient" title="Permalink to this definition">¶</a></dt>
|
|
2607
2834
|
<dd><p>Bases: <a class="reference internal" href="#AMPS.Client" title="AMPS.Client"><code class="xref py py-class docutils literal"><span class="pre">AMPS.Client</span></code></a></p>
|
|
2608
|
-
<p>AMPS HAClient Object used for highly-available client connections. Derives from <a class="reference internal" href="#AMPS.Client" title="AMPS.Client"><code class="xref py py-class docutils literal"><span class="pre">Client</span></code></a>.</p>
|
|
2609
|
-
<p>
|
|
2835
|
+
<p>AMPS <code class="docutils literal"><span class="pre">HAClient</span></code> Object used for highly-available client connections. Derives from <a class="reference internal" href="#AMPS.Client" title="AMPS.Client"><code class="xref py py-class docutils literal"><span class="pre">Client</span></code></a>.</p>
|
|
2836
|
+
<p>An example of a Python client publishing a JSON message using the <code class="docutils literal"><span class="pre">HAClient</span></code> is listed below:</p>
|
|
2837
|
+
<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">client</span> <span class="o">=</span> <span class="n">AMPS</span><span class="o">.</span><span class="n">HAClient</span><span class="p">(</span><span class="s2">"test_client"</span><span class="p">)</span>
|
|
2838
|
+
|
|
2839
|
+
<span class="n">chooser</span> <span class="o">=</span> <span class="n">AMPS</span><span class="o">.</span><span class="n">DefaultServerChooser</span><span class="p">()</span>
|
|
2840
|
+
<span class="n">chooser</span><span class="o">.</span><span class="n">add</span><span class="p">(</span><span class="s2">"tcp://127.0.0.1:9004/amps/json"</span><span class="p">)</span>
|
|
2841
|
+
<span class="n">client</span><span class="o">.</span><span class="n">set_server_chooser</span><span class="p">(</span><span class="n">chooser</span><span class="p">)</span>
|
|
2842
|
+
|
|
2843
|
+
<span class="k">try</span><span class="p">:</span>
|
|
2844
|
+
<span class="n">client</span><span class="o">.</span><span class="n">connect_and_logon</span><span class="p">()</span>
|
|
2845
|
+
<span class="n">client</span><span class="o">.</span><span class="n">publish</span><span class="p">(</span><span class="s2">"topic_name"</span><span class="p">,</span><span class="s1">'{"a":1,"b":"2"}'</span><span class="p">)</span>
|
|
2846
|
+
<span class="k">finally</span><span class="p">:</span>
|
|
2847
|
+
<span class="n">client</span><span class="o">.</span><span class="n">close</span><span class="p">()</span>
|
|
2848
|
+
</pre></div>
|
|
2849
|
+
</div>
|
|
2850
|
+
<p><strong>Constructor Arguments:</strong></p>
|
|
2610
2851
|
<table class="docutils field-list" frame="void" rules="none">
|
|
2611
2852
|
<col class="field-name" />
|
|
2612
2853
|
<col class="field-body" />
|
|
@@ -2628,7 +2869,7 @@ using control characters, newline characters, or square brackets.</li>
|
|
|
2628
2869
|
<dl class="method">
|
|
2629
2870
|
<dt id="AMPS.HAClient.connect">
|
|
2630
2871
|
<code class="descname">connect</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.HAClient.connect" title="Permalink to this definition">¶</a></dt>
|
|
2631
|
-
<dd><p>Connects and logs on using the ServerChooser you’ve supplied via <a class="reference internal" href="#AMPS.HAClient.set_server_chooser" title="AMPS.HAClient.set_server_chooser"><code class="xref py py-meth docutils literal"><span class="pre">set_server_chooser()</span></code></a>. Will continue
|
|
2872
|
+
<dd><p>Connects and logs on using the <code class="docutils literal"><span class="pre">ServerChooser</span></code> you’ve supplied via <a class="reference internal" href="#AMPS.HAClient.set_server_chooser" title="AMPS.HAClient.set_server_chooser"><code class="xref py py-meth docutils literal"><span class="pre">set_server_chooser()</span></code></a>. Will continue
|
|
2632
2873
|
attempting to connect and logon to each URI returned by the <code class="docutils literal"><span class="pre">ServerChooser</span></code> until the connection succeeds or
|
|
2633
2874
|
the <code class="docutils literal"><span class="pre">ServerChooser</span></code> returns an empty URI.</p>
|
|
2634
2875
|
</dd></dl>
|
|
@@ -2636,7 +2877,7 @@ the <code class="docutils literal"><span class="pre">ServerChooser</span></code>
|
|
|
2636
2877
|
<dl class="method">
|
|
2637
2878
|
<dt id="AMPS.HAClient.connect_and_logon">
|
|
2638
2879
|
<code class="descname">connect_and_logon</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.HAClient.connect_and_logon" title="Permalink to this definition">¶</a></dt>
|
|
2639
|
-
<dd><p>Connects and logs on using the ServerChooser you’ve supplied via <a class="reference internal" href="#AMPS.HAClient.set_server_chooser" title="AMPS.HAClient.set_server_chooser"><code class="xref py py-meth docutils literal"><span class="pre">set_server_chooser()</span></code></a>. Will continue
|
|
2880
|
+
<dd><p>Connects and logs on using the <code class="docutils literal"><span class="pre">ServerChooser</span></code> you’ve supplied via <a class="reference internal" href="#AMPS.HAClient.set_server_chooser" title="AMPS.HAClient.set_server_chooser"><code class="xref py py-meth docutils literal"><span class="pre">set_server_chooser()</span></code></a>. Will continue
|
|
2640
2881
|
attempting to connect and logon to each URI returned by the <code class="docutils literal"><span class="pre">ServerChooser</span></code> until the connection succeeds or
|
|
2641
2882
|
the <code class="docutils literal"><span class="pre">ServerChooser</span></code> returns an empty URI.</p>
|
|
2642
2883
|
</dd></dl>
|
|
@@ -2713,7 +2954,7 @@ subscription after a re-connect.</p>
|
|
|
2713
2954
|
<dl class="method">
|
|
2714
2955
|
<dt id="AMPS.HAClient.logon">
|
|
2715
2956
|
<code class="descname">logon</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.HAClient.logon" title="Permalink to this definition">¶</a></dt>
|
|
2716
|
-
<dd><p>Not used in the HAClient
|
|
2957
|
+
<dd><p>Not used in the <code class="docutils literal"><span class="pre">HAClient</span></code>; call <a class="reference internal" href="#AMPS.HAClient.connect_and_logon" title="AMPS.HAClient.connect_and_logon"><code class="xref py py-meth docutils literal"><span class="pre">connect_and_logon()</span></code></a> to connect and log on to AMPS once a server chooser is set.</p>
|
|
2717
2958
|
</dd></dl>
|
|
2718
2959
|
|
|
2719
2960
|
<dl class="method">
|
|
@@ -2771,7 +3012,7 @@ remove the subscription from the subscription manager.</p>
|
|
|
2771
3012
|
<col class="field-name" />
|
|
2772
3013
|
<col class="field-body" />
|
|
2773
3014
|
<tbody valign="top">
|
|
2774
|
-
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>options</strong> (<em>string</em>) – An options string to be passed to the server during logon, such as <code class="docutils literal"><span class="pre">ack_conflation=
|
|
3015
|
+
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>options</strong> (<em>string</em>) – An options string to be passed to the server during logon, such as <code class="docutils literal"><span class="pre">ack_conflation=100ms</span></code>.</td>
|
|
2775
3016
|
</tr>
|
|
2776
3017
|
</tbody>
|
|
2777
3018
|
</table>
|
|
@@ -2779,15 +3020,15 @@ remove the subscription from the subscription manager.</p>
|
|
|
2779
3020
|
|
|
2780
3021
|
<dl class="method">
|
|
2781
3022
|
<dt id="AMPS.HAClient.set_reconnect_delay">
|
|
2782
|
-
<code class="descname">set_reconnect_delay</code><span class="sig-paren">(</span><em>
|
|
3023
|
+
<code class="descname">set_reconnect_delay</code><span class="sig-paren">(</span><em>reconnect_delay</em><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.HAClient.set_reconnect_delay" title="Permalink to this definition">¶</a></dt>
|
|
2783
3024
|
<dd><p>Sets the delay in milliseconds used when reconnecting, after a disconnect occurs. Calling this method
|
|
2784
|
-
creates and installs a new FixedDelayStrategy in this client.
|
|
3025
|
+
creates and installs a new <a class="reference internal" href="#AMPS.FixedDelayStrategy" title="AMPS.FixedDelayStrategy"><code class="xref py py-class docutils literal"><span class="pre">FixedDelayStrategy</span></code></a> in this client.
|
|
2785
3026
|
Default value is 200 (0.2 seconds).</p>
|
|
2786
3027
|
<table class="docutils field-list" frame="void" rules="none">
|
|
2787
3028
|
<col class="field-name" />
|
|
2788
3029
|
<col class="field-body" />
|
|
2789
3030
|
<tbody valign="top">
|
|
2790
|
-
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>
|
|
3031
|
+
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>reconnect_delay</strong> – The number of milliseconds to wait before reconnecting, after a disconnect occurs.</td>
|
|
2791
3032
|
</tr>
|
|
2792
3033
|
</tbody>
|
|
2793
3034
|
</table>
|
|
@@ -2795,23 +3036,23 @@ Default value is 200 (0.2 seconds).</p>
|
|
|
2795
3036
|
|
|
2796
3037
|
<dl class="method">
|
|
2797
3038
|
<dt id="AMPS.HAClient.set_reconnect_delay_strategy">
|
|
2798
|
-
<code class="descname">set_reconnect_delay_strategy</code><span class="sig-paren">(</span><em>
|
|
3039
|
+
<code class="descname">set_reconnect_delay_strategy</code><span class="sig-paren">(</span><em>reconnect_delay_strategy</em><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.HAClient.set_reconnect_delay_strategy" title="Permalink to this definition">¶</a></dt>
|
|
2799
3040
|
<dd><p>Sets the reconnect delay strategy object used to control delay behavior
|
|
2800
3041
|
when connecting and reconnecting to servers.</p>
|
|
2801
3042
|
<table class="docutils field-list" frame="void" rules="none">
|
|
2802
3043
|
<col class="field-name" />
|
|
2803
3044
|
<col class="field-body" />
|
|
2804
3045
|
<tbody valign="top">
|
|
2805
|
-
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>
|
|
3046
|
+
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>reconnect_delay_strategy</strong> – <p>The reconnect delay strategy object to use when connecting
|
|
2806
3047
|
and reconnecting to AMPS instances. The object must have
|
|
2807
3048
|
the following two methods defined:</p>
|
|
2808
3049
|
<blockquote>
|
|
2809
3050
|
<div><dl class="docutils">
|
|
2810
|
-
<dt>get_connect_wait_duration(uri)
|
|
3051
|
+
<dt><code class="docutils literal"><span class="pre">get_connect_wait_duration(uri)</span></code>:</dt>
|
|
2811
3052
|
<dd><em>uri</em> - A string containing the next URI AMPS will connect with.
|
|
2812
3053
|
<em>Returns</em> an integer representing the time in milliseconds to wait
|
|
2813
3054
|
before connecting to that URI.</dd>
|
|
2814
|
-
<dt>reset()
|
|
3055
|
+
<dt><code class="docutils literal"><span class="pre">reset()</span></code>:</dt>
|
|
2815
3056
|
<dd>Resets the state of self after a successful connection.</dd>
|
|
2816
3057
|
</dl>
|
|
2817
3058
|
</div></blockquote>
|
|
@@ -2860,7 +3101,7 @@ Default value is 10000 (10 seconds).</p>
|
|
|
2860
3101
|
<col class="field-name" />
|
|
2861
3102
|
<col class="field-body" />
|
|
2862
3103
|
<tbody valign="top">
|
|
2863
|
-
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>timeout</strong> – The number of milliseconds to wait for a server response to logon. 0 indicates no timeout.</td>
|
|
3104
|
+
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>timeout</strong> – The number of milliseconds to wait for a server response to logon. <code class="docutils literal"><span class="pre">0</span></code> indicates no timeout.</td>
|
|
2864
3105
|
</tr>
|
|
2865
3106
|
</tbody>
|
|
2866
3107
|
</table>
|
|
@@ -2873,18 +3114,73 @@ Default value is 10000 (10 seconds).</p>
|
|
|
2873
3114
|
<em class="property">class </em><code class="descclassname">AMPS.</code><code class="descname">HybridPublishStore</code><a class="headerlink" href="#AMPS.HybridPublishStore" title="Permalink to this definition">¶</a></dt>
|
|
2874
3115
|
<dd><p>Bases: <code class="xref py py-class docutils literal"><span class="pre">object</span></code></p>
|
|
2875
3116
|
<p>A publish store that keeps messages on disk as well as in memory. When used with an HAClient, the HAClient manages storing messages in the publish store, replaying messages to the server after failover, and removing messages from the store. With this publish store, an application can recover messages from disk after exiting and restarting.</p>
|
|
3117
|
+
<dl class="method">
|
|
3118
|
+
<dt id="AMPS.HybridPublishStore.discard_up_to">
|
|
3119
|
+
<code class="descname">discard_up_to</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.HybridPublishStore.discard_up_to" title="Permalink to this definition">¶</a></dt>
|
|
3120
|
+
<dd><p>Discard all messages in the publish store with a sequence number less than or equal to the provided argument.</p>
|
|
3121
|
+
<table class="docutils field-list" frame="void" rules="none">
|
|
3122
|
+
<col class="field-name" />
|
|
3123
|
+
<col class="field-body" />
|
|
3124
|
+
<tbody valign="top">
|
|
3125
|
+
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>sequence</strong> – The highest sequence number to discard.</td>
|
|
3126
|
+
</tr>
|
|
3127
|
+
</tbody>
|
|
3128
|
+
</table>
|
|
3129
|
+
</dd></dl>
|
|
3130
|
+
|
|
3131
|
+
<dl class="method">
|
|
3132
|
+
<dt id="AMPS.HybridPublishStore.get_last_persisted">
|
|
3133
|
+
<code class="descname">get_last_persisted</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.HybridPublishStore.get_last_persisted" title="Permalink to this definition">¶</a></dt>
|
|
3134
|
+
<dd><p>Returns the sequence number of last message ACK’ed by the server.</p>
|
|
3135
|
+
</dd></dl>
|
|
3136
|
+
|
|
3137
|
+
<dl class="method">
|
|
3138
|
+
<dt id="AMPS.HybridPublishStore.get_lowest_unpersisted">
|
|
3139
|
+
<code class="descname">get_lowest_unpersisted</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.HybridPublishStore.get_lowest_unpersisted" title="Permalink to this definition">¶</a></dt>
|
|
3140
|
+
<dd><p>Returns the sequence number of the oldest message in the publish store.</p>
|
|
3141
|
+
</dd></dl>
|
|
3142
|
+
|
|
2876
3143
|
<dl class="method">
|
|
2877
3144
|
<dt id="AMPS.HybridPublishStore.get_unpersisted_count">
|
|
2878
3145
|
<code class="descname">get_unpersisted_count</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.HybridPublishStore.get_unpersisted_count" title="Permalink to this definition">¶</a></dt>
|
|
2879
3146
|
<dd><p>Returns the number of messages published which have not been ACK’ed by the server.</p>
|
|
2880
3147
|
</dd></dl>
|
|
2881
3148
|
|
|
3149
|
+
<dl class="method">
|
|
3150
|
+
<dt id="AMPS.HybridPublishStore.replay">
|
|
3151
|
+
<code class="descname">replay</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.HybridPublishStore.replay" title="Permalink to this definition">¶</a></dt>
|
|
3152
|
+
<dd><p>Replays all messages currently in the publish store via the provided message handler.
|
|
3153
|
+
:param handler: The message handler to call with each message.</p>
|
|
3154
|
+
</dd></dl>
|
|
3155
|
+
|
|
3156
|
+
<dl class="method">
|
|
3157
|
+
<dt id="AMPS.HybridPublishStore.replay_single">
|
|
3158
|
+
<code class="descname">replay_single</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.HybridPublishStore.replay_single" title="Permalink to this definition">¶</a></dt>
|
|
3159
|
+
<dd><p>Replays the message with the given sequence number if it is currently in the publish store via the provided message handler.
|
|
3160
|
+
:param handler: The message handler to call with each message.
|
|
3161
|
+
:param sequence: The sequence number of the message to replay.</p>
|
|
3162
|
+
</dd></dl>
|
|
3163
|
+
|
|
2882
3164
|
<dl class="method">
|
|
2883
3165
|
<dt id="AMPS.HybridPublishStore.set_resize_handler">
|
|
2884
3166
|
<code class="descname">set_resize_handler</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.HybridPublishStore.set_resize_handler" title="Permalink to this definition">¶</a></dt>
|
|
2885
3167
|
<dd><p>Sets the object to call when the store needs to resize.</p>
|
|
2886
3168
|
</dd></dl>
|
|
2887
3169
|
|
|
3170
|
+
<dl class="method">
|
|
3171
|
+
<dt id="AMPS.HybridPublishStore.store">
|
|
3172
|
+
<code class="descname">store</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.HybridPublishStore.store" title="Permalink to this definition">¶</a></dt>
|
|
3173
|
+
<dd><p>Store the provided message into the publish store. Returns the sequence number that should be assigned to the message.</p>
|
|
3174
|
+
<table class="docutils field-list" frame="void" rules="none">
|
|
3175
|
+
<col class="field-name" />
|
|
3176
|
+
<col class="field-body" />
|
|
3177
|
+
<tbody valign="top">
|
|
3178
|
+
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>message</strong> – The message to put into the store.</td>
|
|
3179
|
+
</tr>
|
|
3180
|
+
</tbody>
|
|
3181
|
+
</table>
|
|
3182
|
+
</dd></dl>
|
|
3183
|
+
|
|
2888
3184
|
</dd></dl>
|
|
2889
3185
|
|
|
2890
3186
|
<dl class="exception">
|
|
@@ -3182,6 +3478,20 @@ deal with persisted acks and calls to get_most_recent().</p>
|
|
|
3182
3478
|
<em class="property">class </em><code class="descclassname">AMPS.</code><code class="descname">MemoryPublishStore</code><a class="headerlink" href="#AMPS.MemoryPublishStore" title="Permalink to this definition">¶</a></dt>
|
|
3183
3479
|
<dd><p>Bases: <code class="xref py py-class docutils literal"><span class="pre">object</span></code></p>
|
|
3184
3480
|
<p>A publish store that keeps messages in memory. This class is the default publish store for a python HAClient. The HAClient manages storing messages in the publish store, replaying messages to the server after failover, and removing messages from the store. With this publish store, an application typically checks to be sure that the publish store is empty (that is, all messages have been persisted in the AMPS server) before exiting.</p>
|
|
3481
|
+
<dl class="method">
|
|
3482
|
+
<dt id="AMPS.MemoryPublishStore.discard_up_to">
|
|
3483
|
+
<code class="descname">discard_up_to</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.MemoryPublishStore.discard_up_to" title="Permalink to this definition">¶</a></dt>
|
|
3484
|
+
<dd><p>Discard all messages in the publish store with a sequence number less than or equal to the provided argument.</p>
|
|
3485
|
+
<table class="docutils field-list" frame="void" rules="none">
|
|
3486
|
+
<col class="field-name" />
|
|
3487
|
+
<col class="field-body" />
|
|
3488
|
+
<tbody valign="top">
|
|
3489
|
+
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>sequence</strong> – The highest sequence number to discard.</td>
|
|
3490
|
+
</tr>
|
|
3491
|
+
</tbody>
|
|
3492
|
+
</table>
|
|
3493
|
+
</dd></dl>
|
|
3494
|
+
|
|
3185
3495
|
<dl class="method">
|
|
3186
3496
|
<dt id="AMPS.MemoryPublishStore.get_error_on_publish_gap">
|
|
3187
3497
|
<code class="descname">get_error_on_publish_gap</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.MemoryPublishStore.get_error_on_publish_gap" title="Permalink to this definition">¶</a></dt>
|
|
@@ -3192,12 +3502,39 @@ appears to be missing messages no longer held in the store.</dd>
|
|
|
3192
3502
|
</dl>
|
|
3193
3503
|
</dd></dl>
|
|
3194
3504
|
|
|
3505
|
+
<dl class="method">
|
|
3506
|
+
<dt id="AMPS.MemoryPublishStore.get_last_persisted">
|
|
3507
|
+
<code class="descname">get_last_persisted</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.MemoryPublishStore.get_last_persisted" title="Permalink to this definition">¶</a></dt>
|
|
3508
|
+
<dd><p>Returns the sequence number of last message ACK’ed by the server.</p>
|
|
3509
|
+
</dd></dl>
|
|
3510
|
+
|
|
3511
|
+
<dl class="method">
|
|
3512
|
+
<dt id="AMPS.MemoryPublishStore.get_lowest_unpersisted">
|
|
3513
|
+
<code class="descname">get_lowest_unpersisted</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.MemoryPublishStore.get_lowest_unpersisted" title="Permalink to this definition">¶</a></dt>
|
|
3514
|
+
<dd><p>Returns the sequence number of the oldest message in the publish store.</p>
|
|
3515
|
+
</dd></dl>
|
|
3516
|
+
|
|
3195
3517
|
<dl class="method">
|
|
3196
3518
|
<dt id="AMPS.MemoryPublishStore.get_unpersisted_count">
|
|
3197
3519
|
<code class="descname">get_unpersisted_count</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.MemoryPublishStore.get_unpersisted_count" title="Permalink to this definition">¶</a></dt>
|
|
3198
3520
|
<dd><p>Returns the number of messages published which have not been ACK’ed by the server.</p>
|
|
3199
3521
|
</dd></dl>
|
|
3200
3522
|
|
|
3523
|
+
<dl class="method">
|
|
3524
|
+
<dt id="AMPS.MemoryPublishStore.replay">
|
|
3525
|
+
<code class="descname">replay</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.MemoryPublishStore.replay" title="Permalink to this definition">¶</a></dt>
|
|
3526
|
+
<dd><p>Replays all messages currently in the publish store via the provided message handler.
|
|
3527
|
+
:param handler: The message handler to call with each message.</p>
|
|
3528
|
+
</dd></dl>
|
|
3529
|
+
|
|
3530
|
+
<dl class="method">
|
|
3531
|
+
<dt id="AMPS.MemoryPublishStore.replay_single">
|
|
3532
|
+
<code class="descname">replay_single</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.MemoryPublishStore.replay_single" title="Permalink to this definition">¶</a></dt>
|
|
3533
|
+
<dd><p>Replays the message with the given sequence number if it is currently in the publish store via the provided message handler.
|
|
3534
|
+
:param handler: The message handler to call with each message.
|
|
3535
|
+
:param sequence: The sequence number of the message to replay.</p>
|
|
3536
|
+
</dd></dl>
|
|
3537
|
+
|
|
3201
3538
|
<dl class="method">
|
|
3202
3539
|
<dt id="AMPS.MemoryPublishStore.set_error_on_publish_gap">
|
|
3203
3540
|
<code class="descname">set_error_on_publish_gap</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.MemoryPublishStore.set_error_on_publish_gap" title="Permalink to this definition">¶</a></dt>
|
|
@@ -3220,6 +3557,20 @@ appears to be missing messages no longer held in the store.</td>
|
|
|
3220
3557
|
<dd><p>Sets the object to call when the store needs to resize.</p>
|
|
3221
3558
|
</dd></dl>
|
|
3222
3559
|
|
|
3560
|
+
<dl class="method">
|
|
3561
|
+
<dt id="AMPS.MemoryPublishStore.store">
|
|
3562
|
+
<code class="descname">store</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.MemoryPublishStore.store" title="Permalink to this definition">¶</a></dt>
|
|
3563
|
+
<dd><p>Store the provided message into the publish store. Returns the sequence number that should be assigned to the message.</p>
|
|
3564
|
+
<table class="docutils field-list" frame="void" rules="none">
|
|
3565
|
+
<col class="field-name" />
|
|
3566
|
+
<col class="field-body" />
|
|
3567
|
+
<tbody valign="top">
|
|
3568
|
+
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>message</strong> – The message to put into the store.</td>
|
|
3569
|
+
</tr>
|
|
3570
|
+
</tbody>
|
|
3571
|
+
</table>
|
|
3572
|
+
</dd></dl>
|
|
3573
|
+
|
|
3223
3574
|
</dd></dl>
|
|
3224
3575
|
|
|
3225
3576
|
<dl class="class">
|
|
@@ -5992,31 +6343,31 @@ stream remains open.</div></blockquote>
|
|
|
5992
6343
|
|
|
5993
6344
|
<dl class="class">
|
|
5994
6345
|
<dt id="AMPS.NVFIXBuilder">
|
|
5995
|
-
<em class="property">class </em><code class="descclassname">AMPS.</code><code class="descname">NVFIXBuilder</code><a class="headerlink" href="#AMPS.NVFIXBuilder" title="Permalink to this definition">¶</a></dt>
|
|
6346
|
+
<em class="property">class </em><code class="descclassname">AMPS.</code><code class="descname">NVFIXBuilder</code><span class="sig-paren">(</span><em>delimiter</em><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.NVFIXBuilder" title="Permalink to this definition">¶</a></dt>
|
|
5996
6347
|
<dd><p>Bases: <code class="xref py py-class docutils literal"><span class="pre">object</span></code></p>
|
|
5997
6348
|
<p>Convenience class for easily creating NVFIX strings.</p>
|
|
5998
|
-
<p>Constructor
|
|
6349
|
+
<p><strong>Constructor Arguments:</strong></p>
|
|
5999
6350
|
<table class="docutils field-list" frame="void" rules="none">
|
|
6000
6351
|
<col class="field-name" />
|
|
6001
6352
|
<col class="field-body" />
|
|
6002
6353
|
<tbody valign="top">
|
|
6003
|
-
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>delimiter</strong> – The delimiter to use between NVFIX fields. Defaults to
|
|
6354
|
+
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>delimiter</strong> – The delimiter to use between NVFIX fields. Defaults to \x01 if no delimiter is provided.</td>
|
|
6004
6355
|
</tr>
|
|
6005
6356
|
</tbody>
|
|
6006
6357
|
</table>
|
|
6007
6358
|
<dl class="method">
|
|
6008
6359
|
<dt id="AMPS.NVFIXBuilder.append">
|
|
6009
|
-
<code class="descname">append</code><span class="sig-paren">(</span><em>tag</em>, <em>value</em>, <em>(optional)
|
|
6010
|
-
<dd><p>Appends tag=value to self.</p>
|
|
6360
|
+
<code class="descname">append</code><span class="sig-paren">(</span><em>tag</em>, <em>value</em>, <em>offset(optional)</em>, <em>length(optional)</em><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.NVFIXBuilder.append" title="Permalink to this definition">¶</a></dt>
|
|
6361
|
+
<dd><p>Appends <code class="docutils literal"><span class="pre">tag=value</span></code> to self.</p>
|
|
6011
6362
|
<table class="docutils field-list" frame="void" rules="none">
|
|
6012
6363
|
<col class="field-name" />
|
|
6013
6364
|
<col class="field-body" />
|
|
6014
6365
|
<tbody valign="top">
|
|
6015
6366
|
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
|
|
6016
|
-
<li><strong>tag</strong> (<em>
|
|
6367
|
+
<li><strong>tag</strong> (<em>str</em>) – The tag to use.</li>
|
|
6017
6368
|
<li><strong>value</strong> (<em>str</em>) – The value for the given tag.</li>
|
|
6018
|
-
<li><strong>offset</strong> (<em>int</em>) –
|
|
6019
|
-
<li><strong>length</strong> –
|
|
6369
|
+
<li><strong>offset</strong> (<em>int</em>) – The offset into value at which the value actually starts. <em>Optional.</em></li>
|
|
6370
|
+
<li><strong>length</strong> (<em>int</em>) – The length of the actual value within value. <em>Optional.</em> Only valid and required if offset is also provided.</li>
|
|
6020
6371
|
</ul>
|
|
6021
6372
|
</td>
|
|
6022
6373
|
</tr>
|
|
@@ -6048,15 +6399,15 @@ stream remains open.</div></blockquote>
|
|
|
6048
6399
|
|
|
6049
6400
|
<dl class="class">
|
|
6050
6401
|
<dt id="AMPS.NVFIXShredder">
|
|
6051
|
-
<em class="property">class </em><code class="descclassname">AMPS.</code><code class="descname">NVFIXShredder</code><a class="headerlink" href="#AMPS.NVFIXShredder" title="Permalink to this definition">¶</a></dt>
|
|
6402
|
+
<em class="property">class </em><code class="descclassname">AMPS.</code><code class="descname">NVFIXShredder</code><span class="sig-paren">(</span><em>delimiter</em><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.NVFIXShredder" title="Permalink to this definition">¶</a></dt>
|
|
6052
6403
|
<dd><p>Bases: <code class="xref py py-class docutils literal"><span class="pre">object</span></code></p>
|
|
6053
6404
|
<p>Convenience class for easily processing NVFIX strings.</p>
|
|
6054
|
-
<p>Constructor
|
|
6405
|
+
<p><strong>Constructor Arguments:</strong></p>
|
|
6055
6406
|
<table class="docutils field-list" frame="void" rules="none">
|
|
6056
6407
|
<col class="field-name" />
|
|
6057
6408
|
<col class="field-body" />
|
|
6058
6409
|
<tbody valign="top">
|
|
6059
|
-
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>
|
|
6410
|
+
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>delimiter</strong> – The delimiter to expect between NVFIX fields. Defaults to \x01 if no delimiter is provided.</td>
|
|
6060
6411
|
</tr>
|
|
6061
6412
|
</tbody>
|
|
6062
6413
|
</table>
|
|
@@ -6112,6 +6463,20 @@ fields in the message.</p>
|
|
|
6112
6463
|
<p>AMPS PublishStore Object</p>
|
|
6113
6464
|
<p>Stores published records in a file while awaiting an ACK from the server. Construct with the name of the file to use for record storage
|
|
6114
6465
|
and optionally, a Boolean to specify if the store should throw an exception if logging onto a server that might be missing messages not in the store.</p>
|
|
6466
|
+
<dl class="method">
|
|
6467
|
+
<dt id="AMPS.PublishStore.discard_up_to">
|
|
6468
|
+
<code class="descname">discard_up_to</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.PublishStore.discard_up_to" title="Permalink to this definition">¶</a></dt>
|
|
6469
|
+
<dd><p>Discard all messages in the publish store with a sequence number less than or equal to the provided argument.</p>
|
|
6470
|
+
<table class="docutils field-list" frame="void" rules="none">
|
|
6471
|
+
<col class="field-name" />
|
|
6472
|
+
<col class="field-body" />
|
|
6473
|
+
<tbody valign="top">
|
|
6474
|
+
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>sequence</strong> – The highest sequence number to discard.</td>
|
|
6475
|
+
</tr>
|
|
6476
|
+
</tbody>
|
|
6477
|
+
</table>
|
|
6478
|
+
</dd></dl>
|
|
6479
|
+
|
|
6115
6480
|
<dl class="method">
|
|
6116
6481
|
<dt id="AMPS.PublishStore.get_error_on_publish_gap">
|
|
6117
6482
|
<code class="descname">get_error_on_publish_gap</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.PublishStore.get_error_on_publish_gap" title="Permalink to this definition">¶</a></dt>
|
|
@@ -6122,12 +6487,39 @@ appears to be missing messages no longer held in the store.</dd>
|
|
|
6122
6487
|
</dl>
|
|
6123
6488
|
</dd></dl>
|
|
6124
6489
|
|
|
6490
|
+
<dl class="method">
|
|
6491
|
+
<dt id="AMPS.PublishStore.get_last_persisted">
|
|
6492
|
+
<code class="descname">get_last_persisted</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.PublishStore.get_last_persisted" title="Permalink to this definition">¶</a></dt>
|
|
6493
|
+
<dd><p>Returns the sequence number of last message ACK’ed by the server.</p>
|
|
6494
|
+
</dd></dl>
|
|
6495
|
+
|
|
6496
|
+
<dl class="method">
|
|
6497
|
+
<dt id="AMPS.PublishStore.get_lowest_unpersisted">
|
|
6498
|
+
<code class="descname">get_lowest_unpersisted</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.PublishStore.get_lowest_unpersisted" title="Permalink to this definition">¶</a></dt>
|
|
6499
|
+
<dd><p>Returns the sequence number of the oldest message in the publish store.</p>
|
|
6500
|
+
</dd></dl>
|
|
6501
|
+
|
|
6125
6502
|
<dl class="method">
|
|
6126
6503
|
<dt id="AMPS.PublishStore.get_unpersisted_count">
|
|
6127
6504
|
<code class="descname">get_unpersisted_count</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.PublishStore.get_unpersisted_count" title="Permalink to this definition">¶</a></dt>
|
|
6128
6505
|
<dd><p>Returns the number of messages published which have not been ACK’ed by the server.</p>
|
|
6129
6506
|
</dd></dl>
|
|
6130
6507
|
|
|
6508
|
+
<dl class="method">
|
|
6509
|
+
<dt id="AMPS.PublishStore.replay">
|
|
6510
|
+
<code class="descname">replay</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.PublishStore.replay" title="Permalink to this definition">¶</a></dt>
|
|
6511
|
+
<dd><p>Replays all messages currently in the publish store via the provided message handler.
|
|
6512
|
+
:param handler: The message handler to call with each message.</p>
|
|
6513
|
+
</dd></dl>
|
|
6514
|
+
|
|
6515
|
+
<dl class="method">
|
|
6516
|
+
<dt id="AMPS.PublishStore.replay_single">
|
|
6517
|
+
<code class="descname">replay_single</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.PublishStore.replay_single" title="Permalink to this definition">¶</a></dt>
|
|
6518
|
+
<dd><p>Replays the message with the given sequence number if it is currently in the publish store via the provided message handler.
|
|
6519
|
+
:param handler: The message handler to call with each message.
|
|
6520
|
+
:param sequence: The sequence number of the message to replay.</p>
|
|
6521
|
+
</dd></dl>
|
|
6522
|
+
|
|
6131
6523
|
<dl class="method">
|
|
6132
6524
|
<dt id="AMPS.PublishStore.set_error_on_publish_gap">
|
|
6133
6525
|
<code class="descname">set_error_on_publish_gap</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.PublishStore.set_error_on_publish_gap" title="Permalink to this definition">¶</a></dt>
|
|
@@ -6150,6 +6542,20 @@ appears to be missing messages no longer held in the store.</td>
|
|
|
6150
6542
|
<dd><p>Sets the object to call when the store needs to resize.</p>
|
|
6151
6543
|
</dd></dl>
|
|
6152
6544
|
|
|
6545
|
+
<dl class="method">
|
|
6546
|
+
<dt id="AMPS.PublishStore.store">
|
|
6547
|
+
<code class="descname">store</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.PublishStore.store" title="Permalink to this definition">¶</a></dt>
|
|
6548
|
+
<dd><p>Store the provided message into the publish store. Returns the sequence number that should be assigned to the message.</p>
|
|
6549
|
+
<table class="docutils field-list" frame="void" rules="none">
|
|
6550
|
+
<col class="field-name" />
|
|
6551
|
+
<col class="field-body" />
|
|
6552
|
+
<tbody valign="top">
|
|
6553
|
+
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>message</strong> – The message to put into the store.</td>
|
|
6554
|
+
</tr>
|
|
6555
|
+
</tbody>
|
|
6556
|
+
</table>
|
|
6557
|
+
</dd></dl>
|
|
6558
|
+
|
|
6153
6559
|
<dl class="method">
|
|
6154
6560
|
<dt id="AMPS.PublishStore.truncate_on_close">
|
|
6155
6561
|
<code class="descname">truncate_on_close</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.PublishStore.truncate_on_close" title="Permalink to this definition">¶</a></dt>
|
|
@@ -6512,6 +6918,12 @@ for exceptions.</td>
|
|
|
6512
6918
|
|
|
6513
6919
|
</dd></dl>
|
|
6514
6920
|
|
|
6921
|
+
<dl class="function">
|
|
6922
|
+
<dt id="AMPS.ssl_get_context">
|
|
6923
|
+
<code class="descclassname">AMPS.</code><code class="descname">ssl_get_context</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.ssl_get_context" title="Permalink to this definition">¶</a></dt>
|
|
6924
|
+
<dd><p>Returns the SSLContext used for SSL connections. Call ssl_init first.</p>
|
|
6925
|
+
</dd></dl>
|
|
6926
|
+
|
|
6515
6927
|
<dl class="function">
|
|
6516
6928
|
<dt id="AMPS.ssl_init">
|
|
6517
6929
|
<code class="descclassname">AMPS.</code><code class="descname">ssl_init</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#AMPS.ssl_init" title="Permalink to this definition">¶</a></dt>
|
|
@@ -6520,8 +6932,18 @@ for exceptions.</td>
|
|
|
6520
6932
|
<col class="field-name" />
|
|
6521
6933
|
<col class="field-body" />
|
|
6522
6934
|
<tbody valign="top">
|
|
6523
|
-
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><
|
|
6524
|
-
|
|
6935
|
+
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
|
|
6936
|
+
<li><strong>dllpath</strong> – The path to the OpenSSL DLL or shared library to use for
|
|
6937
|
+
SSL functionality.</li>
|
|
6938
|
+
<li><strong>ssl_context</strong> – An ssl.SSLContext preconfigured with desired settings
|
|
6939
|
+
for tcps connections to the AMPS server.</li>
|
|
6940
|
+
<li><strong>strict_ciphers_only</strong> – If True, use only the stricter ciphers allowed
|
|
6941
|
+
by default in Python version 3.10 and above. The
|
|
6942
|
+
default is False, which enables all default
|
|
6943
|
+
OpenSSL ciphers for compatibility with some AMPS
|
|
6944
|
+
versions using older OpenSSL libraries.</li>
|
|
6945
|
+
</ul>
|
|
6946
|
+
</td>
|
|
6525
6947
|
</tr>
|
|
6526
6948
|
</tbody>
|
|
6527
6949
|
</table>
|
|
@@ -6605,7 +7027,7 @@ SSL functionality.</td>
|
|
|
6605
7027
|
<li class="right" >
|
|
6606
7028
|
<a href="index.html" title="AMPS Python Client Reference"
|
|
6607
7029
|
>previous</a> |</li>
|
|
6608
|
-
<li class="nav-item nav-item-0"><a href="index.html">AMPS Python Client 5.3.4.
|
|
7030
|
+
<li class="nav-item nav-item-0"><a href="index.html">AMPS Python Client 5.3.4.4 documentation</a> »</li>
|
|
6609
7031
|
</ul>
|
|
6610
7032
|
</div>
|
|
6611
7033
|
<div class="footer" role="contentinfo">
|