public class GrizzlyAddressDelegateFilter<F extends org.glassfish.grizzly.filterchain.BaseFilter> extends org.glassfish.grizzly.filterchain.BaseFilter implements GrizzlyAddressFilter<F>
Mule allows to define several listener config, each one associated with a ServerSocket that may have particular configurations. In order to reuse the same grizzly transport we can only have one filter for every listener config. So this filter keeps record of all the ServerSockets configured and their particular configurations. So once a request arrive it delegates to the right filter based on the connection being processed.
| Constructor and Description |
|---|
GrizzlyAddressDelegateFilter() |
| Modifier and Type | Method and Description |
|---|---|
void |
addFilterForAddress(org.mule.runtime.http.api.server.ServerAddress serverAddress,
F filter)
Adds a new Filter for a particular Server address
|
org.glassfish.grizzly.filterchain.FilterChainContext |
createContext(org.glassfish.grizzly.Connection connection,
org.glassfish.grizzly.filterchain.FilterChainContext.Operation operation) |
void |
exceptionOccurred(org.glassfish.grizzly.filterchain.FilterChainContext ctx,
Throwable error) |
org.glassfish.grizzly.filterchain.NextAction |
handleAccept(org.glassfish.grizzly.filterchain.FilterChainContext ctx) |
org.glassfish.grizzly.filterchain.NextAction |
handleClose(org.glassfish.grizzly.filterchain.FilterChainContext ctx) |
org.glassfish.grizzly.filterchain.NextAction |
handleConnect(org.glassfish.grizzly.filterchain.FilterChainContext ctx) |
org.glassfish.grizzly.filterchain.NextAction |
handleEvent(org.glassfish.grizzly.filterchain.FilterChainContext ctx,
org.glassfish.grizzly.filterchain.FilterChainEvent event) |
org.glassfish.grizzly.filterchain.NextAction |
handleRead(org.glassfish.grizzly.filterchain.FilterChainContext ctx) |
org.glassfish.grizzly.filterchain.NextAction |
handleWrite(org.glassfish.grizzly.filterchain.FilterChainContext ctx) |
boolean |
hasFilterForAddress(org.mule.runtime.http.api.server.ServerAddress serverAddress)
Check if ther eis a filter for the specified server address
|
void |
onAdded(org.glassfish.grizzly.filterchain.FilterChain filterChain) |
void |
onFilterChainChanged(org.glassfish.grizzly.filterchain.FilterChain filterChain) |
void |
onRemoved(org.glassfish.grizzly.filterchain.FilterChain filterChain) |
void |
removeFilterForAddress(org.mule.runtime.http.api.server.ServerAddress serverAddress)
Removes a Filter for a particular Server address
|
public void onAdded(org.glassfish.grizzly.filterchain.FilterChain filterChain)
onAdded in interface org.glassfish.grizzly.filterchain.FilteronAdded in class org.glassfish.grizzly.filterchain.BaseFilterpublic void onFilterChainChanged(org.glassfish.grizzly.filterchain.FilterChain filterChain)
onFilterChainChanged in interface org.glassfish.grizzly.filterchain.FilteronFilterChainChanged in class org.glassfish.grizzly.filterchain.BaseFilterpublic void onRemoved(org.glassfish.grizzly.filterchain.FilterChain filterChain)
onRemoved in interface org.glassfish.grizzly.filterchain.FilteronRemoved in class org.glassfish.grizzly.filterchain.BaseFilterpublic org.glassfish.grizzly.filterchain.NextAction handleRead(org.glassfish.grizzly.filterchain.FilterChainContext ctx)
throws IOException
handleRead in interface org.glassfish.grizzly.filterchain.FilterhandleRead in class org.glassfish.grizzly.filterchain.BaseFilterIOExceptionpublic org.glassfish.grizzly.filterchain.NextAction handleWrite(org.glassfish.grizzly.filterchain.FilterChainContext ctx)
throws IOException
handleWrite in interface org.glassfish.grizzly.filterchain.FilterhandleWrite in class org.glassfish.grizzly.filterchain.BaseFilterIOExceptionpublic org.glassfish.grizzly.filterchain.NextAction handleConnect(org.glassfish.grizzly.filterchain.FilterChainContext ctx)
throws IOException
handleConnect in interface org.glassfish.grizzly.filterchain.FilterhandleConnect in class org.glassfish.grizzly.filterchain.BaseFilterIOExceptionpublic org.glassfish.grizzly.filterchain.NextAction handleAccept(org.glassfish.grizzly.filterchain.FilterChainContext ctx)
throws IOException
handleAccept in interface org.glassfish.grizzly.filterchain.FilterhandleAccept in class org.glassfish.grizzly.filterchain.BaseFilterIOExceptionpublic org.glassfish.grizzly.filterchain.NextAction handleEvent(org.glassfish.grizzly.filterchain.FilterChainContext ctx,
org.glassfish.grizzly.filterchain.FilterChainEvent event)
throws IOException
handleEvent in interface org.glassfish.grizzly.filterchain.FilterhandleEvent in class org.glassfish.grizzly.filterchain.BaseFilterIOExceptionpublic org.glassfish.grizzly.filterchain.NextAction handleClose(org.glassfish.grizzly.filterchain.FilterChainContext ctx)
throws IOException
handleClose in interface org.glassfish.grizzly.filterchain.FilterhandleClose in class org.glassfish.grizzly.filterchain.BaseFilterIOExceptionpublic void exceptionOccurred(org.glassfish.grizzly.filterchain.FilterChainContext ctx,
Throwable error)
exceptionOccurred in interface org.glassfish.grizzly.filterchain.FilterexceptionOccurred in class org.glassfish.grizzly.filterchain.BaseFilterpublic org.glassfish.grizzly.filterchain.FilterChainContext createContext(org.glassfish.grizzly.Connection connection,
org.glassfish.grizzly.filterchain.FilterChainContext.Operation operation)
createContext in class org.glassfish.grizzly.filterchain.BaseFilterpublic void addFilterForAddress(org.mule.runtime.http.api.server.ServerAddress serverAddress,
F filter)
addFilterForAddress in interface GrizzlyAddressFilter<F extends org.glassfish.grizzly.filterchain.BaseFilter>serverAddress - the server address to which this filter must be appliedfilter - the filter to applypublic void removeFilterForAddress(org.mule.runtime.http.api.server.ServerAddress serverAddress)
GrizzlyAddressFilterremoveFilterForAddress in interface GrizzlyAddressFilter<F extends org.glassfish.grizzly.filterchain.BaseFilter>serverAddress - the server address to which this filter must be removedpublic boolean hasFilterForAddress(org.mule.runtime.http.api.server.ServerAddress serverAddress)
GrizzlyAddressFilterhasFilterForAddress in interface GrizzlyAddressFilter<F extends org.glassfish.grizzly.filterchain.BaseFilter>Copyright © 2003–2020 MuleSoft, Inc.. All rights reserved.