UniPRT SDK  v1.0.0.0
com.UniPRT.Sdk.Json.JsonCommController 類別 參考文件

控制器管理與打印機的 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 模式 釋放資源後管理類資源的釋放。

建構子與解構子說明文件

◆ JsonCommController()

com.UniPRT.Sdk.Json.JsonCommController.JsonCommController ( )
private

函式成員說明文件

◆ ConnectionCount()

int com.UniPRT.Sdk.Json.JsonCommController.ConnectionCount ( )

get number of connections. Note each connection can have multiple users.

◆ CreateMgmtComm() [1/2]

JsonComm com.UniPRT.Sdk.Json.JsonCommController.CreateMgmtComm ( IComm  ptrComm)

創建或返回允許管理/JSON 通信的現有連接。

ptrComm 是與打印機的通信連接。

參考 com.UniPRT.Sdk.Json.JsonCommController._syncLockComm, 及 com.UniPRT.Sdk.Comm.IComm.Descriptor().

◆ CreateMgmtComm() [2/2]

JsonComm com.UniPRT.Sdk.Json.JsonCommController.CreateMgmtComm ( String  commDescriptor)

◆ Descriptors()

List<String> com.UniPRT.Sdk.Json.JsonCommController.Descriptors ( )

get list of connection descriptors

◆ Instance()

◆ ReleaseMgmtComm()

void com.UniPRT.Sdk.Json.JsonCommController.ReleaseMgmtComm ( String  commDescriptor)

◆ UserCount()

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().

資料成員說明文件

◆ _syncLockComm

final Object com.UniPRT.Sdk.Json.JsonCommController._syncLockComm = new Object()
staticprivate

◆ instance

volatile JsonCommController com.UniPRT.Sdk.Json.JsonCommController.instance
staticprivate

◆ syncLockInstance

final Object com.UniPRT.Sdk.Json.JsonCommController.syncLockInstance = new Object()
staticprivate

此類別(class) 文件是由下列檔案中產生: