本文整理汇总了Java中io.netty.channel.rxtx.RxtxDeviceAddress类的典型用法代码示例。如果您正苦于以下问题:Java RxtxDeviceAddress类的具体用法?Java RxtxDeviceAddress怎么用?Java RxtxDeviceAddress使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
RxtxDeviceAddress类属于io.netty.channel.rxtx包,在下文中一共展示了RxtxDeviceAddress类的9个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。
示例1: connect
import io.netty.channel.rxtx.RxtxDeviceAddress; //导入依赖的package包/类
/**
* Connect to the rowing computer.
*
* @param address The serial port, must not be null.
*
* @throws IOException If connect fails.
*/
public void connect(RxtxDeviceAddress address) throws IOException {
requireNonNull(address);
lock.lock();
try {
if (isConnected())
throw new IOException("Service is already connected! Can not connect.");
Log.debug(LIBRARY, "Opening RXTX channel at '" + address.value() + "' connection.");
communicationService.open(address);
} finally {
lock.unlock();
}
}
开发者ID:tbressler,项目名称:waterrower-core,代码行数:25,代码来源:WaterRowerConnector.java
示例2: main
import io.netty.channel.rxtx.RxtxDeviceAddress; //导入依赖的package包/类
public static void main(String[] args) throws Exception {
EventLoopGroup group = new OioEventLoopGroup();
try {
Bootstrap b = new Bootstrap();
b.group(group)
.channel(RxtxChannel.class)
.handler(new ChannelInitializer<RxtxChannel>() {
@Override
public void initChannel(RxtxChannel ch) throws Exception {
ch.pipeline().addLast(
new LineBasedFrameDecoder(32768),
new StringEncoder(),
new StringDecoder(),
new RxtxClientHandler()
);
}
});
ChannelFuture f = b.connect(new RxtxDeviceAddress(PORT)).sync();
f.channel().closeFuture().sync();
} finally {
group.shutdownGracefully();
}
}
开发者ID:cowthan,项目名称:JavaAyo,代码行数:26,代码来源:RxtxClient.java
示例3: main
import io.netty.channel.rxtx.RxtxDeviceAddress; //导入依赖的package包/类
public static void main(String[] args) throws Exception {
EventLoopGroup group = new OioEventLoopGroup();
try {
Bootstrap b = new Bootstrap();
b.group(group)
.channel(RxtxChannel.class)
.handler(new ChannelInitializer<RxtxChannel>() {
@Override
public void initChannel(RxtxChannel ch) throws Exception {
ch.pipeline().addLast(
new LineBasedFrameDecoder(32768),
new StringEncoder(),
new StringDecoder(),
new RxtxClientHandler()
);
}
});
ChannelFuture f = b.connect(new RxtxDeviceAddress(PORT)).sync();
f.channel().closeFuture().sync();
} finally {
group.shutdownGracefully();
}
}
开发者ID:edgar615,项目名称:javase-study,代码行数:26,代码来源:RxtxClient.java
示例4: main
import io.netty.channel.rxtx.RxtxDeviceAddress; //导入依赖的package包/类
public static void main(String[] args) throws Exception {
EventLoopGroup group = new OioEventLoopGroup();
try {
Bootstrap b = new Bootstrap();
b.group(group)
.channel(RxtxChannel.class)
.handler(new ChannelInitializer<RxtxChannel>() {
@Override
public void initChannel(RxtxChannel ch) throws Exception {
ch.pipeline().addLast(
new LineBasedFrameDecoder(32768),
new StringEncoder(),
new StringDecoder(),
new RxtxClientHandler()
);
}
});
ChannelFuture f = b.connect(new RxtxDeviceAddress("/dev/ttyUSB0")).sync();
f.channel().closeFuture().sync();
} finally {
group.shutdownGracefully();
}
}
开发者ID:kyle-liu,项目名称:netty4study,代码行数:26,代码来源:RxtxClient.java
示例5: connect
import io.netty.channel.rxtx.RxtxDeviceAddress; //导入依赖的package包/类
/**
* Connect to the rowing computer.
*
* @param address The serial port, must not be null.
*
* @throws IOException If connect fails.
*/
public void connect(RxtxDeviceAddress address) throws IOException {
Log.debug(LIBRARY, "Connecting...");
if (connector.isConnected())
throw new IOException("Already connected! Can not connect again.");
connector.connect(requireNonNull(address));
}
开发者ID:tbressler,项目名称:waterrower-core,代码行数:15,代码来源:WaterRower.java
示例6: open
import io.netty.channel.rxtx.RxtxDeviceAddress; //导入依赖的package包/类
/**
* Opens the connection to the given serial port.
*
* @param address The serial port, must not be null.
* @throws IOException if opening of the channel fails.
*/
public void open(RxtxDeviceAddress address) throws IOException {
requireNonNull(address);
lock.lock();
try {
checkIfChannelIsClose();
Log.debug(SERIAL, "Opening channel at serial port '" + address.value() + "'.");
ChannelFuture future = bootstrap.connect(address).syncUninterruptibly();
if (!future.isSuccess()) {
fireOnError();
throw new IOException("Serial channel couldn't be opened!");
}
Log.debug(SERIAL, "Serial channel was successfully opened.");
currentChannel = future.channel();
} catch (Exception e) {
throw new IOException("Can not connect to '"+address.value()+"'!", e);
} finally {
lock.unlock();
}
}
开发者ID:tbressler,项目名称:waterrower-core,代码行数:34,代码来源:RxtxCommunicationService.java
示例7: tryNextConnectionAttempt
import io.netty.channel.rxtx.RxtxDeviceAddress; //导入依赖的package包/类
private void tryNextConnectionAttempt() {
lock.lock();
try {
if (!isActive.get())
return;
// If no ports are available anymore, update list of ports.
if (availablePorts.empty())
updateAvailablePorts();
if (availablePorts.empty()) {
// Still no serial ports available!
Log.warn(AUTO_DISCOVERY, "Currently no serial ports available! Trying again in "+TRY_AGAIN_INTERVAL.getSeconds()+" second(s)...");
executorService.schedule(this::tryNextConnectionAttempt, TRY_AGAIN_INTERVAL.getSeconds(), SECONDS);
return;
}
RxtxDeviceAddress address = availablePorts.pop();
currentSerialPort = address.value();
Log.debug(AUTO_DISCOVERY, "Auto-connecting serial port '"+address.value()+"'.");
waterRower.connect(address);
} catch (IOException e) {
Log.error("Couldn't connect, due to errors! Trying next port.", e);
executorService.schedule(this::tryNextConnectionAttempt, TRY_AGAIN_INTERVAL.getSeconds(), SECONDS);
} finally {
lock.unlock();
}
}
开发者ID:tbressler,项目名称:waterrower-workout,代码行数:34,代码来源:WaterRowerAutoDiscovery.java
示例8: updateAvailablePorts
import io.netty.channel.rxtx.RxtxDeviceAddress; //导入依赖的package包/类
private void updateAvailablePorts() {
Log.debug(AUTO_DISCOVERY, "Updating list of available serial ports.");
Enumeration<CommPortIdentifier> portIdentifiers = CommPortIdentifier.getPortIdentifiers();
while (portIdentifiers.hasMoreElements()) {
CommPortIdentifier portIdentifier = portIdentifiers.nextElement();
// Ignore /dev/cu ports.
if (portIdentifier.getName().startsWith("/dev/cu."))
continue;
// Ignore bluetooth ports.
if (portIdentifier.getName().contains("Bluetooth") || portIdentifier.getName().contains("BT"))
continue;
if (portIdentifier.isCurrentlyOwned()) {
Log.warn(AUTO_DISCOVERY, "Skipping serial port '"+portIdentifier.getName()+"', because it is currently owned by another thread or application.");
continue;
}
availablePorts.push(new RxtxDeviceAddress(portIdentifier.getName()));
Log.debug(AUTO_DISCOVERY, "Serial port found: " + portIdentifier.getName());
}
putLastSuccessfulPortFirst();
}
开发者ID:tbressler,项目名称:waterrower-workout,代码行数:31,代码来源:WaterRowerAutoDiscovery.java
示例9: putLastSuccessfulPortFirst
import io.netty.channel.rxtx.RxtxDeviceAddress; //导入依赖的package包/类
private void putLastSuccessfulPortFirst() {
String lastSuccessfulPort = sharedPreferences.getLastSuccessfulSerialPort();
if (lastSuccessfulPort == null)
return;
RxtxDeviceAddress lastAddress = new RxtxDeviceAddress(lastSuccessfulPort);
boolean wasRemoved = availablePorts.removeIf(address -> address.value().equals(lastSuccessfulPort));
if (!wasRemoved)
return;
availablePorts.push(lastAddress);
}
开发者ID:tbressler,项目名称:waterrower-workout,代码行数:16,代码来源:WaterRowerAutoDiscovery.java
注:本文中的io.netty.channel.rxtx.RxtxDeviceAddress类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论