@@ -11,6 +11,7 @@ export abstract class AbstractMySegmentsCacheSync implements ISegmentsCacheSync
1111 protected abstract addSegment ( name : string ) : boolean
1212 protected abstract removeSegment ( name : string ) : boolean
1313 protected abstract setChangeNumber ( changeNumber ?: number ) : boolean | void
14+ protected abstract getSegments ( ) : string [ ]
1415
1516 /**
1617 * For server-side synchronizer: check if `key` is in `name` segment.
@@ -27,14 +28,14 @@ export abstract class AbstractMySegmentsCacheSync implements ISegmentsCacheSync
2728
2829
2930 // No-op. Not used in client-side.
30- registerSegments ( ) : boolean { return false ; }
3131 update ( ) { return false ; }
3232
3333 /**
34- * For server-side synchronizer: get the list of segments to fetch changes.
35- * Also used for the `seC` (segment count) telemetry stat.
34+ * Used for the `seC` (segment count) telemetry stat.
3635 */
37- abstract getRegisteredSegments ( ) : string [ ]
36+ getSegmentsCount ( ) {
37+ return this . getSegments ( ) . length ;
38+ }
3839
3940 /**
4041 * Only used for the `skC`(segment keys count) telemetry stat: 1 for client-side, and total count of keys in server-side.
@@ -68,7 +69,7 @@ export abstract class AbstractMySegmentsCacheSync implements ISegmentsCacheSync
6869 }
6970
7071 const names = ( ( segmentsData as IMySegmentsResponse ) . k || [ ] ) . map ( s => s . n ) . sort ( ) ;
71- const storedSegmentKeys = this . getRegisteredSegments ( ) . sort ( ) ;
72+ const storedSegmentKeys = this . getSegments ( ) . sort ( ) ;
7273
7374 // Extreme fast => everything is empty
7475 if ( ! names . length && ! storedSegmentKeys . length ) return false ;
0 commit comments