Class RadiusPacket
java.lang.Object
ru.bitel.bgbilling.kernel.network.radius.RadiusAttributeSet
ru.bitel.bgbilling.kernel.network.radius.RadiusPacket
- All Implemented Interfaces:
Cloneable
Радиус пакет. Этот класс расширяет набор атрибутов
RadiusAttributeSet
.- See Also:
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic class
Класс, объекты которого используются для установкиsetOption(RadiusPacketOption, Object)
и для полученияgetOption(RadiusPacketOption)
. -
Field Summary
Modifier and TypeFieldDescriptionstatic final byte
static final byte
static final byte
static final byte
static final byte
static final byte
static final byte
static final byte
static final byte
static final byte
static final byte
protected byte[]
Для пришедшего запроса это authenticator который хранится в запросе,
для создаваемого запроса - null.static final byte
static final byte
static final byte
static final byte
static final byte
static final byte
final byte
Идентификатор пакета.protected final byte[]
Атрибут для подписи пакетаRadiusDictionary.Message_Authenticator
.
Используется в EAP.static final byte
static final byte
static final byte
protected final byte[]
Для создаваемого ответа - это authenticator запроса.static final byte
static final byte
Fields inherited from class ru.bitel.bgbilling.kernel.network.radius.RadiusAttributeSet
standartAttributes, vendorAttributes
-
Constructor Summary
ModifierConstructorDescriptionRadiusPacket
(byte code, byte identifier) Создание радиус пакета (запрос).protected
RadiusPacket
(byte code, byte identifier, byte[] requestAuthenticator, byte[] authenticator, byte[] messageAuthenticator, Map<Integer, List<RadiusAttribute<?>>> standartAttributes, Map<Integer, Map<Integer, List<RadiusAttribute<?>>>> vendorAttributes, Map<String, Object> optionMap) -
Method Summary
Modifier and TypeMethodDescriptionvoid
addAttribute
(bitel.billing.server.radius.RadiusAttribute ra) Deprecated.void
addAttributes
(List<bitel.billing.server.radius.RadiusAttribute> attrs) Deprecated.void
addOptions
(RadiusPacket request) void
addVendorAttribute
(bitel.billing.server.radius.RadiusVendorAttribute rva) Deprecated.void
addVendorAttributes
(List<bitel.billing.server.radius.RadiusVendorAttribute> attrs) Deprecated.clone()
Создание пакета-ответа из пакета-запроса.void
fromPacket
(RadiusPacket lastResponsePacket) byte[]
byte[]
Deprecated.byte[]
getByteAttribute
(int code) Deprecated.byte
getCode()
Получение типа пакета (например,ACCESS_REQUEST
ACCOUNTING_REQUEST
).int
getFlag()
Deprecated.int
getIntAttribute
(int code) Deprecated.use#getIntAttribute(int, int, int)
Deprecated.<O> O
getOption
(RadiusPacket.RadiusPacketOption<O> option) Получение опции(атрибута) из пакета.<O> O
getOption
(RadiusPacket.RadiusPacketOption<O> option, O value) Получение опции(атрибута) из пакета.byte
Deprecated.int
Deprecated.usegetCode()
Получение названия типа radius-пакетаgetStringAttribute
(int code) Deprecated.getTrace()
List<RadiusAttribute<?>>
getVendorAttributes
(int vendor) Deprecated.List<RadiusAttribute<?>>
getVendorAttributes
(int vendor, int code) Deprecated.int
getVendorIntAttribute
(int code) Deprecated.use#getIntAttribute(int, int, int)
getVendorStringAttribute
(int code) Deprecated.boolean
static RadiusPacket
parse
(ByteBuffer bb) Парсинг пакета из ByteBuffer.static RadiusPacket
parse
(ByteBuffer byteBuffer, boolean move) Парсинг пакета из ByteBuffer.void
setByteAttribute
(int code, byte[] value) Deprecated.void
setCode
(byte code) Установка типа пакета.void
setFlag
(int flag) Deprecated.void
setIntAttribute
(int code, int value) Deprecated.void
Deprecated.<O> void
setOption
(RadiusPacket.RadiusPacketOption<O> option, O value) Установка опции в пакет.void
setPacketType
(byte value) Deprecated.usesetCode(byte)
void
setStringAttribute
(int code, String value) Deprecated.void
setVendorAttribute
(bitel.billing.server.radius.RadiusVendorAttribute rva) Deprecated.toString()
void
write
(ByteBuffer bb, byte[] key) Сериализация пакета в ByteBuffer.Methods inherited from class ru.bitel.bgbilling.kernel.network.radius.RadiusAttributeSet
addAttribute, addAttributes, contains, equals, getAttribute, getAttributes, getAttributeValue, getAttributeValue, getByteAttribute, getIntAttribute, getRadiusAttributeSet, getRadiusAttributeSet, getStringAttribute, getStringAttribute, isEmpty, newRadiusAttributeRealmMap, newRadiusAttributeSet, newRadiusAttributeSet, newRadiusAttributeSetMap, newRadiusAttributeSetRealmMap, removeAttributes, setAttribute, setAttributes, setAttributes, setByteAttribute, setIntAttribute, setStringAttribute, toString
-
Field Details
-
ACCESS_REQUEST
public static final byte ACCESS_REQUEST- See Also:
-
ACCESS_ACCEPT
public static final byte ACCESS_ACCEPT- See Also:
-
ACCESS_REJECT
public static final byte ACCESS_REJECT- See Also:
-
ACCOUNTING_REQUEST
public static final byte ACCOUNTING_REQUEST- See Also:
-
ACCOUNTING_RESPONSE
public static final byte ACCOUNTING_RESPONSE- See Also:
-
ACCOUNTING_STATUS
public static final byte ACCOUNTING_STATUS- See Also:
-
PASSWORD_REQUEST
public static final byte PASSWORD_REQUEST- See Also:
-
PASSWORD_ACCEPT
public static final byte PASSWORD_ACCEPT- See Also:
-
PASSWORD_REJECT
public static final byte PASSWORD_REJECT- See Also:
-
ACCOUNTING_MESSAGE
public static final byte ACCOUNTING_MESSAGE- See Also:
-
ACCESS_CHALLENGE
public static final byte ACCESS_CHALLENGE- See Also:
-
STATUS_SERVER
public static final byte STATUS_SERVER- See Also:
-
STATUS_CLIENT
public static final byte STATUS_CLIENT- See Also:
-
DISCONNECT_REQUEST
public static final byte DISCONNECT_REQUEST- See Also:
-
DISCONNECT_ACK
public static final byte DISCONNECT_ACK- See Also:
-
DISCONNECT_NAK
public static final byte DISCONNECT_NAK- See Also:
-
CoA_REQUEST
public static final byte CoA_REQUEST- See Also:
-
CoA_ACK
public static final byte CoA_ACK- See Also:
-
CoA_NAK
public static final byte CoA_NAK- See Also:
-
ACCOUNTING_STATUS_START
public static final byte ACCOUNTING_STATUS_START- See Also:
-
ACCOUNTING_STATUS_STOP
public static final byte ACCOUNTING_STATUS_STOP- See Also:
-
ACCOUNTING_STATUS_UPDATE
public static final byte ACCOUNTING_STATUS_UPDATE- See Also:
-
identifier
public final byte identifierИдентификатор пакета. -
requestAuthenticator
protected final byte[] requestAuthenticatorДля создаваемого ответа - это authenticator запроса. -
authenticator
protected byte[] authenticatorДля пришедшего запроса это authenticator который хранится в запросе,
для создаваемого запроса - null. -
messageAuthenticator
protected final byte[] messageAuthenticatorАтрибут для подписи пакетаRadiusDictionary.Message_Authenticator
.
Используется в EAP.
-
-
Constructor Details
-
RadiusPacket
-
RadiusPacket
public RadiusPacket(byte code, byte identifier) Создание радиус пакета (запрос).- Parameters:
code
- - тип пакета (например, 0x28)identifier
- - идентификатор пакета.
-
-
Method Details
-
getCode
public byte getCode()Получение типа пакета (например,ACCESS_REQUEST
ACCOUNTING_REQUEST
).- Returns:
-
setCode
public void setCode(byte code) Установка типа пакета.- Parameters:
code
-
-
isRequest
public boolean isRequest() -
write
Сериализация пакета в ByteBuffer.- Parameters:
bb
- - буферkey
- - секрет наса.- Throws:
InvalidKeyException
NoSuchAlgorithmException
-
parse
Парсинг пакета из ByteBuffer.- Parameters:
bb
-- Returns:
- Throws:
ru.bitel.bgbilling.common.BGException
-
parse
public static RadiusPacket parse(ByteBuffer byteBuffer, boolean move) throws ru.bitel.bgbilling.common.BGException Парсинг пакета из ByteBuffer.- Parameters:
byteBuffer
-- Returns:
- Throws:
ru.bitel.bgbilling.common.BGException
-
createResponse
Создание пакета-ответа из пакета-запроса.- Returns:
-
getOption
Получение опции(атрибута) из пакета. Если такая опция не была установлена - метод вернет null.- Parameters:
option
-- Returns:
- See Also:
-
setOption(RadiusPacketOption, Object)
VoiceIpNas.CALL_TYPE
VoiceIpNas.OPERATOR
RadiusPacket.RadiusPacketOption
-
getOption
Получение опции(атрибута) из пакета. Если такая опция не была установлена - метод вернет value.- Parameters:
option
-value
- - значение по умолчанию- Returns:
- See Also:
-
setOption(RadiusPacketOption, Object)
VoiceIpNas.CALL_TYPE
VoiceIpNas.OPERATOR
RadiusPacket.RadiusPacketOption
-
setOption
Установка опции в пакет.- Parameters:
option
-value
-- See Also:
-
VoiceIpNas.CALL_TYPE
VoiceIpNas.OPERATOR
RadiusPacket.RadiusPacketOption
-
toString
- Overrides:
toString
in classRadiusAttributeSet
-
getPacketTypeString
Получение названия типа radius-пакета- Returns:
- тип пакета
-
fromPacket
-
getTrace
-
getOption
Deprecated.Для обратной совместимости со скриптами- Parameters:
option
-- Returns:
-
setOption
Deprecated.Для обратной совместимости со скриптами- Parameters:
option
-value
-
-
setFlag
Deprecated.Для обратной совместимости со скриптами- Parameters:
flag
-
-
getFlag
Deprecated.Для обратной совместимости со скриптами- Returns:
-
setPacketType
Deprecated.usesetCode(byte)
- Parameters:
value
-
-
addAttribute
Deprecated. -
setVendorAttribute
Deprecated. -
addVendorAttribute
Deprecated. -
addVendorAttributes
@Deprecated public void addVendorAttributes(List<bitel.billing.server.radius.RadiusVendorAttribute> attrs) Deprecated. -
addAttributes
Deprecated. -
setStringAttribute
Deprecated. -
setIntAttribute
Deprecated. -
setByteAttribute
Deprecated. -
getByteAttribute
Deprecated. -
getStringAttribute
Deprecated. -
getIntAttribute
Deprecated.use#getIntAttribute(int, int, int)
-
getVendorStringAttribute
Deprecated. -
getVendorIntAttribute
Deprecated.use#getIntAttribute(int, int, int)
-
getVendorAttributes
Deprecated. -
getVendorAttributes
Deprecated.Не понятно для чего мог использоваться данный метод.
Оставлен для обратной совместимости, возвращает все атрибуты всех типов для указанного вендора.- Parameters:
vendor
-- Returns:
-
getPacketType
Deprecated.usegetCode()
Оставлен для обратной совместимости, возвращает тип пакета (code)- Returns:
-
getPacketId
Deprecated.Оставлен для обратной совместимости, возвращает идентификатор пакета (identifier)- Returns:
-
clone
-
getAuthenticatorBytes
Deprecated. -
getAuthenticator
public byte[] getAuthenticator() -
addOptions
-
RadiusAttributeSet.addAttribute(RadiusAttribute)