@xmobitea/gn-typescript-client 2.4.6-esnext → 2.4.7-esnext

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -189,9 +189,11 @@ export { GNNetworkCloudScriptApi, Server_GNNetworkCloudScriptApi, Admin_GNNetwor
189
189
  import { GNSupport } from "./runtime/helper/GNSupport";
190
190
  import { CodeHelper } from "./runtime/helper/CodeHelper";
191
191
  import { ConverterService } from "./runtime/helper/ConverterService";
192
+ import { GNUtils } from "./runtime/helper/GNUtils";
192
193
  export { GNSupport };
193
194
  export { CodeHelper };
194
195
  export { ConverterService };
196
+ export { GNUtils };
195
197
  import { DataMember, StringDataMember, BooleanDataMember, GNHashtableDataMember, GNArrayDataMember, NumberDataMember } from "./runtime/entity/DataMember";
196
198
  export { DataMember, StringDataMember, BooleanDataMember, GNHashtableDataMember, GNArrayDataMember, NumberDataMember };
197
199
  import { GNObjectMetadata, AbstractConstructor, Constructor, FieldDataType, GNObjectFieldMetadata } from "./runtime/entity/GNMetadata";
package/dist/index.js CHANGED
@@ -183,9 +183,11 @@ export { GNNetworkCloudScriptApi, Server_GNNetworkCloudScriptApi, Admin_GNNetwor
183
183
  import { GNSupport } from "./runtime/helper/GNSupport";
184
184
  import { CodeHelper } from "./runtime/helper/CodeHelper";
185
185
  import { ConverterService } from "./runtime/helper/ConverterService";
186
+ import { GNUtils } from "./runtime/helper/GNUtils";
186
187
  export { GNSupport };
187
188
  export { CodeHelper };
188
189
  export { ConverterService };
190
+ export { GNUtils };
189
191
  import { DataMember, StringDataMember, BooleanDataMember, GNHashtableDataMember, GNArrayDataMember, NumberDataMember } from "./runtime/entity/DataMember";
190
192
  export { DataMember, StringDataMember, BooleanDataMember, GNHashtableDataMember, GNArrayDataMember, NumberDataMember };
191
193
  import { FieldDataType } from "./runtime/entity/GNMetadata";
@@ -333,4 +335,5 @@ const gn = {
333
335
  NumberDataMember,
334
336
  FieldDataType,
335
337
  ServiceUpdate,
338
+ GNUtils,
336
339
  };
@@ -0,0 +1,10 @@
1
+ import { GenericModels } from "../entity/models/GenericModels";
2
+ export declare class GNUtils {
3
+ static toDatasDictionary(datas: Array<GenericModels.DataItem>): Map<string, GenericModels.DataItem>;
4
+ static toTagsDictionary(tags: Array<GenericModels.TagItem>): Map<string, GenericModels.TagItem>;
5
+ static toCurrenciesDictionary(currencies: Array<GenericModels.CurrencyItem>): Map<string, GenericModels.CurrencyItem>;
6
+ static toStatisticsDictionary(statistics: Array<GenericModels.StatisticsItem>): Map<string, GenericModels.StatisticsItem>;
7
+ static toInventoriesDictionary(inventories: Array<GenericModels.InventoryItem>): Map<string, GenericModels.InventoryItem>;
8
+ static toGroupDictionary(groups: Array<GenericModels.GroupItem>): Map<string, GenericModels.GroupItem>;
9
+ static toFriendDictionary(friends: Array<GenericModels.FriendItem>): Map<string, GenericModels.FriendItem>;
10
+ }
@@ -0,0 +1,72 @@
1
+ export class GNUtils {
2
+ static toDatasDictionary(datas) {
3
+ if (datas == null)
4
+ return null;
5
+ let answer = new Map();
6
+ for (let i = 0; i < datas.length; i++) {
7
+ let data = datas[i];
8
+ answer.set(data.key, data);
9
+ }
10
+ return answer;
11
+ }
12
+ static toTagsDictionary(tags) {
13
+ if (tags == null)
14
+ return null;
15
+ let answer = new Map();
16
+ for (let i = 0; i < tags.length; i++) {
17
+ let tag = tags[i];
18
+ answer.set(tag.key, tag);
19
+ }
20
+ return answer;
21
+ }
22
+ static toCurrenciesDictionary(currencies) {
23
+ if (currencies == null)
24
+ return null;
25
+ let answer = new Map();
26
+ for (let i = 0; i < currencies.length; i++) {
27
+ let currency = currencies[i];
28
+ answer.set(currency.key, currency);
29
+ }
30
+ return answer;
31
+ }
32
+ static toStatisticsDictionary(statistics) {
33
+ if (statistics == null)
34
+ return null;
35
+ let answer = new Map();
36
+ for (let i = 0; i < statistics.length; i++) {
37
+ let statistic = statistics[i];
38
+ answer.set(statistic.key, statistic);
39
+ }
40
+ return answer;
41
+ }
42
+ static toInventoriesDictionary(inventories) {
43
+ if (inventories == null)
44
+ return null;
45
+ let answer = new Map();
46
+ for (let i = 0; i < inventories.length; i++) {
47
+ let inventory = inventories[i];
48
+ answer.set(inventory.itemId, inventory);
49
+ }
50
+ return answer;
51
+ }
52
+ static toGroupDictionary(groups) {
53
+ if (groups == null)
54
+ return null;
55
+ let answer = new Map();
56
+ for (let i = 0; i < groups.length; i++) {
57
+ let group = groups[i];
58
+ answer.set(group.groupId, group);
59
+ }
60
+ return answer;
61
+ }
62
+ static toFriendDictionary(friends) {
63
+ if (friends == null)
64
+ return null;
65
+ let answer = new Map();
66
+ for (let i = 0; i < friends.length; i++) {
67
+ let friend = friends[i];
68
+ answer.set(friend.friendId, friend);
69
+ }
70
+ return answer;
71
+ }
72
+ }
@@ -22,6 +22,7 @@ export declare abstract class PeerBase implements IPeer {
22
22
  private initSendRate;
23
23
  protected abstract initGNSocketObject(): void;
24
24
  enqueue(requestType: RequestType, requestRole: RequestRole, operationRequest: OperationRequest, onOperationResponse: Action1<OperationResponse>, authToken: string, secretKey: string, customTags: GNHashtable, gameId: string): void;
25
+ protected abstract onEnqueue(operationPending: OperationPending): void;
25
26
  isUsing(): boolean;
26
27
  service(): void;
27
28
  protected onResponseHandler(obj: GNArray, isEncrypted: boolean): void;
@@ -39,8 +39,11 @@ export class PeerBase {
39
39
  GNDebug.logError("[GN] Server Settings dont setup to use this to send operation request.");
40
40
  return;
41
41
  }
42
+ if (operationRequest.getRequestId() != -1)
43
+ operationRequest.setRequestId(PeerBase.requestId++);
42
44
  let operationPending = new OperationPending(requestType, requestRole, operationRequest, onOperationResponse, authToken, secretKey, customTags, gameId);
43
45
  this.operationPendingQueue.push(operationPending);
46
+ this.onEnqueue(operationPending);
44
47
  }
45
48
  isUsing() {
46
49
  return this.isUse;
@@ -143,7 +146,6 @@ export class PeerBase {
143
146
  operationPending.onSend();
144
147
  let operationRequest = operationPending.getOperationRequest();
145
148
  if (operationRequest.getRequestId() != -1) {
146
- operationRequest.setRequestId(PeerBase.requestId++);
147
149
  if (operationPending.getCallback() != null) {
148
150
  this.operationWaitingResponseDict.set(operationRequest.getRequestId(), operationPending);
149
151
  }
@@ -18,6 +18,7 @@ export declare class HttpPeer extends PeerBase {
18
18
  private static readonly JSON_CHAR_KNOWN;
19
19
  protected initGNSocketObject(): void;
20
20
  send(operationPending: OperationPending): void;
21
+ protected onEnqueue(operationPending: OperationPending): void;
21
22
  private onSendOperationRequestResponse;
22
23
  getRequest(subUri: string, onHttpAppResponse: Action1<HttpAppResponse>, timeout?: number, authToken?: string, secretKey?: string, gameId?: string): void;
23
24
  uploadFile(fileId: string, content: Uint8Array, mimetype: string, onHttpAppResponse: Action1<HttpAppResponse>, timeout?: number): void;
@@ -38,8 +38,8 @@ export class HttpPeer extends PeerBase {
38
38
  }
39
39
  send(operationPending) {
40
40
  super.send(operationPending);
41
- GNDebug.log("[GN Http SEND] " + operationPending.getOperationRequest().toString());
42
41
  let operationRequest = operationPending.getOperationRequest();
42
+ GNDebug.log("[GN Http SEND] " + operationRequest.toString());
43
43
  let authToken = operationPending.getAuthToken();
44
44
  let secretKey = operationPending.getSecretKey();
45
45
  let gameId = operationPending.getGameId();
@@ -57,6 +57,9 @@ export class HttpPeer extends PeerBase {
57
57
  thiz.onSendOperationRequestResponse(operationPending, httpAppResponse);
58
58
  }, operationRequest.getTimeout(), authToken, secretKey, customTags, gameId);
59
59
  }
60
+ onEnqueue(operationPending) {
61
+ GNDebug.log("[GN Http ENQUEUE] " + operationPending.getOperationRequest().toString());
62
+ }
60
63
  onSendOperationRequestResponse(operationPending, httpAppResponse) {
61
64
  let operationRequest = operationPending.getOperationRequest();
62
65
  let obj = new GNArray();
@@ -23,6 +23,7 @@ export declare class SocketPeer extends PeerBase {
23
23
  disconnect(_onSocketDisconnect: Action0): void;
24
24
  setOnEventHandler(_onEventHandler: Action1<OperationEvent>): void;
25
25
  send(operationPending: OperationPending): void;
26
+ protected onEnqueue(operationPending: OperationPending): void;
26
27
  onEventHandler(obj: GNArray, isEncrypted: boolean): void;
27
28
  service(): void;
28
29
  }
@@ -84,6 +84,9 @@ export class SocketPeer extends PeerBase {
84
84
  let customTags = operationPending.getCustomTags();
85
85
  this.networkingSocketPeerBase.send(operationPending.getRequestType(), operationPending.getRequestRole(), operationPending.getOperationRequest(), authToken, secretKey, customTags, gameId);
86
86
  }
87
+ onEnqueue(operationPending) {
88
+ GNDebug.log("[GN Socket ENQUEUE] " + operationPending.getOperationRequest().toString());
89
+ }
87
90
  onEventHandler(obj, isEncrypted) {
88
91
  let eventCode = obj.getNumber(0);
89
92
  let operationEvent = new OperationEvent(eventCode, obj.getGNHashtable(1));
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@xmobitea/gn-typescript-client",
3
- "version": "2.4.6-esnext",
3
+ "version": "2.4.7-esnext",
4
4
  "description": "",
5
5
  "types": "dist/index.d.ts",
6
6
  "main": "dist/index.js",