- java.lang.Object
-
- inet.ipaddr.format.util.BaseDualIPv4v6Tries<IPv4AddressTrie,IPv6AddressTrie>
-
- inet.ipaddr.format.util.DualIPv4v6Tries
-
- All Implemented Interfaces:
java.io.Serializable
,java.lang.Cloneable
,java.lang.Iterable<IPAddress>
public class DualIPv4v6Tries extends BaseDualIPv4v6Tries<IPv4AddressTrie,IPv6AddressTrie>
Combines an IPv4 with an IPv6 trie to store both IPv4 and IPv6 addresses and prefix blocks. For a tree that is either IPv4 or IPv6, one or the other, you can just use #AddressTrie
. Another alternative to this data structure is to use a single IPv6 trie, while mapping IPv4 addresses to IPv6 with the default IPv4-mapped address mapping, or some other mapping.- Author:
- scfoley
- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description DualIPv4v6Tries()
DualIPv4v6Tries(IPv4AddressTrie ipv4Trie, IPv6AddressTrie ipv6Trie)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.util.Iterator<AddressTrie.TrieNode<? extends IPAddress>>
blockSizeNodeIterator(boolean lowerSubNodeFirst)
DualIPv4v6Tries
clone()
java.util.Iterator<AddressTrie.TrieNode<? extends IPAddress>>
containedFirstIterator(boolean forwardSubNodeOrder)
java.util.Iterator<AddressTrie.TrieNode<? extends IPAddress>>
containingFirstIterator(boolean forwardSubNodeOrder)
IPv4AddressTrie
getIPv4Trie()
returns the contained IPv4 trieIPv6AddressTrie
getIPv6Trie()
returns the contained IPv6 triejava.util.Iterator<AddressTrie.TrieNode<? extends IPAddress>>
nodeIterator(boolean forward)
java.util.Spliterator<AddressTrie.TrieNode<? extends IPAddress>>
nodeSpliterator(boolean forward)
-
Methods inherited from class inet.ipaddr.format.util.BaseDualIPv4v6Tries
add, addNode, addTrie, ceiling, ceilingAddedNode, contains, descendingIterator, descendingSpliterator, elementContains, elementsContainedBy, elementsContaining, equals, floor, floorAddedNode, getAddedNode, higher, higherAddedNode, isEmpty, iterator, longestPrefixMatch, longestPrefixMatchNode, lower, lowerAddedNode, remove, removeElementsContainedBy, size, spliterator, toString
-
-
-
-
Constructor Detail
-
DualIPv4v6Tries
public DualIPv4v6Tries()
-
DualIPv4v6Tries
public DualIPv4v6Tries(IPv4AddressTrie ipv4Trie, IPv6AddressTrie ipv6Trie)
-
-
Method Detail
-
getIPv4Trie
public IPv4AddressTrie getIPv4Trie()
Description copied from class:BaseDualIPv4v6Tries
returns the contained IPv4 trie- Specified by:
getIPv4Trie
in classBaseDualIPv4v6Tries<IPv4AddressTrie,IPv6AddressTrie>
- Returns:
-
getIPv6Trie
public IPv6AddressTrie getIPv6Trie()
Description copied from class:BaseDualIPv4v6Tries
returns the contained IPv6 trie- Specified by:
getIPv6Trie
in classBaseDualIPv4v6Tries<IPv4AddressTrie,IPv6AddressTrie>
- Returns:
-
clone
public DualIPv4v6Tries clone()
- Overrides:
clone
in classBaseDualIPv4v6Tries<IPv4AddressTrie,IPv6AddressTrie>
-
nodeIterator
public java.util.Iterator<AddressTrie.TrieNode<? extends IPAddress>> nodeIterator(boolean forward)
- Specified by:
nodeIterator
in classBaseDualIPv4v6Tries<IPv4AddressTrie,IPv6AddressTrie>
-
containingFirstIterator
public java.util.Iterator<AddressTrie.TrieNode<? extends IPAddress>> containingFirstIterator(boolean forwardSubNodeOrder)
- Specified by:
containingFirstIterator
in classBaseDualIPv4v6Tries<IPv4AddressTrie,IPv6AddressTrie>
-
containedFirstIterator
public java.util.Iterator<AddressTrie.TrieNode<? extends IPAddress>> containedFirstIterator(boolean forwardSubNodeOrder)
- Specified by:
containedFirstIterator
in classBaseDualIPv4v6Tries<IPv4AddressTrie,IPv6AddressTrie>
-
blockSizeNodeIterator
public java.util.Iterator<AddressTrie.TrieNode<? extends IPAddress>> blockSizeNodeIterator(boolean lowerSubNodeFirst)
- Specified by:
blockSizeNodeIterator
in classBaseDualIPv4v6Tries<IPv4AddressTrie,IPv6AddressTrie>
-
nodeSpliterator
public java.util.Spliterator<AddressTrie.TrieNode<? extends IPAddress>> nodeSpliterator(boolean forward)
- Specified by:
nodeSpliterator
in classBaseDualIPv4v6Tries<IPv4AddressTrie,IPv6AddressTrie>
-
-