internal static bool TryCreate(SecurityBindingElement sbe, EndToEndSecurityMode mode, Microsoft.ServiceBus.RelayClientAuthenticationType relayClientAuthenticationType, out NetOnewayRelaySecurity security) { MessageSecurityOverRelayOneway messageSecurityOverRelayOneway; security = null; if (!MessageSecurityOverRelayOneway.TryCreate(sbe, out messageSecurityOverRelayOneway)) { messageSecurityOverRelayOneway = null; } security = new NetOnewayRelaySecurity(mode, relayClientAuthenticationType, null, messageSecurityOverRelayOneway); if (sbe == null) { return(true); } Type type = typeof(SecurityElementBase); object[] objArray = new object[] { security.CreateMessageSecurity(), sbe, false }; return((bool)InvokeHelper.InvokeStaticMethod(type, "AreBindingsMatching", objArray)); }
private static bool TryCreateSecurity(SecurityBindingElement sbe, RelayClientAuthenticationType relayClientAuthenticationType, Microsoft.ServiceBus.UnifiedSecurityMode mode, out NetOnewayRelaySecurity security) { if (sbe == null) { mode = mode & (Microsoft.ServiceBus.UnifiedSecurityMode.None | Microsoft.ServiceBus.UnifiedSecurityMode.Transport | Microsoft.ServiceBus.UnifiedSecurityMode.TransportWithMessageCredential); } else { mode = mode & (Microsoft.ServiceBus.UnifiedSecurityMode.Message | Microsoft.ServiceBus.UnifiedSecurityMode.Both); } EndToEndSecurityMode relaySecurityMode = EndToEndSecurityModeHelper.ToRelaySecurityMode(mode); bool flag = EndToEndSecurityModeHelper.IsDefined(relaySecurityMode); CultureInfo invariantCulture = CultureInfo.InvariantCulture; object[] str = new object[] { relaySecurityMode.ToString() }; Microsoft.ServiceBus.Diagnostics.DiagnosticUtility.DebugAssert(flag, string.Format(invariantCulture, "Invalid RelaySecurityMode value: {0}.", str)); if (NetOnewayRelaySecurity.TryCreate(sbe, relaySecurityMode, relayClientAuthenticationType, out security)) { return(true); } return(false); }
protected NetEventRelayBinding(RelayedOnewayTransportBindingElement transport, BinaryMessageEncodingBindingElement encoding, NetOnewayRelaySecurity security) : base(transport, encoding, security) { this.transport.ConnectionMode = RelayedOnewayConnectionMode.Multicast; }
protected NetOnewayRelayBinding(NetOnewayRelaySecurity security) { this.security = security; }
protected NetOnewayRelayBinding(RelayedOnewayTransportBindingElement transport, BinaryMessageEncodingBindingElement encoding, NetOnewayRelaySecurity security) { this.transport = transport; this.encoding = encoding; this.security = security; }