### getAttributes() Source: https://javadoc.io/doc/com.globalreachtech/tinyradius-netty/3.1.0/org/tinyradius/core/attribute/type/VendorSpecificAttribute.html Gets the list of attributes in this holder. ```APIDOC ## Method: getAttributes() ### Description Gets the list of attributes in this holder. ### Returns - **List** - The list of attributes. ### Usage ```java List attrs = attr.getAttributes(); ``` ``` -------------------------------- ### Accept(Dictionary dictionary, ByteBuf header, List attributes) Source: https://javadoc.io/doc/com.globalreachtech/tinyradius-netty/3.1.0/org/tinyradius/core/packet/response/AccessResponse.Accept.html Constructor for creating an AccessResponse.Accept instance. It takes a dictionary, a header ByteBuf, and a list of attributes, and throws RadiusPacketException. ```APIDOC ## Constructor: Accept ### Description Creates a new AccessResponse.Accept instance with the given dictionary, header, and attributes. ### Signature `public Accept(Dictionary dictionary, io.netty.buffer.ByteBuf header, List attributes) throws RadiusPacketException` ### Parameters - **dictionary** (Dictionary) - Required - The dictionary used for attribute encoding/decoding. - **header** (io.netty.buffer.ByteBuf) - Required - The packet header. - **attributes** (List) - Required - The list of RADIUS attributes. ### Throws - **RadiusPacketException** - If an error occurs during packet construction. ``` -------------------------------- ### getAttribute(int type) Source: https://javadoc.io/doc/com.globalreachtech/tinyradius-netty/3.1.0/org/tinyradius/core/attribute/AttributeHolder.html Convenience method to get a single attribute. ```APIDOC ## getAttribute(int type) ### Description Convenience method to get a single attribute. ### Method default ### Signature `default @NonNull Optional getAttribute(int type)` ### Parameters - **type** (int) - Required - attribute type ### Returns RadiusAttribute object or null if there is no such attribute ``` -------------------------------- ### newInstance(Dictionary dictionary, io.netty.buffer.ByteBuf header, List attributes) Source: https://javadoc.io/doc/com.globalreachtech/tinyradius-netty/3.1.0/org/tinyradius/core/packet/request/AccessRequest.AccessRequestFactory.html Creates a new AccessRequest instance using the provided dictionary, header ByteBuf, and list of RadiusAttributes. Throws RadiusPacketException if the request cannot be created. ```APIDOC ## newInstance(Dictionary dictionary, io.netty.buffer.ByteBuf header, List attributes) ### Description Creates a new AccessRequest instance using the specified dictionary for attribute definitions, the raw header buffer, and the list of attributes. This is a factory method for constructing AccessRequest objects. ### Method newInstance ### Signature AccessRequest newInstance(Dictionary dictionary, io.netty.buffer.ByteBuf header, List attributes) throws RadiusPacketException ### Parameters - **dictionary** (Dictionary) - Required - The dictionary used for attribute decoding. - **header** (io.netty.buffer.ByteBuf) - Required - The raw header buffer for the request. - **attributes** (List) - Required - The list of attributes to include in the request. ### Return Value - **AccessRequest** - A newly created AccessRequest instance. ### Exceptions - **RadiusPacketException** - Thrown if the request cannot be created from the provided data. ### Usage Example AccessRequest request = factory.newInstance(dictionary, header, attributes); ``` -------------------------------- ### Constructor: Challenge Source: https://javadoc.io/doc/com.globalreachtech/tinyradius-netty/3.1.0/org/tinyradius/core/packet/response/AccessResponse.Challenge.html Constructs an AccessResponse.Challenge instance. ```APIDOC ## Constructor: Challenge ### Description Constructs an AccessResponse.Challenge instance. ### Signature ```java public Challenge(Dictionary dictionary, io.netty.buffer.ByteBuf header, List attributes) throws RadiusPacketException ``` ### Parameters - **dictionary** (Dictionary) - Required - The dictionary used for attribute handling. - **header** (io.netty.buffer.ByteBuf) - Required - The packet header. - **attributes** (List) - Required - The list of attributes. ### Throws - **RadiusPacketException** - If an error occurs during construction. ### Example ```java Challenge challenge = new Challenge(dictionary, header, attributes); ``` ``` -------------------------------- ### getAttribute(String type) Source: https://javadoc.io/doc/com.globalreachtech/tinyradius-netty/3.1.0/org/tinyradius/core/attribute/AttributeHolder.html Convenience method to get a single attribute. ```APIDOC ## getAttribute(String type) ### Description Convenience method to get a single attribute. ### Method default ### Signature `default @NonNull Optional getAttribute(@NonNull String type)` ### Parameters - **type** (@NonNull String) - Required - attribute type name ### Returns RadiusAttribute object or null if there is no such attribute ``` -------------------------------- ### getChildVendorId() Source: https://javadoc.io/doc/com.globalreachtech/tinyradius-netty/3.1.0/org/tinyradius/core/attribute/NestedAttributeHolder.html Gets the VendorId to restrict (sub)attributes, or -1 for top level. ```APIDOC ## getChildVendorId() ### Description Gets the VendorId to restrict (sub)attributes, or -1 for top level. ### Method getChildVendorId ### Signature `default int getChildVendorId()` ### Returns - **int** - The vendor ID used to restrict sub-attributes, or -1 for top level. ``` -------------------------------- ### Ipv6PrefixAttribute constructor Source: https://javadoc.io/doc/com.globalreachtech/tinyradius-netty/3.1.0/org/tinyradius/core/attribute/type/Ipv6PrefixAttribute.html Creates a new Ipv6PrefixAttribute instance with the specified dictionary, vendor ID, and attribute data. ```APIDOC ## Constructor: Ipv6PrefixAttribute ### Description Creates a new Ipv6PrefixAttribute. ### Signature `public Ipv6PrefixAttribute(@NonNull Dictionary dictionary, int vendorId, @NonNull io.netty.buffer.ByteBuf data)` ### Parameters - **dictionary** (Dictionary) - Required - The dictionary to use. - **vendorId** (int) - Required - The vendor ID. - **data** (io.netty.buffer.ByteBuf) - Required - The attribute data. ### Usage Example ```java Dictionary dictionary = ...; int vendorId = 0; io.netty.buffer.ByteBuf data = ...; Ipv6PrefixAttribute attr = new Ipv6PrefixAttribute(dictionary, vendorId, data); ``` ``` -------------------------------- ### RadiusServer(Bootstrap, ChannelHandler, ChannelHandler, InetSocketAddress, InetSocketAddress) Source: https://javadoc.io/doc/com.globalreachtech/tinyradius-netty/3.1.0/org/tinyradius/io/server/RadiusServer.html Creates a new RADIUS server that listens on two sockets. The bootstrap must be configured with a channel class and event loop group. Two channel handlers handle requests on the respective sockets. ```APIDOC ## Constructor: RadiusServer(Bootstrap, ChannelHandler, ChannelHandler, InetSocketAddress, InetSocketAddress) ### Description Creates a new RADIUS server that listens on two sockets. ### Signature `public RadiusServer(@NonNull io.netty.bootstrap.Bootstrap bootstrap, @NonNull io.netty.channel.ChannelHandler handler1, @NonNull io.netty.channel.ChannelHandler handler2, @NonNull InetSocketAddress socket1, @NonNull InetSocketAddress socket2)` ### Parameters - **bootstrap** (io.netty.bootstrap.Bootstrap) - Required - Bootstrap with channel class and eventLoopGroup set up. - **handler1** (io.netty.channel.ChannelHandler) - Required - ChannelHandler to handle requests received on socket1. - **handler2** (io.netty.channel.ChannelHandler) - Required - ChannelHandler to handle requests received on socket2. - **socket1** (java.net.InetSocketAddress) - Required - Socket to listen on. - **socket2** (java.net.InetSocketAddress) - Required - Socket to listen on. ### Example ```java RadiusServer server = new RadiusServer(bootstrap, handler1, handler2, socket1, socket2); ``` ``` -------------------------------- ### getAttribute(Predicate filter) Source: https://javadoc.io/doc/com.globalreachtech/tinyradius-netty/3.1.0/org/tinyradius/core/attribute/AttributeHolder.html Convenience method to get a single attribute filtered by a given predicate. ```APIDOC ## getAttribute(Predicate filter) ### Description Convenience method to get a single attribute filtered by a given predicate. ### Method default ### Signature `default @NonNull Optional getAttribute(@NonNull Predicate filter)` ### Parameters - **filter** (@NonNull Predicate) - Required - RadiusAttribute filter predicate ### Returns RadiusAttribute object or null if there is no such attribute ``` -------------------------------- ### getAttribute(int, int) Source: https://javadoc.io/doc/com.globalreachtech/tinyradius-netty/3.1.0/org/tinyradius/core/attribute/NestedAttributeHolder.html Convenience method to get a single attribute matching the given vendorId and type. ```APIDOC ## getAttribute(int, int) ### Description Convenience method to get a single attribute matching the given vendorId and type. ### Method getAttribute ### Signature `default @NonNull Optional getAttribute(int vendorId, int type)` ### Parameters - **vendorId** (int) - Required - The vendor ID to filter by. - **type** (int) - Required - The attribute type. ### Returns - **Optional** - The matching attribute, if present. ``` -------------------------------- ### RadiusServer(Bootstrap, List, List) Source: https://javadoc.io/doc/com.globalreachtech/tinyradius-netty/3.1.0/org/tinyradius/io/server/RadiusServer.html Creates a new RADIUS server that listens on multiple sockets. The lists of channel handlers and socket addresses must be the same length. ```APIDOC ## Constructor: RadiusServer(Bootstrap, List, List) ### Description Creates a new RADIUS server that listens on multiple sockets. ### Signature `public RadiusServer(@NonNull io.netty.bootstrap.Bootstrap bootstrap, @NonNull List channelHandlers, @NonNull List socketAddresses)` ### Parameters - **bootstrap** (io.netty.bootstrap.Bootstrap) - Required - Bootstrap with channel class and eventLoopGroup set up. - **channelHandlers** (List) - Required - List of channelHandlers to handle requests. - **socketAddresses** (List) - Required - List of socketAddresses to bind channelHandlers to, must be same length. ### Example ```java RadiusServer server = new RadiusServer(bootstrap, channelHandlers, socketAddresses); ``` ``` -------------------------------- ### getAttribute(Predicate) Source: https://javadoc.io/doc/com.globalreachtech/tinyradius-netty/3.1.0/index-all.html Convenience method to get a single attribute filtered by a given predicate. Defined in the AttributeHolder interface. ```APIDOC ## getAttribute(Predicate) ### Description Convenience method to get a single attribute filtered by a given predicate. ### Method Method in interface org.tinyradius.core.attribute.AttributeHolder ### Parameters - **Predicate** - The predicate to filter attributes. ### Returns The attribute as a RadiusAttribute object. ``` -------------------------------- ### create(Dictionary, ByteBuf, List) Source: https://javadoc.io/doc/com.globalreachtech/tinyradius-netty/3.1.0/org/tinyradius/core/packet/response/RadiusResponse.html Static factory method that creates a RadiusResponse object from a dictionary, a Netty ByteBuf header, and a list of attributes. ```APIDOC ## create(Dictionary, ByteBuf, List) ### Description Creates a RadiusResponse object. ### Method `static @NonNull RadiusResponse create(@NonNull Dictionary dictionary, @NonNull io.netty.buffer.ByteBuf header, @NonNull List attributes)` ### Parameters - **dictionary** (Dictionary) - Required - The dictionary to use for attribute encoding/decoding. - **header** (ByteBuf) - Required - The Netty ByteBuf containing the packet header. - **attributes** (List) - Required - The list of attributes for the packet. ### Returns - **RadiusResponse** - A new RadiusResponse instance. ``` -------------------------------- ### newInstance Source: https://javadoc.io/doc/com.globalreachtech/tinyradius-netty/3.1.0/org/tinyradius/core/attribute/type/RadiusAttributeFactory.html Creates a new instance of the attribute using the provided dictionary, vendor ID, and attribute data. ```APIDOC ## newInstance ### Description Creates a new instance of the attribute. ### Method newInstance ### Signature `@NonNull T newInstance(@NonNull Dictionary dictionary, int vendorId, @NonNull io.netty.buffer.ByteBuf value)` ### Parameters - **dictionary** (Dictionary) - Required - The dictionary to use. - **vendorId** (int) - Required - The vendor ID. - **value** (io.netty.buffer.ByteBuf) - Required - The attribute data. ### Returns - **T** - The new instance. ``` -------------------------------- ### getAttribute(int, int) Source: https://javadoc.io/doc/com.globalreachtech/tinyradius-netty/3.1.0/index-all.html Convenience method to get a single attribute by type and vendor ID. Defined in the NestedAttributeHolder interface. ```APIDOC ## getAttribute(int, int) ### Description Convenience method to get single attribute. ### Method Method in interface org.tinyradius.core.attribute.NestedAttributeHolder ### Parameters - **int** - The attribute type. - **int** - The vendor ID. ### Returns The attribute as a RadiusAttribute object. ``` -------------------------------- ### getFactory() Source: https://javadoc.io/doc/com.globalreachtech/tinyradius-netty/3.1.0/org/tinyradius/core/attribute/AttributeTemplate.html Returns the factory. ```APIDOC ## getFactory() ### Description Returns the factory. ### Returns - **RadiusAttributeFactory** - the factory ``` -------------------------------- ### AttributeCodecType Enum Source: https://javadoc.io/doc/com.globalreachtech/tinyradius-netty/3.1.0/org/tinyradius/core/attribute/codec/AttributeCodecType.html The AttributeCodecType enum defines attribute encryption methods. It provides methods to get the codec, the ID, and to convert from an encryption flag ID. ```APIDOC ## AttributeCodecType Enum ### Description Enum representing attribute encryption methods as used in FreeRadius dictionary files. ### Enum Constants - `NO_ENCRYPT` - No encryption. - `RFC2865_USER_PASSWORD` - RFC 2865 User-Password encryption. - `RFC2868_TUNNEL_PASSWORD` - RFC 2868 Tunnel-Password encryption. - `ASCEND_SEND_SECRET` - Ascend Send Secret encryption. ### Methods #### `static AttributeCodecType[] values()` Returns an array containing the constants of this enum class, in the order they are declared. **Returns:** - An array of `AttributeCodecType` constants. #### `static AttributeCodecType valueOf(String name)` Returns the enum constant of this class with the specified name. The string must match exactly an identifier used to declare an enum constant in this class. **Parameters:** - `name` (String) - The name of the enum constant to be returned. **Returns:** - The enum constant with the specified name. **Throws:** - `IllegalArgumentException` - if this enum class has no constant with the specified name. - `NullPointerException` - if the argument is null. #### `static AttributeCodecType fromEncryptFlagId(byte id)` Returns the `AttributeCodecType` corresponding to the given encryption flag ID. **Parameters:** - `id` (byte) - The encryption flag ID. **Returns:** - The corresponding `AttributeCodecType`. #### `byte getId()` Returns the ID of this attribute codec type. **Returns:** - The byte ID. #### `BaseCodec getCodec()` Returns the codec associated with this attribute codec type. **Returns:** - The `BaseCodec` instance. ``` -------------------------------- ### Constructor: V6(Dictionary, int, ByteBuf) Source: https://javadoc.io/doc/com.globalreachtech/tinyradius-netty/3.1.0/org/tinyradius/core/attribute/type/IpAttribute.V6.html Creates a new IPv6 attribute with the given dictionary, vendor ID, and data. ```APIDOC ## Constructor: V6(Dictionary, int, ByteBuf) ### Description Creates a new IPv6 attribute. ### Signature `public V6(@NonNull Dictionary dictionary, int vendorId, @NonNull io.netty.buffer.ByteBuf data)` ### Parameters - **dictionary** (Dictionary) - Required - The dictionary to use. - **vendorId** (int) - Required - The vendor ID. - **data** (ByteBuf) - Required - The attribute data. ### Usage Example ```java IpAttribute.V6 attr = new IpAttribute.V6(dictionary, vendorId, data); ``` ``` -------------------------------- ### Reject(Dictionary, ByteBuf, List) Source: https://javadoc.io/doc/com.globalreachtech/tinyradius-netty/3.1.0/org/tinyradius/core/packet/response/AccessResponse.Reject.html Constructor for creating an Access-Reject response packet. It initializes the packet with the provided dictionary, header buffer, and attribute list. ```APIDOC ## Constructor: Reject(Dictionary, ByteBuf, List) ### Description Constructs an Access-Reject response packet from a dictionary, header buffer, and attribute list. This constructor is used to create a RADIUS Access-Reject response, which indicates that the access request was rejected. ### Method Constructor ### Signature `public Reject(Dictionary dictionary, io.netty.buffer.ByteBuf header, List attributes) throws RadiusPacketException` ### Parameters - **dictionary** (Dictionary) - Required - The dictionary used for attribute decoding. - **header** (io.netty.buffer.ByteBuf) - Required - The header buffer containing the packet header. - **attributes** (List) - Required - The list of attributes for the packet. ### Throws - **RadiusPacketException** - If the packet cannot be constructed due to invalid data. ### Usage Example ```java Reject reject = new Reject(dictionary, headerBuffer, attributes); ``` ``` -------------------------------- ### V4 constructor Source: https://javadoc.io/doc/com.globalreachtech/tinyradius-netty/3.1.0/org/tinyradius/core/attribute/type/IpAttribute.V4.html Creates a new IPv4 attribute with the given dictionary, vendor ID, and data. ```APIDOC ## V4(Dictionary dictionary, int vendorId, ByteBuf data) ### Description Creates a new IPv4 attribute. ### Parameters - **dictionary** (Dictionary) - Required - The dictionary to use - **vendorId** (int) - Required - The vendor ID - **data** (ByteBuf) - Required - The attribute data ``` -------------------------------- ### newInstance(Dictionary, ByteBuf, List) - Method in interface org.tinyradius.core.packet.request.AccessRequest.AccessRequestFactory Source: https://javadoc.io/doc/com.globalreachtech/tinyradius-netty/3.1.0/index-all.html Creates a new AccessRequest instance. ```APIDOC ## newInstance(Dictionary, ByteBuf, List) ### Description Creates a new AccessRequest instance. ### Method newInstance(Dictionary, ByteBuf, List) ### Parameters - **dictionary** (Dictionary) - Required - The dictionary to use. - **data** (ByteBuf) - Required - The request data. - **attributes** (List) - Required - The list of attributes. ### Return Value - A new AccessRequest instance. ``` -------------------------------- ### ClientDatagramCodec(Dictionary dictionary) Source: https://javadoc.io/doc/com.globalreachtech/tinyradius-netty/3.1.0/org/tinyradius/io/client/handler/ClientDatagramCodec.html Constructor that creates a ClientDatagramCodec with the given dictionary. ```APIDOC ## ClientDatagramCodec(Dictionary dictionary) ### Description Creates a new ClientDatagramCodec instance with the specified dictionary. ### Constructor `public ClientDatagramCodec(Dictionary dictionary)` ### Parameters - **dictionary** (Dictionary) - Required - The dictionary used for attribute encoding/decoding. ``` -------------------------------- ### RadiusClient Source: https://javadoc.io/doc/com.globalreachtech/tinyradius-netty/3.1.0/org/tinyradius/io/client/RadiusClient.html Documentation for the RadiusClient class, including constructors and methods for sending RADIUS packets. ```APIDOC ## RadiusClient ### Description A simple Radius client which binds to a specific socket, and can then be used to send any number of packets to any endpoints through that socket. External functions to be invoked for each send try, timeout and response received may be optionally specified. ### Constructors #### RadiusClient(Bootstrap, SocketAddress, TimeoutHandler, ChannelHandler) ##### Description Creates a new RADIUS client. ##### Parameters - **bootstrap** (io.netty.bootstrap.Bootstrap) - Required - The Netty bootstrap to use. - **listenAddress** (SocketAddress) - Required - The local address to bind to. - **timeoutHandler** (TimeoutHandler) - Required - The timeout handler to use. - **handler** (io.netty.channel.ChannelHandler) - Required - The channel handler to use. #### RadiusClient(Bootstrap, SocketAddress, TimeoutHandler, ChannelHandler, ClientEventListener) ##### Description Creates a new RADIUS client with a custom event listener. ##### Parameters - **bootstrap** (io.netty.bootstrap.Bootstrap) - Required - The Netty bootstrap to use. - **listenAddress** (SocketAddress) - Required - The local address to bind to. - **timeoutHandler** (TimeoutHandler) - Required - The timeout handler to use. - **handler** (io.netty.channel.ChannelHandler) - Required - The channel handler to use. - **eventListener** (ClientEventListener) - Required - The event listener to use. ### Methods #### closeAsync() ##### Description Closes this resource asynchronously. ##### Returns - **io.netty.channel.ChannelFuture** - A future that completes when the resource is closed. #### communicate(RadiusRequest, List) ##### Description Sends packet to specified endpoints in turn until an endpoint succeeds or all fail, using the default timeout handler and event listener. ##### Parameters - **packet** (RadiusRequest) - Required - The RADIUS request to send. - **endpoints** (List) - Required - The list of endpoints to try. ##### Returns - **io.netty.util.concurrent.Future** - A future that resolves to the response from the first successful endpoint, or fails if all endpoints fail. #### communicate(RadiusRequest, List, TimeoutHandler, ClientEventListener) ##### Description Sends packet to specified endpoints in turn until an endpoint succeeds or all fail. ##### Parameters - **packet** (RadiusRequest) - Required - The RADIUS request to send. - **endpoints** (List) - Required - The list of endpoints to try. - **timeoutHandler** (TimeoutHandler) - Required - The timeout handler to use. - **listener** (ClientEventListener) - Required - The event listener to use. ##### Returns - **io.netty.util.concurrent.Future** - A future that resolves to the response from the first successful endpoint, or fails if all endpoints fail. #### communicate(RadiusRequest, RadiusEndpoint) ##### Description Sends packet to specified endpoint with the default timeoutHandler and default event listener. ##### Parameters - **packet** (RadiusRequest) - Required - The RADIUS request to send. - **endpoint** (RadiusEndpoint) - Required - The endpoint to send to. ##### Returns - **io.netty.util.concurrent.Future** - A future that resolves to the response from the endpoint. #### communicate(RadiusRequest, RadiusEndpoint, TimeoutHandler, ClientEventListener) ##### Description Sends packet to specified endpoint. ##### Parameters - **packet** (RadiusRequest) - Required - The RADIUS request to send. - **endpoint** (RadiusEndpoint) - Required - The endpoint to send to. - **timeoutHandler** (TimeoutHandler) - Required - The timeout handler to use. - **listener** (ClientEventListener) - Required - The event listener to use. ##### Returns - **io.netty.util.concurrent.Future** - A future that resolves to the response from the endpoint. #### isReady() ##### Description Returns a future that is notified when this lifecycle component is ready. ##### Returns - **io.netty.channel.ChannelFuture** - A future that completes when the client is ready. ``` -------------------------------- ### newFileParser() Source: https://javadoc.io/doc/com.globalreachtech/tinyradius-netty/3.1.0/org/tinyradius/core/dictionary/parser/DictionaryParser.html Creates a new DictionaryParser that resolves files via the local filesystem. ```APIDOC ## newFileParser() ### Description Creates a new DictionaryParser that resolves files via the local filesystem. ### Method newFileParser ### Signature public static DictionaryParser newFileParser() ### Returns - **DictionaryParser** - a new DictionaryParser that resolves files via the local filesystem ``` -------------------------------- ### onHit(ChannelHandlerContext, RequestCtx, ResponseCtx, List) - Method in class org.tinyradius.io.server.handler.BasicCachingHandler Source: https://javadoc.io/doc/com.globalreachtech/tinyradius-netty/3.1.0/index-all.html Handles a cache hit in the BasicCachingHandler. ```APIDOC ## onHit(ChannelHandlerContext, RequestCtx, ResponseCtx, List) ### Description Handles a cache hit in the BasicCachingHandler. ### Method - `onHit(ChannelHandlerContext, RequestCtx, ResponseCtx, List)` ``` -------------------------------- ### Field: FACTORY Source: https://javadoc.io/doc/com.globalreachtech/tinyradius-netty/3.1.0/org/tinyradius/core/attribute/type/IpAttribute.V6.html A static factory for creating IpAttribute.V6 instances. ```APIDOC ## Field: FACTORY ### Description A static factory for creating IpAttribute.V6 instances. ### Type `public static final RadiusAttributeFactory FACTORY` ### Usage Example ```java IpAttribute.V6 attr = IpAttribute.V6.FACTORY.create(...); ``` ``` -------------------------------- ### Constructor: BasicCachingHandler(io.netty.util.Timer, int) Source: https://javadoc.io/doc/com.globalreachtech/tinyradius-netty/3.1.0/org/tinyradius/io/server/handler/BasicCachingHandler.html Creates a new BasicCachingHandler instance with the given timer for cache eviction and time-to-live in milliseconds. ```APIDOC ## BasicCachingHandler ### Description Creates a new `BasicCachingHandler` instance with the given timer and TTL. ### Constructor `public BasicCachingHandler(io.netty.util.Timer timer, int ttlMs)` ### Parameters - `timer` (io.netty.util.Timer) - Required - timer for cache eviction - `ttlMs` (int) - Required - time for items to stay cached after being returned, in milliseconds ### Response No response returned. ``` -------------------------------- ### create(Dictionary, ByteBuf, List) Source: https://javadoc.io/doc/com.globalreachtech/tinyradius-netty/3.1.0/org/tinyradius/core/packet/request/RadiusRequest.html Creates a RadiusRequest object from a dictionary, a ByteBuf header, and attributes. ```APIDOC ## create(Dictionary, ByteBuf, List) ### Description Creates a RadiusRequest object from the given dictionary, ByteBuf header, and attributes. ### Method static factory method ### Signature `static @NonNull RadiusRequest create(@NonNull Dictionary dictionary, @NonNull io.netty.buffer.ByteBuf header, @NonNull List attributes)` ### Parameters - **dictionary** (Dictionary) - Required - The dictionary to use for attribute lookup. - **header** (ByteBuf) - Required - The ByteBuf containing the packet header. - **attributes** (List) - Required - The list of attributes for the request. ### Returns - **RadiusRequest** - A new RadiusRequest instance. ``` -------------------------------- ### isReady() - Method in class org.tinyradius.io.client.RadiusClient Source: https://javadoc.io/doc/com.globalreachtech/tinyradius-netty/3.1.0/index-all.html Returns a future that is notified when this lifecycle component is ready. ```APIDOC ## isReady() ### Description Returns a future that is notified when this lifecycle component is ready. ### Returns - A future that completes when the component is ready. ``` -------------------------------- ### create(Dictionary, ByteBuf, List) Source: https://javadoc.io/doc/com.globalreachtech/tinyradius-netty/3.1.0/org/tinyradius/core/packet/response/RadiusResponse.html Creates a RadiusResponse object from a packet header and attributes. ```APIDOC ## create(Dictionary, ByteBuf, List) ### Description Creates a RadiusResponse object from the given dictionary, packet header, and attributes. ### Method static @NonNull RadiusResponse create(@NonNull Dictionary dictionary, @NonNull io.netty.buffer.ByteBuf header, @NonNull List attributes) throws RadiusPacketException ### Parameters - `dictionary` (Dictionary) - Required - The dictionary to use. - `header` (ByteBuf) - Required - The packet header. - `attributes` (List) - Required - The packet attributes. ### Returns - The new RadiusResponse. ### Throws - `RadiusPacketException` - if there is an error creating the response. ``` -------------------------------- ### newFileParser() - Static method in record class org.tinyradius.core.dictionary.parser.DictionaryParser Source: https://javadoc.io/doc/com.globalreachtech/tinyradius-netty/3.1.0/index-all.html Creates a new DictionaryParser that resolves files via the local filesystem. ```APIDOC ## newFileParser() ### Description Creates a new DictionaryParser that resolves files via the local filesystem. ### Method newFileParser() ### Return Value - A new DictionaryParser instance ``` -------------------------------- ### MemoryDictionary() Source: https://javadoc.io/doc/com.globalreachtech/tinyradius-netty/3.1.0/org/tinyradius/core/dictionary/MemoryDictionary.html Creates a new MemoryDictionary instance. ```APIDOC ## MemoryDictionary() ### Description Default constructor for creating a new MemoryDictionary instance. ### Method Constructor ### Signature `public MemoryDictionary()` ### Parameters None ### Returns A new MemoryDictionary object. ``` -------------------------------- ### getChannels() Source: https://javadoc.io/doc/com.globalreachtech/tinyradius-netty/3.1.0/org/tinyradius/io/server/RadiusServer.html Returns the channels the server is listening on. ```APIDOC ## Method: getChannels() ### Description Returns the channels the server is listening on. ### Signature `public @NonNull List getChannels()` ### Returns - **List** - The channels the server is listening on. ### Example ```java List channels = server.getChannels(); ``` ``` -------------------------------- ### StringAttribute Constructor Source: https://javadoc.io/doc/com.globalreachtech/tinyradius-netty/3.1.0/org/tinyradius/core/attribute/type/StringAttribute.html Creates a new StringAttribute with the given dictionary, vendor ID, and attribute data. ```APIDOC ## StringAttribute Constructor ### Description Creates a new StringAttribute. ### Signature `public StringAttribute(@NonNull Dictionary dictionary, int vendorId, @NonNull io.netty.buffer.ByteBuf data)` ### Parameters - `dictionary` (Dictionary) - Required - The dictionary to use. - `vendorId` (int) - Required - The vendor ID. - `data` (ByteBuf) - Required - The attribute data. ``` -------------------------------- ### AccessRequestEap(Dictionary dictionary, ByteBuf header, List attributes) Source: https://javadoc.io/doc/com.globalreachtech/tinyradius-netty/3.1.0/org/tinyradius/core/packet/request/AccessRequestEap.html Constructs an AccessRequestEap instance with the given dictionary, header, and attributes. Throws RadiusPacketException if the construction fails. ```APIDOC ## Constructor: AccessRequestEap ### Description Constructs an AccessRequestEap instance with the specified dictionary, header, and attributes. ### Signature `public AccessRequestEap(Dictionary dictionary, io.netty.buffer.ByteBuf header, List attributes) throws RadiusPacketException` ### Parameters - **dictionary** (Dictionary) - Required - The dictionary used for attribute encoding/decoding. - **header** (io.netty.buffer.ByteBuf) - Required - The packet header. - **attributes** (List) - Required - The list of attributes. ### Throws - **RadiusPacketException** - if the construction fails. ``` -------------------------------- ### fromDataType Source: https://javadoc.io/doc/com.globalreachtech/tinyradius-netty/3.1.0/org/tinyradius/core/attribute/type/RadiusAttributeFactory.html Returns a factory for the given data type. ```APIDOC ## fromDataType ### Description Returns a factory for the given data type. ### Method fromDataType ### Signature `static @NonNull RadiusAttributeFactory fromDataType(@NonNull String dataType)` ### Parameters - **dataType** (String) - Required - The data type name. ### Returns - **RadiusAttributeFactory** - The factory. ``` -------------------------------- ### AccountingRequest(Dictionary dictionary, ByteBuf header, List attributes) Source: https://javadoc.io/doc/com.globalreachtech/tinyradius-netty/3.1.0/org/tinyradius/core/packet/request/AccountingRequest.html Constructor that creates an AccountingRequest instance. It takes a dictionary for attribute definitions, a header ByteBuf containing the packet header, and a list of attributes. Throws RadiusPacketException if the packet cannot be created. ```APIDOC ## [Constructor] AccountingRequest ### Description Creates a new AccountingRequest packet with the given dictionary, header buffer, and attributes. ### Constructor `public AccountingRequest(Dictionary dictionary, io.netty.buffer.ByteBuf header, List attributes) throws RadiusPacketException` ### Parameters - **dictionary** (Dictionary) - Required - The dictionary used for attribute codification. - **header** (io.netty.buffer.ByteBuf) - Required - ByteBuf containing the packet header. - **attributes** (List) - Required - List of RADIUS attributes to include in the packet. ### Throws - **RadiusPacketException** - If the packet construction fails due to invalid data. ### Example Usage ```java Dictionary dictionary = new Dictionary(); io.netty.buffer.ByteBuf header = ...; List attributes = ...; new AccountingRequest(dictionary, header, attributes); ``` ### Notes This class represents a RADIUS Accounting-Request packet. Inherited methods include encoding/decoding, authentication, and attribute management from GenericRequest and BaseRadiusPacket. ``` -------------------------------- ### isReady() Source: https://javadoc.io/doc/com.globalreachtech/tinyradius-netty/3.1.0/org/tinyradius/io/RadiusLifecycle.html Returns a future that is notified when this lifecycle component is ready. ```APIDOC ## isReady() ### Description Returns a future that is notified when this lifecycle component is ready. ### Method isReady ### Signature `io.netty.util.concurrent.Future isReady()` ### Returns - `io.netty.util.concurrent.Future` - a future that is notified when this lifecycle component is ready ``` -------------------------------- ### IntegerAttribute(Dictionary, int, ByteBuf) - Constructor Source: https://javadoc.io/doc/com.globalreachtech/tinyradius-netty/3.1.0/index-all.html Creates a new IntegerAttribute. ```APIDOC ## IntegerAttribute(Dictionary, int, ByteBuf) ### Description Creates a new IntegerAttribute. ### Constructor Parameters - **Dictionary** - The dictionary to use. - **int** - The attribute type. - **ByteBuf** - The attribute data. ``` -------------------------------- ### newClasspathParser() Source: https://javadoc.io/doc/com.globalreachtech/tinyradius-netty/3.1.0/org/tinyradius/core/dictionary/parser/DictionaryParser.html Creates a new DictionaryParser that resolves files via the classpath. ```APIDOC ## newClasspathParser() ### Description Creates a new DictionaryParser that resolves files via the classpath. ### Method newClasspathParser ### Signature public static DictionaryParser newClasspathParser() ### Returns - **DictionaryParser** - a new DictionaryParser that resolves files via the classpath ``` -------------------------------- ### newClasspathParser() - Static method in record class org.tinyradius.core.dictionary.parser.DictionaryParser Source: https://javadoc.io/doc/com.globalreachtech/tinyradius-netty/3.1.0/index-all.html Creates a new DictionaryParser that resolves files via the classpath. ```APIDOC ## newClasspathParser() ### Description Creates a new DictionaryParser that resolves files via the classpath. ### Method newClasspathParser() ### Return Value - A new DictionaryParser instance ``` -------------------------------- ### fromByteBuf(Dictionary, ByteBuf) Source: https://javadoc.io/doc/com.globalreachtech/tinyradius-netty/3.1.0/org/tinyradius/core/packet/response/RadiusResponse.html Static factory method that reads a response from a Netty ByteBuf and creates an appropriate RadiusPacket/subclass. ```APIDOC ## fromByteBuf(Dictionary, ByteBuf) ### Description Reads a response from the given input stream and creates an appropriate RadiusPacket/subclass. ### Method `static @NonNull RadiusResponse fromByteBuf(@NonNull Dictionary dictionary, @NonNull io.netty.buffer.ByteBuf byteBuf)` ### Parameters - **dictionary** (Dictionary) - Required - The dictionary to use for attribute decoding. - **byteBuf** (ByteBuf) - Required - The Netty ByteBuf containing the response data. ### Returns - **RadiusResponse** - A new RadiusResponse instance. ``` -------------------------------- ### create(Dictionary dictionary, byte tag, String value) Source: https://javadoc.io/doc/com.globalreachtech/tinyradius-netty/3.1.0/org/tinyradius/core/attribute/AttributeTemplate.html Creates a RadiusAttribute with the given string value. ```APIDOC ## create(Dictionary dictionary, byte tag, String value) ### Description Creates a RadiusAttribute with the given string value. ### Parameters - **dictionary** (Dictionary) - Required - dictionary to use - **tag** (byte) - Required - tag as per RFC2868 - **value** (String) - Required - value to set attribute ### Returns - **RadiusAttribute** - new RadiusAttribute ``` -------------------------------- ### AccessRequestChap Source: https://javadoc.io/doc/com.globalreachtech/tinyradius-netty/3.1.0/org/tinyradius/core/packet/request/AccessRequestChap.html Documentation for the AccessRequestChap class, including its constructor and methods for CHAP Access-Request packets. ```APIDOC ## AccessRequestChap ### Description CHAP AccessRequest RFC2865. This class represents a CHAP Access-Request packet in the TinyRADIUS library. ### Constructor #### `AccessRequestChap(Dictionary dictionary, io.netty.buffer.ByteBuf header, List attributes)` Creates a new CHAP AccessRequest instance. ### Methods #### `boolean checkPassword(String password)` Checks that the passed plain-text password matches the password (hash) sent with this Access-Request packet. #### `RadiusRequest decodeRequest(String sharedSecret)` Decodes the request against the supplied shared secret. #### `RadiusRequest encodeRequest(String sharedSecret)` AccessRequest overrides this method to generate a randomized authenticator (RFC 2865) and encode required attributes (e.g. CHAP-Password). ``` -------------------------------- ### RadiusClient API Source: https://javadoc.io/doc/com.globalreachtech/tinyradius-netty/3.1.0/org/tinyradius/io/client/RadiusClient.html Documentation for the RadiusClient class, including constructors and methods for sending RADIUS packets and managing lifecycle. ```APIDOC ## RadiusClient Constructor ### Description Creates a new RADIUS client with the specified bootstrap, listen address, timeout handler, and channel handler. ### Method Constructor ### Endpoint `RadiusClient(Bootstrap bootstrap, SocketAddress listenAddress, TimeoutHandler timeoutHandler, ChannelHandler handler)` ### Parameters - **bootstrap** (io.netty.bootstrap.Bootstrap) - Required - Bootstrap with channel class and eventLoopGroup set up - **listenAddress** (SocketAddress) - Required - Local address to bind to - **timeoutHandler** (TimeoutHandler) - Required - Retry strategy for scheduling retries and timeouts - **handler** (ChannelHandler) - Required - ChannelHandler to handle outbound requests ### Request Example ```java RadiusClient client = new RadiusClient(bootstrap, listenAddress, timeoutHandler, handler); ``` ### Response No return value. ## RadiusClient Constructor with Event Listener ### Description Creates a new RADIUS client with a custom event listener. ### Method Constructor ### Endpoint `RadiusClient(Bootstrap bootstrap, SocketAddress listenAddress, TimeoutHandler timeoutHandler, ChannelHandler handler, ClientEventListener eventListener)` ### Parameters - **bootstrap** (io.netty.bootstrap.Bootstrap) - Required - Bootstrap with channel class and eventLoopGroup set up - **listenAddress** (SocketAddress) - Required - Local address to bind to - **timeoutHandler** (TimeoutHandler) - Required - Retry strategy for scheduling retries and timeouts - **handler** (ChannelHandler) - Required - ChannelHandler to handle outbound requests - **eventListener** (ClientEventListener) - Required - Instrumentation hooks for client events ### Request Example ```java RadiusClient client = new RadiusClient(bootstrap, listenAddress, timeoutHandler, handler, eventListener); ``` ### Response No return value. ## communicate(RadiusRequest, List, TimeoutHandler, ClientEventListener) ### Description Sends packet to specified endpoints in turn until an endpoint succeeds or all fail. ### Method communicate ### Endpoint `Future communicate(RadiusRequest packet, List endpoints, TimeoutHandler timeoutHandler, ClientEventListener listener)` ### Parameters - **packet** (RadiusRequest) - Required - Packet to send - **endpoints** (List) - Required - Endpoints to send packet to - **timeoutHandler** (TimeoutHandler) - Required - The timeoutHandler to use for this request - **listener** (ClientEventListener) - Required - Instrumentation hooks ### Returns Deferred response containing response packet or exception. ## communicate(RadiusRequest, List) ### Description Sends packet to specified endpoints in turn until an endpoint succeeds or all fail, using the default timeout handler and event listener. ### Method communicate ### Endpoint `Future communicate(RadiusRequest packet, List endpoints)` ### Parameters - **packet** (RadiusRequest) - Required - Packet to send - **endpoints** (List) - Required - Endpoints to send packet to ### Returns Deferred response containing response packet or exception. ## communicate(RadiusRequest, RadiusEndpoint) ### Description Sends packet to specified endpoint with the default timeoutHandler and default event listener. ### Method communicate ### Endpoint `Future communicate(RadiusRequest packet, RadiusEndpoint endpoint)` ### Parameters - **packet** (RadiusRequest) - Required - Packet to send - **endpoint** (RadiusEndpoint) - Required - Endpoint to send packet to ### Returns Deferred response containing response packet or exception. ## communicate(RadiusRequest, RadiusEndpoint, TimeoutHandler, ClientEventListener) ### Description Sends packet to specified endpoint. ### Method communicate ### Endpoint `Future communicate(RadiusRequest packet, RadiusEndpoint endpoint, TimeoutHandler timeoutHandler, ClientEventListener listener)` ### Parameters - **packet** (RadiusRequest) - Required - Packet to send - **endpoint** (RadiusEndpoint) - Required - Endpoint to send packet to - **timeoutHandler** (TimeoutHandler) - Required - TimeoutHandler to use for this request - **listener** (ClientEventListener) - Required - Instrumentation event listeners ### Returns Deferred response containing response packet or exception. ## isReady() ### Description Returns a future that is notified when this lifecycle component is ready. ### Method isReady ### Endpoint `ChannelFuture isReady()` ### Parameters None. ### Returns A future that is notified when this lifecycle component is ready. ## closeAsync() ### Description Closes this resource asynchronously. ### Method closeAsync ### Endpoint `ChannelFuture closeAsync()` ### Parameters None. ### Returns A future that is notified when the close operation is complete. ``` -------------------------------- ### create (ByteBuf) Source: https://javadoc.io/doc/com.globalreachtech/tinyradius-netty/3.1.0/org/tinyradius/core/attribute/type/RadiusAttributeFactory.html Creates a RadiusAttribute from raw byte data. ```APIDOC ## create (ByteBuf) ### Description Creates a RadiusAttribute from raw byte data. ### Method create ### Signature `default @NonNull T create(@NonNull Dictionary dictionary, int vendorId, @NonNull io.netty.buffer.ByteBuf data)` ### Parameters - **dictionary** (Dictionary) - Required - Dictionary to set attribute to use. - **vendorId** (int) - Required - -1 for top level attributes, otherwise vendorId if sub-attribute. - **data** (io.netty.buffer.ByteBuf) - Required - ByteBuf for the entire attribute. ### Returns - **T** - New attribute. ``` -------------------------------- ### getFactory Source: https://javadoc.io/doc/com.globalreachtech/tinyradius-netty/3.1.0/org/tinyradius/core/attribute/AttributeTemplate.html Returns the factory for creating attribute instances. ```APIDOC ## getFactory ### Description Returns the factory for creating attribute instances. ### Method getFactory ### Returns RadiusAttributeFactory ``` -------------------------------- ### openStream(String resource) Source: https://javadoc.io/doc/com.globalreachtech/tinyradius-netty/3.1.0/org/tinyradius/core/dictionary/parser/resolver/ResourceResolver.html Opens an input stream for reading the given dictionary resource. Throws IOException if the resource cannot be opened. ```APIDOC ## openStream(String resource) ### Description Opens an input stream for reading the given dictionary resource. ### Method openStream ### Signature InputStream openStream(String resource) throws IOException ### Parameters - **resource** (String) - Required - The resource to open. ### Returns - **InputStream** - An input stream for reading. ### Throws - **IOException** - If the resource cannot be opened. ``` -------------------------------- ### create(Dictionary, ByteBuf, List) - RadiusResponse Source: https://javadoc.io/doc/com.globalreachtech/tinyradius-netty/3.1.0/index-all.html Creates a RadiusResponse object from raw data and attributes. ```APIDOC ## create(Dictionary, ByteBuf, List) ### Description Creates a RadiusResponse object. ### Method create (static) ### Signature `static RadiusResponse create(Dictionary dictionary, ByteBuf data, List attributes)` ### Parameters - **dictionary** (Dictionary) - The dictionary to use. - **data** (ByteBuf) - The raw packet data. - **attributes** (List) - The list of attributes. ### Returns RadiusResponse - The created response object. ``` -------------------------------- ### fromByteBuf(Dictionary, ByteBuf) Source: https://javadoc.io/doc/com.globalreachtech/tinyradius-netty/3.1.0/org/tinyradius/core/packet/request/RadiusRequest.html Reads a request from a ByteBuf and creates an appropriate RadiusPacket/subclass. ```APIDOC ## fromByteBuf(Dictionary, ByteBuf) ### Description Reads a request from the given input stream and creates an appropriate RadiusPacket/subclass. Decodes the encrypted fields and attributes of the packet, and checks authenticator if appropriate. ### Method static @NonNull RadiusRequest fromByteBuf(@NonNull Dictionary dictionary, @NonNull io.netty.buffer.ByteBuf byteBuf) throws RadiusPacketException ### Parameters - `dictionary` (Dictionary) - Required - Dictionary to use for attributes. - `byteBuf` (ByteBuf) - Required - ByteBuf to read packet from. ### Returns - New RadiusPacket object. ### Throws - `RadiusPacketException` - malformed packet. ``` -------------------------------- ### fromByteBuf(Dictionary, ByteBuf) Source: https://javadoc.io/doc/com.globalreachtech/tinyradius-netty/3.1.0/org/tinyradius/core/packet/response/RadiusResponse.html Reads a response from a ByteBuf and creates an appropriate RadiusPacket/subclass. ```APIDOC ## fromByteBuf(Dictionary, ByteBuf) ### Description Reads a response from the given input stream and creates an appropriate RadiusPacket/subclass. Decodes the encrypted fields and attributes of the packet, and checks authenticator if appropriate. ### Method static @NonNull RadiusResponse fromByteBuf(@NonNull Dictionary dictionary, @NonNull io.netty.buffer.ByteBuf byteBuf) throws RadiusPacketException ### Parameters - `dictionary` (Dictionary) - Required - Dictionary to use for attributes. - `byteBuf` (ByteBuf) - Required - ByteBuf to read packet from. ### Returns - New RadiusPacket object. ### Throws - `RadiusPacketException` - malformed packet. ``` -------------------------------- ### create(Dictionary, byte, byte, byte[], List) Source: https://javadoc.io/doc/com.globalreachtech/tinyradius-netty/3.1.0/org/tinyradius/core/packet/response/RadiusResponse.html Static factory method that creates a RadiusResponse object from a dictionary, packet type, identifier, authenticator, and list of attributes. ```APIDOC ## create(Dictionary, byte, byte, byte[], List) ### Description Creates a RadiusPacket object. ### Method `static @NonNull RadiusResponse create(@NonNull Dictionary dictionary, byte type, byte id, byte @Nullable [] authenticator, @NonNull List attributes)` ### Parameters - **dictionary** (Dictionary) - Required - The dictionary to use for attribute encoding/decoding. - **type** (byte) - Required - The RADIUS packet type code. - **id** (byte) - Required - The packet identifier. - **authenticator** (byte[]) - Optional - The authenticator bytes, can be null. - **attributes** (List) - Required - The list of attributes for the packet. ### Returns - **RadiusResponse** - A new RadiusResponse instance. ``` -------------------------------- ### create(Dictionary, byte, byte, byte[], List) Source: https://javadoc.io/doc/com.globalreachtech/tinyradius-netty/3.1.0/org/tinyradius/core/packet/request/RadiusRequest.html Creates a RadiusPacket object based on the given type, id, authenticator, and attributes. ```APIDOC ## create(Dictionary, byte, byte, byte[], List) ### Description Creates a RadiusPacket object. Depending on the passed type, an appropriate packet is created. Also sets the type and the packet id. ### Method static @NonNull RadiusRequest create(@NonNull Dictionary dictionary, byte type, byte id, byte @Nullable [] authenticator, @NonNull List attributes) throws RadiusPacketException ### Parameters - `dictionary` (Dictionary) - Required - Custom dictionary to use. - `type` (byte) - Required - Packet type. - `id` (byte) - Required - Packet id. - `authenticator` (byte[]) - Optional - Authenticator for packet, nullable. - `attributes` (List) - Required - List of attributes for packet. ### Returns - RadiusPacket object. ### Throws - `RadiusPacketException` - packet validation exceptions. ``` -------------------------------- ### AccessRequestChap(Dictionary dictionary, ByteBuf header, List attributes) Source: https://javadoc.io/doc/com.globalreachtech/tinyradius-netty/3.1.0/org/tinyradius/core/packet/request/AccessRequestChap.html Constructs an AccessRequestChap instance with the given dictionary, header, and attributes. ```APIDOC ## AccessRequestChap(Dictionary dictionary, ByteBuf header, List attributes) ### Description Constructs an AccessRequestChap instance with the given dictionary, header, and attributes. ### Parameters - **dictionary** (Dictionary) - Required - The dictionary to use for attribute lookup. - **header** (io.netty.buffer.ByteBuf) - Required - The packet header. - **attributes** (List) - Required - The list of attributes. ### Throws - **RadiusPacketException** - if the packet is invalid. ``` -------------------------------- ### ResourceParser Source: https://javadoc.io/doc/com.globalreachtech/tinyradius-netty/3.1.0/org/tinyradius/core/dictionary/parser/ResourceParser.html Constructors and method for the ResourceParser class. ```APIDOC ## ResourceParser(ResourceResolver resourceResolver) ### Description Constructs a ResourceParser with the given resource resolver. ### Constructor `ResourceParser(ResourceResolver resourceResolver)` ### Parameters - **resourceResolver** (ResourceResolver) - Required - The resource resolver used to locate dictionary resources. ``` ```APIDOC ## ResourceParser(WritableDictionary dictionary, ResourceResolver resourceResolver, ResourceParser.FactoryProvider factoryProvider) ### Description Constructs a ResourceParser with a pre-populated dictionary, resource resolver, and factory provider. ### Constructor `ResourceParser(WritableDictionary dictionary, ResourceResolver resourceResolver, ResourceParser.FactoryProvider factoryProvider)` ### Parameters - **dictionary** (WritableDictionary) - Required - The dictionary to populate. - **resourceResolver** (ResourceResolver) - Required - The resource resolver used to locate dictionary resources. - **factoryProvider** (ResourceParser.FactoryProvider) - Required - The factory provider for creating dictionary entries. ``` ```APIDOC ## parseDictionary(String resource) ### Description Parses the dictionary from the specified resource location and returns a WritableDictionary with the loaded contents. ### Method `public WritableDictionary parseDictionary(String resource) throws IOException` ### Parameters - **resource** (String) - Required - Location of the resource, resolved depending on the ResourceResolver. ### Returns - **WritableDictionary** - Dictionary with contents loaded from the specified resource. ### Throws - **IOException** - If a parse error occurs while reading from the input. ``` -------------------------------- ### withResponse(RadiusResponse) - RequestCtx Source: https://javadoc.io/doc/com.globalreachtech/tinyradius-netty/3.1.0/index-all.html Method in class org.tinyradius.io.server.RequestCtx. No description provided in source. ```APIDOC ## withResponse(RadiusResponse) ### Description Method in class org.tinyradius.io.server.RequestCtx. No description provided in source. ### Method withResponse ### Parameters - **response** (RadiusResponse) - Required - The response to set. ``` -------------------------------- ### DictionaryParser(ResourceResolver resourceResolver) Source: https://javadoc.io/doc/com.globalreachtech/tinyradius-netty/3.1.0/org/tinyradius/core/dictionary/parser/DictionaryParser.html Creates an instance of a DictionaryParser record class. ```APIDOC ## DictionaryParser(ResourceResolver resourceResolver) ### Description Creates an instance of a DictionaryParser record class. ### Method Constructor ### Signature public DictionaryParser(ResourceResolver resourceResolver) ### Parameters - **resourceResolver** (ResourceResolver) - Required - the value for the resourceResolver record component ```