activemq-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From tab...@apache.org
Subject svn commit: r1030213 - in /activemq/activemq-dotnet/Apache.NMS/trunk/src/main/csharp: INetTxConnection.cs INetTxConnectionFactory.cs INetTxSession.cs
Date Tue, 02 Nov 2010 20:57:04 GMT
Author: tabish
Date: Tue Nov  2 20:57:04 2010
New Revision: 1030213

URL: http://svn.apache.org/viewvc?rev=1030213&view=rev
Log:
https://issues.apache.org/activemq/browse/AMQNET-290

Add interfaces for ConnectionFactory, Connection, and Session instances that offer participation
in Transactions based on the .NET System.Transactions model.

Added:
    activemq/activemq-dotnet/Apache.NMS/trunk/src/main/csharp/INetTxConnection.cs   (with
props)
    activemq/activemq-dotnet/Apache.NMS/trunk/src/main/csharp/INetTxConnectionFactory.cs 
 (with props)
    activemq/activemq-dotnet/Apache.NMS/trunk/src/main/csharp/INetTxSession.cs   (with props)

Added: activemq/activemq-dotnet/Apache.NMS/trunk/src/main/csharp/INetTxConnection.cs
URL: http://svn.apache.org/viewvc/activemq/activemq-dotnet/Apache.NMS/trunk/src/main/csharp/INetTxConnection.cs?rev=1030213&view=auto
==============================================================================
--- activemq/activemq-dotnet/Apache.NMS/trunk/src/main/csharp/INetTxConnection.cs (added)
+++ activemq/activemq-dotnet/Apache.NMS/trunk/src/main/csharp/INetTxConnection.cs Tue Nov
 2 20:57:04 2010
@@ -0,0 +1,37 @@
+/*
+ * 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.
+ */
+
+using System;
+
+namespace Apache.NMS
+{
+    /// <summary>
+    /// The INetTxConnection extends the functionality of the IConnection interface by
+    /// adding the createNetTxSession method (optional).
+    ///
+    /// The INetTxConnection interface is optional. NMS providers are not required to support
this
+    /// interface. This interface is for use by NMS providers to support transactional environments.
+    /// </summary>
+    public interface INetTxConnection : IConnection
+    {
+        /// <summary>
+        /// Creates a INetTxSession object.
+        /// </summary>
+        INetTxSession CreateNetTxSession();
+    }
+}
+

Propchange: activemq/activemq-dotnet/Apache.NMS/trunk/src/main/csharp/INetTxConnection.cs
------------------------------------------------------------------------------
    svn:eol-style = native

Added: activemq/activemq-dotnet/Apache.NMS/trunk/src/main/csharp/INetTxConnectionFactory.cs
URL: http://svn.apache.org/viewvc/activemq/activemq-dotnet/Apache.NMS/trunk/src/main/csharp/INetTxConnectionFactory.cs?rev=1030213&view=auto
==============================================================================
--- activemq/activemq-dotnet/Apache.NMS/trunk/src/main/csharp/INetTxConnectionFactory.cs (added)
+++ activemq/activemq-dotnet/Apache.NMS/trunk/src/main/csharp/INetTxConnectionFactory.cs Tue
Nov  2 20:57:04 2010
@@ -0,0 +1,47 @@
+/*
+ * 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.
+ */
+
+using System;
+
+namespace Apache.NMS
+{
+    /// <summary>
+    /// Some application servers provide support for use in a .NET transactions (optional).
+    ///
+    /// To include NMS API transactions in a MSDTC transaction, an application server requires
a
+    /// .NET Transaction aware NMS provider that is capable of mapping the MSDTC transaction
model
+    /// into operations that are supported by the application server. An NMS provider exposes
its
+    /// .NET Transaction support using an INetTxConnectionFactory object, which an application
+    /// server uses to create INetTxConnection objects.
+    ///
+    /// The INetTxConnectionFactory interface is optional. NMS providers are not required
to support this
+    /// interface. This interface is for use by NMS providers to support transactional environments.
+    /// </summary>
+    public interface INetTxConnectionFactory : IConnectionFactory
+    {
+        /// <summary>
+        /// Creates a new connection
+        /// </summary>
+        INetTxConnection CreateNetTxConnection();
+
+        /// <summary>
+        /// Creates a new connection with the given user name and password
+        /// </summary>
+        INetTxConnection CreateNetTxConnection(string userName, string password);
+    }
+}
+

Propchange: activemq/activemq-dotnet/Apache.NMS/trunk/src/main/csharp/INetTxConnectionFactory.cs
------------------------------------------------------------------------------
    svn:eol-style = native

Added: activemq/activemq-dotnet/Apache.NMS/trunk/src/main/csharp/INetTxSession.cs
URL: http://svn.apache.org/viewvc/activemq/activemq-dotnet/Apache.NMS/trunk/src/main/csharp/INetTxSession.cs?rev=1030213&view=auto
==============================================================================
--- activemq/activemq-dotnet/Apache.NMS/trunk/src/main/csharp/INetTxSession.cs (added)
+++ activemq/activemq-dotnet/Apache.NMS/trunk/src/main/csharp/INetTxSession.cs Tue Nov  2
20:57:04 2010
@@ -0,0 +1,43 @@
+/*
+ * 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.
+ */
+
+using System;
+
+namespace Apache.NMS
+{
+    /// <summary>
+    /// The INetTxSession interface extends the capability of Session by adding access to
a NMS
+    /// provider's support for the Distributed Transactions (optional).  The transaction
support
+    /// leverages the .NET Frameworks System.Transactions API.
+    ///
+    /// The NMS Provider implements this interface by participating in the current ambient
transaction
+    /// as defined by the System.Transactions.Transaction.Current static member.  Whenever
a new
+    /// Transaction is entered the NMS provider should enlist in that transaction.  When
there is no
+    /// ambient transaction then the NMS Prodiver should allow the INetTxSession instance
to behave
+    /// as a session that is in Auto Acknowledge mode.
+    ///
+    /// Calling the Commit or Rollback methods on a INetTxSession instance should throw an
exception
+    /// as those operations are controlled by the Transaction Manager.
+    ///
+    /// The INetTxSession interface is optional. NMS providers are not required to support
this
+    /// interface. This interface is for use by NMS providers to support transactional environments.
+    /// </summary>
+    public interface INetTxSession : ISession
+    {
+    }
+}
+

Propchange: activemq/activemq-dotnet/Apache.NMS/trunk/src/main/csharp/INetTxSession.cs
------------------------------------------------------------------------------
    svn:eol-style = native



Mime
View raw message