@@ -22,7 +22,7 @@ import software.aws.toolkits.resources.message
22
22
import javax.swing.JPanel
23
23
import javax.swing.event.DocumentListener
24
24
25
- abstract class AwsAuthWidget (private val userField : Boolean = true ) : DatabaseCredentialsAuthProvider.UserWidget() {
25
+ abstract class AwsAuthWidget (private val userFieldEnabled : Boolean = true ) : DatabaseCredentialsAuthProvider.UserWidget() {
26
26
private val credentialSelector = CredentialProviderSelector ()
27
27
private val regionSelector = RegionSelector ()
28
28
@@ -37,9 +37,11 @@ abstract class AwsAuthWidget(private val userField: Boolean = true) : DatabaseCr
37
37
38
38
override fun createPanel (): JPanel {
39
39
val panel = JPanel (GridLayoutManager (rowCount, columnCount))
40
- if (userField) {
41
- addUserField(panel, 0 )
42
- }
40
+ addUserField(panel, 0 )
41
+
42
+ // Disable the user field if we treat it as immutable
43
+ myUserField.isEnabled = userFieldEnabled
44
+
43
45
val credsLabel = JBLabel (message(" aws_connection.credentials.label" ))
44
46
val regionLabel = JBLabel (message(" aws_connection.region.label" ))
45
47
panel.add(credsLabel, UrlPropertiesPanel .createLabelConstraints(1 , 0 , credsLabel.preferredSize.getWidth()))
@@ -51,10 +53,7 @@ abstract class AwsAuthWidget(private val userField: Boolean = true) : DatabaseCr
51
53
}
52
54
53
55
override fun save (dataSource : LocalDataSource , copyCredentials : Boolean ) {
54
- // Tries to set username so if we don't have one, don't set
55
- if (userField) {
56
- super .save(dataSource, copyCredentials)
57
- }
56
+ super .save(dataSource, copyCredentials)
58
57
59
58
DataSourceUiUtil .putOrRemove(
60
59
dataSource.additionalJdbcProperties,
@@ -69,10 +68,7 @@ abstract class AwsAuthWidget(private val userField: Boolean = true) : DatabaseCr
69
68
}
70
69
71
70
override fun reset (dataSource : LocalDataSource , resetCredentials : Boolean ) {
72
- // Tries to set username so if we don't have one, don't set
73
- if (userField) {
74
- super .reset(dataSource, resetCredentials)
75
- }
71
+ super .reset(dataSource, resetCredentials)
76
72
77
73
val regionProvider = AwsRegionProvider .getInstance()
78
74
val allRegions = regionProvider.allRegions()
@@ -102,7 +98,7 @@ abstract class AwsAuthWidget(private val userField: Boolean = true) : DatabaseCr
102
98
override fun isPasswordChanged (): Boolean = false
103
99
override fun onChanged (r : DocumentListener ) {
104
100
// Tries to set username so if we don't have one, don't set
105
- if (userField ) {
101
+ if (userFieldEnabled ) {
106
102
super .onChanged(r)
107
103
}
108
104
}
0 commit comments