Пример #1
0
        public static string GetName(SessionPolicy policy, LocationInfo locationInfo, string customName)
        {
            switch (policy)
            {
                case SessionPolicy.Custom:
                    if (customName != null)
                    {
                        return customName;
                    }
                    else
                    {
                        return SiAuto.Main.Name;
                    }

                case SessionPolicy.TypeName:
                    return locationInfo.DeclaringType.Name;

                case SessionPolicy.FullyQualifiedTypeName:
                    return locationInfo.DeclaringType.Namespace + "." + locationInfo.DeclaringType.Name;

                case SessionPolicy.Namespace:
                    return locationInfo.DeclaringType.Namespace;
                case SessionPolicy.MemberName:
                    return locationInfo.Name;
            }

            return SiAuto.Main.Name;
        }
Пример #2
0
        public static string GetName(SessionPolicy policy, string typeName,
			string typeNamespace, string customName)
        {
            switch (policy)
            {
                case SessionPolicy.Custom:
                    if (customName != null)
                    {
                        return customName;
                    }
                    else
                    {
                        return SiAuto.Main.Name;
                    }

                case SessionPolicy.TypeName:
                    return typeName;

                case SessionPolicy.FullyQualifiedTypeName:
                    return typeNamespace + "." + typeName;

                case SessionPolicy.Namespace:
                    return typeNamespace;
            }

            return SiAuto.Main.Name;
        }
        /// <summary>
        ///     <para>Initializes an instance of the <see cref="VocollectSubscriber"/> class.</para>
        /// </summary>
        public VocollectSubscriber()
        {
            SessionPolicyAttribute attribute = (SessionPolicyAttribute)this.GetType().GetCustomAttributes(typeof(SessionPolicyAttribute), true)[0];

            sessionPolicy = attribute.Policy;

            VocollectSection configSection = ConfigurationManager.GetSection(VocollectSection.SectionKey) as VocollectSection;

            ackByte = System.Convert.ToByte(configSection.ODRConfirmationByte, 16);
        }
Пример #4
0
        public MessageSubscriber()
        {
            SessionPolicyAttribute attribute = (SessionPolicyAttribute)this.GetType().GetCustomAttributes(typeof(SessionPolicyAttribute), true)[0];

            _sessionPolicy       = attribute.Policy;
            _config              = ConfigurationManager.GetSection(MessagingSection.SectionKey) as MessagingSection;
            _requestSerializer   = new XmlSerializer(typeof(TRequest));
            _responseSerializer  = new XmlSerializer(typeof(TResponse));
            _exceptionSerializer = new XmlSerializer(typeof(ServerFault));
        }
 /// <summary>
 ///     <para>Initializes an instance of the <see cref="SessionPolicyAttribute"/> class.</para>
 /// </summary>
 /// <param name="policy">
 /// The <see cref="SessionPolicy"/> required by the subscriber.
 /// </param>
 public SessionPolicyAttribute(SessionPolicy policy)
 {
     this.policy = policy;
 }
 private IPromise<IHttpResponse> Query(string queryEndpoint, string authorization
   , string action, string query, SessionPolicy policy, string policyToken
   , System.Net.ICredentials credentials, bool async, Action<IHttpRequest> writer = null)
 {
   return _service.Execute("POST", new Uri(_endpoints.Base, queryEndpoint).ToString()
                           , null, credentials, async, request =>
   {
     foreach (var a in _defaults)
     {
       a.Invoke(request);
     }
     request.SetHeader("Accept", "text/xml");
     if (action == "ValidateUser")
     {
       request.SetHeader("DesiredPolicy", ((int)policy).ToString());
       if (!string.IsNullOrEmpty(policyToken))
         request.SetHeader(ProxyServerConnection.PolicyTokenHeader, policyToken);
     }
     if (!string.IsNullOrEmpty(authorization))
       request.SetHeader("Authorization", "Bearer " + authorization);
     if (!string.IsNullOrEmpty(action)) request.SetHeader("SOAPACTION", action);
     if (writer != null) writer.Invoke(request);
     if (!string.IsNullOrEmpty(query)) request.SetContent(w => w.Write(query).Close(), "text/xml");
   });
 }
 private IPromise<IHttpResponse> Query(string authorization, string action, string query,
   SessionPolicy policy, string policyToken, bool async)
 {
   return Query(_endpoints.Query.First(), authorization, action, query, policy, policyToken
               , CredentialCache.DefaultCredentials, async);
 }