@xmobitea/gn-typescript-client 2.6.7 → 2.6.8-tsc

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.
Files changed (116) hide show
  1. package/dist/index.js +337 -34170
  2. package/dist/runtime/GNNetwork.js +250 -0
  3. package/dist/runtime/GNNetworkAuthenticateApi.js +122 -0
  4. package/dist/runtime/GNNetworkCharacterPlayerApi.js +968 -0
  5. package/dist/runtime/GNNetworkCloudScriptApi.js +104 -0
  6. package/dist/runtime/GNNetworkContentApi.js +140 -0
  7. package/dist/runtime/GNNetworkDashboardApi.js +170 -0
  8. package/dist/runtime/GNNetworkGamePlayerApi.js +950 -0
  9. package/dist/runtime/GNNetworkGroupApi.js +734 -0
  10. package/dist/runtime/GNNetworkInventoryApi.js +626 -0
  11. package/dist/runtime/GNNetworkMasterPlayerApi.js +1550 -0
  12. package/dist/runtime/GNNetworkMultiplayerApi.js +194 -0
  13. package/dist/runtime/GNNetworkStoreInventoryApi.js +266 -0
  14. package/dist/runtime/common/Action0.js +1 -0
  15. package/dist/runtime/common/Action1.js +1 -0
  16. package/dist/runtime/common/Action2.js +1 -0
  17. package/dist/runtime/common/Action3.js +1 -0
  18. package/dist/runtime/common/Action4.js +1 -0
  19. package/dist/runtime/common/GNData.js +211 -0
  20. package/dist/runtime/config/GNServerSettings.js +149 -0
  21. package/dist/runtime/constant/Commands.js +19 -0
  22. package/dist/runtime/constant/EventCode.js +8 -0
  23. package/dist/runtime/constant/OperationCode.js +221 -0
  24. package/dist/runtime/constant/ReturnCode.js +14 -0
  25. package/dist/runtime/constant/enumType/ExecuteResponseStatus.js +8 -0
  26. package/dist/runtime/constant/enumType/FriendStatus.js +7 -0
  27. package/dist/runtime/constant/enumType/GoogleLoginType.js +5 -0
  28. package/dist/runtime/constant/enumType/GroupStatus.js +7 -0
  29. package/dist/runtime/constant/enumType/InvalidMemberType.js +18 -0
  30. package/dist/runtime/constant/enumType/ItemType.js +5 -0
  31. package/dist/runtime/constant/enumType/MatchmakingMemberStatus.js +6 -0
  32. package/dist/runtime/constant/enumType/MatchmakingTicketStatus.js +8 -0
  33. package/dist/runtime/constant/enumType/OwnerType.js +9 -0
  34. package/dist/runtime/constant/enumType/PermissionDataItem.js +5 -0
  35. package/dist/runtime/constant/enumType/PushPlatformType.js +5 -0
  36. package/dist/runtime/constant/enumType/RequestRole.js +6 -0
  37. package/dist/runtime/constant/enumType/RequestType.js +15 -0
  38. package/dist/runtime/constant/enumType/StoreItemType.js +5 -0
  39. package/dist/runtime/constant/enumType/StoreReceiveType.js +8 -0
  40. package/dist/runtime/constant/errorCode/ErrorCode.js +52 -0
  41. package/dist/runtime/constant/parameterCode/ParameterCode.js +617 -0
  42. package/dist/runtime/entity/DataMember.js +208 -0
  43. package/dist/runtime/entity/GNMetadata.js +11 -0
  44. package/dist/runtime/entity/InvalidMember.js +1 -0
  45. package/dist/runtime/entity/OperationEvent.js +24 -0
  46. package/dist/runtime/entity/OperationHelper.js +24 -0
  47. package/dist/runtime/entity/OperationRequest.js +42 -0
  48. package/dist/runtime/entity/OperationResponse.js +73 -0
  49. package/dist/runtime/entity/models/AuthenticateModels.js +426 -0
  50. package/dist/runtime/entity/models/AuthenticateRequestModels.js +188 -0
  51. package/dist/runtime/entity/models/AuthenticateResponseModels.js +131 -0
  52. package/dist/runtime/entity/models/CharacterPlayerModels.js +1437 -0
  53. package/dist/runtime/entity/models/CharacterPlayerRequestModels.js +1386 -0
  54. package/dist/runtime/entity/models/CharacterPlayerResponseModels.js +376 -0
  55. package/dist/runtime/entity/models/CloudScriptModels.js +197 -0
  56. package/dist/runtime/entity/models/CloudScriptRequestModels.js +138 -0
  57. package/dist/runtime/entity/models/CloudScriptResponseModels.js +40 -0
  58. package/dist/runtime/entity/models/ContentModels.js +203 -0
  59. package/dist/runtime/entity/models/ContentRequestModels.js +190 -0
  60. package/dist/runtime/entity/models/ContentResponseModels.js +54 -0
  61. package/dist/runtime/entity/models/DashboardModels.js +3002 -0
  62. package/dist/runtime/entity/models/DashboardRequestModels.js +268 -0
  63. package/dist/runtime/entity/models/DashboardResponseModels.js +187 -0
  64. package/dist/runtime/entity/models/GamePlayerModels.js +1591 -0
  65. package/dist/runtime/entity/models/GamePlayerRequestModels.js +1360 -0
  66. package/dist/runtime/entity/models/GamePlayerResponseModels.js +369 -0
  67. package/dist/runtime/entity/models/GenericModels.js +177 -0
  68. package/dist/runtime/entity/models/GroupModels.js +1139 -0
  69. package/dist/runtime/entity/models/GroupRequestModels.js +1048 -0
  70. package/dist/runtime/entity/models/GroupResponseModels.js +285 -0
  71. package/dist/runtime/entity/models/InventoryModels.js +915 -0
  72. package/dist/runtime/entity/models/InventoryRequestModels.js +892 -0
  73. package/dist/runtime/entity/models/InventoryResponseModels.js +243 -0
  74. package/dist/runtime/entity/models/MasterPlayerModels.js +2573 -0
  75. package/dist/runtime/entity/models/MasterPlayerRequestModels.js +2228 -0
  76. package/dist/runtime/entity/models/MasterPlayerResponseModels.js +607 -0
  77. package/dist/runtime/entity/models/MultiplayerModels.js +404 -0
  78. package/dist/runtime/entity/models/MultiplayerRequestModels.js +268 -0
  79. package/dist/runtime/entity/models/MultiplayerResponseModels.js +75 -0
  80. package/dist/runtime/entity/models/StoreInventoryModels.js +797 -0
  81. package/dist/runtime/entity/models/StoreInventoryRequestModels.js +372 -0
  82. package/dist/runtime/entity/models/StoreInventoryResponseModels.js +103 -0
  83. package/dist/runtime/entity/request/CustomOperationRequest.js +24 -0
  84. package/dist/runtime/entity/response/CustomOperationResponse.js +29 -0
  85. package/dist/runtime/entity/response/GetAuthInfoResponse.js +2 -0
  86. package/dist/runtime/entity/response/UploadFileResponse.js +2 -0
  87. package/dist/runtime/helper/CodeHelper.js +63 -0
  88. package/dist/runtime/helper/ConverterService.js +275 -0
  89. package/dist/runtime/helper/EnumUtility.js +33 -0
  90. package/dist/runtime/helper/GNSupport.js +8 -0
  91. package/dist/runtime/helper/GNUtils.js +72 -0
  92. package/dist/runtime/helper/MessagePackConverterService.js +9 -0
  93. package/dist/runtime/logger/GNDebug.js +29 -0
  94. package/dist/runtime/networking/AuthenticateStatus.js +14 -0
  95. package/dist/runtime/networking/IPeer.js +1 -0
  96. package/dist/runtime/networking/NetworkingPeer.js +178 -0
  97. package/dist/runtime/networking/OperationPending.js +53 -0
  98. package/dist/runtime/networking/PeerBase.js +161 -0
  99. package/dist/runtime/networking/handler/IServerEventHandler.js +13 -0
  100. package/dist/runtime/networking/handler/OnCharacterPlayerFriendUpdateEventHandler.js +39 -0
  101. package/dist/runtime/networking/handler/OnCharacterPlayerGroupUpdateEventHandler.js +39 -0
  102. package/dist/runtime/networking/handler/OnGamePlayerFriendUpdateEventHandler.js +39 -0
  103. package/dist/runtime/networking/handler/OnGamePlayerGroupUpdateEventHandler.js +39 -0
  104. package/dist/runtime/networking/handler/OnGroupMemberUpdateEventHandler.js +35 -0
  105. package/dist/runtime/networking/handler/OnGroupMessageUpdateEventHandler.js +43 -0
  106. package/dist/runtime/networking/http/HttpPeer.js +122 -0
  107. package/dist/runtime/networking/http/NetworkingHttpPeerBase.js +6 -0
  108. package/dist/runtime/networking/http/NetworkingPeerAxiosRequest.js +164 -0
  109. package/dist/runtime/networking/socket/NetworkingPeerSocketIOClient.js +130 -0
  110. package/dist/runtime/networking/socket/NetworkingSocketPeerBase.js +165 -0
  111. package/dist/runtime/networking/socket/SocketPeer.js +115 -0
  112. package/dist/runtime/typescript/ServiceUpdate.js +12 -0
  113. package/package.json +1 -1
  114. package/dist/gearn.js.client.js +0 -46892
  115. package/dist/gearn.js.client.min.js +0 -2
  116. package/dist/gearn.js.client.min.js.LICENSE.txt +0 -14
@@ -0,0 +1,161 @@
1
+ import { GNHashtable } from "./../common/GNData";
2
+ import { ParameterCode } from "./../constant/parameterCode/ParameterCode";
3
+ import { ReturnCode } from "./../constant/ReturnCode";
4
+ import { OperationResponse } from "./../entity/OperationResponse";
5
+ import { GNNetwork } from "./../GNNetwork";
6
+ import { GNDebug } from "./../logger/GNDebug";
7
+ import { OperationPending } from "./OperationPending";
8
+ import store from "store";
9
+ export class PeerBase {
10
+ constructor() {
11
+ this.perMsgTimer = 0;
12
+ this.nextSendMsgTimer = 0;
13
+ this.checkTimeoutOperationPending = 0;
14
+ }
15
+ getSendRate() {
16
+ return (1000 / this.perMsgTimer);
17
+ }
18
+ setSendRate(sendRate) {
19
+ this.perMsgTimer = 1000 / sendRate / 1000;
20
+ }
21
+ initPeer() {
22
+ if (this.operationWaitingResponseDict == null)
23
+ this.operationWaitingResponseDict = new Map();
24
+ if (this.operationPendingQueue == null)
25
+ this.operationPendingQueue = [];
26
+ if (this.pingLst == null)
27
+ this.pingLst = [];
28
+ this.initSendRate();
29
+ this.initGNSocketObject();
30
+ }
31
+ initSendRate() {
32
+ let gnServerSettings = GNNetwork.getGNServerSettings();
33
+ if (gnServerSettings == null)
34
+ throw new Error("Null GN Server Settings, please find it now");
35
+ this.setSendRate(gnServerSettings.getSendRate());
36
+ }
37
+ enqueue(requestType, role, operationRequest, onOperationResponse, authToken, secretKey, customTags, gameId) {
38
+ if (!this.isUsing) {
39
+ GNDebug.logError("[GearN] Server Settings dont setup to use this to send operation request.");
40
+ return;
41
+ }
42
+ if (operationRequest.getRequestId() != -1)
43
+ operationRequest.setRequestId(++PeerBase.requestId);
44
+ let operationPending = new OperationPending(requestType, role, operationRequest, onOperationResponse, authToken, secretKey, customTags, gameId);
45
+ this.operationPendingQueue.push(operationPending);
46
+ this.onEnqueue(operationPending);
47
+ }
48
+ isUsing() {
49
+ return this.isUse;
50
+ }
51
+ service() {
52
+ if (!this.isUsing)
53
+ return;
54
+ let nowSecond = Date.now() / 1000;
55
+ if (this.checkTimeoutOperationPending < nowSecond) {
56
+ this.checkTimeoutOperationPending = nowSecond + 0.1;
57
+ if (this.operationWaitingResponseDict.size != 0) {
58
+ let gnHashtableLst = [];
59
+ this.operationWaitingResponseDict.forEach((operationPending, operationPendingKey) => {
60
+ if (operationPending.isTimeout()) {
61
+ let gnHashtable = new GNHashtable();
62
+ gnHashtable.add(ParameterCode.ReturnCode, ReturnCode.OperationTimeout);
63
+ gnHashtable.add(ParameterCode.Parameters, null);
64
+ gnHashtable.add(ParameterCode.ResponseId, operationPending.getOperationRequest().getRequestId());
65
+ gnHashtableLst.push(gnHashtable);
66
+ }
67
+ });
68
+ if (gnHashtableLst.length != 0) {
69
+ gnHashtableLst.forEach(gnHashtable => {
70
+ this.onResponseHandler(gnHashtable);
71
+ });
72
+ }
73
+ }
74
+ }
75
+ if (this.nextSendMsgTimer < nowSecond) {
76
+ if (this.operationPendingQueue.length != 0) {
77
+ this.nextSendMsgTimer = nowSecond + this.perMsgTimer;
78
+ let operationPending = this.operationPendingQueue.shift();
79
+ this.send(operationPending);
80
+ }
81
+ }
82
+ }
83
+ onResponseHandler(obj) {
84
+ let responseId = obj.getNumber(ParameterCode.ResponseId);
85
+ if (this.operationWaitingResponseDict.has(responseId)) {
86
+ let operationPending = this.operationWaitingResponseDict.get(responseId);
87
+ operationPending.onRecv();
88
+ this.operationWaitingResponseDict.delete(responseId);
89
+ let returnCode = obj.getNumber(ParameterCode.ReturnCode);
90
+ let parameters = obj.getGNHashtable(ParameterCode.Parameters);
91
+ let debugMessage = obj.getString(ParameterCode.DebugMessage);
92
+ let invalidRequestParameterArray = obj.getGNArray(ParameterCode.InvalidRequestParameters);
93
+ let operationRequest = operationPending.getOperationRequest();
94
+ let operationResponse = new OperationResponse(operationRequest.getOperationCode(), operationRequest.getRequestId());
95
+ operationResponse.setReturnCode(returnCode);
96
+ operationResponse.setDebugMessage(debugMessage);
97
+ operationResponse.setParameters(parameters);
98
+ if (invalidRequestParameterArray != null) {
99
+ let invalidMembers = [];
100
+ for (let i = 0; i < invalidRequestParameterArray.count(); i++) {
101
+ let arrChild = invalidRequestParameterArray.getGNArray(i);
102
+ invalidMembers.push({
103
+ code: arrChild.getString(0),
104
+ invalidMemberType: arrChild.getNumber(1)
105
+ });
106
+ }
107
+ operationResponse.setInvalidMembers(invalidMembers);
108
+ }
109
+ if (!operationResponse.hasError()) {
110
+ this.addPing(operationPending.getExecuteTimerInMs());
111
+ if (parameters != null) {
112
+ if (parameters.containsKey(ParameterCode.AuthToken)) {
113
+ let authToken = parameters.getString(ParameterCode.AuthToken);
114
+ GNNetwork.getAuthenticateStatus().setAuthToken(authToken);
115
+ store.set(GNNetwork.AUTH_TOKEN_KEY, authToken);
116
+ }
117
+ if (parameters.containsKey(ParameterCode.UserId)) {
118
+ let userId = parameters.getString(ParameterCode.UserId);
119
+ GNNetwork.getAuthenticateStatus().setUserId(userId);
120
+ store.set(GNNetwork.USER_ID_KEY, userId);
121
+ }
122
+ if (parameters.containsKey(ParameterCode.Ts)) {
123
+ GNNetwork.peer.setServerTimeMilliseconds(parameters.getNumber(ParameterCode.Ts, new Date().getUTCMilliseconds()));
124
+ }
125
+ }
126
+ }
127
+ GNDebug.log("[GN RECV] " + operationResponse.toString());
128
+ let callback = operationPending.getCallback();
129
+ if (callback != null)
130
+ callback(operationResponse);
131
+ }
132
+ else {
133
+ GNDebug.logError("[GearN] OnResponseHandler, unavailable request id " + obj);
134
+ }
135
+ }
136
+ send(operationPending) {
137
+ operationPending.onSend();
138
+ let operationRequest = operationPending.getOperationRequest();
139
+ if (operationRequest.getRequestId() != -1) {
140
+ if (operationPending.getCallback() != null) {
141
+ this.operationWaitingResponseDict.set(operationRequest.getRequestId(), operationPending);
142
+ }
143
+ }
144
+ }
145
+ addPing(value) {
146
+ if (this.pingLst.length > 10)
147
+ this.pingLst.shift();
148
+ this.pingLst.push(value / 2);
149
+ if (this.pingLst.length != 0) {
150
+ let total = 0;
151
+ for (let i = 0; i < this.pingLst.length; i++) {
152
+ total += this.pingLst[i];
153
+ }
154
+ let average = total / this.pingLst.length;
155
+ this.ping = (average * 1000);
156
+ }
157
+ else
158
+ this.ping = -1;
159
+ }
160
+ }
161
+ PeerBase.requestId = 0;
@@ -0,0 +1,13 @@
1
+ export var IServerEventHandler;
2
+ (function (IServerEventHandler) {
3
+ const implementations = [];
4
+ function getImplementations() {
5
+ return implementations;
6
+ }
7
+ IServerEventHandler.getImplementations = getImplementations;
8
+ function registerEvent(ctor) {
9
+ implementations.push(ctor);
10
+ return ctor;
11
+ }
12
+ IServerEventHandler.registerEvent = registerEvent;
13
+ })(IServerEventHandler || (IServerEventHandler = {}));
@@ -0,0 +1,39 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ var __metadata = (this && this.__metadata) || function (k, v) {
8
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
+ };
10
+ var OnCharacterPlayerFriendUpdateEventHandler_1;
11
+ import { EventCode } from "./../../constant/EventCode";
12
+ import { ParameterCode } from "./../../constant/parameterCode/ParameterCode";
13
+ import { GNArrayDataMember, StringDataMember } from "./../../entity/DataMember";
14
+ import { GenericModels } from "./../../entity/models/GenericModels";
15
+ import { ConverterService } from "./../../helper/ConverterService";
16
+ import { IServerEventHandler } from "./IServerEventHandler";
17
+ export class CharacterPlayerFriendUpdate {
18
+ }
19
+ __decorate([
20
+ StringDataMember({ code: ParameterCode.CharacterId }),
21
+ __metadata("design:type", String)
22
+ ], CharacterPlayerFriendUpdate.prototype, "characterId", void 0);
23
+ __decorate([
24
+ GNArrayDataMember({ code: ParameterCode.PlayerFriends, elementCls: GenericModels.FriendItem }),
25
+ __metadata("design:type", Array)
26
+ ], CharacterPlayerFriendUpdate.prototype, "playerFriends", void 0);
27
+ let OnCharacterPlayerFriendUpdateEventHandler = OnCharacterPlayerFriendUpdateEventHandler_1 = class OnCharacterPlayerFriendUpdateEventHandler {
28
+ getEventCode() {
29
+ return EventCode.OnCharacterPlayerFriendUpdate;
30
+ }
31
+ handle(operationEvent) {
32
+ if (OnCharacterPlayerFriendUpdateEventHandler_1.onUpdate != null)
33
+ OnCharacterPlayerFriendUpdateEventHandler_1.onUpdate(ConverterService.deserializeObject(operationEvent.getParameters(), CharacterPlayerFriendUpdate));
34
+ }
35
+ };
36
+ OnCharacterPlayerFriendUpdateEventHandler = OnCharacterPlayerFriendUpdateEventHandler_1 = __decorate([
37
+ IServerEventHandler.registerEvent
38
+ ], OnCharacterPlayerFriendUpdateEventHandler);
39
+ export { OnCharacterPlayerFriendUpdateEventHandler };
@@ -0,0 +1,39 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ var __metadata = (this && this.__metadata) || function (k, v) {
8
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
+ };
10
+ var OnCharacterPlayerGroupUpdateEventHandler_1;
11
+ import { EventCode } from "./../../constant/EventCode";
12
+ import { ParameterCode } from "./../../constant/parameterCode/ParameterCode";
13
+ import { GNArrayDataMember, StringDataMember } from "./../../entity/DataMember";
14
+ import { GenericModels } from "./../../entity/models/GenericModels";
15
+ import { ConverterService } from "./../../helper/ConverterService";
16
+ import { IServerEventHandler } from "./IServerEventHandler";
17
+ export class CharacterPlayerGroupUpdate {
18
+ }
19
+ __decorate([
20
+ StringDataMember({ code: ParameterCode.CharacterId }),
21
+ __metadata("design:type", String)
22
+ ], CharacterPlayerGroupUpdate.prototype, "characterId", void 0);
23
+ __decorate([
24
+ GNArrayDataMember({ code: ParameterCode.PlayerGroups, elementCls: GenericModels.GroupItem }),
25
+ __metadata("design:type", Array)
26
+ ], CharacterPlayerGroupUpdate.prototype, "playerGroups", void 0);
27
+ let OnCharacterPlayerGroupUpdateEventHandler = OnCharacterPlayerGroupUpdateEventHandler_1 = class OnCharacterPlayerGroupUpdateEventHandler {
28
+ getEventCode() {
29
+ return EventCode.OnCharacterPlayerGroupUpdate;
30
+ }
31
+ handle(operationEvent) {
32
+ if (OnCharacterPlayerGroupUpdateEventHandler_1.onUpdate != null)
33
+ OnCharacterPlayerGroupUpdateEventHandler_1.onUpdate(ConverterService.deserializeObject(operationEvent.getParameters(), CharacterPlayerGroupUpdate));
34
+ }
35
+ };
36
+ OnCharacterPlayerGroupUpdateEventHandler = OnCharacterPlayerGroupUpdateEventHandler_1 = __decorate([
37
+ IServerEventHandler.registerEvent
38
+ ], OnCharacterPlayerGroupUpdateEventHandler);
39
+ export { OnCharacterPlayerGroupUpdateEventHandler };
@@ -0,0 +1,39 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ var __metadata = (this && this.__metadata) || function (k, v) {
8
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
+ };
10
+ var OnGamePlayerFriendUpdateEventHandler_1;
11
+ import { EventCode } from "./../../constant/EventCode";
12
+ import { ParameterCode } from "./../../constant/parameterCode/ParameterCode";
13
+ import { GNArrayDataMember, StringDataMember } from "./../../entity/DataMember";
14
+ import { GenericModels } from "./../../entity/models/GenericModels";
15
+ import { ConverterService } from "./../../helper/ConverterService";
16
+ import { IServerEventHandler } from "./IServerEventHandler";
17
+ export class GamePlayerFriendUpdate {
18
+ }
19
+ __decorate([
20
+ StringDataMember({ code: ParameterCode.CharacterId, isOptional: true }),
21
+ __metadata("design:type", String)
22
+ ], GamePlayerFriendUpdate.prototype, "characterId", void 0);
23
+ __decorate([
24
+ GNArrayDataMember({ code: ParameterCode.PlayerFriends, elementCls: GenericModels.FriendItem }),
25
+ __metadata("design:type", Array)
26
+ ], GamePlayerFriendUpdate.prototype, "playerFriends", void 0);
27
+ let OnGamePlayerFriendUpdateEventHandler = OnGamePlayerFriendUpdateEventHandler_1 = class OnGamePlayerFriendUpdateEventHandler {
28
+ getEventCode() {
29
+ return EventCode.OnGamePlayerFriendUpdate;
30
+ }
31
+ handle(operationEvent) {
32
+ if (OnGamePlayerFriendUpdateEventHandler_1.onUpdate != null)
33
+ OnGamePlayerFriendUpdateEventHandler_1.onUpdate(ConverterService.deserializeObject(operationEvent.getParameters(), GamePlayerFriendUpdate));
34
+ }
35
+ };
36
+ OnGamePlayerFriendUpdateEventHandler = OnGamePlayerFriendUpdateEventHandler_1 = __decorate([
37
+ IServerEventHandler.registerEvent
38
+ ], OnGamePlayerFriendUpdateEventHandler);
39
+ export { OnGamePlayerFriendUpdateEventHandler };
@@ -0,0 +1,39 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ var __metadata = (this && this.__metadata) || function (k, v) {
8
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
+ };
10
+ var OnGamePlayerGroupUpdateEventHandler_1;
11
+ import { EventCode } from "./../../constant/EventCode";
12
+ import { ParameterCode } from "./../../constant/parameterCode/ParameterCode";
13
+ import { GNArrayDataMember, StringDataMember } from "./../../entity/DataMember";
14
+ import { GenericModels } from "./../../entity/models/GenericModels";
15
+ import { ConverterService } from "./../../helper/ConverterService";
16
+ import { IServerEventHandler } from "./IServerEventHandler";
17
+ export class GamePlayerGroupUpdate {
18
+ }
19
+ __decorate([
20
+ StringDataMember({ code: ParameterCode.CharacterId, isOptional: true }),
21
+ __metadata("design:type", String)
22
+ ], GamePlayerGroupUpdate.prototype, "characterId", void 0);
23
+ __decorate([
24
+ GNArrayDataMember({ code: ParameterCode.PlayerGroups, elementCls: GenericModels.GroupItem }),
25
+ __metadata("design:type", Array)
26
+ ], GamePlayerGroupUpdate.prototype, "playerGroups", void 0);
27
+ let OnGamePlayerGroupUpdateEventHandler = OnGamePlayerGroupUpdateEventHandler_1 = class OnGamePlayerGroupUpdateEventHandler {
28
+ getEventCode() {
29
+ return EventCode.OnGamePlayerGroupUpdate;
30
+ }
31
+ handle(operationEvent) {
32
+ if (OnGamePlayerGroupUpdateEventHandler_1.onUpdate != null)
33
+ OnGamePlayerGroupUpdateEventHandler_1.onUpdate(ConverterService.deserializeObject(operationEvent.getParameters(), GamePlayerGroupUpdate));
34
+ }
35
+ };
36
+ OnGamePlayerGroupUpdateEventHandler = OnGamePlayerGroupUpdateEventHandler_1 = __decorate([
37
+ IServerEventHandler.registerEvent
38
+ ], OnGamePlayerGroupUpdateEventHandler);
39
+ export { OnGamePlayerGroupUpdateEventHandler };
@@ -0,0 +1,35 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ var __metadata = (this && this.__metadata) || function (k, v) {
8
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
+ };
10
+ var OnGroupMemberUpdateEventHandler_1;
11
+ import { EventCode } from "./../../constant/EventCode";
12
+ import { ParameterCode } from "./../../constant/parameterCode/ParameterCode";
13
+ import { GNArrayDataMember } from "./../../entity/DataMember";
14
+ import { GenericModels } from "./../../entity/models/GenericModels";
15
+ import { ConverterService } from "./../../helper/ConverterService";
16
+ import { IServerEventHandler } from "./IServerEventHandler";
17
+ export class GroupMemberUpdate {
18
+ }
19
+ __decorate([
20
+ GNArrayDataMember({ code: ParameterCode.Members, elementCls: GenericModels.FriendItem }),
21
+ __metadata("design:type", Array)
22
+ ], GroupMemberUpdate.prototype, "members", void 0);
23
+ let OnGroupMemberUpdateEventHandler = OnGroupMemberUpdateEventHandler_1 = class OnGroupMemberUpdateEventHandler {
24
+ getEventCode() {
25
+ return EventCode.OnGroupMemberUpdate;
26
+ }
27
+ handle(operationEvent) {
28
+ if (OnGroupMemberUpdateEventHandler_1.onUpdate != null)
29
+ OnGroupMemberUpdateEventHandler_1.onUpdate(ConverterService.deserializeObject(operationEvent.getParameters(), GroupMemberUpdate));
30
+ }
31
+ };
32
+ OnGroupMemberUpdateEventHandler = OnGroupMemberUpdateEventHandler_1 = __decorate([
33
+ IServerEventHandler.registerEvent
34
+ ], OnGroupMemberUpdateEventHandler);
35
+ export { OnGroupMemberUpdateEventHandler };
@@ -0,0 +1,43 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ var __metadata = (this && this.__metadata) || function (k, v) {
8
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
+ };
10
+ var OnGroupMessageUpdateEventHandler_1;
11
+ import { EventCode } from "./../../constant/EventCode";
12
+ import { ParameterCode } from "./../../constant/parameterCode/ParameterCode";
13
+ import { GNArrayDataMember, StringDataMember } from "./../../entity/DataMember";
14
+ import { GroupModels } from "./../../entity/models/GroupModels";
15
+ import { ConverterService } from "./../../helper/ConverterService";
16
+ import { IServerEventHandler } from "./IServerEventHandler";
17
+ export class GroupMessageUpdate {
18
+ }
19
+ __decorate([
20
+ GNArrayDataMember({ code: ParameterCode.GroupMessages, elementCls: GroupModels.GroupMessageResponseData }),
21
+ __metadata("design:type", Array)
22
+ ], GroupMessageUpdate.prototype, "groupMessages", void 0);
23
+ __decorate([
24
+ StringDataMember({ code: ParameterCode.GroupId }),
25
+ __metadata("design:type", String)
26
+ ], GroupMessageUpdate.prototype, "groupId", void 0);
27
+ __decorate([
28
+ StringDataMember({ code: ParameterCode.CharacterId, isOptional: true }),
29
+ __metadata("design:type", String)
30
+ ], GroupMessageUpdate.prototype, "characterId", void 0);
31
+ let OnGroupMessageUpdateEventHandler = OnGroupMessageUpdateEventHandler_1 = class OnGroupMessageUpdateEventHandler {
32
+ getEventCode() {
33
+ return EventCode.OnGroupMessageUpdate;
34
+ }
35
+ handle(operationEvent) {
36
+ if (OnGroupMessageUpdateEventHandler_1.onUpdate != null)
37
+ OnGroupMessageUpdateEventHandler_1.onUpdate(ConverterService.deserializeObject(operationEvent.getParameters(), GroupMessageUpdate));
38
+ }
39
+ };
40
+ OnGroupMessageUpdateEventHandler = OnGroupMessageUpdateEventHandler_1 = __decorate([
41
+ IServerEventHandler.registerEvent
42
+ ], OnGroupMessageUpdateEventHandler);
43
+ export { OnGroupMessageUpdateEventHandler };
@@ -0,0 +1,122 @@
1
+ import { GNArray, GNHashtable } from "./../../common/GNData";
2
+ import { ReturnCode } from "./../../constant/ReturnCode";
3
+ import { GNNetwork } from "./../../GNNetwork";
4
+ import { GNDebug } from "./../../logger/GNDebug";
5
+ import { NetworkingPeer } from "./../NetworkingPeer";
6
+ import { PeerBase } from "./../PeerBase";
7
+ import { GNSupport } from "./../../helper/GNSupport";
8
+ import { NetworkingPeerAxiosRequest } from "./NetworkingPeerAxiosRequest";
9
+ import { MessagePackConverterService } from "./../../helper/MessagePackConverterService";
10
+ import { MessageType } from "./../../config/GNServerSettings";
11
+ import { ParameterCode } from "./../../constant/parameterCode/ParameterCode";
12
+ import { OperationRequest } from "./../../entity/OperationRequest";
13
+ import { CodeHelper } from "./../../helper/CodeHelper";
14
+ export class HttpAppResponse {
15
+ hasError() {
16
+ return this.error != null;
17
+ }
18
+ toString() {
19
+ let answer = " StatusCode: " + this.statusCode;
20
+ if (this.error)
21
+ answer += ", <color=red>Error: " + this.error + "</color>";
22
+ answer += ", Text: " + this.text;
23
+ return answer;
24
+ }
25
+ }
26
+ export var PostType;
27
+ (function (PostType) {
28
+ PostType[PostType["Json"] = 0] = "Json";
29
+ PostType[PostType["MsgPack"] = 1] = "MsgPack";
30
+ })(PostType || (PostType = {}));
31
+ export class HttpPeer extends PeerBase {
32
+ initGNSocketObject() {
33
+ let gnServerSettings = GNNetwork.getGNServerSettings();
34
+ if (gnServerSettings == null)
35
+ throw new Error("Where is GN Server Settings");
36
+ this.isUse = gnServerSettings.isUseHttp();
37
+ this.networkingHttpPeerBase = new NetworkingPeerAxiosRequest();
38
+ let httpUrl = gnServerSettings.getHttpUrl();
39
+ let userAgent = "GN-ts-" + GNNetwork.getPlatform() + "@" + GNNetwork.getClientSdkVersion();
40
+ this.networkingHttpPeerBase.init(httpUrl, userAgent);
41
+ }
42
+ send(operationPending) {
43
+ let gnServerSettings = GNNetwork.getGNServerSettings();
44
+ let operationRequest = operationPending.getOperationRequest();
45
+ if (operationRequest.getTimeout() == OperationRequest.defaultTimeOut)
46
+ operationRequest.setTimeout(gnServerSettings.getDefaultTimeoutInSeconds());
47
+ super.send(operationPending);
48
+ GNDebug.log("[GN Http SEND] " + operationRequest.toString());
49
+ let authToken = operationPending.getAuthToken();
50
+ let secretKey = operationPending.getSecretKey();
51
+ let gameId = operationPending.getGameId();
52
+ let customTags = operationPending.getCustomTags();
53
+ let postType = gnServerSettings.getMessageType() == MessageType.Json ? PostType.Json : PostType.MsgPack;
54
+ if (GNSupport.isBrowser() && postType == PostType.MsgPack) {
55
+ GNDebug.logWarning("GN JS client sdk does not support send msgpack request via HTTP, so we will send this request via HTTP json");
56
+ postType = PostType.Json;
57
+ }
58
+ let subUri = (postType == PostType.Json ? NetworkingPeer.API_JSON : NetworkingPeer.API_MSG_PACK) + "/" + CodeHelper.getRequestTypeName(operationPending.getRequestType()) + "/" + CodeHelper.getRequestRoleName(operationPending.getRole()) + "/" + operationRequest.getOperationCode();
59
+ let thiz = this;
60
+ this.networkingHttpPeerBase.postRequest(subUri, operationRequest.getParameters(), postType, (httpAppResponse) => {
61
+ thiz.onSendOperationRequestResponse(operationPending, httpAppResponse);
62
+ }, operationRequest.getTimeout(), authToken, secretKey, customTags, gameId);
63
+ }
64
+ onEnqueue(operationPending) {
65
+ GNDebug.log("[GN Http ENQUEUE] " + operationPending.getOperationRequest().toString());
66
+ }
67
+ onSendOperationRequestResponse(operationPending, httpAppResponse) {
68
+ let operationRequest = operationPending.getOperationRequest();
69
+ let obj = new GNHashtable();
70
+ if (!httpAppResponse.hasError()) {
71
+ if (httpAppResponse.statusCode == 200) {
72
+ let gnHashtable = null;
73
+ if (httpAppResponse.text) {
74
+ if (httpAppResponse.text[0] === HttpPeer.JSON_CHAR_KNOWN) {
75
+ let returnDatas = JSON.parse(httpAppResponse.text);
76
+ gnHashtable = GNHashtable.builder()
77
+ .addAll(returnDatas)
78
+ .build();
79
+ }
80
+ }
81
+ if (gnHashtable == null) {
82
+ if (httpAppResponse.data != null) {
83
+ let iDict = MessagePackConverterService.deserialize(httpAppResponse.data);
84
+ gnHashtable = GNHashtable.builder()
85
+ .addAll(iDict)
86
+ .build();
87
+ }
88
+ }
89
+ if (gnHashtable != null) {
90
+ obj.add(ParameterCode.ReturnCode, gnHashtable.getNumber(ParameterCode.ReturnCode));
91
+ obj.add(ParameterCode.Parameters, gnHashtable.getGNHashtable(ParameterCode.Parameters, new GNHashtable()));
92
+ obj.add(ParameterCode.InvalidRequestParameters, gnHashtable.getGNArray(ParameterCode.InvalidRequestParameters, new GNArray()));
93
+ obj.add(ParameterCode.DebugMessage, gnHashtable.getString(ParameterCode.DebugMessage));
94
+ obj.add(ParameterCode.ResponseId, operationRequest.getRequestId());
95
+ this.onResponseHandler(obj);
96
+ return;
97
+ }
98
+ }
99
+ }
100
+ obj.add(ParameterCode.ReturnCode, ReturnCode.UnknownError);
101
+ obj.add(ParameterCode.DebugMessage, httpAppResponse.error);
102
+ obj.add(ParameterCode.ResponseId, operationRequest.getRequestId());
103
+ this.onResponseHandler(obj);
104
+ }
105
+ getRequest(subUri, onHttpAppResponse, timeout = OperationRequest.defaultTimeOut, authToken = null, secretKey = null, gameId = null) {
106
+ this.networkingHttpPeerBase.getRequest(subUri, onHttpAppResponse, timeout, authToken, secretKey, gameId);
107
+ }
108
+ uploadFile(fileId, content, filename, mimetype, onHttpAppResponse, timeout = 6000) {
109
+ let authToken = GNNetwork.getAuthenticateStatus().getAuthToken();
110
+ if (!authToken) {
111
+ let httpAppResponse = new HttpAppResponse();
112
+ httpAppResponse.statusCode = 401;
113
+ httpAppResponse.error = "Auth token null";
114
+ if (onHttpAppResponse != null)
115
+ onHttpAppResponse(httpAppResponse);
116
+ return;
117
+ }
118
+ let subUri = NetworkingPeer.UPLOAD_FILE + "/" + fileId;
119
+ this.networkingHttpPeerBase.postRequestUpload(subUri, content, filename, mimetype, onHttpAppResponse, timeout);
120
+ }
121
+ }
122
+ HttpPeer.JSON_CHAR_KNOWN = "{";
@@ -0,0 +1,6 @@
1
+ export class NetworkingHttpPeerBase {
2
+ init(httpUrl, userAgent) {
3
+ this.httpUrl = httpUrl;
4
+ this.userAgent = userAgent;
5
+ }
6
+ }