Skip to content

Commit

Permalink
#41. Delete default log handler.
Browse files Browse the repository at this point in the history
  • Loading branch information
kochedykov committed Mar 16, 2024
1 parent 8e0fae1 commit a2281d8
Show file tree
Hide file tree
Showing 8 changed files with 168 additions and 23 deletions.
52 changes: 47 additions & 5 deletions src/com/intelligt/modbus/examples/ExampleRTU.java
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,10 @@
import com.intelligt.modbus.jlibmodbus.utils.DataUtils;
import com.intelligt.modbus.jlibmodbus.utils.FrameEvent;
import com.intelligt.modbus.jlibmodbus.utils.FrameEventListener;

import java.util.logging.Handler;
import java.util.logging.LogRecord;

/*
* Copyright (C) 2018 "Invertor" Factory", JSC
* All rights reserved
Expand Down Expand Up @@ -51,24 +55,60 @@ public class ExampleRTU {

public static void main(String[] argv) {
try {
Modbus.log().addHandler(new Handler() {
@Override
public void publish(LogRecord record) {
System.out.println(record.getLevel().getName() + ": " + record.getMessage());
}

@Override
public void flush() {
//do nothing
}

@Override
public void close() throws SecurityException {
//do nothing
}
});
Modbus.setLogLevel(Modbus.LogLevel.LEVEL_DEBUG);
SerialParameters serialParameters = new SerialParameters();
SerialParameters slaveSerialParameters = new SerialParameters();
SerialParameters masterSerialParameters = new SerialParameters();

SerialUtils.trySelectConnector();
/*
Use a virtual serial port SerialPortLoopback
*/
SerialUtils.setSerialPortFactory(new SerialPortFactoryLoopback(false));
ModbusSlave slave = ModbusSlaveFactory.createModbusSlaveRTU(serialParameters);
//SerialUtils.setSerialPortFactory(new SerialPortFactoryLoopback(false));
SerialUtils.setSerialPortFactory(new SerialPortFactoryJSerialComm());

slaveSerialParameters.setDevice("COM2");
slaveSerialParameters.setParity(SerialPort.Parity.NONE);
SerialPort.BaudRate baudrate = new SerialPort.BaudRate(921600);
slaveSerialParameters.setBaudRate(baudrate);
slaveSerialParameters.setDataBits(8);
slaveSerialParameters.setStopBits(1);

ModbusSlave slave = ModbusSlaveFactory.createModbusSlaveRTU(slaveSerialParameters);

SerialUtils.setSerialPortFactory(new SerialPortFactoryLoopback(true));
ModbusMaster master = ModbusMasterFactory.createModbusMasterRTU(serialParameters);

//SerialUtils.setSerialPortFactory(new SerialPortFactoryLoopback(true));
masterSerialParameters.setDevice("COM3");
masterSerialParameters.setParity(SerialPort.Parity.NONE);
masterSerialParameters.setBaudRate(baudrate);
masterSerialParameters.setDataBits(8);
masterSerialParameters.setStopBits(1);
ModbusMaster master = ModbusMasterFactory.createModbusMasterRTU(masterSerialParameters);

master.setResponseTimeout(1000);
master.connect();
slave.setServerAddress(slaveId);
slave.setBroadcastEnabled(true);
slave.setReadTimeout(10000);

/* CompletableFuture<ReadHoldingRegistersResponse> future =
master.sendRequest(new ReadHoldingRegistersRequest(0, 10), 0);*/

FrameEventListener listener = new FrameEventListener() {
@Override
public void frameSentEvent(FrameEvent event) {
Expand Down Expand Up @@ -107,6 +147,8 @@ public void frameReceivedEvent(FrameEvent event) {
request.setQuantity(10);
ReadHoldingRegistersResponse response = (ReadHoldingRegistersResponse) request.getResponse();

//TODO: ReadHoldingRegistersResponse response = master.processRequestAsync(request);
//CompletableFuture<ReadHoldingRegistersResponse> future
master.processRequest(request);
ModbusHoldingRegisters registers = response.getHoldingRegisters();
for (int r : registers) {
Expand Down
20 changes: 20 additions & 0 deletions src/com/intelligt/modbus/examples/ExampleRTUOverTCP.java
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@
*/
package com.intelligt.modbus.examples;

import com.intelligt.modbus.jlibmodbus.Modbus;
import com.intelligt.modbus.jlibmodbus.data.ModbusHoldingRegisters;
import com.intelligt.modbus.jlibmodbus.exception.*;
import com.intelligt.modbus.jlibmodbus.master.ModbusMaster;
Expand All @@ -46,10 +47,29 @@

import java.net.InetAddress;
import java.net.UnknownHostException;
import java.util.logging.Handler;
import java.util.logging.LogRecord;

public class ExampleRTUOverTCP {
static public void main(String[] argv) {
try {
Modbus.log().addHandler(new Handler() {
@Override
public void publish(LogRecord record) {
System.out.println(record.getLevel().getName() + ": " + record.getMessage());
}

@Override
public void flush() {
//do nothing
}

@Override
public void close() throws SecurityException {
//do nothing
}
});
Modbus.setLogLevel(Modbus.LogLevel.LEVEL_DEBUG);
TcpParameters tcpParameter = new TcpParameters();
InetAddress host = InetAddress.getLocalHost();
tcpParameter.setHost(host);
Expand Down
18 changes: 18 additions & 0 deletions src/com/intelligt/modbus/examples/ExampleTCP.java
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,8 @@
import java.net.InetAddress;
import java.net.UnknownHostException;
import java.util.Observer;
import java.util.logging.Handler;
import java.util.logging.LogRecord;

/*
* Copyright (C) 2017 Vladislav Y. Kochedykov
Expand Down Expand Up @@ -44,6 +46,22 @@ static public void main(String[] argv) {

//
try {
Modbus.log().addHandler(new Handler() {
@Override
public void publish(LogRecord record) {
System.out.println(record.getLevel().getName() + ": " + record.getMessage());
}

@Override
public void flush() {
//do nothing
}

@Override
public void close() throws SecurityException {
//do nothing
}
});
Modbus.setLogLevel(Modbus.LogLevel.LEVEL_DEBUG);
TcpParameters tcpParameters = new TcpParameters();
//listening on localhost
Expand Down
20 changes: 20 additions & 0 deletions src/com/intelligt/modbus/examples/ModbusTest.java
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,8 @@

import java.net.InetAddress;
import java.nio.charset.Charset;
import java.util.logging.Handler;
import java.util.logging.LogRecord;

/*
* Copyright (C) 2016 "Invertor" Factory", JSC
Expand Down Expand Up @@ -78,6 +80,24 @@ public static void main(String[] argv) {
return;
}

Modbus.log().addHandler(new Handler() {
@Override
public void publish(LogRecord record) {
System.out.println(record.getLevel().getName() + ": " + record.getMessage());
}

@Override
public void flush() {
//do nothing
}

@Override
public void close() throws SecurityException {
//do nothing
}
});
Modbus.setLogLevel(Modbus.LogLevel.LEVEL_DEBUG);

SerialParameters sp;
TcpParameters tp;
ModbusTest test = new ModbusTest();
Expand Down
23 changes: 22 additions & 1 deletion src/com/intelligt/modbus/examples/SimpleMasterRTU.java
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,9 @@
import com.intelligt.modbus.jlibmodbus.serial.SerialPort;
import jssc.SerialPortList;

import java.util.logging.Handler;
import java.util.logging.LogRecord;

/*
* Copyright (C) 2016 "Invertor" Factory", JSC
* All rights reserved
Expand Down Expand Up @@ -41,8 +44,26 @@
public class SimpleMasterRTU {

static public void main(String[] arg) {
SerialParameters sp = new SerialParameters();
Modbus.log().addHandler(new Handler() {
@Override
public void publish(LogRecord record) {
System.out.println(record.getLevel().getName() + ": " + record.getMessage());
}

@Override
public void flush() {
//do nothing
}

@Override
public void close() throws SecurityException {
//do nothing
}
});
Modbus.setLogLevel(Modbus.LogLevel.LEVEL_DEBUG);

SerialParameters sp = new SerialParameters();

try {
// you can use just string to get connection with remote slave,
// but you can also get a list of all serial ports available at your system.
Expand Down
22 changes: 21 additions & 1 deletion src/com/intelligt/modbus/examples/SimpleMasterTCP.java
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,8 @@
import com.intelligt.modbus.jlibmodbus.tcp.TcpParameters;

import java.net.InetAddress;
import java.util.logging.Handler;
import java.util.logging.LogRecord;

/*
* Copyright (C) 2016 "Invertor" Factory", JSC
Expand Down Expand Up @@ -45,9 +47,27 @@
public class SimpleMasterTCP {

static public void main(String[] args) {

Modbus.log().addHandler(new Handler() {
@Override
public void publish(LogRecord record) {
System.out.println(record.getLevel().getName() + ": " + record.getMessage());
}

@Override
public void flush() {
//do nothing
}

@Override
public void close() throws SecurityException {
//do nothing
}
});
Modbus.setLogLevel(Modbus.LogLevel.LEVEL_DEBUG);

try {
TcpParameters tcpParameters = new TcpParameters();

//tcp parameters have already set by default as in example
tcpParameters.setHost(InetAddress.getLocalHost());
tcpParameters.setKeepAlive(true);
Expand Down
20 changes: 20 additions & 0 deletions src/com/intelligt/modbus/examples/SimpleSlaveTCP.java
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,8 @@
import java.net.InetAddress;
import java.util.ArrayList;
import java.util.List;
import java.util.logging.Handler;
import java.util.logging.LogRecord;

/*
* Copyright (c) 2017 Vladislav Kochedykov
Expand Down Expand Up @@ -47,6 +49,24 @@ public class SimpleSlaveTCP {

static public void main(String[] argv) {

Modbus.log().addHandler(new Handler() {
@Override
public void publish(LogRecord record) {
System.out.println(record.getLevel().getName() + ": " + record.getMessage());
}

@Override
public void flush() {
//do nothing
}

@Override
public void close() throws SecurityException {
//do nothing
}
});
Modbus.setLogLevel(Modbus.LogLevel.LEVEL_DEBUG);

try {

final ModbusSlave slave;
Expand Down
16 changes: 0 additions & 16 deletions src/com/intelligt/modbus/jlibmodbus/Modbus.java
Original file line number Diff line number Diff line change
Expand Up @@ -71,22 +71,6 @@ final public class Modbus {
static {
setLogLevel(logLevel);
log().setUseParentHandlers(false);
log().addHandler(new Handler() {
@Override
public void publish(LogRecord record) {
System.out.println(record.getLevel().getName() + ": " + record.getMessage());
}

@Override
public void flush() {
//do nothing
}

@Override
public void close() throws SecurityException {
//do nothing
}
});
}

private Modbus() {
Expand Down

0 comments on commit a2281d8

Please sign in to comment.