summaryrefslogtreecommitdiff
path: root/py/modules/IcePy/Operation.h
diff options
context:
space:
mode:
Diffstat (limited to 'py/modules/IcePy/Operation.h')
-rw-r--r--py/modules/IcePy/Operation.h39
1 files changed, 33 insertions, 6 deletions
diff --git a/py/modules/IcePy/Operation.h b/py/modules/IcePy/Operation.h
index 89a78c1f568..779e7876e14 100644
--- a/py/modules/IcePy/Operation.h
+++ b/py/modules/IcePy/Operation.h
@@ -13,6 +13,7 @@
#include <Config.h>
#include <Ice/Current.h>
#include <Ice/Object.h>
+#include <Ice/OutgoingAsyncF.h>
namespace IcePy
{
@@ -22,16 +23,42 @@ bool initOperation(PyObject*);
//
// Builtin operations.
//
-PyObject* iceIsA(const Ice::ObjectPrx&, PyObject*);
-PyObject* icePing(const Ice::ObjectPrx&, PyObject*);
-PyObject* iceIds(const Ice::ObjectPrx&, PyObject*);
-PyObject* iceId(const Ice::ObjectPrx&, PyObject*);
+PyObject* invokeBuiltin(PyObject*, const std::string&, PyObject*);
+PyObject* beginBuiltin(PyObject*, const std::string&, PyObject*);
+PyObject* endBuiltin(PyObject*, const std::string&, PyObject*);
//
// Blobject invocations.
//
-PyObject* iceInvoke(const Ice::ObjectPrx&, PyObject*);
-PyObject* iceInvokeAsync(const Ice::ObjectPrx&, PyObject*);
+PyObject* iceInvoke(PyObject*, PyObject*);
+PyObject* iceInvokeAsync(PyObject*, PyObject*);
+PyObject* beginIceInvoke(PyObject*, PyObject*, PyObject*);
+PyObject* endIceInvoke(PyObject*, PyObject*);
+
+extern PyTypeObject AsyncResultType;
+PyObject* createAsyncResult(const Ice::AsyncResultPtr&, PyObject*, PyObject*, PyObject*);
+Ice::AsyncResultPtr getAsyncResult(PyObject*);
+
+//
+// Used as the callback for the various flushBatchRequest operations.
+//
+class FlushCallback : public IceUtil::Shared
+{
+public:
+
+ FlushCallback(PyObject*, PyObject*, const std::string&);
+ ~FlushCallback();
+
+ void exception(const Ice::Exception&);
+ void sent(bool);
+
+protected:
+
+ PyObject* _ex;
+ PyObject* _sent;
+ std::string _op;
+};
+typedef IceUtil::Handle<FlushCallback> FlushCallbackPtr;
//
// ServantWrapper handles dispatching to a Python servant.