| package net.floodlightcontroller.bgproute; |
| |
| import org.slf4j.Logger; |
| import org.slf4j.LoggerFactory; |
| |
| public class PtreeNode { |
| public PtreeNode parent; |
| public PtreeNode left; |
| public PtreeNode right; |
| |
| public byte key[]; |
| public int keyBits; |
| |
| public int refCount; |
| |
| public Rib rib; |
| protected static Logger log = LoggerFactory.getLogger(BgpRoute.class); |
| |
| PtreeNode(byte [] key, int key_bits, int max_key_octet) { |
| parent = null; |
| left = null; |
| right = null; |
| refCount = 0; |
| rib = null; |
| this.key = new byte[max_key_octet]; |
| this.keyBits = key_bits; |
| log.debug("inside Ptreenode constructor key {} bits {}", key, key_bits); |
| |
| int octet = Ptree.bit_to_octet(key_bits); |
| for (int i = 0; i < max_key_octet; i++) { |
| if (i < octet) { |
| if (key != null) { |
| log.debug(octet + ": filling key[{}] {}", i, key[i]); |
| this.key[i] = key[i]; |
| } else { |
| log.debug("no filling, null key", i); |
| } |
| } else { |
| log.debug("filling key {} as 0", i); |
| this.key[i] = 0; |
| } |
| } |
| } |
| } |