/// <summary> /// Set up the object. This is only an /// initialization function. In order to actually start the fault /// tolerance monitoring, use <see cref="MamaFtMember.activate"/> /// </summary> public new void setup( MamaQueue queue, MamaFtMemberCallback callback, MamaTransport transport, string groupName, uint weight, double heartbeatInterval, double timeoutInterval, object closure) { setupFtType( mamaFtType.MAMA_FT_TYPE_BRIDGE, queue, callback, transport, groupName, weight, heartbeatInterval, timeoutInterval, closure); }
protected void setupFtType( mamaFtType ftType, MamaQueue queue, MamaFtMemberCallback callback, MamaTransport transport, string groupName, uint weight, double heartbeatInterval, double timeoutInterval, object closure) { EnsurePeerCreated(); if (callback == null) { mCallbackForwarder = null; mCallback = null; } else { mCallbackForwarder = new CallbackForwarder(this, callback, closure); mCallback = new CallbackForwarder.FtMemberCallbackDelegate(mCallbackForwarder.OnFtStateChange); } IntPtr queueHandle = queue != null ? queue.NativeHandle : IntPtr.Zero; IntPtr transportHandle = transport != null ? transport.NativeHandle : IntPtr.Zero; int code = NativeMethods.mamaFtMember_setup( nativeHandle, mamaFtType.MAMA_FT_TYPE_MULTICAST, queueHandle, mCallback, transportHandle, groupName, weight, heartbeatInterval, timeoutInterval, null); CheckResultCode(code); }
protected void setupFtType( mamaFtType ftType, MamaQueue queue, MamaFtMemberCallback callback, MamaTransport transport, string groupName, uint weight, double heartbeatInterval, double timeoutInterval, object closure) { EnsurePeerCreated(); if (callback == null) { mCallbackForwarder = null; mCallback = null; } else { mCallbackForwarder = new CallbackForwarder(this, callback, closure); mCallback = new CallbackForwarder.FtMemberCallbackDelegate(mCallbackForwarder.OnFtStateChange); } IntPtr queueHandle = queue != null ? queue.NativeHandle : IntPtr.Zero; IntPtr transportHandle = transport != null ? transport.NativeHandle : IntPtr.Zero; int code = NativeMethods.mamaFtMember_setup( nativeHandle, mamaFtType.MAMA_FT_TYPE_MULTICAST, queueHandle, mCallback, transportHandle, groupName, weight, heartbeatInterval, timeoutInterval, null); CheckResultCode(code); }
public CallbackForwarder(MamaFtMember target, MamaFtMemberCallback callback, object closure) { mTarget = target; mCallback = callback; mClosure = closure; }
public void setup( MamaQueue queue, MamaFtMemberCallback callback, MamaTransport transport, string groupName, uint weight, double heartbeatInterval, double timeoutInterval, object closure) { setupFtType ( mamaFtType.MAMA_FT_TYPE_MULTICAST, queue, callback, transport, groupName, weight, heartbeatInterval, timeoutInterval, closure); }
public CallbackForwarder(MamaFtMember target, MamaFtMemberCallback callback, object closure) { mTarget = target; mCallback = callback; mClosure = closure; }