@ludeo/cloud-common 1.2.41 → 1.2.42-nir
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/tsconfig.tsbuildinfo +1 -1
- package/dist/v4/events/cloud-session-allocated.d.ts +4 -0
- package/dist/v4/events/cloud-session-allocated.js +16 -0
- package/dist/v4/events/cloud-session-allocated.js.map +1 -1
- package/dist/v4/events/deallocate-game-request.d.ts +15 -0
- package/dist/v4/events/deallocate-game-request.js +58 -0
- package/dist/v4/events/deallocate-game-request.js.map +1 -0
- package/dist/v4/events/ludeo-allocated-response.d.ts +5 -0
- package/dist/v4/events/ludeo-allocated-response.js +21 -0
- package/dist/v4/events/ludeo-allocated-response.js.map +1 -1
- package/dist/v4/events/terminate-cloud-session-request.d.ts +5 -0
- package/dist/v4/events/terminate-cloud-session-request.js +20 -0
- package/dist/v4/events/terminate-cloud-session-request.js.map +1 -1
- package/package.json +1 -1
- package/src/v4/events/cloud-session-allocated.ts +14 -2
- package/src/v4/events/deallocate-game-request.ts +45 -0
- package/src/v4/events/ludeo-allocated-response.ts +16 -0
- package/src/v4/events/terminate-cloud-session-request.ts +16 -1
|
@@ -4,6 +4,10 @@ import { CloudProviderAllocationData } from "../types";
|
|
|
4
4
|
export declare class CloudSessionAllocatedPayload {
|
|
5
5
|
allocationData?: CloudProviderAllocationData;
|
|
6
6
|
region?: string;
|
|
7
|
+
gamePoolId: string;
|
|
8
|
+
gameResourceId: string;
|
|
9
|
+
ludeoPoolId: string;
|
|
10
|
+
ludeoResourceId: string;
|
|
7
11
|
}
|
|
8
12
|
export declare class CloudSessionAllocated extends LudeoEvent {
|
|
9
13
|
static readonly EVENT_NAME = "cloud-session-allocator.cloud-session-allocated";
|
|
@@ -27,6 +27,22 @@ __decorate([
|
|
|
27
27
|
(0, class_validator_1.IsOptional)(),
|
|
28
28
|
__metadata("design:type", String)
|
|
29
29
|
], CloudSessionAllocatedPayload.prototype, "region", void 0);
|
|
30
|
+
__decorate([
|
|
31
|
+
(0, class_validator_1.IsUUID)(),
|
|
32
|
+
__metadata("design:type", String)
|
|
33
|
+
], CloudSessionAllocatedPayload.prototype, "gamePoolId", void 0);
|
|
34
|
+
__decorate([
|
|
35
|
+
(0, class_validator_1.IsUUID)(),
|
|
36
|
+
__metadata("design:type", String)
|
|
37
|
+
], CloudSessionAllocatedPayload.prototype, "gameResourceId", void 0);
|
|
38
|
+
__decorate([
|
|
39
|
+
(0, class_validator_1.IsUUID)(),
|
|
40
|
+
__metadata("design:type", String)
|
|
41
|
+
], CloudSessionAllocatedPayload.prototype, "ludeoPoolId", void 0);
|
|
42
|
+
__decorate([
|
|
43
|
+
(0, class_validator_1.IsUUID)(),
|
|
44
|
+
__metadata("design:type", String)
|
|
45
|
+
], CloudSessionAllocatedPayload.prototype, "ludeoResourceId", void 0);
|
|
30
46
|
class CloudSessionAllocated extends ludeo_event_1.LudeoEvent {
|
|
31
47
|
constructor(payload, context) {
|
|
32
48
|
super(CloudSessionAllocated.EVENT_NAME);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cloud-session-allocated.js","sourceRoot":"","sources":["../../../src/v4/events/cloud-session-allocated.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6EAAwE;AACxE,oGAAqF;AACrF,yDAAqD;AACrD,oCAA0E;AAC1E,
|
|
1
|
+
{"version":3,"file":"cloud-session-allocated.js","sourceRoot":"","sources":["../../../src/v4/events/cloud-session-allocated.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6EAAwE;AACxE,oGAAqF;AACrF,yDAAqD;AACrD,oCAA0E;AAC1E,qDAA+D;AAE/D,MAAa,4BAA4B;CAmBxC;AAnBD,oEAmBC;AAjBC;IADC,IAAA,mDAAkB,EAAC,GAAG,EAAE,CAAC,yBAAiB,CAAC;;oEACC;AAI7C;IAFC,IAAA,0BAAQ,GAAE;IACV,IAAA,4BAAU,GAAE;;4DACG;AAGhB;IADC,IAAA,wBAAM,GAAE;;gEACU;AAGnB;IADC,IAAA,wBAAM,GAAE;;oEACc;AAGvB;IADC,IAAA,wBAAM,GAAE;;iEACW;AAGpB;IADC,IAAA,wBAAM,GAAE;;qEACe;AAG1B,MAAa,qBAAsB,SAAQ,wBAAU;IAInD,YACE,OAAqC,EACrC,OAA4B;QAE5B,KAAK,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC;QACxC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;;AAXH,sDAkBC;AAjBiB,gCAAU,GACxB,iDAAiD,CAAC;AAYpD;IADC,IAAA,mDAAkB,EAAC,GAAG,EAAE,CAAC,4BAA4B,CAAC;8BAC9C,4BAA4B;sDAAC;AAGtC;IADC,IAAA,mDAAkB,EAAC,GAAG,EAAE,CAAC,2CAAmB,CAAC;8BACrC,2CAAmB;sDAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { LudeoEvent } from "@ludeo/cloud-common";
|
|
2
|
+
import { CloudResourceContext, CloudSessionContext } from "../contexts";
|
|
3
|
+
export declare class DeallocateGameRequestPayload {
|
|
4
|
+
gamePoolId: string;
|
|
5
|
+
gameResourceId: string;
|
|
6
|
+
ludeoPoolId: string;
|
|
7
|
+
ludeoResourceId: string;
|
|
8
|
+
shouldTerminate: boolean;
|
|
9
|
+
}
|
|
10
|
+
export declare class DeallocateGameRequest extends LudeoEvent {
|
|
11
|
+
static readonly EVENT_NAME = "cloud-pools.deallocate-game-request";
|
|
12
|
+
constructor(payload: DeallocateGameRequestPayload, context: CloudSessionContext | CloudResourceContext);
|
|
13
|
+
payload: DeallocateGameRequestPayload;
|
|
14
|
+
context: CloudSessionContext | CloudResourceContext;
|
|
15
|
+
}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
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;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.DeallocateGameRequest = exports.DeallocateGameRequestPayload = void 0;
|
|
13
|
+
const cloud_common_1 = require("@ludeo/cloud-common");
|
|
14
|
+
const class_validator_1 = require("class-validator");
|
|
15
|
+
const contexts_1 = require("../contexts");
|
|
16
|
+
const decorators_1 = require("../../decorators");
|
|
17
|
+
class DeallocateGameRequestPayload {
|
|
18
|
+
}
|
|
19
|
+
exports.DeallocateGameRequestPayload = DeallocateGameRequestPayload;
|
|
20
|
+
__decorate([
|
|
21
|
+
(0, class_validator_1.IsUUID)(),
|
|
22
|
+
__metadata("design:type", String)
|
|
23
|
+
], DeallocateGameRequestPayload.prototype, "gamePoolId", void 0);
|
|
24
|
+
__decorate([
|
|
25
|
+
(0, class_validator_1.IsUUID)(),
|
|
26
|
+
__metadata("design:type", String)
|
|
27
|
+
], DeallocateGameRequestPayload.prototype, "gameResourceId", void 0);
|
|
28
|
+
__decorate([
|
|
29
|
+
(0, class_validator_1.IsUUID)(),
|
|
30
|
+
__metadata("design:type", String)
|
|
31
|
+
], DeallocateGameRequestPayload.prototype, "ludeoPoolId", void 0);
|
|
32
|
+
__decorate([
|
|
33
|
+
(0, class_validator_1.IsUUID)(),
|
|
34
|
+
__metadata("design:type", String)
|
|
35
|
+
], DeallocateGameRequestPayload.prototype, "ludeoResourceId", void 0);
|
|
36
|
+
__decorate([
|
|
37
|
+
(0, class_validator_1.IsBoolean)(),
|
|
38
|
+
(0, class_validator_1.IsOptional)(),
|
|
39
|
+
__metadata("design:type", Boolean)
|
|
40
|
+
], DeallocateGameRequestPayload.prototype, "shouldTerminate", void 0);
|
|
41
|
+
class DeallocateGameRequest extends cloud_common_1.LudeoEvent {
|
|
42
|
+
constructor(payload, context) {
|
|
43
|
+
super(DeallocateGameRequest.EVENT_NAME);
|
|
44
|
+
this.payload = payload;
|
|
45
|
+
this.context = context;
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
exports.DeallocateGameRequest = DeallocateGameRequest;
|
|
49
|
+
DeallocateGameRequest.EVENT_NAME = "cloud-pools.deallocate-game-request";
|
|
50
|
+
__decorate([
|
|
51
|
+
(0, decorators_1.ValidateNestedType)(() => DeallocateGameRequestPayload),
|
|
52
|
+
__metadata("design:type", DeallocateGameRequestPayload)
|
|
53
|
+
], DeallocateGameRequest.prototype, "payload", void 0);
|
|
54
|
+
__decorate([
|
|
55
|
+
(0, decorators_1.ValidateNestedType)(contexts_1.getCloudContextType),
|
|
56
|
+
__metadata("design:type", Object)
|
|
57
|
+
], DeallocateGameRequest.prototype, "context", void 0);
|
|
58
|
+
//# sourceMappingURL=deallocate-game-request.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"deallocate-game-request.js","sourceRoot":"","sources":["../../../src/v4/events/deallocate-game-request.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,sDAAiD;AACjD,qDAAgE;AAChE,0CAIqB;AACrB,iDAAsD;AAEtD,MAAa,4BAA4B;CAgBxC;AAhBD,oEAgBC;AAdC;IADC,IAAA,wBAAM,GAAE;;gEACU;AAGnB;IADC,IAAA,wBAAM,GAAE;;oEACc;AAGvB;IADC,IAAA,wBAAM,GAAE;;iEACW;AAGpB;IADC,IAAA,wBAAM,GAAE;;qEACe;AAIxB;IAFC,IAAA,2BAAS,GAAE;IACX,IAAA,4BAAU,GAAE;;qEACY;AAG3B,MAAa,qBAAsB,SAAQ,yBAAU;IAGnD,YACE,OAAqC,EACrC,OAAmD;QAEnD,KAAK,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC;QACxC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;;AAVH,sDAiBC;AAhBiB,gCAAU,GAAG,qCAAqC,CAAC;AAYnE;IADC,IAAA,+BAAkB,EAAC,GAAG,EAAE,CAAC,4BAA4B,CAAC;8BAC9C,4BAA4B;sDAAC;AAGtC;IADC,IAAA,+BAAkB,EAAC,8BAAmB,CAAC;;sDACY"}
|
|
@@ -3,6 +3,11 @@ import { CloudSessionContext } from "../contexts";
|
|
|
3
3
|
import { CloudProviderAllocationData } from "../types";
|
|
4
4
|
export declare class LudeoAllocatedResponsePayload {
|
|
5
5
|
allocationData: CloudProviderAllocationData;
|
|
6
|
+
cloudSessionId: string;
|
|
7
|
+
gamePoolId: string;
|
|
8
|
+
gameResourceId: string;
|
|
9
|
+
ludeoPoolId: string;
|
|
10
|
+
ludeoResourceId: string;
|
|
6
11
|
}
|
|
7
12
|
export declare class LudeoAllocatedResponse extends LudeoEvent {
|
|
8
13
|
static readonly EVENT_NAME = "cloud-pools.ludeo-allocated-response";
|
|
@@ -14,6 +14,7 @@ const ludeo_event_1 = require("../../infra/ludeo-event");
|
|
|
14
14
|
const validate_nested_type_decorator_1 = require("../../decorators/validate-nested-type.decorator");
|
|
15
15
|
const contexts_1 = require("../contexts");
|
|
16
16
|
const types_1 = require("../types");
|
|
17
|
+
const class_validator_1 = require("class-validator");
|
|
17
18
|
class LudeoAllocatedResponsePayload {
|
|
18
19
|
}
|
|
19
20
|
exports.LudeoAllocatedResponsePayload = LudeoAllocatedResponsePayload;
|
|
@@ -21,6 +22,26 @@ __decorate([
|
|
|
21
22
|
(0, validate_nested_type_decorator_1.ValidateNestedType)(() => types_1.AwsAllocationData),
|
|
22
23
|
__metadata("design:type", Object)
|
|
23
24
|
], LudeoAllocatedResponsePayload.prototype, "allocationData", void 0);
|
|
25
|
+
__decorate([
|
|
26
|
+
(0, class_validator_1.IsUUID)(),
|
|
27
|
+
__metadata("design:type", String)
|
|
28
|
+
], LudeoAllocatedResponsePayload.prototype, "cloudSessionId", void 0);
|
|
29
|
+
__decorate([
|
|
30
|
+
(0, class_validator_1.IsUUID)(),
|
|
31
|
+
__metadata("design:type", String)
|
|
32
|
+
], LudeoAllocatedResponsePayload.prototype, "gamePoolId", void 0);
|
|
33
|
+
__decorate([
|
|
34
|
+
(0, class_validator_1.IsUUID)(),
|
|
35
|
+
__metadata("design:type", String)
|
|
36
|
+
], LudeoAllocatedResponsePayload.prototype, "gameResourceId", void 0);
|
|
37
|
+
__decorate([
|
|
38
|
+
(0, class_validator_1.IsUUID)(),
|
|
39
|
+
__metadata("design:type", String)
|
|
40
|
+
], LudeoAllocatedResponsePayload.prototype, "ludeoPoolId", void 0);
|
|
41
|
+
__decorate([
|
|
42
|
+
(0, class_validator_1.IsUUID)(),
|
|
43
|
+
__metadata("design:type", String)
|
|
44
|
+
], LudeoAllocatedResponsePayload.prototype, "ludeoResourceId", void 0);
|
|
24
45
|
class LudeoAllocatedResponse extends ludeo_event_1.LudeoEvent {
|
|
25
46
|
constructor(payload, context) {
|
|
26
47
|
super(LudeoAllocatedResponse.EVENT_NAME);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ludeo-allocated-response.js","sourceRoot":"","sources":["../../../src/v4/events/ludeo-allocated-response.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,yDAAqD;AACrD,oGAAqF;AACrF,0CAAkD;AAClD,oCAA0E;
|
|
1
|
+
{"version":3,"file":"ludeo-allocated-response.js","sourceRoot":"","sources":["../../../src/v4/events/ludeo-allocated-response.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,yDAAqD;AACrD,oGAAqF;AACrF,0CAAkD;AAClD,oCAA0E;AAC1E,qDAAyC;AAEzC,MAAa,6BAA6B;CAkBzC;AAlBD,sEAkBC;AAhBC;IADC,IAAA,mDAAkB,EAAC,GAAG,EAAE,CAAC,yBAAiB,CAAC;;qEACA;AAG5C;IADC,IAAA,wBAAM,GAAE;;qEACc;AAGvB;IADC,IAAA,wBAAM,GAAE;;iEACU;AAGnB;IADC,IAAA,wBAAM,GAAE;;qEACc;AAGvB;IADC,IAAA,wBAAM,GAAE;;kEACW;AAGpB;IADC,IAAA,wBAAM,GAAE;;sEACe;AAG1B,MAAa,sBAAuB,SAAQ,wBAAU;IAGpD,YACE,OAAsC,EACtC,OAA4B;QAE5B,KAAK,CAAC,sBAAsB,CAAC,UAAU,CAAC,CAAC;QACzC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;;AAVH,wDAiBC;AAhBiB,iCAAU,GAAG,sCAAsC,CAAC;AAYpE;IADC,IAAA,mDAAkB,EAAC,GAAG,EAAE,CAAC,8BAAmB,CAAC;8BACrC,8BAAmB;uDAAC;AAG7B;IADC,IAAA,mDAAkB,EAAC,GAAG,EAAE,CAAC,6BAA6B,CAAC;8BAC/C,6BAA6B;uDAAC"}
|
|
@@ -3,6 +3,11 @@ import { LudeoEvent } from "../../infra/ludeo-event";
|
|
|
3
3
|
export declare class TerminateCloudSessionRequestPayload {
|
|
4
4
|
status?: string;
|
|
5
5
|
reason?: string;
|
|
6
|
+
cloudSessionId: string;
|
|
7
|
+
gamePoolId: string;
|
|
8
|
+
gameResourceId: string;
|
|
9
|
+
ludeoPoolId: string;
|
|
10
|
+
ludeoResourceId: string;
|
|
6
11
|
}
|
|
7
12
|
export declare class TerminateCloudSessionRequest extends LudeoEvent {
|
|
8
13
|
static readonly EVENT_NAME = "cloud-sessions.terminate-cloud-session-request";
|
|
@@ -27,6 +27,26 @@ __decorate([
|
|
|
27
27
|
(0, class_validator_1.IsString)(),
|
|
28
28
|
__metadata("design:type", String)
|
|
29
29
|
], TerminateCloudSessionRequestPayload.prototype, "reason", void 0);
|
|
30
|
+
__decorate([
|
|
31
|
+
(0, class_validator_1.IsUUID)(),
|
|
32
|
+
__metadata("design:type", String)
|
|
33
|
+
], TerminateCloudSessionRequestPayload.prototype, "cloudSessionId", void 0);
|
|
34
|
+
__decorate([
|
|
35
|
+
(0, class_validator_1.IsUUID)(),
|
|
36
|
+
__metadata("design:type", String)
|
|
37
|
+
], TerminateCloudSessionRequestPayload.prototype, "gamePoolId", void 0);
|
|
38
|
+
__decorate([
|
|
39
|
+
(0, class_validator_1.IsUUID)(),
|
|
40
|
+
__metadata("design:type", String)
|
|
41
|
+
], TerminateCloudSessionRequestPayload.prototype, "gameResourceId", void 0);
|
|
42
|
+
__decorate([
|
|
43
|
+
(0, class_validator_1.IsUUID)(),
|
|
44
|
+
__metadata("design:type", String)
|
|
45
|
+
], TerminateCloudSessionRequestPayload.prototype, "ludeoPoolId", void 0);
|
|
46
|
+
__decorate([
|
|
47
|
+
(0, class_validator_1.IsUUID)(),
|
|
48
|
+
__metadata("design:type", String)
|
|
49
|
+
], TerminateCloudSessionRequestPayload.prototype, "ludeoResourceId", void 0);
|
|
30
50
|
class TerminateCloudSessionRequest extends ludeo_event_1.LudeoEvent {
|
|
31
51
|
constructor(payload, context) {
|
|
32
52
|
super(TerminateCloudSessionRequest.EVENT_NAME);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"terminate-cloud-session-request.js","sourceRoot":"","sources":["../../../src/v4/events/terminate-cloud-session-request.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6EAAwE;AACxE,oGAAqF;AACrF,yDAAqD;AACrD,
|
|
1
|
+
{"version":3,"file":"terminate-cloud-session-request.js","sourceRoot":"","sources":["../../../src/v4/events/terminate-cloud-session-request.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6EAAwE;AACxE,oGAAqF;AACrF,yDAAqD;AACrD,qDAA+D;AAE/D,MAAa,mCAAmC;CAuB/C;AAvBD,kFAuBC;AApBC;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;mEACK;AAIhB;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;mEACK;AAGhB;IADC,IAAA,wBAAM,GAAE;;2EACc;AAGvB;IADC,IAAA,wBAAM,GAAE;;uEACU;AAGnB;IADC,IAAA,wBAAM,GAAE;;2EACc;AAGvB;IADC,IAAA,wBAAM,GAAE;;wEACW;AAGpB;IADC,IAAA,wBAAM,GAAE;;4EACe;AAG1B,MAAa,4BAA6B,SAAQ,wBAAU;IAG1D,YACE,OAA4C,EAC5C,OAA4B;QAE5B,KAAK,CAAC,4BAA4B,CAAC,UAAU,CAAC,CAAC;QAC/C,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;;AAVH,oEAiBC;AAhBiB,uCAAU,GAAG,gDAAgD,CAAC;AAY9E;IADC,IAAA,mDAAkB,EAAC,GAAG,EAAE,CAAC,2CAAmB,CAAC;8BACrC,2CAAmB;6DAAC;AAG7B;IADC,IAAA,mDAAkB,EAAC,GAAG,EAAE,CAAC,mCAAmC,CAAC;8BACrD,mCAAmC;6DAAC"}
|
package/package.json
CHANGED
|
@@ -2,7 +2,7 @@ import { CloudSessionContext } from "../contexts/cloud-session-context";
|
|
|
2
2
|
import { ValidateNestedType } from "../../decorators/validate-nested-type.decorator";
|
|
3
3
|
import { LudeoEvent } from "../../infra/ludeo-event";
|
|
4
4
|
import { AwsAllocationData, CloudProviderAllocationData } from "../types";
|
|
5
|
-
import { IsOptional, IsString } from "class-validator";
|
|
5
|
+
import { IsOptional, IsString, IsUUID } from "class-validator";
|
|
6
6
|
|
|
7
7
|
export class CloudSessionAllocatedPayload {
|
|
8
8
|
@ValidateNestedType(() => AwsAllocationData)
|
|
@@ -11,6 +11,18 @@ export class CloudSessionAllocatedPayload {
|
|
|
11
11
|
@IsString()
|
|
12
12
|
@IsOptional()
|
|
13
13
|
region?: string;
|
|
14
|
+
|
|
15
|
+
@IsUUID()
|
|
16
|
+
gamePoolId: string;
|
|
17
|
+
|
|
18
|
+
@IsUUID()
|
|
19
|
+
gameResourceId: string;
|
|
20
|
+
|
|
21
|
+
@IsUUID()
|
|
22
|
+
ludeoPoolId: string;
|
|
23
|
+
|
|
24
|
+
@IsUUID()
|
|
25
|
+
ludeoResourceId: string;
|
|
14
26
|
}
|
|
15
27
|
|
|
16
28
|
export class CloudSessionAllocated extends LudeoEvent {
|
|
@@ -19,7 +31,7 @@ export class CloudSessionAllocated extends LudeoEvent {
|
|
|
19
31
|
|
|
20
32
|
constructor(
|
|
21
33
|
payload: CloudSessionAllocatedPayload,
|
|
22
|
-
context: CloudSessionContext
|
|
34
|
+
context: CloudSessionContext
|
|
23
35
|
) {
|
|
24
36
|
super(CloudSessionAllocated.EVENT_NAME);
|
|
25
37
|
this.payload = payload;
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { LudeoEvent } from "@ludeo/cloud-common";
|
|
2
|
+
import { IsBoolean, IsOptional, IsUUID } from "class-validator";
|
|
3
|
+
import {
|
|
4
|
+
CloudResourceContext,
|
|
5
|
+
CloudSessionContext,
|
|
6
|
+
getCloudContextType,
|
|
7
|
+
} from "../contexts";
|
|
8
|
+
import { ValidateNestedType } from "../../decorators";
|
|
9
|
+
|
|
10
|
+
export class DeallocateGameRequestPayload {
|
|
11
|
+
@IsUUID()
|
|
12
|
+
gamePoolId: string;
|
|
13
|
+
|
|
14
|
+
@IsUUID()
|
|
15
|
+
gameResourceId: string;
|
|
16
|
+
|
|
17
|
+
@IsUUID()
|
|
18
|
+
ludeoPoolId: string;
|
|
19
|
+
|
|
20
|
+
@IsUUID()
|
|
21
|
+
ludeoResourceId: string;
|
|
22
|
+
|
|
23
|
+
@IsBoolean()
|
|
24
|
+
@IsOptional()
|
|
25
|
+
shouldTerminate: boolean;
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
export class DeallocateGameRequest extends LudeoEvent {
|
|
29
|
+
static readonly EVENT_NAME = "cloud-pools.deallocate-game-request";
|
|
30
|
+
|
|
31
|
+
constructor(
|
|
32
|
+
payload: DeallocateGameRequestPayload,
|
|
33
|
+
context: CloudSessionContext | CloudResourceContext
|
|
34
|
+
) {
|
|
35
|
+
super(DeallocateGameRequest.EVENT_NAME);
|
|
36
|
+
this.payload = payload;
|
|
37
|
+
this.context = context;
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
@ValidateNestedType(() => DeallocateGameRequestPayload)
|
|
41
|
+
payload: DeallocateGameRequestPayload;
|
|
42
|
+
|
|
43
|
+
@ValidateNestedType(getCloudContextType)
|
|
44
|
+
context: CloudSessionContext | CloudResourceContext;
|
|
45
|
+
}
|
|
@@ -2,10 +2,26 @@ import { LudeoEvent } from "../../infra/ludeo-event";
|
|
|
2
2
|
import { ValidateNestedType } from "../../decorators/validate-nested-type.decorator";
|
|
3
3
|
import { CloudSessionContext } from "../contexts";
|
|
4
4
|
import { AwsAllocationData, CloudProviderAllocationData } from "../types";
|
|
5
|
+
import { IsUUID } from "class-validator";
|
|
5
6
|
|
|
6
7
|
export class LudeoAllocatedResponsePayload {
|
|
7
8
|
@ValidateNestedType(() => AwsAllocationData)
|
|
8
9
|
allocationData: CloudProviderAllocationData;
|
|
10
|
+
|
|
11
|
+
@IsUUID()
|
|
12
|
+
cloudSessionId: string;
|
|
13
|
+
|
|
14
|
+
@IsUUID()
|
|
15
|
+
gamePoolId: string;
|
|
16
|
+
|
|
17
|
+
@IsUUID()
|
|
18
|
+
gameResourceId: string;
|
|
19
|
+
|
|
20
|
+
@IsUUID()
|
|
21
|
+
ludeoPoolId: string;
|
|
22
|
+
|
|
23
|
+
@IsUUID()
|
|
24
|
+
ludeoResourceId: string;
|
|
9
25
|
}
|
|
10
26
|
|
|
11
27
|
export class LudeoAllocatedResponse extends LudeoEvent {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { CloudSessionContext } from "../contexts/cloud-session-context";
|
|
2
2
|
import { ValidateNestedType } from "../../decorators/validate-nested-type.decorator";
|
|
3
3
|
import { LudeoEvent } from "../../infra/ludeo-event";
|
|
4
|
-
import { IsOptional, IsString } from "class-validator";
|
|
4
|
+
import { IsOptional, IsString, IsUUID } from "class-validator";
|
|
5
5
|
|
|
6
6
|
export class TerminateCloudSessionRequestPayload {
|
|
7
7
|
@IsOptional()
|
|
@@ -11,6 +11,21 @@ export class TerminateCloudSessionRequestPayload {
|
|
|
11
11
|
@IsOptional()
|
|
12
12
|
@IsString()
|
|
13
13
|
reason?: string;
|
|
14
|
+
|
|
15
|
+
@IsUUID()
|
|
16
|
+
cloudSessionId: string;
|
|
17
|
+
|
|
18
|
+
@IsUUID()
|
|
19
|
+
gamePoolId: string;
|
|
20
|
+
|
|
21
|
+
@IsUUID()
|
|
22
|
+
gameResourceId: string;
|
|
23
|
+
|
|
24
|
+
@IsUUID()
|
|
25
|
+
ludeoPoolId: string;
|
|
26
|
+
|
|
27
|
+
@IsUUID()
|
|
28
|
+
ludeoResourceId: string;
|
|
14
29
|
}
|
|
15
30
|
|
|
16
31
|
export class TerminateCloudSessionRequest extends LudeoEvent {
|