提供 ODV 相关服务的支持。模块用于协助监听/检索与 ODV 相关的印表机未请求讯息。 更多...
Public 成员函数 | |
OdvReportNotice | GetOdvReportCallback () |
继承自 IOdvMonitor.OdvReportListening 更多... | |
void | SetOdvReportCallback (OdvReportNotice callback) |
保存接收 ODV 报告时要调用的函数。函数必须符合 OdvReportNotice 的签名。 更多... | |
boolean | GetOdvReportListening () |
继承自 IOdvMonitor.OdvReportListening 更多... | |
void | SetOdvReportListening (boolean listening) |
启用/禁用监听或解析印表机发送的非请求 ODV 报告 更多... | |
OdvMonitor (TcpConnection connection) | |
必须传递一个已打开的 comm 连接,该连接必须保持打开状态以监听未请求的 ODV 报告。 更多... | |
OdvMonitor (JsonComm mgmtComm) | |
当管理 comm 对象已存在以监听管理讯息时调用的构造函数。 更多... | |
OdvMonitor (String commDescriptor) | |
当创建由 SDK 管理的连接时调用此构造函数。 更多... | |
void | Dispose () |
void | close () throws Exception |
Protected 成员函数 | |
void | Dispose (boolean disposing) |
void | finalize () throws Throwable |
Private 成员函数 | |
void | triggerCallbackForOdvReport (OdvReport report) |
void | MsgListenerCtrlRefresh () |
Map< String, String > | MsgParser_OdvReport (String mgmtReportFrame) |
void | CallbackForOdvReport (OdvReport odvReport) |
Private 属性 | |
TcpConnection | _ptrComm |
JsonComm | _mgmtComm |
Channel< String > | _msgsFromPtr |
String | _myMgmtId = "" |
AtomicBoolean | _mgmtMsgListening = new AtomicBoolean(false) |
AtomicBoolean | _printerJobReporting = new AtomicBoolean(false) |
AtomicBoolean | _odvReportListening = new AtomicBoolean(false) |
ExecutorService | _executor = Executors.newSingleThreadExecutor() |
Future<?> | _listenerTask |
ConcurrentLinkedQueue< String > | _mgmtFilteredMsgs = new ConcurrentLinkedQueue<>() |
OdvReportNotice | OdvReportCallback |
boolean | _sdkManagedComm = false |
String | _managedDescriptor = "" |
boolean | _disposed = false |
静态 Private 属性 | |
static final int | MAX_MSGS_FROM_PTR = 100 |
static final int | MAX_ODV_MSGS = 2 |
提供 ODV 相关服务的支持。模块用于协助监听/检索与 ODV 相关的印表机未请求讯息。
如果启用了未请求的讯息,印表机可以随时发送讯息。 此模块需要与印表机管理端口保持持续的“状态”连接,以便监听从印表机发送的任何讯息。
将带有条码的打印作业发送到印表机并获得条码报告后的结果。
com.UniPRT.Sdk.Json.OdvMonitor.OdvMonitor | ( | TcpConnection | connection | ) |
必须传递一个已打开的 comm 连接,该连接必须保持打开状态以监听未请求的 ODV 报告。
连接是用于发送/接收讯息的必要条件。
引用了 com.UniPRT.Sdk.Json.OdvMonitor._mgmtComm, com.UniPRT.Sdk.Json.OdvMonitor._myMgmtId, com.UniPRT.Sdk.Json.OdvMonitor._ptrComm, com.UniPRT.Sdk.Json.JsonStringBuilder.GetRandomObjectId_Json() , 以及 com.UniPRT.Sdk.Json.OdvMonitor.OdvReportCallback.
com.UniPRT.Sdk.Json.OdvMonitor.OdvMonitor | ( | JsonComm | mgmtComm | ) |
当管理 comm 对象已存在以监听管理讯息时调用的构造函数。
每台印表机的 JsonComm 对象负责监听和解析完整的管理讯息,并将其转发给所有管理讯息监听者。
引用了 com.UniPRT.Sdk.Json.OdvMonitor._mgmtComm, com.UniPRT.Sdk.Json.OdvMonitor._myMgmtId, com.UniPRT.Sdk.Json.JsonStringBuilder.GetRandomObjectId_Json() , 以及 com.UniPRT.Sdk.Json.OdvMonitor.OdvReportCallback.
com.UniPRT.Sdk.Json.OdvMonitor.OdvMonitor | ( | String | commDescriptor | ) |
当创建由 SDK 管理的连接时调用此构造函数。
commDescriptor 是用于与印表机建立通信的描述符。
TCP 描述符格式为:"ip" 或 "ip:port"
例如:"127.0.0.1" 或 "127.0.0.1:3007"
若未提供端口,则使用默认值。
引用了 com.UniPRT.Sdk.Json.OdvMonitor._managedDescriptor, com.UniPRT.Sdk.Json.OdvMonitor._mgmtComm, com.UniPRT.Sdk.Json.OdvMonitor._myMgmtId, com.UniPRT.Sdk.Json.OdvMonitor._sdkManagedComm, com.UniPRT.Sdk.Json.JsonCommController.CreateMgmtComm(), com.UniPRT.Sdk.Json.JsonStringBuilder.GetRandomObjectId_Json(), com.UniPRT.Sdk.Json.JsonCommController.Instance() , 以及 com.UniPRT.Sdk.Json.OdvMonitor.OdvReportCallback.
|
private |
void com.UniPRT.Sdk.Json.OdvMonitor.close | ( | ) | throws Exception |
void com.UniPRT.Sdk.Json.OdvMonitor.Dispose | ( | ) |
|
protected |
|
protected |
OdvReportNotice com.UniPRT.Sdk.Json.OdvMonitor.GetOdvReportCallback | ( | ) |
继承自 IOdvMonitor.OdvReportListening
boolean com.UniPRT.Sdk.Json.OdvMonitor.GetOdvReportListening | ( | ) |
继承自 IOdvMonitor.OdvReportListening
|
private |
引用了 com.UniPRT.Sdk.Json.OdvMonitor._executor, com.UniPRT.Sdk.Json.OdvMonitor._listenerTask, com.UniPRT.Sdk.Json.OdvMonitor._mgmtComm, com.UniPRT.Sdk.Json.OdvMonitor._mgmtFilteredMsgs, com.UniPRT.Sdk.Json.OdvMonitor._mgmtMsgListening, com.UniPRT.Sdk.Json.OdvMonitor._msgsFromPtr, com.UniPRT.Sdk.Json.OdvMonitor._odvReportListening, com.UniPRT.Sdk.Json.OdvMonitor._printerJobReporting, com.UniPRT.Sdk.Json.JsonComm.ChannelListenerJson(), com.UniPRT.Sdk.Json.JsonStringTokenizer.GetKeyValue(), com.UniPRT.Sdk.Json.JsonStringTokenizer.GetMsgIdExpectedOnResponse_Json(), com.UniPRT.Sdk.Json.OdvReportNotice.handle(), com.UniPRT.Sdk.Json.OdvMonitor.MAX_MSGS_FROM_PTR, com.UniPRT.Sdk.Json.OdvMonitor.MAX_ODV_MSGS, com.UniPRT.Sdk.Json.OdvMonitor.MsgParser_OdvReport(), com.UniPRT.Sdk.Json.OdvMonitor.OdvReportCallback, com.UniPRT.Sdk.Json.OdvReport.RawReport, com.UniPRT.Sdk.Mgmt.Channel< T >.Take() , 以及 com.UniPRT.Sdk.Mgmt.MgmtChannelFilterType.UNSOLICITED_MSGS_ONLY.
被这些函数引用 com.UniPRT.Sdk.Json.OdvMonitor.SetOdvReportListening().
|
private |
void com.UniPRT.Sdk.Json.OdvMonitor.SetOdvReportCallback | ( | OdvReportNotice | callback | ) |
保存接收 ODV 报告时要调用的函数。函数必须符合 OdvReportNotice 的签名。
传递给函数的参数是一个 OdvReport 对象,代表接收到的 ODV 报告。
void com.UniPRT.Sdk.Json.OdvMonitor.SetOdvReportListening | ( | boolean | listening | ) |
启用/禁用监听或解析印表机发送的非请求 ODV 报告
注意,必须启用此功能才能在接收条码报告时接收任何通知 OdvReportCallback。
实现了 com.UniPRT.Sdk.Json.IOdvMonitor.
引用了 com.UniPRT.Sdk.Json.OdvMonitor._mgmtComm, com.UniPRT.Sdk.Json.OdvMonitor._myMgmtId, com.UniPRT.Sdk.Json.OdvMonitor._odvReportListening, com.UniPRT.Sdk.Json.JsonStringBuilder.CreateMsgFrame_Json(), com.UniPRT.Sdk.Json.OdvMonitor.MsgListenerCtrlRefresh() , 以及 com.UniPRT.Sdk.Json.JsonComm.SendAndWaitForResponse().
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
staticprivate |
|
staticprivate |
|
private |