@@ -25,7 +25,7 @@ import { Messages } from "../../utils/messages";
2525import { AbstractMonitoringConnectionHandler } from "./monitoring_connection_handler" ;
2626import { equalsIgnoreCase } from "../../utils/utils" ;
2727
28- export enum GdbMonitoringConnectionPriority {
28+ export enum GlobalDbMonitoringConnectionPriority {
2929 STRICT_WRITER_PRIMARY = "strict-writer-primary" ,
3030 STRICT_WRITER_SECONDARY = "strict-writer-secondary" ,
3131 STRICT_READER_PRIMARY = "strict-reader-primary" ,
@@ -35,44 +35,44 @@ export enum GdbMonitoringConnectionPriority {
3535 REGION = "region"
3636}
3737
38- interface GdbPriorityConfig {
39- type : GdbMonitoringConnectionPriority ;
38+ interface GlobalDbPriorityConfig {
39+ type : GlobalDbMonitoringConnectionPriority ;
4040 region ?: string ;
4141}
4242
4343// AWS region identifiers look like "us-east-1", "eu-west-2", "ap-southeast-1".
4444const REGION_SHAPE = / ^ [ a - z ] { 2 } - [ a - z ] + - \d + $ / ;
4545
46- function parseGdbPriority ( value : string | null ) : GdbPriorityConfig | null {
46+ function parseGlobalDbPriority ( value : string | null ) : GlobalDbPriorityConfig | null {
4747 if ( ! value ) {
4848 return null ;
4949 }
5050 const lower = value . toLowerCase ( ) . trim ( ) ;
5151 switch ( lower ) {
5252 case "strict-writer-primary" :
53- return { type : GdbMonitoringConnectionPriority . STRICT_WRITER_PRIMARY } ;
53+ return { type : GlobalDbMonitoringConnectionPriority . STRICT_WRITER_PRIMARY } ;
5454 case "strict-writer-secondary" :
55- return { type : GdbMonitoringConnectionPriority . STRICT_WRITER_SECONDARY } ;
55+ return { type : GlobalDbMonitoringConnectionPriority . STRICT_WRITER_SECONDARY } ;
5656 case "strict-reader-primary" :
57- return { type : GdbMonitoringConnectionPriority . STRICT_READER_PRIMARY } ;
57+ return { type : GlobalDbMonitoringConnectionPriority . STRICT_READER_PRIMARY } ;
5858 case "strict-reader-secondary" :
59- return { type : GdbMonitoringConnectionPriority . STRICT_READER_SECONDARY } ;
59+ return { type : GlobalDbMonitoringConnectionPriority . STRICT_READER_SECONDARY } ;
6060 case "writer-or-reader-primary" :
61- return { type : GdbMonitoringConnectionPriority . WRITER_OR_READER_PRIMARY } ;
61+ return { type : GlobalDbMonitoringConnectionPriority . WRITER_OR_READER_PRIMARY } ;
6262 case "writer-or-reader-secondary" :
63- return { type : GdbMonitoringConnectionPriority . WRITER_OR_READER_SECONDARY } ;
63+ return { type : GlobalDbMonitoringConnectionPriority . WRITER_OR_READER_SECONDARY } ;
6464 default :
6565 // Any unrecognized token is treated as a region literal. If it doesn't look like an AWS
6666 // region identifier, it is most likely a typo (e.g. "strict-wrtier-primary") that will
6767 // never match any host, so warn to aid diagnosis.
6868 if ( ! REGION_SHAPE . test ( lower ) ) {
69- logger . warn ( Messages . get ( "GdbMonitoringConnectionHandler .unrecognizedPriority" , value ) ) ;
69+ logger . warn ( Messages . get ( "GlobalDbMonitoringConnectionHandler .unrecognizedPriority" , value ) ) ;
7070 }
71- return { type : GdbMonitoringConnectionPriority . REGION , region : lower } ;
71+ return { type : GlobalDbMonitoringConnectionPriority . REGION , region : lower } ;
7272 }
7373}
7474
75- export class GdbMonitoringConnectionHandler extends AbstractMonitoringConnectionHandler < GdbPriorityConfig > {
75+ export class GlobalDbMonitoringConnectionHandler extends AbstractMonitoringConnectionHandler < GlobalDbPriorityConfig > {
7676 private readonly rdsUtils : RdsUtils = new RdsUtils ( ) ;
7777 private readonly accessibleRegions : string [ ] | null ;
7878 private primaryRegion : string | null = null ;
@@ -86,24 +86,26 @@ export class GdbMonitoringConnectionHandler extends AbstractMonitoringConnection
8686 getMonitoringClient : ( ) => ClientWrapper | null ,
8787 setMonitoringClient : ( client : ClientWrapper | null ) => void
8888 ) {
89- const priorities = GdbMonitoringConnectionHandler . parsePriorities ( WrapperProperties . GDB_MONITORING_CONNECTION_PRIORITY . get ( monitoringProperties ) ) ;
89+ const priorities = GlobalDbMonitoringConnectionHandler . parsePriorities (
90+ WrapperProperties . GLOBAL_DB_MONITORING_CONNECTION_PRIORITY . get ( monitoringProperties )
91+ ) ;
9092 super ( pluginService , monitoringProperties , priorities , getMonitoringClient , setMonitoringClient ) ;
9193 this . accessibleRegions = accessibleRegions ;
92- logger . debug ( Messages . get ( "GdbMonitoringConnectionHandler .initialized" , JSON . stringify ( this . priorities ) ) ) ;
94+ logger . debug ( Messages . get ( "GlobalDbMonitoringConnectionHandler .initialized" , JSON . stringify ( this . priorities ) ) ) ;
9395 }
9496
95- private static parsePriorities ( value : string | null ) : GdbPriorityConfig [ ] {
97+ private static parsePriorities ( value : string | null ) : GlobalDbPriorityConfig [ ] {
9698 if ( ! value ) {
97- return [ { type : GdbMonitoringConnectionPriority . STRICT_WRITER_PRIMARY } ] ;
99+ return [ { type : GlobalDbMonitoringConnectionPriority . STRICT_WRITER_PRIMARY } ] ;
98100 }
99- const results : GdbPriorityConfig [ ] = [ ] ;
101+ const results : GlobalDbPriorityConfig [ ] = [ ] ;
100102 for ( const part of value . split ( "," ) ) {
101- const p = parseGdbPriority ( part . trim ( ) ) ;
103+ const p = parseGlobalDbPriority ( part . trim ( ) ) ;
102104 if ( p ) {
103105 results . push ( p ) ;
104106 }
105107 }
106- return results . length > 0 ? results : [ { type : GdbMonitoringConnectionPriority . STRICT_WRITER_PRIMARY } ] ;
108+ return results . length > 0 ? results : [ { type : GlobalDbMonitoringConnectionPriority . STRICT_WRITER_PRIMARY } ] ;
107109 }
108110
109111 override acceptConnection ( client : ClientWrapper , isWriter : boolean , hostInfo : HostInfo ) : boolean {
@@ -148,21 +150,21 @@ export class GdbMonitoringConnectionHandler extends AbstractMonitoringConnection
148150 return - 1 ;
149151 }
150152
151- private isSatisfiedBy ( priority : GdbPriorityConfig , hostInfo : HostInfo , isWriter : boolean ) : boolean {
153+ private isSatisfiedBy ( priority : GlobalDbPriorityConfig , hostInfo : HostInfo , isWriter : boolean ) : boolean {
152154 switch ( priority . type ) {
153- case GdbMonitoringConnectionPriority . STRICT_WRITER_PRIMARY :
155+ case GlobalDbMonitoringConnectionPriority . STRICT_WRITER_PRIMARY :
154156 return isWriter && this . isInPrimaryRegion ( hostInfo ) ;
155- case GdbMonitoringConnectionPriority . STRICT_WRITER_SECONDARY :
157+ case GlobalDbMonitoringConnectionPriority . STRICT_WRITER_SECONDARY :
156158 return isWriter && ! this . isInPrimaryRegion ( hostInfo ) ;
157- case GdbMonitoringConnectionPriority . STRICT_READER_PRIMARY :
159+ case GlobalDbMonitoringConnectionPriority . STRICT_READER_PRIMARY :
158160 return ! isWriter && this . isInPrimaryRegion ( hostInfo ) ;
159- case GdbMonitoringConnectionPriority . STRICT_READER_SECONDARY :
161+ case GlobalDbMonitoringConnectionPriority . STRICT_READER_SECONDARY :
160162 return ! isWriter && ! this . isInPrimaryRegion ( hostInfo ) ;
161- case GdbMonitoringConnectionPriority . WRITER_OR_READER_PRIMARY :
163+ case GlobalDbMonitoringConnectionPriority . WRITER_OR_READER_PRIMARY :
162164 return this . isInPrimaryRegion ( hostInfo ) ;
163- case GdbMonitoringConnectionPriority . WRITER_OR_READER_SECONDARY :
165+ case GlobalDbMonitoringConnectionPriority . WRITER_OR_READER_SECONDARY :
164166 return ! this . isInPrimaryRegion ( hostInfo ) ;
165- case GdbMonitoringConnectionPriority . REGION :
167+ case GlobalDbMonitoringConnectionPriority . REGION :
166168 return equalsIgnoreCase ( this . getHostRegion ( hostInfo ) , priority . region ) ;
167169 default :
168170 return false ;
@@ -177,29 +179,29 @@ export class GdbMonitoringConnectionHandler extends AbstractMonitoringConnection
177179 const filtered = this . filterAccessible ( candidates ) ;
178180 this . updatePrimaryRegion ( filtered ) ;
179181 switch ( priority . type ) {
180- case GdbMonitoringConnectionPriority . STRICT_WRITER_PRIMARY :
182+ case GlobalDbMonitoringConnectionPriority . STRICT_WRITER_PRIMARY :
181183 return filtered . filter ( ( h ) => h . role === HostRole . WRITER && this . isInPrimaryRegion ( h ) ) ;
182184
183- case GdbMonitoringConnectionPriority . STRICT_WRITER_SECONDARY :
185+ case GlobalDbMonitoringConnectionPriority . STRICT_WRITER_SECONDARY :
184186 return filtered . filter ( ( h ) => h . role === HostRole . WRITER && ! this . isInPrimaryRegion ( h ) ) ;
185187
186- case GdbMonitoringConnectionPriority . STRICT_READER_PRIMARY :
188+ case GlobalDbMonitoringConnectionPriority . STRICT_READER_PRIMARY :
187189 return filtered . filter ( ( h ) => h . role === HostRole . READER && this . isInPrimaryRegion ( h ) ) ;
188190
189- case GdbMonitoringConnectionPriority . STRICT_READER_SECONDARY :
191+ case GlobalDbMonitoringConnectionPriority . STRICT_READER_SECONDARY :
190192 return filtered . filter ( ( h ) => h . role === HostRole . READER && ! this . isInPrimaryRegion ( h ) ) ;
191193
192- case GdbMonitoringConnectionPriority . WRITER_OR_READER_PRIMARY : {
194+ case GlobalDbMonitoringConnectionPriority . WRITER_OR_READER_PRIMARY : {
193195 const writers = filtered . filter ( ( h ) => h . role === HostRole . WRITER && this . isInPrimaryRegion ( h ) ) ;
194196 return writers . length > 0 ? writers : filtered . filter ( ( h ) => h . role === HostRole . READER && this . isInPrimaryRegion ( h ) ) ;
195197 }
196198
197- case GdbMonitoringConnectionPriority . WRITER_OR_READER_SECONDARY : {
199+ case GlobalDbMonitoringConnectionPriority . WRITER_OR_READER_SECONDARY : {
198200 const writers = filtered . filter ( ( h ) => h . role === HostRole . WRITER && ! this . isInPrimaryRegion ( h ) ) ;
199201 return writers . length > 0 ? writers : filtered . filter ( ( h ) => h . role === HostRole . READER && ! this . isInPrimaryRegion ( h ) ) ;
200202 }
201203
202- case GdbMonitoringConnectionPriority . REGION : {
204+ case GlobalDbMonitoringConnectionPriority . REGION : {
203205 const targetRegion = priority . region ! ;
204206 const writers = filtered . filter ( ( h ) => h . role === HostRole . WRITER && equalsIgnoreCase ( this . getHostRegion ( h ) , targetRegion ) ) ;
205207 return writers . length > 0 ? writers : filtered . filter ( ( h ) => equalsIgnoreCase ( this . getHostRegion ( h ) , targetRegion ) ) ;
0 commit comments