blob: 1fb0716b379de06fabb95f46e8711cfe68b01b85 [file] [log] [blame]
Jonathan Hart8f5f4682013-08-07 22:13:39 +12001package net.onrc.onos.ofcontroller.bgproute;
2
3import java.util.Iterator;
4
Jonathan Hart29b972d2013-08-12 23:43:51 +12005public interface IPatriciaTrie<V> {
6 public V put(Prefix prefix, V value);
Jonathan Hart8f5f4682013-08-07 22:13:39 +12007
Jonathan Hart29b972d2013-08-12 23:43:51 +12008 public V lookup(Prefix prefix);
Jonathan Hart8f5f4682013-08-07 22:13:39 +12009
Jonathan Hart29b972d2013-08-12 23:43:51 +120010 public V match(Prefix prefix);
Jonathan Hart8f5f4682013-08-07 22:13:39 +120011
Jonathan Hart29b972d2013-08-12 23:43:51 +120012 public boolean remove(Prefix prefix, V value);
Jonathan Hart8f5f4682013-08-07 22:13:39 +120013
Jonathan Hart29b972d2013-08-12 23:43:51 +120014 public Iterator<Entry<V>> iterator();
Jonathan Hart8f5f4682013-08-07 22:13:39 +120015
Jonathan Hart29b972d2013-08-12 23:43:51 +120016 interface Entry<V> {
Jonathan Hart8f5f4682013-08-07 22:13:39 +120017 public Prefix getPrefix();
Jonathan Hart29b972d2013-08-12 23:43:51 +120018 public V getValue();
Jonathan Hart8f5f4682013-08-07 22:13:39 +120019 }
20}