@@ -25,6 +25,7 @@ export class DirectConnectionComponent implements OnInit {
2525 port : new FormControl ( '' , [ Validators . required , Validators . pattern ( '^[0-9]+$' ) ] ) ,
2626 userName : new FormControl ( '' , [ Validators . required ] ) ,
2727 password : new FormControl ( '' ) ,
28+ sslMode : new FormControl ( '' ) ,
2829 dbName : new FormControl ( '' , [ Validators . required ] ) ,
2930 dialect : new FormControl ( '' , [ Validators . required ] ) ,
3031 dataCenter : new FormControl ( '' ) ,
@@ -47,6 +48,10 @@ export class DirectConnectionComponent implements OnInit {
4748 { value : false , displayName : 'No' } ,
4849 { value : true , displayName : 'Yes' } ,
4950 ]
51+ sslModeList = [
52+ { value : 'disable' , displayName : 'Disable' } ,
53+ { value : 'require' , displayName : 'Require' } ,
54+ ]
5055
5156 dialect : { value : string , displayName : string } [ ] = [ ]
5257
@@ -80,8 +85,18 @@ export class DirectConnectionComponent implements OnInit {
8085 } )
8186 this . connectForm . get ( 'dbEngine' ) ?. valueChanges . subscribe ( ( dbEngine ) => {
8287 this . updateDialectAndDataCenterOptions ( dbEngine || '' )
88+ this . updateSslModeValue ( dbEngine || '' )
8389 } )
8490 this . updateDialectAndDataCenterOptions ( this . connectForm . value . dbEngine || '' )
91+ this . updateSslModeValue ( this . connectForm . value . dbEngine || '' )
92+ }
93+
94+ updateSslModeValue ( dbEngine : string ) {
95+ if ( dbEngine !== SourceDbNames . Postgres ) {
96+ this . connectForm . get ( 'sslMode' ) ?. setValue ( '' )
97+ } else if ( ! this . connectForm . get ( 'sslMode' ) ?. value ) {
98+ this . connectForm . get ( 'sslMode' ) ?. setValue ( 'disable' )
99+ }
85100 }
86101
87102 updateDialectAndDataCenterOptions ( dbEngine : string ) {
@@ -100,7 +115,7 @@ export class DirectConnectionComponent implements OnInit {
100115
101116 testConn ( ) {
102117 this . clickEvent . openDatabaseLoader ( 'test-connection' , this . connectForm . value . dbName ! )
103- const { dbEngine, isSharded, hostName, port, userName, password, dbName, dialect, dataCenter } = this . connectForm . value
118+ const { dbEngine, isSharded, hostName, port, userName, password, sslMode , dbName, dialect, dataCenter } = this . connectForm . value
104119 localStorage . setItem ( PersistedFormValues . DirectConnectForm , JSON . stringify ( this . connectForm . value ) )
105120 let config : IDbConfig = {
106121 dbEngine : dbEngine ! ,
@@ -109,6 +124,7 @@ export class DirectConnectionComponent implements OnInit {
109124 port : port ! ,
110125 userName : userName ! ,
111126 password : password ! ,
127+ sslMode : sslMode ! ,
112128 dbName : dbName ! ,
113129 dataCenter : dataCenter ! ,
114130 }
@@ -149,7 +165,7 @@ export class DirectConnectionComponent implements OnInit {
149165 window . scroll ( 0 , 0 ) ;
150166 this . data . resetStore ( ) ;
151167 localStorage . clear ( ) ;
152- const { dbEngine, isSharded, hostName, port, userName, password, dbName, dialect, dataCenter } = this . connectForm . value ;
168+ const { dbEngine, isSharded, hostName, port, userName, password, dbName, sslMode , dialect, dataCenter } = this . connectForm . value ;
153169 localStorage . setItem ( PersistedFormValues . DirectConnectForm , JSON . stringify ( this . connectForm . value ) ) ;
154170 let config : IDbConfig = {
155171 dbEngine : dbEngine ! ,
@@ -159,6 +175,7 @@ export class DirectConnectionComponent implements OnInit {
159175 userName : userName ! ,
160176 password : password ! ,
161177 dbName : dbName ! ,
178+ sslMode : sslMode ! ,
162179 dataCenter : dataCenter ! ,
163180 } ;
164181 this . connectRequest = this . fetch . connectTodb ( config , dialect ! ) . subscribe ( {
@@ -167,7 +184,7 @@ export class DirectConnectionComponent implements OnInit {
167184 this . data . conv . subscribe ( ( res ) => {
168185 localStorage . setItem (
169186 StorageKeys . Config ,
170- JSON . stringify ( { dbEngine, hostName, port, userName, password, dbName } )
187+ JSON . stringify ( { dbEngine, hostName, port, userName, password, dbName, sslMode } )
171188 ) ;
172189 localStorage . setItem ( StorageKeys . Type , InputType . DirectConnect ) ;
173190 localStorage . setItem ( StorageKeys . SourceDbName , extractSourceDbName ( dbEngine ! ) ) ;
0 commit comments