|
|
@ -12,10 +12,8 @@ import java.nio.ByteOrder; |
|
|
|
import java.nio.CharBuffer; |
|
|
|
import java.nio.charset.Charset; |
|
|
|
import java.nio.charset.StandardCharsets; |
|
|
|
import java.util.ArrayList; |
|
|
|
import java.util.List; |
|
|
|
import java.util.Timer; |
|
|
|
import java.util.TimerTask; |
|
|
|
import java.util.*; |
|
|
|
|
|
|
|
public class DiConWebsocket implements DiDeviceConnection { |
|
|
|
// logger |
|
|
|
public static final Logger LOG = LoggerFactory.getLogger(DiConWebsocket.class); |
|
|
@ -28,7 +26,7 @@ public class DiConWebsocket implements DiDeviceConnection { |
|
|
|
|
|
|
|
// constructor |
|
|
|
public DiConWebsocket() { |
|
|
|
this.requests = new ArrayList<>(); |
|
|
|
this.requests = new Vector<>(); |
|
|
|
} |
|
|
|
|
|
|
|
@Override |
|
|
@ -54,7 +52,7 @@ public class DiConWebsocket implements DiDeviceConnection { |
|
|
|
} |
|
|
|
|
|
|
|
@Override |
|
|
|
public void call(DiCommandRequest request) { |
|
|
|
synchronized public void call(DiCommandRequest request) { |
|
|
|
this.requests.add(request); |
|
|
|
|
|
|
|
// build cmd from request.parameter |
|
|
@ -72,6 +70,7 @@ public class DiConWebsocket implements DiDeviceConnection { |
|
|
|
} catch (InterruptedException e) { |
|
|
|
throw new RuntimeException(e); |
|
|
|
} |
|
|
|
this.requests.remove(request); |
|
|
|
} |
|
|
|
LOG.info("Command <= {}", DiByteBuffer.toHex(request.response)); |
|
|
|
} |
|
|
|