Exemplo n.º 1
0
        public ServiceWrapper(CancellationToken cancelToken)
        {
            var    endpointAddress = EndpointAddresses.First();
            object endpointAddressObj;

            if (ApplicationData.Current.RoamingSettings.Values.TryGetValue(EndpointAddressKey, out endpointAddressObj))
            {
                endpointAddress = endpointAddressObj as string;
            }

            this.janus = new JanusATSoapClient(endpointAddress);
            this.cancelRegistration = cancelToken.Register(this.Close, useSynchronizationContext: false);
        }
Exemplo n.º 2
0
        public static async Task <bool> CheckAsync()
        {
            string validAddress = null;

            foreach (var endpointAddress in EndpointAddresses)
            {
                var service = new JanusATSoapClient(endpointAddress);

                try
                {
                    await service.CheckAsync();

                    validAddress = endpointAddress;
                }
                catch (Exception)
                {
                    validAddress = null;
                }
                finally
                {
                    await service.CloseAsync();
                }

                if (String.IsNullOrWhiteSpace(validAddress) == false)
                {
                    break;
                }
            }

            if (String.IsNullOrWhiteSpace(validAddress))
            {
                return(false);
            }

            ApplicationData.Current.RoamingSettings.Values[EndpointAddressKey] = validAddress;
            return(true);
        }