mirror of
https://github.com/esiur/esiur-js.git
synced 2025-05-06 04:22:58 +00:00
unnecessary deattach
This commit is contained in:
parent
f3032e384f
commit
44216e05de
@ -6058,9 +6058,16 @@ var DistributedConnection = exports["default"] = /*#__PURE__*/function (_IStore)
|
||||
key: "_sendDetachRequest",
|
||||
value: function _sendDetachRequest(instanceId) {
|
||||
try {
|
||||
if ((0, _classPrivateFieldGet25["default"])(this, _attachedResources).containsKey(instanceId)) (0, _classPrivateFieldGet25["default"])(this, _attachedResources).remove(instanceId);
|
||||
if ((0, _classPrivateFieldGet25["default"])(this, _suspendedResources).containsKey(instanceId)) (0, _classPrivateFieldGet25["default"])(this, _suspendedResources).remove(instanceId);
|
||||
return _classPrivateMethodGet(this, _sendRequest, _sendRequest2).call(this, _IIPPacketAction["default"].DetachResource).addUint32(instanceId).done();
|
||||
var sendDetach = false;
|
||||
if ((0, _classPrivateFieldGet25["default"])(this, _attachedResources).containsKey(instanceId)) {
|
||||
(0, _classPrivateFieldGet25["default"])(this, _attachedResources).remove(instanceId);
|
||||
sendDetach = true;
|
||||
}
|
||||
if ((0, _classPrivateFieldGet25["default"])(this, _suspendedResources).containsKey(instanceId)) {
|
||||
(0, _classPrivateFieldGet25["default"])(this, _suspendedResources).remove(instanceId);
|
||||
sendDetach = true;
|
||||
}
|
||||
if (sendDetach) return _classPrivateMethodGet(this, _sendRequest, _sendRequest2).call(this, _IIPPacketAction["default"].DetachResource).addUint32(instanceId).done();
|
||||
} catch (ex) {
|
||||
return null;
|
||||
}
|
||||
@ -6134,8 +6141,9 @@ var DistributedConnection = exports["default"] = /*#__PURE__*/function (_IStore)
|
||||
value: function IIPEventResourceDestroyed(resourceId) {
|
||||
if ((0, _classPrivateFieldGet25["default"])(this, _attachedResources).contains(resourceId)) {
|
||||
var r = (0, _classPrivateFieldGet25["default"])(this, _attachedResources).get(resourceId).deref();
|
||||
r === null || r === void 0 || r.destroy();
|
||||
// remove from attached to avoid sending unnecessary deattach request when destroy() is called
|
||||
(0, _classPrivateFieldGet25["default"])(this, _attachedResources).remove(resourceId);
|
||||
r === null || r === void 0 || r.destroy();
|
||||
} else if ((0, _classPrivateFieldGet25["default"])(this, _neededResources).contains(resourceId)) {
|
||||
// @TODO: handle this mess
|
||||
(0, _classPrivateFieldGet25["default"])(this, _neededResources).remove(resourceId);
|
||||
|
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "esiur",
|
||||
"version": "2.3.0",
|
||||
"version": "2.3.1",
|
||||
"description": "Distributed Object Framework",
|
||||
"main": "esiur.js",
|
||||
"type": "module",
|
||||
|
@ -1693,12 +1693,19 @@ export default class DistributedConnection extends IStore {
|
||||
{
|
||||
try
|
||||
{
|
||||
if (this.#attachedResources.containsKey(instanceId))
|
||||
let sendDetach = false;
|
||||
|
||||
if (this.#attachedResources.containsKey(instanceId)){
|
||||
this.#attachedResources.remove(instanceId);
|
||||
sendDetach = true;
|
||||
}
|
||||
|
||||
if (this.#suspendedResources.containsKey(instanceId))
|
||||
if (this.#suspendedResources.containsKey(instanceId)){
|
||||
this.#suspendedResources.remove(instanceId);
|
||||
sendDetach = true;
|
||||
}
|
||||
|
||||
if (sendDetach)
|
||||
return this.#sendRequest(IIPPacketAction.DetachResource)
|
||||
.addUint32(instanceId)
|
||||
.done();
|
||||
@ -1832,9 +1839,9 @@ export default class DistributedConnection extends IStore {
|
||||
if (this.#attachedResources.contains(resourceId))
|
||||
{
|
||||
let r = this.#attachedResources.get(resourceId).deref();
|
||||
r?.destroy();
|
||||
|
||||
// remove from attached to avoid sending unnecessary deattach request when destroy() is called
|
||||
this.#attachedResources.remove(resourceId);
|
||||
r?.destroy();
|
||||
}
|
||||
else if (this.#neededResources.contains(resourceId))
|
||||
{
|
||||
|
Loading…
x
Reference in New Issue
Block a user