Package ru.bitel.common.inet
Class IpAddress
java.lang.Object
ru.bitel.common.inet.IpAddress
- All Implemented Interfaces:
Serializable,Comparable<IpAddress>
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionbyte[]static final Comparator<byte[]>static final IpAddressstatic final IpAddress -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic booleanadd(byte[] ip, long delta) Прибавляем к адресу нужное нам количество. delta >=0voidclear()clone()static final intcompare(byte[] v1, byte[] v2) static final intcompare(byte[] v1, int i, int len1, byte[] v2, int j, int len2) intstatic byte[]convertBigIntToIp4Address(BigInteger bigInteger) static byte[]convertBigIntToIp6Address(BigInteger bigInteger) static BigIntegerconvertIp4AddresToBigInt(byte[] address) static BigIntegerconvertIp6AddresToBigInt(byte[] address) static booleandecrement(byte[] ip) Отнимаем один ip от адресаstatic booleanequals(byte[] a, byte[] a2) booleanstatic StringformatRange(byte[] from, byte[] to) Deprecated.static StringformatRange(IpAddress from, IpAddress to) Deprecated.- useIpRange.toString(IpAddress, IpAddress)Форматирует диапазон адресов к виду от-до.inthashCode()static inthashCode(byte[] a) static booleanincrement(byte[] ip) static booleanincrement(byte[] ip, int fromBit) Инкрементирует адрес.static booleaninstersect(byte[] addressFrom, byte[] addressTo, byte[] addressFrom2, byte[] addressTo2) Deprecated.- useIpRange.intersects(byte[], byte[], byte[], byte[])функция пересечения отрезков.static booleanipInRange(byte[] ip, byte[] addressFrom, byte[] addressTo) Deprecated.static byte[]newAndDecrement(byte[] ip) static byte[]newAndIncrement(byte[] ip) static booleannextPrefix(byte[] ip, int prefixLength) Возвращает префикс для указанной длины префикса.static booleanrangeInRange(byte[] addressFrom, byte[] addressTo, byte[] addressFrom2, byte[] addressTo2) Deprecated.- useIpRange.inRange(byte[], byte[], byte[], byte[])функция вхождения одного отрезка в другой.static booleansubstract(byte[] ip, int delta) Отнимем от адреса нужное нам количество. delta >=0static StringtoRFCString(byte[] address) static voidtoRFCString(byte[] address, StringBuilder sb) toString()static StringtoString(byte[] address) static voidtoString(byte[] address, StringBuilder sb)
-
Field Details
-
ZERO_ADDRESS
-
IPV6_ZERO_ADDRESS
-
address
public byte[] address -
comparator
-
-
Constructor Details
-
IpAddress
public IpAddress() -
IpAddress
public IpAddress(byte[] address)
-
-
Method Details
-
hashCode
public int hashCode() -
hashCode
public static int hashCode(byte[] a) -
equals
-
equals
public static boolean equals(byte[] a, byte[] a2) -
clear
public void clear() -
toString
-
toString
-
toString
-
compare
public static final int compare(byte[] v1, byte[] v2) -
compare
public static final int compare(byte[] v1, int i, int len1, byte[] v2, int j, int len2) -
newAndIncrement
public static byte[] newAndIncrement(byte[] ip) -
increment
public static boolean increment(byte[] ip) -
increment
public static boolean increment(byte[] ip, int fromBit) Инкрементирует адрес.- Parameters:
ip-fromBit- позиция бита с конца- Returns:
-
add
public static boolean add(byte[] ip, long delta) Прибавляем к адресу нужное нам количество. delta >=0- Parameters:
ip-delta-- Returns:
-
substract
public static boolean substract(byte[] ip, int delta) Отнимем от адреса нужное нам количество. delta >=0 -
decrement
public static boolean decrement(byte[] ip) Отнимаем один ip от адреса- Parameters:
ip-- Returns:
-
newAndDecrement
public static byte[] newAndDecrement(byte[] ip) -
compareTo
- Specified by:
compareToin interfaceComparable<IpAddress>
-
clone
-
instersect
@Deprecated public static boolean instersect(byte[] addressFrom, byte[] addressTo, byte[] addressFrom2, byte[] addressTo2) Deprecated.- useIpRange.intersects(byte[], byte[], byte[], byte[])функция пересечения отрезков. Все параметры не пустые , иначе NullPointerException- Parameters:
addressFrom-addressTo-addressFrom2-addressTo2-- Returns:
-
rangeInRange
@Deprecated public static boolean rangeInRange(byte[] addressFrom, byte[] addressTo, byte[] addressFrom2, byte[] addressTo2) Deprecated.- useIpRange.inRange(byte[], byte[], byte[], byte[])функция вхождения одного отрезка в другой. Все параметры не пустые , иначе NullPointerException.- Parameters:
addressFrom-addressTo-addressFrom2-addressTo2-- Returns:
-
ipInRange
Deprecated.- Parameters:
ip-addressFrom-addressTo-- Returns:
-
convertIp6AddresToBigInt
- Parameters:
address-- Returns:
-
convertIp4AddresToBigInt
- Parameters:
address-- Returns:
-
convertBigIntToIp4Address
- Parameters:
bigInteger-- Returns:
-
convertBigIntToIp6Address
- Parameters:
bigInteger-- Returns:
-
formatRange
Deprecated.- useIpRange.toString(IpAddress, IpAddress)Форматирует диапазон адресов к виду от-до.- Parameters:
from-to-- Returns:
-
formatRange
Deprecated.- useIpRange.toString(byte[], byte[])Форматирует диапазон адресов к виду от-до.- Parameters:
from-to-- Returns:
-
nextPrefix
public static boolean nextPrefix(byte[] ip, int prefixLength) Возвращает префикс для указанной длины префикса. Если в адресе не префиксные биты !=0, то возвращает следующий префикс.- Parameters:
ip-prefixLength-- Returns:
-
toRFCString
-
toRFCString
-
IpRange.toString(byte[], byte[])Форматирует диапазон адресов к виду от-до.