-
- All Superinterfaces:
java.io.Serializable
- All Known Implementing Classes:
IPAddressProvider.AdjustedAddressCreator
,IPAddressProvider.AllCreator
,IPAddressProvider.CachedAddressCreator
,IPAddressProvider.CachedAddressProvider
,IPAddressProvider.LoopbackCreator
,IPAddressProvider.MaskCreator
,IPAddressProvider.NullProvider
,IPAddressProvider.VersionedAddressCreator
,ParsedIPAddress
public interface IPAddressProvider extends java.io.Serializable
Provides an address corresponding to a parsed string.- Author:
- sfoley
-
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static class
IPAddressProvider.AdjustedAddressCreator
static class
IPAddressProvider.AllCreator
static class
IPAddressProvider.CachedAddressCreator
static class
IPAddressProvider.CachedAddressProvider
static class
IPAddressProvider.IPType
static class
IPAddressProvider.LoopbackCreator
static class
IPAddressProvider.MaskCreator
static class
IPAddressProvider.NullProvider
static class
IPAddressProvider.VersionedAddressCreator
-
Field Summary
Fields Modifier and Type Field Description static IPAddressProvider.NullProvider
EMPTY_PROVIDER
static IPAddressProvider.NullProvider
INVALID_PROVIDER
static IPAddressProvider.NullProvider
NO_TYPE_PROVIDER
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description default java.lang.Boolean
contains(IPAddressProvider other)
An optimized contains that does not need to create address objects to return an answer.default java.lang.Boolean
contains(java.lang.String other)
An optimized contains that does not need to fully parse the other address to return an answer.default IPAddressDivisionSeries
getDivisionGrouping()
default IPAddressStringParameters
getParameters()
If the address was created by parsing, this provides the parameters used when creating the address.IPAddress
getProviderAddress()
IPAddress
getProviderAddress(IPAddress.IPVersion version)
static IPAddressProvider
getProviderFor(IPAddress address, IPAddress hostAddress)
Wraps an IPAddress for IPAddressString in the cases where no parsing is provided, the address exists alreadyIPAddress
getProviderHostAddress()
default IPAddress.IPVersion
getProviderIPVersion()
default IPAddress
getProviderMask()
default java.lang.Integer
getProviderNetworkPrefixLength()
default IPAddressSeqRange
getProviderSeqRange()
IPAddressProvider.IPType
getType()
default boolean
hasPrefixSeparator()
default boolean
isInvalid()
default boolean
isProvidingAllAddresses()
default boolean
isProvidingBase85IPv6()
default boolean
isProvidingEmpty()
default boolean
isProvidingIPAddress()
default boolean
isProvidingIPv4()
default boolean
isProvidingIPv6()
default boolean
isProvidingMixedIPv6()
default boolean
isProvidingPrefixOnly()
default boolean
isSequential()
default boolean
isUninitialized()
default java.lang.Boolean
parsedEquals(IPAddressProvider other)
An optimized equality comparison that does not need to create addresses to return an answer.default java.lang.Boolean
prefixContains(IPAddressProvider other)
An optimized prefix comparison that does not need to create addresses to return an answer.default java.lang.Boolean
prefixContains(java.lang.String other)
An optimized prefix comparison that does not need to create addresses to return an answer.default java.lang.Boolean
prefixEquals(IPAddressProvider other)
An optimized prefix comparison that does not need to create addresses to return an answer.default java.lang.Boolean
prefixEquals(java.lang.String other)
An optimized prefix comparison that does not need to fully parse the other address to return an answer.default int
providerCompare(IPAddressProvider other)
default boolean
providerEquals(IPAddressProvider other)
When a value provider produces no value, equality and comparison are based on the enum IPType, which can by null.default int
providerHashCode()
-
-
-
Field Detail
-
INVALID_PROVIDER
static final IPAddressProvider.NullProvider INVALID_PROVIDER
-
NO_TYPE_PROVIDER
static final IPAddressProvider.NullProvider NO_TYPE_PROVIDER
-
EMPTY_PROVIDER
static final IPAddressProvider.NullProvider EMPTY_PROVIDER
-
-
Method Detail
-
getType
IPAddressProvider.IPType getType()
-
getProviderHostAddress
IPAddress getProviderHostAddress() throws IncompatibleAddressException
- Throws:
IncompatibleAddressException
-
getProviderAddress
IPAddress getProviderAddress() throws IncompatibleAddressException
- Throws:
IncompatibleAddressException
-
getProviderAddress
IPAddress getProviderAddress(IPAddress.IPVersion version) throws IncompatibleAddressException
- Throws:
IncompatibleAddressException
-
isSequential
default boolean isSequential()
-
getProviderSeqRange
default IPAddressSeqRange getProviderSeqRange()
-
getProviderMask
default IPAddress getProviderMask()
-
getDivisionGrouping
default IPAddressDivisionSeries getDivisionGrouping() throws IncompatibleAddressException
- Throws:
IncompatibleAddressException
-
providerCompare
default int providerCompare(IPAddressProvider other) throws IncompatibleAddressException
- Throws:
IncompatibleAddressException
-
providerEquals
default boolean providerEquals(IPAddressProvider other) throws IncompatibleAddressException
When a value provider produces no value, equality and comparison are based on the enum IPType, which can by null.- Parameters:
o
-- Returns:
- Throws:
IncompatibleAddressException
-
providerHashCode
default int providerHashCode() throws IncompatibleAddressException
- Throws:
IncompatibleAddressException
-
getProviderIPVersion
default IPAddress.IPVersion getProviderIPVersion()
-
isProvidingIPAddress
default boolean isProvidingIPAddress()
-
isProvidingIPv4
default boolean isProvidingIPv4()
-
isProvidingIPv6
default boolean isProvidingIPv6()
-
isProvidingPrefixOnly
default boolean isProvidingPrefixOnly()
-
isProvidingAllAddresses
default boolean isProvidingAllAddresses()
-
isProvidingEmpty
default boolean isProvidingEmpty()
-
isProvidingMixedIPv6
default boolean isProvidingMixedIPv6()
-
isProvidingBase85IPv6
default boolean isProvidingBase85IPv6()
-
getProviderNetworkPrefixLength
default java.lang.Integer getProviderNetworkPrefixLength()
-
isInvalid
default boolean isInvalid()
-
isUninitialized
default boolean isUninitialized()
-
contains
default java.lang.Boolean contains(IPAddressProvider other)
An optimized contains that does not need to create address objects to return an answer. Unconventional addresses may require that the address objects are created, in such cases null is returned. Addresses constructed from canonical or normalized representations with no wildcards will not return null.- Parameters:
other
-- Returns:
-
contains
default java.lang.Boolean contains(java.lang.String other)
An optimized contains that does not need to fully parse the other address to return an answer. Unconventional addresses may require full parsing, in such cases null is returned. Addresses constructed from canonical or normalized representations with no wildcards will not return null.- Parameters:
other
-- Returns:
-
prefixEquals
default java.lang.Boolean prefixEquals(java.lang.String other)
An optimized prefix comparison that does not need to fully parse the other address to return an answer. Unconventional addresses may require full parsing, in such cases null is returned. Addresses constructed from canonical or normalized representations with no wildcards will not return null.- Parameters:
other
-- Returns:
-
prefixEquals
default java.lang.Boolean prefixEquals(IPAddressProvider other)
An optimized prefix comparison that does not need to create addresses to return an answer. Unconventional addresses may require the address objects, in such cases null is returned.- Parameters:
other
-- Returns:
-
prefixContains
default java.lang.Boolean prefixContains(java.lang.String other)
An optimized prefix comparison that does not need to create addresses to return an answer. Unconventional addresses may require the address objects, in such cases null is returned.- Parameters:
other
-- Returns:
-
prefixContains
default java.lang.Boolean prefixContains(IPAddressProvider other)
An optimized prefix comparison that does not need to create addresses to return an answer. Unconventional addresses may require the address objects, in such cases null is returned.- Parameters:
other
-- Returns:
-
parsedEquals
default java.lang.Boolean parsedEquals(IPAddressProvider other)
An optimized equality comparison that does not need to create addresses to return an answer. Unconventional addresses may require the address objects, in such cases null is returned.- Parameters:
other
-- Returns:
-
hasPrefixSeparator
default boolean hasPrefixSeparator()
-
getParameters
default IPAddressStringParameters getParameters()
If the address was created by parsing, this provides the parameters used when creating the address.- Returns:
- the parameters used to create the address, or null if no such parameters were used.
-
getProviderFor
static IPAddressProvider getProviderFor(IPAddress address, IPAddress hostAddress)
Wraps an IPAddress for IPAddressString in the cases where no parsing is provided, the address exists already- Parameters:
value
-- Returns:
-
-