IpPrefix
class IpPrefix : Parcelable
kotlin.Any | |
↳ | android.net.IpPrefix |
This class represents an IP prefix, i.e., a contiguous block of IP addresses aligned on a power of two boundary (also known as an "IP subnet"). A prefix is specified by two pieces of information:
- A starting IP address (IPv4 or IPv6). This is the first IP address of the prefix.
- A prefix length. This specifies the length of the prefix by specifing the number of bits in the IP address, starting from the most significant bit in network byte order, that are constant for all addresses in the prefix.
192.0.2.0/24
covers the 256 IPv4 addresses from 192.0.2.0
to 192.0.2.255
, inclusive, and the prefix 2001:db8:1:2
covers the 2^64 IPv6 addresses from 2001:db8:1:2::
to 2001:db8:1:2:ffff:ffff:ffff:ffff
, inclusive. Objects of this class are immutable.
Summary
Inherited constants | |
---|---|
Public constructors | |
---|---|
IpPrefix(address: InetAddress, prefixLength: Int) Constructs a new |
Public methods | |
---|---|
Boolean |
contains(address: InetAddress) Determines whether the prefix contains the specified address. |
Int |
Implement the Parcelable interface. |
Boolean |
Compares this |
InetAddress |
Returns a copy of the first IP address in the prefix. |
Int |
Returns the prefix length of this |
ByteArray |
Returns a copy of the IP address bytes in network order (the highest order byte is the zeroth element). |
Int |
hashCode() Gets the hashcode of the represented IP prefix. |
String |
toString() Returns a string representation of this |
Unit |
writeToParcel(dest: Parcel, flags: Int) Implement the Parcelable interface. |
Properties | |
---|---|
static Parcelable.Creator<IpPrefix!> |
Implement the Parcelable interface. |
Public constructors
IpPrefix
IpPrefix(
address: InetAddress,
prefixLength: Int)
Constructs a new IpPrefix
from an IPv4 or IPv6 address and a prefix length. Silently truncates the address to the prefix length, so for example 192.0.2.1/24
is silently converted to 192.0.2.0/24
.
Parameters | |
---|---|
address |
InetAddress: the IP address. Must be non-null. |
prefixLength |
Int: the prefix length. Must be >= 0 and <= (32 or 128) (IPv4 or IPv6). Value is between 0 and 128 inclusive |
Public methods
contains
fun contains(address: InetAddress): Boolean
Determines whether the prefix contains the specified address.
Parameters | |
---|---|
address |
InetAddress: An InetAddress to test. This value cannot be null . |
Return | |
---|---|
Boolean |
true if the prefix covers the given address. false otherwise. |
describeContents
fun describeContents(): Int
Implement the Parcelable interface.
Return | |
---|---|
Int |
a bitmask indicating the set of special object types marshaled by this Parcelable object instance. Value is either 0 or android.os.Parcelable#CONTENTS_FILE_DESCRIPTOR |
equals
fun equals(other: Any?): Boolean
Compares this IpPrefix
object against the specified object in obj
. Two objects are equal if they have the same startAddress and prefixLength.
Parameters | |
---|---|
obj |
the object to be tested for equality. This value may be null . |
Return | |
---|---|
Boolean |
true if both objects are equal, false otherwise. |
getAddress
fun getAddress(): InetAddress
Returns a copy of the first IP address in the prefix. Modifying the returned object does not change this object's contents.
Return | |
---|---|
InetAddress |
the address in the form of a byte array. This value cannot be null . |
getPrefixLength
fun getPrefixLength(): Int
Returns the prefix length of this IpPrefix
.
Return | |
---|---|
Int |
the prefix length. Value is between 0 and 128 inclusive |
getRawAddress
fun getRawAddress(): ByteArray
Returns a copy of the IP address bytes in network order (the highest order byte is the zeroth element). Modifying the returned array does not change this object's contents.
Return | |
---|---|
ByteArray |
the address in the form of a byte array. This value cannot be null . |
hashCode
fun hashCode(): Int
Gets the hashcode of the represented IP prefix.
Return | |
---|---|
Int |
the appropriate hashcode value. |
toString
fun toString(): String
Returns a string representation of this IpPrefix
.
Return | |
---|---|
String |
a string such as "192.0.2.0/24" or "2001:db8:1:2::/64" . |
writeToParcel
fun writeToParcel(
dest: Parcel,
flags: Int
): Unit
Implement the Parcelable interface.
Parameters | |
---|---|
dest |
Parcel: The Parcel in which the object should be written. This value cannot be null . |
flags |
Int: Additional flags about how the object should be written. May be 0 or PARCELABLE_WRITE_RETURN_VALUE . Value is either 0 or a combination of android.os.Parcelable#PARCELABLE_WRITE_RETURN_VALUE , and android.os.Parcelable.PARCELABLE_ELIDE_DUPLICATES |
Properties
CREATOR
static val CREATOR: Parcelable.Creator<IpPrefix!>
Implement the Parcelable interface.