summaryrefslogtreecommitdiff
path: root/trunk/qpid/wcf/src/Apache/Qpid/Interop/AmqpSession.h
diff options
context:
space:
mode:
Diffstat (limited to 'trunk/qpid/wcf/src/Apache/Qpid/Interop/AmqpSession.h')
-rw-r--r--trunk/qpid/wcf/src/Apache/Qpid/Interop/AmqpSession.h107
1 files changed, 0 insertions, 107 deletions
diff --git a/trunk/qpid/wcf/src/Apache/Qpid/Interop/AmqpSession.h b/trunk/qpid/wcf/src/Apache/Qpid/Interop/AmqpSession.h
deleted file mode 100644
index 88ffd18dcc..0000000000
--- a/trunk/qpid/wcf/src/Apache/Qpid/Interop/AmqpSession.h
+++ /dev/null
@@ -1,107 +0,0 @@
-/*
-* Licensed to the Apache Software Foundation (ASF) under one
-* or more contributor license agreements. See the NOTICE file
-* distributed with this work for additional information
-* regarding copyright ownership. The ASF licenses this file
-* to you under the Apache License, Version 2.0 (the
-* "License"); you may not use this file except in compliance
-* with the License. You may obtain a copy of the License at
-*
-* http://www.apache.org/licenses/LICENSE-2.0
-*
-* Unless required by applicable law or agreed to in writing,
-* software distributed under the License is distributed on an
-* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-* KIND, either express or implied. See the License for the
-* specific language governing permissions and limitations
-* under the License.
-*/
-
-#pragma once
-
-#include "AmqpConnection.h"
-#include "MessageBodyStream.h"
-#include "CompletionWaiter.h"
-
-namespace Apache {
-namespace Qpid {
-namespace Interop {
-
-using namespace System;
-using namespace System::Runtime::InteropServices;
-using namespace System::Transactions;
-using namespace System::Diagnostics;
-
-
-using namespace qpid::client;
-using namespace std;
-
-ref class InputLink;
-ref class OutputLink;
-ref class XaTransaction;
-
-public ref class AmqpSession
-{
-private:
- Object^ sessionLock;
- Object^ openCloseLock;
- AmqpConnection^ connection;
- AsyncSession* sessionp;
- SessionImpl* sessionImplp;
- SubscriptionManager* subs_mgrp;
- Collections::Generic::List<CompletionWaiter^>^ waiters;
- bool helperRunning;
-
- // number of active InputLinks and OutputLinks
- int openCount;
-
- // the number of async commands sent to the broker that need completion confirmation
- int syncCount;
-
- bool closing;
- ManualResetEvent^ closeWaitHandle;
- bool dtxEnabled;
- Transaction^ openSystemTransaction;
- XaTransaction^ openXaTransaction;
- Collections::Generic::List<XaTransaction^>^ pendingTransactions;
-
- void Cleanup();
- void CheckOpen();
- void asyncHelper(Object ^);
- void addWaiter(CompletionWaiter^ waiter);
- void UpdateTransactionState(msclr::lock^ sessionLock);
- void IncrementSyncs();
- void DecrementSyncs();
- void WaitLastSync(msclr::lock^ l);
-
-public:
- OutputLink^ CreateOutputLink(System::String^ targetQueue);
- InputLink^ CreateInputLink(System::String^ sourceQueue);
-
- // 0-10 specific support
- InputLink^ CreateInputLink(System::String^ sourceQueue, bool exclusive, bool temporary, System::String^ filterKey, System::String^ exchange);
- void Bind(System::String^ queue, System::String^ exchange, System::String^ filterKey);
-
-internal:
- AmqpSession(AmqpConnection^ connection, qpid::client::Connection* qpidConnection);
- void NotifyClosed();
- CompletionWaiter^ SendMessage (System::String^ queue, MessageBodyStream ^mbody, TimeSpan timeout, bool async, AsyncCallback^ callback, Object^ state);
- void ConnectionClosed();
- void internalWaitForCompletion(IntPtr future);
- void removeWaiter(CompletionWaiter^ waiter);
- bool MessageStop(std::string &name);
- void AcceptAndComplete(SequenceSet& transfers);
- IntPtr BeginPhase0Flush(XaTransaction^);
- void EndPhase0Flush(XaTransaction^, IntPtr);
- IntPtr DtxStart(IntPtr xidp, bool, bool);
- IntPtr DtxPrepare(IntPtr xidp);
- IntPtr DtxCommit(IntPtr xidp, bool onePhase);
- IntPtr DtxRollback(IntPtr xidp);
- void ReleaseCompletion(IntPtr completion);
-
- property AmqpConnection^ Connection {
- AmqpConnection^ get () { return connection; }
- }
-};
-
-}}} // namespace Apache::Qpid::Interop