控制器管理與打印機的 JSON 連接,允許多個模組共享相同的連接。 更多...
複合項目 | |
class | JsonConnection |
公開方法(Public Methods) | |
JsonComm | CreateMgmtComm (String commDescriptor) |
創建或返回允許管理/JSON 通信的現有連接。 更多... | |
JsonComm | CreateMgmtComm (IComm ptrComm) |
創建或返回允許管理/JSON 通信的現有連接。 更多... | |
void | ReleaseMgmtComm (String commDescriptor) |
Release the json comm resources tied to the commDescriptor 更多... | |
int | UserCount (String commdDescriptor) |
get the active user count for a given commDescriptor. 更多... | |
int | ConnectionCount () |
get number of connections. Note each connection can have multiple users. 更多... | |
List< String > | Descriptors () |
get list of connection descriptors 更多... | |
靜態公開方法(Static Public Methods) | |
static JsonCommController | Instance () |
私有方法(Private Methods) | |
JsonCommController () | |
靜態私有屬性 | |
static final Object | _syncLockComm = new Object() |
static final Object | syncLockInstance = new Object() |
static volatile JsonCommController | instance |
控制器管理與打印機的 JSON 連接,允許多個模組共享相同的連接。
當需要多個模組共享通信資源或更輕鬆地創建到打印機的連接時,使用此控制器。
為什麼需要這個?
管理/跟踪通信連接,使得共享通信資源到單個打印機的對象的實例化變得更容易。
這似乎不重要…似乎沒什麼用處…
但請記住,上述對象的實例化可能會發生在用戶代碼的不同部分,一部分代碼可能不知道現有的共享連接。通過這樣的集中管理/跟踪, 減輕了用戶的負擔,創造了更好的用戶體驗(假設代碼按預期工作)。
這是一種“可丟棄的”單例模式和工廠模式的混合,為每台打印機創建唯一的通信和 JSON 解析器,並在所有消費者通過 IDisposable 模式 釋放資源後管理類資源的釋放。
|
private |
int com.UniPRT.Sdk.Json.JsonCommController.ConnectionCount | ( | ) |
get number of connections. Note each connection can have multiple users.
創建或返回允許管理/JSON 通信的現有連接。
ptrComm 是與打印機的通信連接。
參考 com.UniPRT.Sdk.Json.JsonCommController._syncLockComm, 及 com.UniPRT.Sdk.Comm.IComm.Descriptor().
JsonComm com.UniPRT.Sdk.Json.JsonCommController.CreateMgmtComm | ( | String | commDescriptor | ) |
創建或返回允許管理/JSON 通信的現有連接。
支援的 commDescriptor 類型:
"TCP:ip:port" 注意:釋放時的描述符必須與 ReleaseMgmtComm 的調用完全匹配。
參考 com.UniPRT.Sdk.Json.JsonCommController._syncLockComm.
被參考於 com.UniPRT.Sdk.Settings.Configs.Configs(), com.UniPRT.Sdk.Mgmt.Listener.ListenerChannelsConnectorGet(), com.UniPRT.Sdk.Mgmt.Messenger.Messenger(), com.UniPRT.Sdk.Json.OdvMonitor.OdvMonitor(), com.UniPRT.Sdk.Json.PrinterMonitor.PrinterMonitor(), com.UniPRT.Sdk.Json.RfidMonitor.RfidMonitor(), 及 com.UniPRT.Sdk.Json.SettingsReadWrite.SettingsReadWrite().
List<String> com.UniPRT.Sdk.Json.JsonCommController.Descriptors | ( | ) |
get list of connection descriptors
|
static |
參考 com.UniPRT.Sdk.Json.JsonCommController.instance, com.UniPRT.Sdk.Json.JsonCommController.JsonCommController(), 及 com.UniPRT.Sdk.Json.JsonCommController.syncLockInstance.
被參考於 com.UniPRT.Sdk.Settings.Configs.Configs(), com.UniPRT.Sdk.Settings.Configs.Dispose(), com.UniPRT.Sdk.Json.OdvMonitor.Dispose(), com.UniPRT.Sdk.Json.RfidMonitor.Dispose(), com.UniPRT.Sdk.Json.SettingsReadWrite.Dispose(), com.UniPRT.Sdk.Json.PrinterMonitor.Dispose(), com.UniPRT.Sdk.Mgmt.Listener.ListenerChannelsConnectorGet(), com.UniPRT.Sdk.Mgmt.Messenger.Messenger(), com.UniPRT.Sdk.Json.OdvMonitor.OdvMonitor(), com.UniPRT.Sdk.Json.PrinterMonitor.PrinterMonitor(), com.UniPRT.Sdk.Json.RfidMonitor.RfidMonitor(), 及 com.UniPRT.Sdk.Json.SettingsReadWrite.SettingsReadWrite().
void com.UniPRT.Sdk.Json.JsonCommController.ReleaseMgmtComm | ( | String | commDescriptor | ) |
Release the json comm resources tied to the commDescriptor
參考 com.UniPRT.Sdk.Json.JsonCommController._syncLockComm.
被參考於 com.UniPRT.Sdk.Settings.Configs.Dispose(), com.UniPRT.Sdk.Json.OdvMonitor.Dispose(), com.UniPRT.Sdk.Json.RfidMonitor.Dispose(), com.UniPRT.Sdk.Json.SettingsReadWrite.Dispose(), 及 com.UniPRT.Sdk.Json.PrinterMonitor.Dispose().
int com.UniPRT.Sdk.Json.JsonCommController.UserCount | ( | String | commdDescriptor | ) |
get the active user count for a given commDescriptor.
參考 com.UniPRT.Sdk.Json.JsonCommController.JsonConnection.UserCount().
|
staticprivate |
|
staticprivate |
|
staticprivate |