public override T GetProperty <T>(BindingContext context)
            where T : class
        {
            if (context == null)
            {
                throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("context");
            }
            BindingElement bindingElement = this.BuildInnerBindingElement(context);

            if (typeof(T) == typeof(IBindingDeliveryCapabilities))
            {
                return((T)(new TcpRelayTransportBindingElement.BindingDeliveryCapabilitiesHelper()));
            }
            return(bindingElement.GetProperty <T>(context));
        }