A Transport that is made reliable by being able to fail over to another transport when a transport failure is detected.
Inheritance: ICompositeTransport, IComparable
        public FailoverTransport CreateTransport(StringDictionary parameters)
        {
            FailoverTransport transport = new FailoverTransport();

            URISupport.SetProperties(transport, parameters, "");
            return(transport);
        }
        /// <summary>
        /// </summary>
        /// <param name="compositData"></param>
        /// <returns></returns>
        public ITransport CreateTransport(URISupport.CompositeData compositData)
        {
            StringDictionary  options   = compositData.Parameters;
            FailoverTransport transport = CreateTransport(options);

            transport.Add(compositData.Components);
            return(transport);
        }
示例#3
0
        public int CompareTo(Object o)
        {
            if (o is FailoverTransport)
            {
                FailoverTransport oo = o as FailoverTransport;

                return(this._id - oo._id);
            }
            else
            {
                throw new ArgumentException();
            }
        }
示例#4
0
 public BackupTransport(FailoverTransport ft)
 {
     this.failoverTransport = ft;
 }
示例#5
0
 /// <summary>
 /// Initializes a new instance of the <see cref="Connector"/> class.
 /// </summary>
 /// <param name="setTransport">The set transport.</param>
 /// <param name="uri">The URI.</param>
 /// <param name="transport">The transport.</param>
 public Connector(SetTransport setTransport, Uri uri, FailoverTransport transport)
 {
     _uri = uri;
     _setTransport = setTransport;
     _transport = transport;
 }
示例#6
0
 public FailoverTask(FailoverTransport p)
 {
     parent = p;
 }
示例#7
0
 public FailoverTask(FailoverTransport p)
 {
     parent = p;
 }
示例#8
0
 /// <summary>
 /// Initializes a new instance of the <see cref="Connector"/> class.
 /// </summary>
 /// <param name="setTransport">The set transport.</param>
 /// <param name="uri">The URI.</param>
 /// <param name="transport">The transport.</param>
 public Connector(SetTransport setTransport, Uri uri, FailoverTransport transport)
 {
     _uri          = uri;
     _setTransport = setTransport;
     _transport    = transport;
 }
示例#9
0
 public BackupTransport(FailoverTransport ft)
 {
     this.failoverTransport = ft;
 }
 public FailoverTransport CreateTransport(StringDictionary parameters)
 {
     FailoverTransport transport = new FailoverTransport();
     URISupport.SetProperties(transport, parameters, "transport.");
     return transport;
 }