ThreadLocalMarshallerProvider Class — netty Architecture
Architecture documentation for the ThreadLocalMarshallerProvider class in ThreadLocalMarshallerProvider.java from the netty codebase.
Entity Profile
Dependency Diagram
graph TD df971496_b513_8b94_291a_8064e78b9499["ThreadLocalMarshallerProvider"] b3adce43_ea51_a1b2_0b5b_1c2177bf29df["ThreadLocalMarshallerProvider.java"] df971496_b513_8b94_291a_8064e78b9499 -->|defined in| b3adce43_ea51_a1b2_0b5b_1c2177bf29df 257e525a_ca1b_7673_67dc_38f4a7deb17b["ThreadLocalMarshallerProvider()"] df971496_b513_8b94_291a_8064e78b9499 -->|method| 257e525a_ca1b_7673_67dc_38f4a7deb17b 5545c30e_bb85_6912_82cf_5e351456f07f["Marshaller()"] df971496_b513_8b94_291a_8064e78b9499 -->|method| 5545c30e_bb85_6912_82cf_5e351456f07f
Relationship Graph
Source Code
codec-marshalling/src/main/java/io/netty/handler/codec/marshalling/ThreadLocalMarshallerProvider.java lines 30–56
public class ThreadLocalMarshallerProvider implements MarshallerProvider {
private final FastThreadLocal<Marshaller> marshallers = new FastThreadLocal<Marshaller>();
private final MarshallerFactory factory;
private final MarshallingConfiguration config;
/**
* Create a new instance of the {@link ThreadLocalMarshallerProvider}
*
* @param factory the {@link MarshallerFactory} to use to create {@link Marshaller}'s if needed
* @param config the {@link MarshallingConfiguration} to use
*/
public ThreadLocalMarshallerProvider(MarshallerFactory factory, MarshallingConfiguration config) {
this.factory = factory;
this.config = config;
}
@Override
public Marshaller getMarshaller(ChannelHandlerContext ctx) throws Exception {
Marshaller marshaller = marshallers.get();
if (marshaller == null) {
marshaller = factory.createMarshaller(config);
marshallers.set(marshaller);
}
return marshaller;
}
}
Source
Frequently Asked Questions
What is the ThreadLocalMarshallerProvider class?
ThreadLocalMarshallerProvider is a class in the netty codebase, defined in codec-marshalling/src/main/java/io/netty/handler/codec/marshalling/ThreadLocalMarshallerProvider.java.
Where is ThreadLocalMarshallerProvider defined?
ThreadLocalMarshallerProvider is defined in codec-marshalling/src/main/java/io/netty/handler/codec/marshalling/ThreadLocalMarshallerProvider.java at line 30.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free