in plugins/connection.ui/src/main/java/org/apache/directory/studio/connection/ui/widgets/AuthenticationParameterPage.java [505:595]
protected void validate()
{
// set enabled/disabled state of fields and buttons
if ( saslComposite != null )
{
for ( Control c : saslComposite.getChildren() )
{
c.setEnabled( isSaslEnabled() );
}
saslRealmText.setEnabled( isSaslRealmTextEnabled() );
}
// TODO: get setting from global preferences.
Preferences preferences = ConnectionCorePlugin.getDefault().getPluginPreferences();
boolean useKrb5SystemProperties = preferences
.getBoolean( ConnectionCoreConstants.PREFERENCE_USE_KRB5_SYSTEM_PROPERTIES );
if ( krb5Composite != null )
{
krb5CredentialConfigurationUseNativeButton.setEnabled( isGssapiEnabled() && !useKrb5SystemProperties );
krb5CredentialConfigurationObtainTgtButton.setEnabled( isGssapiEnabled() && !useKrb5SystemProperties );
krb5ConfigDefaultButton.setEnabled( isGssapiEnabled() && !useKrb5SystemProperties );
krb5ConfigFileButton.setEnabled( isGssapiEnabled() && !useKrb5SystemProperties );
krb5ConfigManualButton.setEnabled( isGssapiEnabled() && !useKrb5SystemProperties );
krb5ConfigFileText.setEnabled( isGssapiEnabled() && krb5ConfigFileButton.getSelection()
&& !useKrb5SystemProperties );
krb5ConfigManualRealmText.setEnabled( isGssapiEnabled() && krb5ConfigManualButton.getSelection()
&& !useKrb5SystemProperties );
krb5ConfigManualHostText.setEnabled( isGssapiEnabled() && krb5ConfigManualButton.getSelection()
&& !useKrb5SystemProperties );
krb5ConfigManualPortText.setEnabled( isGssapiEnabled() && krb5ConfigManualButton.getSelection()
&& !useKrb5SystemProperties );
}
bindPrincipalCombo.setEnabled( isPrincipalPasswordEnabled() );
bindPasswordText.setEnabled( isPrincipalPasswordEnabled() && isSaveBindPassword() );
saveBindPasswordButton.setEnabled( isPrincipalPasswordEnabled() );
checkPrincipalPasswordAuthButton
.setEnabled( ( isPrincipalPasswordEnabled() && isSaveBindPassword()
&& !bindPrincipalCombo.getText().equals( StringUtils.EMPTY )
&& !bindPasswordText.getText().equals( StringUtils.EMPTY ) ) || isGssapiEnabled() ); //$NON-NLS-1$ //$NON-NLS-2$
// validate input fields
message = null;
infoMessage = null;
errorMessage = null;
if ( isPrincipalPasswordEnabled() )
{
if ( isSaveBindPassword() && Strings.isEmpty( bindPasswordText.getText() ) ) //$NON-NLS-1$
{
message = Messages.getString( "AuthenticationParameterPage.PleaseEnterBindPassword" ); //$NON-NLS-1$
}
if ( Strings.isEmpty( bindPrincipalCombo.getText() ) && !isGssapiEnabled() ) //$NON-NLS-1$
{
message = Messages.getString( "AuthenticationParameterPage.PleaseEnterBindDNOrUser" ); //$NON-NLS-1$
}
}
if ( isSaslRealmTextEnabled() && Strings.isEmpty( saslRealmText.getText() ) ) //$NON-NLS-1$
{
infoMessage = Messages.getString( "AuthenticationParameterPage.PleaseEnterSaslRealm" ); //$NON-NLS-1$
}
if ( isGssapiEnabled() && krb5ConfigFileButton.getSelection()
&& Strings.isEmpty( krb5ConfigFileText.getText() ) ) //$NON-NLS-1$
{
message = Messages.getString( "AuthenticationParameterPage.PleaseEnterKrb5ConfigFile" ); //$NON-NLS-1$
}
if ( isGssapiEnabled() && krb5ConfigManualButton.getSelection() )
{
if ( Strings.isEmpty( krb5ConfigManualPortText.getText() ) ) //$NON-NLS-1$
{
message = Messages.getString( "AuthenticationParameterPage.PleaseEnterKrb5Port" ); //$NON-NLS-1$
}
if ( Strings.isEmpty( krb5ConfigManualHostText.getText() ) ) //$NON-NLS-1$
{
message = Messages.getString( "AuthenticationParameterPage.PleaseEnterKrb5Host" ); //$NON-NLS-1$
}
if ( Strings.isEmpty( krb5ConfigManualRealmText.getText() ) ) //$NON-NLS-1$
{
message = Messages.getString( "AuthenticationParameterPage.PleaseEnterKrb5Realm" ); //$NON-NLS-1$
}
}
}