@@ -183,6 +183,30 @@ export class SandboxSession extends Disposable {
183183 this . pitcherClient . disconnect ( ) ;
184184 this . dispose ( ) ;
185185 }
186+
187+ private keepAliveInterval : NodeJS . Timeout | null = null ;
188+ /**
189+ * If enabled, we will keep the sandbox from hibernating as long as the SDK is connected to it.
190+ */
191+ public keepActiveWhileConnected ( enabled : boolean ) {
192+ if ( enabled && ! this . keepAliveInterval ) {
193+ this . keepAliveInterval = setInterval ( ( ) => {
194+ this . pitcherClient . clients . system . update ( ) ;
195+ } , 1000 * 30 ) ;
196+
197+ this . onWillDispose ( ( ) => {
198+ if ( this . keepAliveInterval ) {
199+ clearInterval ( this . keepAliveInterval ) ;
200+ this . keepAliveInterval = null ;
201+ }
202+ } ) ;
203+ } else {
204+ if ( this . keepAliveInterval ) {
205+ clearInterval ( this . keepAliveInterval ) ;
206+ this . keepAliveInterval = null ;
207+ }
208+ }
209+ }
186210}
187211
188212export class Sandbox extends SandboxSession {
@@ -281,28 +305,4 @@ export class Sandbox extends SandboxSession {
281305 public async updateHibernationTimeout ( timeoutSeconds : number ) : Promise < void > {
282306 await this . sandboxClient . updateHibernationTimeout ( this . id , timeoutSeconds ) ;
283307 }
284-
285- private keepAliveInterval : NodeJS . Timeout | null = null ;
286- /**
287- * If enabled, we will keep the sandbox from hibernating as long as the SDK is connected to it.
288- */
289- public keepActiveWhileConnected ( enabled : boolean ) {
290- if ( enabled && ! this . keepAliveInterval ) {
291- this . keepAliveInterval = setInterval ( ( ) => {
292- this . pitcherClient . clients . system . update ( ) ;
293- } , 1000 * 30 ) ;
294-
295- this . onWillDispose ( ( ) => {
296- if ( this . keepAliveInterval ) {
297- clearInterval ( this . keepAliveInterval ) ;
298- this . keepAliveInterval = null ;
299- }
300- } ) ;
301- } else {
302- if ( this . keepAliveInterval ) {
303- clearInterval ( this . keepAliveInterval ) ;
304- this . keepAliveInterval = null ;
305- }
306- }
307- }
308308}
0 commit comments