예제 #1
0
 private void Initialize()
 {
     if (_writer == null)
     {
         _writer = _boundary.Writer();
     }
 }
예제 #2
0
        public static WriteResponse Write(this IBoundaryWriter boundary, string request, int timeout, int repeatCount,
                                          int repeatTimeout)
        {
            int           count = 1;
            WriteResponse response;

            do
            {
                response = boundary.Write(request, timeout);
                if (response.Expired)
                {
                    Thread.Sleep(repeatTimeout);
                    count++;
                }
                else
                {
                    break;
                }
            } while (count <= repeatCount);

            if (count > repeatCount)
            {
                response.AddError(new LambdaFailureException(Properties.Resources.WriteCountException));
            }
            if (response.Expired)
            {
                response.AddError(new LambdaFailureException(Properties.Resources.WriteTimeOut));
            }

            return(response);
        }
예제 #3
0
 public TransportBoundary(IBoundaryWriter writer)
 {
     _writer = writer;
 }
예제 #4
0
 public ReadableBoundary(IBoundaryWriter boundary)
 {
     _boundary = boundary;
 }