public TransactionChannelListener(System.ServiceModel.TransactionProtocol transactionProtocol, IDefaultCommunicationTimeouts timeouts, Dictionary <DirectionalAction, TransactionFlowOption> dictionary, IChannelListener <TChannel> innerListener) : base(timeouts, innerListener) { this.dictionary = dictionary; this.TransactionProtocol = transactionProtocol; base.Acceptor = new TransactionChannelAcceptor <TChannel>((TransactionChannelListener <TChannel>) this, innerListener); this.standardsManager = SecurityStandardsHelper.CreateStandardsManager(this.TransactionProtocol); }
private void InitializeFrom(TcpTransportBindingElement transport, BinaryMessageEncodingBindingElement encoding, TransactionFlowBindingElement context, ReliableSessionBindingElement session) { // TODO: Fx.Assert(transport != null, "Invalid (null) transport value."); // TODO: Fx.Assert(encoding != null, "Invalid (null) encoding value."); // TODO: Fx.Assert(context != null, "Invalid (null) context value."); // TODO: Fx.Assert(security != null, "Invalid (null) security value."); // transport this.HostNameComparisonMode = transport.HostNameComparisonMode; this.MaxBufferPoolSize = transport.MaxBufferPoolSize; this.MaxBufferSize = transport.MaxBufferSize; this.MaxReceivedMessageSize = transport.MaxReceivedMessageSize; this.PortSharingEnabled = transport.PortSharingEnabled; this.TransferMode = transport.TransferMode; // encoding this.ReaderQuotas = encoding.ReaderQuotas; // context this.TransactionFlow = context.Transactions; this.TransactionProtocol = context.TransactionProtocol; //session if (session != null) { // only set properties that have standard binding manifestations _session.InactivityTimeout = session.InactivityTimeout; _session.Ordered = session.Ordered; } }
public TransactionChannelFactory(System.ServiceModel.TransactionProtocol transactionProtocol, BindingContext context, Dictionary <DirectionalAction, TransactionFlowOption> dictionary, bool allowWildcardAction) : base(context.Binding, context.BuildInnerChannelFactory <TChannel>()) { this.dictionary = dictionary; this.TransactionProtocol = transactionProtocol; this.allowWildcardAction = allowWildcardAction; this.standardsManager = SecurityStandardsHelper.CreateStandardsManager(this.TransactionProtocol); }
public static void WriteTransactionDataToMessage(TransactionProtocol protocol, string fileName) { object transactionFormatter = null; if (protocol == TransactionProtocol.OleTransactions) { transactionFormatter = RefUtil.CreateInstance<object>(OleTxTransactionFormatter); } else if (protocol == TransactionProtocol.WSAtomicTransactionOctober2004) { transactionFormatter = RefUtil.CreateInstance<object>(WsatTransactionFormatter10); } else { transactionFormatter = RefUtil.CreateInstance<object>(WsatTransactionFormatter11); } Type type = Type.GetType(TransactionFormatter); Message message = Message.CreateMessage(MessageVersion.Default, "http://www.artech.com/writetransaction", Transaction.Current); RefUtil.Invoke(type,"WriteTransaction",transactionFormatter,new object[]{Transaction.Current, message}); using (XmlWriter writer = new XmlTextWriter(fileName, Encoding.UTF8)) { message.WriteMessage(writer); } Process.Start(fileName); }
internal static bool IsDefined(TransactionProtocol transactionProtocol) { if ((transactionProtocol != OleTransactions) && (transactionProtocol != WSAtomicTransactionOctober2004)) { return(transactionProtocol == WSAtomicTransaction11); } return(true); }
internal static bool IsDefined(TransactionProtocol transactionProtocol) { if ((transactionProtocol != OleTransactions) && (transactionProtocol != WSAtomicTransactionOctober2004)) { return (transactionProtocol == WSAtomicTransaction11); } return true; }
public static SecurityStandardsManager CreateStandardsManager(TransactionProtocol transactionProtocol) { if ((transactionProtocol != TransactionProtocol.WSAtomicTransactionOctober2004) && (transactionProtocol != TransactionProtocol.OleTransactions)) { return SecurityStandardsManager2007; } return SecurityStandardsManager.DefaultInstance; }
internal TransactionFlowBindingElement(bool transactions, System.ServiceModel.TransactionProtocol transactionProtocol) { this.transactions = transactions; this.issuedTokens = transactions ? TransactionFlowOption.Allowed : TransactionFlowOption.NotAllowed; if (!System.ServiceModel.TransactionProtocol.IsDefined(transactionProtocol)) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgument(System.ServiceModel.SR.GetString("ConfigInvalidTransactionFlowProtocolValue", new object[] { transactionProtocol.ToString() })); } this.transactionProtocol = transactionProtocol; }
private TransactionFlowBindingElement(TransactionFlowBindingElement elementToBeCloned) : base(elementToBeCloned) { this.transactions = elementToBeCloned.transactions; this.issuedTokens = elementToBeCloned.issuedTokens; if (!System.ServiceModel.TransactionProtocol.IsDefined(elementToBeCloned.transactionProtocol)) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgument(System.ServiceModel.SR.GetString("ConfigInvalidTransactionFlowProtocolValue", new object[] { elementToBeCloned.transactionProtocol.ToString() })); } this.transactionProtocol = elementToBeCloned.transactionProtocol; this.AllowWildcardAction = elementToBeCloned.AllowWildcardAction; }
static void TrackAgreementTransactionProtocol(ref bool everyoneAgrees, TransactionProtocol option, ref TransactionProtocol agreedOption, ref bool anOperationCares) { if (!anOperationCares) { // this is the first operation to express a preference agreedOption = option; anOperationCares = true; // everyoneAgrees is still true } else { if (option != agreedOption) everyoneAgrees = false; } }
static TransactionProtocol () { wsat = new WSAtomicTransactionProtocol (); oletx = new OleTransactionProtocol (); }
internal static bool IsDefined(TransactionProtocol transactionProtocol) { return(transactionProtocol == TransactionProtocol.OleTransactions || transactionProtocol == TransactionProtocol.WSAtomicTransactionOctober2004 || transactionProtocol == TransactionProtocol.WSAtomicTransaction11); }
internal static bool IsDefined(TransactionProtocol transactionProtocol) { return transactionProtocol == TransactionProtocol.OleTransactions || transactionProtocol == TransactionProtocol.WSAtomicTransactionOctober2004 || transactionProtocol == TransactionProtocol.WSAtomicTransaction11; }
static TransactionProtocol() { wsat = new WSAtomicTransactionProtocol(); oletx = new OleTransactionProtocol(); }
public TransactionFlowBindingElement(System.ServiceModel.TransactionProtocol transactionProtocol) : this(true, transactionProtocol) { }