static NetMsmqRetryPolicy()
        {
            ActualLongRunning = new() {
                MaxRetryCycles    = 71,
                ReceiveRetryCount = 1,
                RetryCycleDelay   = TimeSpan.FromHours(1),
                TimeToLive        = TimeSpan.FromDays(3)
            };
            RealTime = new() {
                MaxRetryCycles    = 0,
                ReceiveRetryCount = 2,
                RetryCycleDelay   = TimeSpan.Zero,
                TimeToLive        = TimeSpan.FromMinutes(1)
            };
            ActualShortRunning = new() {
                MaxRetryCycles    = 3,
                ReceiveRetryCount = 3,
                RetryCycleDelay   = TimeSpan.FromMinutes(9),
                TimeToLive        = TimeSpan.FromMinutes(30)
            };
        }

        public static ServiceModel.Configuration.NetMsmqRetryPolicy LongRunning => new EnvironmentSensitiveNetMsmqRetryPolicy(
            environment => environment.IsDevelopmentOrBuild()
                                ? RealTime
                                : environment.IsAcceptance()
                                        ? ActualShortRunning
                                        : ActualLongRunning);
 static NetMsmqRetryPolicy()
 {
     _longRunning = new ServiceModel.Configuration.NetMsmqRetryPolicy {
         MaxRetryCycles    = 71,
         ReceiveRetryCount = 1,
         RetryCycleDelay   = TimeSpan.FromHours(1),
         TimeToLive        = TimeSpan.FromDays(3)
     };
     _realTime = new ServiceModel.Configuration.NetMsmqRetryPolicy {
         MaxRetryCycles    = 0,
         ReceiveRetryCount = 2,
         RetryCycleDelay   = TimeSpan.Zero,
         TimeToLive        = TimeSpan.FromMinutes(1)
     };
     _shortRunning = new ServiceModel.Configuration.NetMsmqRetryPolicy {
         MaxRetryCycles    = 3,
         ReceiveRetryCount = 3,
         RetryCycleDelay   = TimeSpan.FromMinutes(9),
         TimeToLive        = TimeSpan.FromMinutes(30)
     };
 }