code: protected Promise disconnect() {
  		int s = status.get();
  		if (s != STATUS_DISCONNECTED && s != STATUS_DISCONNECTING) {
  			status.set(STATUS_DISCONNECTING);
  			if (clientSub != null) {
  				clientSub.disconnect();
  			}
  			if (clientPub != null) {
  				clientPub.disconnect();
  			}
  			status.set(STATUS_DISCONNECTED);
  		}
  		return Promise.resolve();
  	}
docs: --- DISCONNECT ---