RxtxChannel Class — netty Architecture
Architecture documentation for the RxtxChannel class in RxtxChannel.java from the netty codebase.
Entity Profile
Dependency Diagram
graph TD 201cc14a_6932_22fb_8865_65f34c6ad37f["RxtxChannel"] da4861a2_5b5d_56e1_8521_a9674728c5f5["RxtxChannel.java"] 201cc14a_6932_22fb_8865_65f34c6ad37f -->|defined in| da4861a2_5b5d_56e1_8521_a9674728c5f5 0ed28a7a_bbd4_2735_9d88_4c80a0842403["RxtxChannel()"] 201cc14a_6932_22fb_8865_65f34c6ad37f -->|method| 0ed28a7a_bbd4_2735_9d88_4c80a0842403 82767a50_3ead_a406_81b1_4058b3037d1c["RxtxChannelConfig()"] 201cc14a_6932_22fb_8865_65f34c6ad37f -->|method| 82767a50_3ead_a406_81b1_4058b3037d1c 3bf3e024_b69a_6d63_1f9b_2731c0749f1e["isOpen()"] 201cc14a_6932_22fb_8865_65f34c6ad37f -->|method| 3bf3e024_b69a_6d63_1f9b_2731c0749f1e 02242bea_c22f_16d1_f5e6_d21a0891edab["AbstractUnsafe()"] 201cc14a_6932_22fb_8865_65f34c6ad37f -->|method| 02242bea_c22f_16d1_f5e6_d21a0891edab 8a8f51ff_76fc_be17_20c2_37f9dc65371f["doConnect()"] 201cc14a_6932_22fb_8865_65f34c6ad37f -->|method| 8a8f51ff_76fc_be17_20c2_37f9dc65371f 2490054d_3322_de70_5342_182d92e5ee66["doInit()"] 201cc14a_6932_22fb_8865_65f34c6ad37f -->|method| 2490054d_3322_de70_5342_182d92e5ee66 17bd4d38_2197_ef58_56c1_41a803f34098["RxtxDeviceAddress()"] 201cc14a_6932_22fb_8865_65f34c6ad37f -->|method| 17bd4d38_2197_ef58_56c1_41a803f34098 8542e4ca_bfd3_42b5_0d47_17562e535be4["doBind()"] 201cc14a_6932_22fb_8865_65f34c6ad37f -->|method| 8542e4ca_bfd3_42b5_0d47_17562e535be4 729107f3_bb0a_9e20_ae11_b20defc79010["doDisconnect()"] 201cc14a_6932_22fb_8865_65f34c6ad37f -->|method| 729107f3_bb0a_9e20_ae11_b20defc79010 b14a78b5_15ff_e89c_26b6_9e3ada9be316["doClose()"] 201cc14a_6932_22fb_8865_65f34c6ad37f -->|method| b14a78b5_15ff_e89c_26b6_9e3ada9be316 3516a76b_a867_0270_32a6_a19bac2c8b57["isInputShutdown()"] 201cc14a_6932_22fb_8865_65f34c6ad37f -->|method| 3516a76b_a867_0270_32a6_a19bac2c8b57 d558c76f_04e5_cc18_98e5_9c4def656841["ChannelFuture()"] 201cc14a_6932_22fb_8865_65f34c6ad37f -->|method| d558c76f_04e5_cc18_98e5_9c4def656841
Relationship Graph
Source Code
transport-rxtx/src/main/java/io/netty/channel/rxtx/RxtxChannel.java lines 42–195
@Deprecated
public class RxtxChannel extends OioByteStreamChannel {
private static final RxtxDeviceAddress LOCAL_ADDRESS = new RxtxDeviceAddress("localhost");
private final RxtxChannelConfig config;
private boolean open = true;
private RxtxDeviceAddress deviceAddress;
private SerialPort serialPort;
public RxtxChannel() {
super(null);
config = new DefaultRxtxChannelConfig(this);
}
@Override
public RxtxChannelConfig config() {
return config;
}
@Override
public boolean isOpen() {
return open;
}
@Override
protected AbstractUnsafe newUnsafe() {
return new RxtxUnsafe();
}
@Override
protected void doConnect(SocketAddress remoteAddress, SocketAddress localAddress) throws Exception {
RxtxDeviceAddress remote = (RxtxDeviceAddress) remoteAddress;
final CommPortIdentifier cpi = CommPortIdentifier.getPortIdentifier(remote.value());
final CommPort commPort = cpi.open(getClass().getName(), 1000);
commPort.enableReceiveTimeout(config().getOption(READ_TIMEOUT));
deviceAddress = remote;
serialPort = (SerialPort) commPort;
}
protected void doInit() throws Exception {
serialPort.setSerialPortParams(
config().getOption(BAUD_RATE),
config().getOption(DATA_BITS).value(),
config().getOption(STOP_BITS).value(),
config().getOption(PARITY_BIT).value()
);
serialPort.setDTR(config().getOption(DTR));
serialPort.setRTS(config().getOption(RTS));
activate(serialPort.getInputStream(), serialPort.getOutputStream());
}
@Override
public RxtxDeviceAddress localAddress() {
return (RxtxDeviceAddress) super.localAddress();
}
@Override
public RxtxDeviceAddress remoteAddress() {
return (RxtxDeviceAddress) super.remoteAddress();
}
@Override
protected RxtxDeviceAddress localAddress0() {
return LOCAL_ADDRESS;
}
@Override
protected RxtxDeviceAddress remoteAddress0() {
return deviceAddress;
}
@Override
protected void doBind(SocketAddress localAddress) throws Exception {
throw new UnsupportedOperationException();
}
Source
Frequently Asked Questions
What is the RxtxChannel class?
RxtxChannel is a class in the netty codebase, defined in transport-rxtx/src/main/java/io/netty/channel/rxtx/RxtxChannel.java.
Where is RxtxChannel defined?
RxtxChannel is defined in transport-rxtx/src/main/java/io/netty/channel/rxtx/RxtxChannel.java at line 42.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free