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
Nested ClassesModifier and TypeClassDescriptionstatic classКласс, объекты которого используются для установкиsetOption(RadiusPacketOption, Object)и для полученияgetOption(RadiusPacketOption). -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final bytestatic final bytestatic final bytestatic final bytestatic final bytestatic final bytestatic final bytestatic final bytestatic final bytestatic final bytestatic final byteprotected byte[]Для пришедшего запроса это authenticator который хранится в запросе,
для создаваемого запроса - null.static final bytestatic final bytestatic final bytestatic final bytestatic final bytestatic final bytefinal byteИдентификатор пакета.protected final byte[]Атрибут для подписи пакетаRadiusDictionary.Message_Authenticator.
Используется в EAP.static final bytestatic final bytestatic final byteprotected final byte[]Для создаваемого ответа - это authenticator запроса.static final bytestatic final byteFields inherited from class ru.bitel.bgbilling.kernel.network.radius.RadiusAttributeSet
standartAttributes, vendorAttributes -
Constructor Summary
ConstructorsModifierConstructorDescriptionRadiusPacket(byte code, byte identifier) Создание радиус пакета (запрос).protectedRadiusPacket(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 TypeMethodDescriptionvoidaddOptions(RadiusPacket request) clone()Создание пакета-ответа из пакета-запроса.voidfromPacket(RadiusPacket lastResponsePacket) byte[]bytegetCode()Получение типа пакета (например,ACCESS_REQUESTACCOUNTING_REQUEST).Deprecated.<O> OgetOption(RadiusPacket.RadiusPacketOption<O> option) Получение опции(атрибута) из пакета.<O> OgetOption(RadiusPacket.RadiusPacketOption<O> option, O value) Получение опции(атрибута) из пакета.Получение названия типа radius-пакетаgetTrace()booleanstatic RadiusPacketparse(ByteBuffer bb) Парсинг пакета из ByteBuffer.static RadiusPacketparse(ByteBuffer byteBuffer, boolean move) Парсинг пакета из ByteBuffer.voidsetCode(byte code) Установка типа пакета.voidDeprecated.<O> voidsetOption(RadiusPacket.RadiusPacketOption<O> option, O value) Установка опции в пакет.toString()voidwrite(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_REQUESTACCOUNTING_REQUEST).- Returns:
-
setCode
public void setCode(byte code) Установка типа пакета.- Parameters:
code-
-
isRequest
public boolean isRequest() -
write
Сериализация пакета в ByteBuffer.- Parameters:
bb- - буферkey- - секрет наса.- Throws:
InvalidKeyExceptionNoSuchAlgorithmException
-
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_TYPEVoiceIpNas.OPERATORRadiusPacket.RadiusPacketOption
-
getOption
Получение опции(атрибута) из пакета. Если такая опция не была установлена - метод вернет value.- Parameters:
option-value- - значение по умолчанию- Returns:
- See Also:
-
setOption(RadiusPacketOption, Object)VoiceIpNas.CALL_TYPEVoiceIpNas.OPERATORRadiusPacket.RadiusPacketOption
-
setOption
Установка опции в пакет.- Parameters:
option-value-- See Also:
-
VoiceIpNas.CALL_TYPEVoiceIpNas.OPERATORRadiusPacket.RadiusPacketOption
-
toString
- Overrides:
toStringin classRadiusAttributeSet
-
getPacketTypeString
Получение названия типа radius-пакета- Returns:
- тип пакета
-
fromPacket
-
getTrace
-
getOption
Deprecated.Для обратной совместимости со скриптами- Parameters:
option-- Returns:
-
setOption
Deprecated.Для обратной совместимости со скриптами- Parameters:
option-value-
-
clone
-
getAuthenticator
public byte[] getAuthenticator() -
addOptions
-