예제 #1
0
    public static IEdgeReplacementPolicy Create(IEdgeReplacementPolicy fallback, Address loc, params BT.TransportAddress.TAType[] edge_order)
    {
        var id = new IPIDERPolicy(fallback);
        var dh = new DownhillERPolicy(id, loc);

        return(new TypeERPolicy(dh, edge_order));
    }
예제 #2
0
 public RelayERPolicy(IEdgeReplacementPolicy fallback)
 {
     if (null == fallback)
     {
         throw new System.ArgumentNullException("fallback IEdgeReplacementPolicy cannot be null");
     }
     _fallback = fallback;
 }
예제 #3
0
 public IPIDERPolicy(IEdgeReplacementPolicy fallback)
 {
     if (null == fallback)
     {
         throw new System.ArgumentNullException("Fallback can't be null");
     }
     _fallback = fallback;
 }
예제 #4
0
 public DownhillERPolicy(IEdgeReplacementPolicy fallback,
                         Address local)
 {
     if (null == fallback)
     {
         throw new System.ArgumentNullException("Fallback can't be null");
     }
     _fallback = fallback;
     _loc      = local;
 }
예제 #5
0
 public TypeERPolicy(IEdgeReplacementPolicy fallback,
                     params BT.TransportAddress.TAType[] edge_order)
 {
     if (null == fallback)
     {
         throw new System.ArgumentNullException("Fallback can't be null");
     }
     _fallback = fallback;
     _tc       = new TypeComparer(edge_order);
 }
예제 #6
0
 public RelayERPolicy(IEdgeReplacementPolicy fallback) {
   if( null == fallback ) {
     throw new System.ArgumentNullException("fallback IEdgeReplacementPolicy cannot be null");
   }
   _fallback = fallback;
 }