Brunet.Services.MapReduce.MapReduceBoundedBroadcast.GetConnectionInfo C# (CSharp) Метод

GetConnectionInfo() приватный Метод

private GetConnectionInfo ( AHAddress t_addr, AHAddress start, AHAddress end, ConnectionList cl ) : Pair,List>,Brunet.Collections
t_addr Brunet.Symphony.AHAddress
start Brunet.Symphony.AHAddress
end Brunet.Symphony.AHAddress
cl ConnectionList
Результат Pair,List>,Brunet.Collections
    private Brunet.Collections.Pair<List<Connection>,List<Connection>> GetConnectionInfo(AHAddress t_addr, AHAddress start, AHAddress end, ConnectionList cl) {
       
      //this node is within the given range (start_addr, end_addr)
      List<Connection> left_con_list = new List<Connection>();
      List<Connection> right_con_list = new List<Connection>();
      foreach(Connection c in cl) {
        AHAddress adr = (AHAddress)c.Address;
        //if(adr.IsBetweenFromLeft(t_addr, end) ) {
        if (InRange(adr, start, t_addr) ) {
          left_con_list.Add(c);
        }
        //else if (adr.IsBetweenFromLeft(start, t_addr) ) {
        else if (InRange(adr, start, t_addr) ) {
          right_con_list.Add(c);
        }
        else {
          //Out of Range. Do nothing!
        }
      }
      //Make a compare and add it to ConnectionTable to sort by Address
      ConnectionLeftComparer left_cmp = new ConnectionLeftComparer(t_addr);
      left_con_list.Sort(left_cmp);
      ConnectionRightComparer right_cmp = new ConnectionRightComparer(t_addr);
      right_con_list.Sort(right_cmp);
      Brunet.Collections.Pair<List<Connection>,List<Connection>> ret = new Brunet.Collections.Pair<List<Connection>,List<Connection>>(left_con_list, right_con_list);
      return ret;
    }