Пример #1
0
            protected override IAsyncPolicy GetAsyncPolicy(CallContextBase context, PolicyAttribute attribute)
            {
                var testAttribute = (TestPolicyAttribute)attribute;
                var policy        = new AsyncTestPolicy(testAttribute.Name, testAttribute.Order, false);

                return(policy);
            }
Пример #2
0
 public virtual ISyncPolicy GetSyncPolicy(CallContextBase context, PolicyAttribute attribute)
 {
     if (attribute is TAttribute)
     {
         return(GetSyncPolicy(context, (TAttribute)attribute));
     }
     return(null);
 }
Пример #3
0
        protected virtual IAsyncPolicy GetAsyncPolicy(CallContextBase context, PolicyAttribute attribute)
        {
            var policies = _attributePolicyProviders
                           .Select(provider => provider.GetAsyncPolicy(context, attribute))
                           .Where(policy => policy != null)
                           .ToArray();

            if (!policies.Any())
            {
                return(null);
            }
            if (policies.Length == 1)
            {
                return(policies.Single());
            }

            return(Policy.WrapAsync(policies));
        }
Пример #4
0
 public IAsyncPolicy GetAsyncPolicy(CallContextBase context, PolicyAttribute attribute)
 {
     return(null);
 }