@ludeo/cloud-common 1.2.245 → 1.2.247

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.
@@ -0,0 +1,20 @@
1
+ import { LudeoEvent } from '../../../infra';
2
+ import { CloudSessionContext } from '../../contexts';
3
+ import { CloudSessionStatus } from '../../../v4/types/cloud/session';
4
+ export declare class CloudSessionPreemptedPayload {
5
+ cloudSessionId: string;
6
+ userId: string;
7
+ status: CloudSessionStatus;
8
+ machineResourceId: string;
9
+ machinePoolId: string;
10
+ machineClass: string;
11
+ gameResourceId: string;
12
+ ludeoResourceId: string;
13
+ gracePeriodMs: number;
14
+ }
15
+ export declare class CloudSessionPreempted extends LudeoEvent {
16
+ static readonly EVENT_NAME = "cloud-sessions.cloud-session-preempted";
17
+ constructor(payload: CloudSessionPreemptedPayload, context: CloudSessionContext);
18
+ payload: CloudSessionPreemptedPayload;
19
+ context: CloudSessionContext;
20
+ }
@@ -0,0 +1,74 @@
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.CloudSessionPreempted = exports.CloudSessionPreemptedPayload = void 0;
13
+ const infra_1 = require("../../../infra");
14
+ const decorators_1 = require("../../../decorators");
15
+ const class_validator_1 = require("class-validator");
16
+ const contexts_1 = require("../../contexts");
17
+ const session_1 = require("../../../v4/types/cloud/session");
18
+ class CloudSessionPreemptedPayload {
19
+ }
20
+ exports.CloudSessionPreemptedPayload = CloudSessionPreemptedPayload;
21
+ __decorate([
22
+ (0, class_validator_1.IsUUID)(),
23
+ __metadata("design:type", String)
24
+ ], CloudSessionPreemptedPayload.prototype, "cloudSessionId", void 0);
25
+ __decorate([
26
+ (0, class_validator_1.IsUUID)(),
27
+ __metadata("design:type", String)
28
+ ], CloudSessionPreemptedPayload.prototype, "userId", void 0);
29
+ __decorate([
30
+ (0, class_validator_1.IsEnum)(session_1.CloudSessionStatus),
31
+ __metadata("design:type", String)
32
+ ], CloudSessionPreemptedPayload.prototype, "status", void 0);
33
+ __decorate([
34
+ (0, class_validator_1.IsUUID)(),
35
+ __metadata("design:type", String)
36
+ ], CloudSessionPreemptedPayload.prototype, "machineResourceId", void 0);
37
+ __decorate([
38
+ (0, class_validator_1.IsUUID)(),
39
+ __metadata("design:type", String)
40
+ ], CloudSessionPreemptedPayload.prototype, "machinePoolId", void 0);
41
+ __decorate([
42
+ (0, class_validator_1.IsString)(),
43
+ __metadata("design:type", String)
44
+ ], CloudSessionPreemptedPayload.prototype, "machineClass", void 0);
45
+ __decorate([
46
+ (0, class_validator_1.IsUUID)(),
47
+ __metadata("design:type", String)
48
+ ], CloudSessionPreemptedPayload.prototype, "gameResourceId", void 0);
49
+ __decorate([
50
+ (0, class_validator_1.IsUUID)(),
51
+ __metadata("design:type", String)
52
+ ], CloudSessionPreemptedPayload.prototype, "ludeoResourceId", void 0);
53
+ __decorate([
54
+ (0, class_validator_1.IsNumber)(),
55
+ __metadata("design:type", Number)
56
+ ], CloudSessionPreemptedPayload.prototype, "gracePeriodMs", void 0);
57
+ class CloudSessionPreempted extends infra_1.LudeoEvent {
58
+ constructor(payload, context) {
59
+ super(CloudSessionPreempted.EVENT_NAME);
60
+ this.payload = payload;
61
+ this.context = context;
62
+ }
63
+ }
64
+ exports.CloudSessionPreempted = CloudSessionPreempted;
65
+ CloudSessionPreempted.EVENT_NAME = 'cloud-sessions.cloud-session-preempted';
66
+ __decorate([
67
+ (0, decorators_1.ValidateNestedType)(() => CloudSessionPreemptedPayload),
68
+ __metadata("design:type", CloudSessionPreemptedPayload)
69
+ ], CloudSessionPreempted.prototype, "payload", void 0);
70
+ __decorate([
71
+ (0, decorators_1.ValidateNestedType)(() => contexts_1.CloudSessionContext),
72
+ __metadata("design:type", contexts_1.CloudSessionContext)
73
+ ], CloudSessionPreempted.prototype, "context", void 0);
74
+ //# sourceMappingURL=cloud-session-preempted.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cloud-session-preempted.js","sourceRoot":"","sources":["../../../../src/v4/events/cloud-sessions/cloud-session-preempted.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,0CAA4C;AAC5C,oDAAyD;AACzD,qDAAqE;AACrE,6CAAqD;AACrD,6DAAqE;AAErE,MAAa,4BAA4B;CA2BxC;AA3BD,oEA2BC;AAzBC;IADC,IAAA,wBAAM,GAAE;;oEACc;AAGvB;IADC,IAAA,wBAAM,GAAE;;4DACM;AAGf;IADC,IAAA,wBAAM,EAAC,4BAAkB,CAAC;;4DACA;AAG3B;IADC,IAAA,wBAAM,GAAE;;uEACiB;AAG1B;IADC,IAAA,wBAAM,GAAE;;mEACa;AAGtB;IADC,IAAA,0BAAQ,GAAE;;kEACU;AAGrB;IADC,IAAA,wBAAM,GAAE;;oEACc;AAGvB;IADC,IAAA,wBAAM,GAAE;;qEACe;AAGxB;IADC,IAAA,0BAAQ,GAAE;;mEACW;AAGxB,MAAa,qBAAsB,SAAQ,kBAAU;IAGnD,YAAY,OAAqC,EAAE,OAA4B;QAC7E,KAAK,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC;QACxC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;;AAPH,sDAcC;AAbiB,gCAAU,GAAG,wCAAwC,CAAC;AAStE;IADC,IAAA,+BAAkB,EAAC,GAAG,EAAE,CAAC,4BAA4B,CAAC;8BAC9C,4BAA4B;sDAAC;AAGtC;IADC,IAAA,+BAAkB,EAAC,GAAG,EAAE,CAAC,8BAAmB,CAAC;8BACrC,8BAAmB;sDAAC"}
@@ -0,0 +1 @@
1
+ export * from './cloud-session-preempted';
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./cloud-session-preempted"), exports);
18
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/v4/events/cloud-sessions/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,4DAA0C"}
@@ -185,3 +185,4 @@ export * as LudeocastAgent from "./ludeocast-agent";
185
185
  export * as SonicServer from "./sonic-server";
186
186
  export * as CloudSessionAllocator from "./cloud-session-allocator";
187
187
  export * as CloudResourceMonitor from "./cloud-resource-monitor";
188
+ export * as CloudSessions from "./cloud-sessions";
@@ -14,7 +14,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.CloudResourceMonitor = exports.CloudSessionAllocator = exports.SonicServer = exports.LudeocastAgent = exports.Provisioner = exports.Forecast = exports.CloudBuilds = exports.CloudResources = exports.SiteController = void 0;
17
+ exports.CloudSessions = exports.CloudResourceMonitor = exports.CloudSessionAllocator = exports.SonicServer = exports.LudeocastAgent = exports.Provisioner = exports.Forecast = exports.CloudBuilds = exports.CloudResources = exports.SiteController = void 0;
18
18
  __exportStar(require("./activation"), exports);
19
19
  __exportStar(require("./allocate-game-request"), exports);
20
20
  __exportStar(require("./allocate-game-resource-request"), exports);
@@ -202,4 +202,5 @@ exports.LudeocastAgent = require("./ludeocast-agent");
202
202
  exports.SonicServer = require("./sonic-server");
203
203
  exports.CloudSessionAllocator = require("./cloud-session-allocator");
204
204
  exports.CloudResourceMonitor = require("./cloud-resource-monitor");
205
+ exports.CloudSessions = require("./cloud-sessions");
205
206
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/v4/events/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,+CAA6B;AAC7B,0DAAwC;AACxC,mEAAiD;AACjD,6DAA2C;AAC3C,uEAAqD;AACrD,4EAA0D;AAC1D,6DAA2C;AAC3C,qEAAmD;AACnD,iEAA+C;AAC/C,yDAAuC;AACvC,0EAAwD;AACxD,oEAAkD;AAClD,4DAA0C;AAC1C,+DAA6C;AAC7C,mDAAiC;AACjC,4DAA0C;AAC1C,oEAAkD;AAClD,qEAAmD;AACnD,6EAA2D;AAC3D,mEAAiD;AACjD,2EAAyD;AACzD,sEAAoD;AACpD,8EAA4D;AAC5D,6DAA2C;AAC3C,qEAAmD;AACnD,iEAA+C;AAC/C,+DAA6C;AAC7C,uEAAqD;AACrD,iEAA+C;AAC/C,yEAAuD;AACvD,+DAA6C;AAC7C,oFAAkE;AAClE,uFAAqE;AACrE,sEAAoD;AACpD,8EAA4D;AAC5D,yEAAuD;AACvD,6DAA2C;AAC3C,+DAA6C;AAC7C,gDAA8B;AAC9B,4DAA0C;AAC1C,6CAA2B;AAC3B,oDAAkC;AAClC,8DAA4C;AAC5C,mEAAiD;AACjD,4DAA0C;AAC1C,2DAAyC;AACzC,oEAAkD;AAClD,4DAA0C;AAC1C,uEAAqD;AACrD,6EAA2D;AAC3D,+DAA6C;AAC7C,0DAAwC;AACxC,6DAA2C;AAC3C,+DAA6C;AAC7C,sEAAoD;AACpD,yDAAuC;AACvC,6DAA2C;AAC3C,kEAAgD;AAChD,mEAAiD;AACjD,+DAA6C;AAC7C,gEAA8C;AAC9C,oEAAkD;AAClD,0DAAwC;AACxC,4DAA0C;AAC1C,mEAAiD;AACjD,wDAAsC;AACtC,0DAAwC;AACxC,2EAAyD;AACzD,iEAA+C;AAC/C,qEAAmD;AACnD,4EAA0D;AAC1D,8DAA4C;AAC5C,0EAAwD;AACxD,0DAAwC;AACxC,oEAAkD;AAClD,8DAA4C;AAC5C,wDAAsC;AACtC,6DAA2C;AAC3C,4DAA0C;AAC1C,sEAAoD;AACpD,qEAAmD;AACnD,0DAAwC;AACxC,kEAAgD;AAChD,yDAAuC;AACvC,mEAAiD;AACjD,2DAAyC;AACzC,oEAAkD;AAClD,6DAA2C;AAC3C,yEAAuD;AACvD,+DAA6C;AAC7C,wEAAsD;AACtD,+DAA6C;AAC7C,wDAAsC;AACtC,gEAA8C;AAC9C,4EAA0D;AAC1D,+EAA6D;AAC7D,oEAAkD;AAClD,qEAAmD;AACnD,4EAA0D;AAC1D,4DAA0C;AAC1C,oDAAkC;AAClC,kEAAgD;AAChD,mEAAiD;AACjD,8DAA4C;AAC5C,sEAAoD;AACpD,2DAAyC;AACzC,4DAA0C;AAC1C,kEAAgD;AAChD,+DAA6C;AAC7C,oEAAkD;AAClD,kEAAgD;AAChD,yDAAuC;AACvC,+DAA6C;AAC7C,iEAA+C;AAC/C,+DAA6C;AAC7C,sDAAoC;AACpC,kDAAgC;AAChC,wDAAsC;AACtC,kEAAgD;AAChD,sEAAoD;AACpD,uEAAqD;AACrD,oDAAkC;AAClC,iEAA+C;AAC/C,mDAAiC;AACjC,iDAA+B;AAC/B,0DAAwC;AACxC,uDAAqC;AACrC,uDAAqC;AACrC,uDAAqC;AACrC,iFAA+D;AAC/D,iDAA+B;AAC/B,2EAAyD;AACzD,iFAA+D;AAC/D,yEAAuD;AACvD,sFAAoE;AACpE,6DAA2C;AAC3C,qEAAmD;AACnD,mDAAiC;AACjC,oEAAkD;AAClD,kEAAgD;AAChD,4DAA0C;AAC1C,8EAA4D;AAC5D,wDAAsC;AACtC,iEAA+C;AAC/C,8EAA4D;AAC5D,iEAA+C;AAC/C,0EAAwD;AACxD,wEAAsD;AACtD,yDAAuC;AACvC,2DAAyC;AACzC,wDAAsC;AACtC,mDAAiC;AACjC,4EAA0D;AAC1D,+EAA6D;AAC7D,uDAAqC;AACrC,4DAA0C;AAC1C,iDAA+B;AAC/B,kDAAgC;AAChC,4DAA0C;AAC1C,sEAAoD;AACpD,oEAAkD;AAClD,+DAA6C;AAC7C,gEAA8C;AAC9C,iEAA+C;AAC/C,2DAAyC;AACzC,mEAAiD;AACjD,iDAA+B;AAC/B,qDAAmC;AACnC,4DAA0C;AAC1C,8DAA4C;AAC5C,kDAAgC;AAChC,0DAAwC;AACxC,2DAAyC;AACzC,4DAA0C;AAC1C,oEAAkD;AAClD,2EAAyD;AACzD,kFAAgE;AAChE,kEAAgD;AAEhD,sDAAoD;AACpD,sDAAoD;AACpD,gDAA8C;AAC9C,yCAAuC;AACvC,+CAA6C;AAC7C,sDAAoD;AACpD,gDAA8C;AAC9C,qEAAmE;AACnE,mEAAiE"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/v4/events/index.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,7 @@ export declare class MachineLudeocastPreemptedPayload {
4
4
  machineResourceId: string;
5
5
  machinePoolId?: string;
6
6
  machineClass?: string;
7
+ region?: string;
7
8
  gameResourceIds?: string[];
8
9
  gracePeriodMs?: number;
9
10
  sourceService?: string;
@@ -31,6 +31,11 @@ __decorate([
31
31
  (0, class_validator_1.IsString)(),
32
32
  __metadata("design:type", String)
33
33
  ], MachineLudeocastPreemptedPayload.prototype, "machineClass", void 0);
34
+ __decorate([
35
+ (0, class_validator_1.IsOptional)(),
36
+ (0, class_validator_1.IsString)(),
37
+ __metadata("design:type", String)
38
+ ], MachineLudeocastPreemptedPayload.prototype, "region", void 0);
34
39
  __decorate([
35
40
  (0, class_validator_1.IsOptional)(),
36
41
  (0, class_validator_1.IsArray)(),
@@ -1 +1 @@
1
- {"version":3,"file":"machine-ludeocast-preempted.js","sourceRoot":"","sources":["../../../../src/v4/events/site-controller/machine-ludeocast-preempted.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,0CAA4C;AAC5C,oDAAyD;AACzD,qDAAkF;AAClF,6CAAsD;AAEtD,MAAa,gCAAgC;CAuB5C;AAvBD,4EAuBC;AArBC;IADC,IAAA,wBAAM,GAAE;;2EACiB;AAI1B;IAFC,IAAA,wBAAM,GAAE;IACR,IAAA,4BAAU,GAAE;;uEACU;AAIvB;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;sEACW;AAItB;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,yBAAO,GAAE;;yEACiB;AAI3B;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;uEACY;AAIvB;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;uEACY;AAGzB,MAAa,yBAA0B,SAAQ,kBAAU;IAGvD,YAAY,OAAyC,EAAE,OAA6B;QAClF,KAAK,CAAC,yBAAyB,CAAC,UAAU,CAAC,CAAC;QAC5C,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;;AAPH,8DAcC;AAbiB,oCAAU,GAAG,6CAA6C,CAAC;AAS3E;IADC,IAAA,+BAAkB,EAAC,GAAG,EAAE,CAAC,gCAAgC,CAAC;8BAClD,gCAAgC;0DAAC;AAG1C;IADC,IAAA,+BAAkB,EAAC,GAAG,EAAE,CAAC,+BAAoB,CAAC;8BACtC,+BAAoB;0DAAC"}
1
+ {"version":3,"file":"machine-ludeocast-preempted.js","sourceRoot":"","sources":["../../../../src/v4/events/site-controller/machine-ludeocast-preempted.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,0CAA4C;AAC5C,oDAAyD;AACzD,qDAAkF;AAClF,6CAAsD;AAEtD,MAAa,gCAAgC;CA2B5C;AA3BD,4EA2BC;AAzBC;IADC,IAAA,wBAAM,GAAE;;2EACiB;AAI1B;IAFC,IAAA,wBAAM,GAAE;IACR,IAAA,4BAAU,GAAE;;uEACU;AAIvB;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;sEACW;AAItB;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;gEACK;AAIhB;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,yBAAO,GAAE;;yEACiB;AAI3B;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;uEACY;AAIvB;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;uEACY;AAGzB,MAAa,yBAA0B,SAAQ,kBAAU;IAGvD,YAAY,OAAyC,EAAE,OAA6B;QAClF,KAAK,CAAC,yBAAyB,CAAC,UAAU,CAAC,CAAC;QAC5C,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;;AAPH,8DAcC;AAbiB,oCAAU,GAAG,6CAA6C,CAAC;AAS3E;IADC,IAAA,+BAAkB,EAAC,GAAG,EAAE,CAAC,gCAAgC,CAAC;8BAClD,gCAAgC;0DAAC;AAG1C;IADC,IAAA,+BAAkB,EAAC,GAAG,EAAE,CAAC,+BAAoB,CAAC;8BACtC,+BAAoB;0DAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ludeo/cloud-common",
3
- "version": "1.2.245",
3
+ "version": "1.2.247",
4
4
  "main": "dist/index.js",
5
5
  "types": "dist/index.d.ts",
6
6
  "author": "Yahil Didi",
@@ -0,0 +1,50 @@
1
+ import { LudeoEvent } from '../../../infra';
2
+ import { ValidateNestedType } from '../../../decorators';
3
+ import { IsEnum, IsNumber, IsString, IsUUID } from 'class-validator';
4
+ import { CloudSessionContext } from '../../contexts';
5
+ import { CloudSessionStatus } from '../../../v4/types/cloud/session';
6
+
7
+ export class CloudSessionPreemptedPayload {
8
+ @IsUUID()
9
+ cloudSessionId: string;
10
+
11
+ @IsUUID()
12
+ userId: string;
13
+
14
+ @IsEnum(CloudSessionStatus)
15
+ status: CloudSessionStatus;
16
+
17
+ @IsUUID()
18
+ machineResourceId: string;
19
+
20
+ @IsUUID()
21
+ machinePoolId: string;
22
+
23
+ @IsString()
24
+ machineClass: string;
25
+
26
+ @IsUUID()
27
+ gameResourceId: string;
28
+
29
+ @IsUUID()
30
+ ludeoResourceId: string;
31
+
32
+ @IsNumber()
33
+ gracePeriodMs: number;
34
+ }
35
+
36
+ export class CloudSessionPreempted extends LudeoEvent {
37
+ static readonly EVENT_NAME = 'cloud-sessions.cloud-session-preempted';
38
+
39
+ constructor(payload: CloudSessionPreemptedPayload, context: CloudSessionContext) {
40
+ super(CloudSessionPreempted.EVENT_NAME);
41
+ this.payload = payload;
42
+ this.context = context;
43
+ }
44
+
45
+ @ValidateNestedType(() => CloudSessionPreemptedPayload)
46
+ payload: CloudSessionPreemptedPayload;
47
+
48
+ @ValidateNestedType(() => CloudSessionContext)
49
+ context: CloudSessionContext;
50
+ }
@@ -0,0 +1 @@
1
+ export * from './cloud-session-preempted';
@@ -186,3 +186,4 @@ export * as LudeocastAgent from "./ludeocast-agent";
186
186
  export * as SonicServer from "./sonic-server";
187
187
  export * as CloudSessionAllocator from "./cloud-session-allocator";
188
188
  export * as CloudResourceMonitor from "./cloud-resource-monitor";
189
+ export * as CloudSessions from "./cloud-sessions";
@@ -15,6 +15,10 @@ export class MachineLudeocastPreemptedPayload {
15
15
  @IsString()
16
16
  machineClass?: string;
17
17
 
18
+ @IsOptional()
19
+ @IsString()
20
+ region?: string;
21
+
18
22
  @IsOptional()
19
23
  @IsArray()
20
24
  gameResourceIds?: string[];