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 TypeMethodDescriptionvoidaddAttribute(bitel.billing.server.radius.RadiusAttribute ra) Deprecated.voidaddAttributes(List<bitel.billing.server.radius.RadiusAttribute> attrs) Deprecated.voidaddOptions(RadiusPacket request) voidaddVendorAttribute(bitel.billing.server.radius.RadiusVendorAttribute rva) Deprecated.voidaddVendorAttributes(List<bitel.billing.server.radius.RadiusVendorAttribute> attrs) Deprecated.clone()Создание пакета-ответа из пакета-запроса.voidfromPacket(RadiusPacket lastResponsePacket) byte[]byte[]Deprecated.byte[]getByteAttribute(int code) Deprecated.bytegetCode()Получение типа пакета (например,ACCESS_REQUESTACCOUNTING_REQUEST).intgetFlag()Deprecated.intgetIntAttribute(int code) Deprecated.use#getIntAttribute(int, int, int)Deprecated.<O> OgetOption(RadiusPacket.RadiusPacketOption<O> option) Получение опции(атрибута) из пакета.<O> OgetOption(RadiusPacket.RadiusPacketOption<O> option, O value) Получение опции(атрибута) из пакета.byteDeprecated.intDeprecated.usegetCode()Получение названия типа radius-пакетаgetStringAttribute(int code) Deprecated.getTrace()List<RadiusAttribute<?>>getVendorAttributes(int vendor) Deprecated.List<RadiusAttribute<?>>getVendorAttributes(int vendor, int code) Deprecated.intgetVendorIntAttribute(int code) Deprecated.use#getIntAttribute(int, int, int)getVendorStringAttribute(int code) Deprecated.booleanstatic RadiusPacketparse(ByteBuffer bb) Парсинг пакета из ByteBuffer.static RadiusPacketparse(ByteBuffer byteBuffer, boolean move) Парсинг пакета из ByteBuffer.voidsetByteAttribute(int code, byte[] value) Deprecated.voidsetCode(byte code) Установка типа пакета.voidsetFlag(int flag) Deprecated.voidsetIntAttribute(int code, int value) Deprecated.voidDeprecated.<O> voidsetOption(RadiusPacket.RadiusPacketOption<O> option, O value) Установка опции в пакет.voidsetPacketType(byte value) Deprecated.usesetCode(byte)voidsetStringAttribute(int code, String value) Deprecated.voidsetVendorAttribute(bitel.billing.server.radius.RadiusVendorAttribute rva) Deprecated.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-
-
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)