private ESAServiceProxy()
 {
     if (ApplicationEx.Instance != null)
     {
         proxy = ApplicationEx.Instance.ServerApplicationService.RemoteService;
     }
 }
        internal void InitialiseService()
        {
            RequestQueue = new Queue <RequestDetails>();

            if (ApplicationEx.Instance.Url != null)
            {
                bool isSecure = GetScheme(ApplicationEx.Instance.Url) == "https://";
                BasicHttpSecurityMode securityMode = (isSecure ? BasicHttpSecurityMode.Transport : BasicHttpSecurityMode.None);

                string  url         = ApplicationEx.Instance.Url;
                string  bindingName = GetBinding(url);
                Binding binding     = null;

                if (bindingName.Length == 0)
                {
                    bindingName = isSecure ? "binaryssl" : "binary";
                    url        += "/" + bindingName;

                    binding = CreateBinaryBinding(isSecure);
                }
                else
                {
                    switch (bindingName)
                    {
                    case "basic":
                    case "basicssl":
                        binding = CreateBasicBinding(securityMode);
                        break;

                    case "binary":
                        binding = CreateBinaryBinding(false);
                        break;

                    case "binaryssl":
                        binding = CreateBinaryBinding(true);
                        break;

                    default:
                        binding = CreateBasicBinding(securityMode);
                        break;
                    }
                }

                EndpointAddress address = new EndpointAddress(url);

                // Potentially use BasicHttpMessageInspectorBinding from Microsoft.Silverlight.Samples instead?
                //BasicHttpMessageInspectorBinding binding = new BasicHttpMessageInspectorBinding(new AWServiceMessageInspector(), securityMode);

                _remoteService = new ESAServiceClient(binding, address);
                RemoteService.ExecCompleted += new EventHandler <ESAPortal.ExecCompletedEventArgs>(RemoteService_ExecCompleted);
            }
        }
        internal void InitialiseService()
        {
            RequestQueue = new Queue<RequestDetails>();

            if (ApplicationEx.Instance.Url != null)
            {
                bool isSecure = GetScheme(ApplicationEx.Instance.Url) == "https://";
                BasicHttpSecurityMode securityMode = (isSecure ? BasicHttpSecurityMode.Transport : BasicHttpSecurityMode.None);

                string url = ApplicationEx.Instance.Url;
                string bindingName = GetBinding(url);
                Binding binding = null;

                if (bindingName.Length==0)
                {
                    bindingName = isSecure ? "binaryssl" : "binary";
                    url += "/" + bindingName;

                    binding = CreateBinaryBinding(isSecure);
                }
                else
                {
                    switch (bindingName)
                    {
                        case "basic":
                        case "basicssl":
                            binding = CreateBasicBinding(securityMode);
                            break;
                        case "binary":
                            binding = CreateBinaryBinding(false);
                            break;
                        case "binaryssl":
                            binding = CreateBinaryBinding(true);
                            break;
                        default:
                            binding = CreateBasicBinding(securityMode);
                            break;
                    }
                }

                EndpointAddress address = new EndpointAddress(url);

                // Potentially use BasicHttpMessageInspectorBinding from Microsoft.Silverlight.Samples instead?
                //BasicHttpMessageInspectorBinding binding = new BasicHttpMessageInspectorBinding(new AWServiceMessageInspector(), securityMode);

                _remoteService = new ESAServiceClient(binding, address);
                RemoteService.ExecCompleted += new EventHandler<ESAPortal.ExecCompletedEventArgs>(RemoteService_ExecCompleted);
            }
        }
 private ESAServiceProxy()
 {
     if (ApplicationEx.Instance != null)
         proxy = ApplicationEx.Instance.ServerApplicationService.RemoteService;
 }