in plugins/apacheds.configuration/src/main/java/org/apache/directory/studio/apacheds/configuration/editor/LdapLdapsServersPage.java [1904:2103]
protected void refreshUI()
{
if ( isInitialized() )
{
removeListeners();
// LDAP Server ------------------------------------------------------------------------
TransportBean ldapServerTransportBean = getLdapServerTransportBean();
setSelection( enableLdapCheckbox, ldapServerTransportBean.isEnabled() );
boolean ldapEnabled = enableLdapCheckbox.getSelection();
setEnabled( ldapPortText, ldapEnabled );
setText( ldapPortText, Integer.toString( ldapServerTransportBean.getSystemPort() ) );
setEnabled( ldapAddressText, ldapEnabled );
setText( ldapAddressText, ldapServerTransportBean.getTransportAddress() );
setEnabled( ldapNbThreadsText, ldapEnabled );
setText( ldapNbThreadsText, Integer.toString( ldapServerTransportBean.getTransportNbThreads() ) );
setEnabled( ldapBackLogSizeText, ldapEnabled );
setText( ldapBackLogSizeText, Integer.toString( ldapServerTransportBean.getTransportBackLog() ) );
// LDAPS Server -----------------------------------------------------------------------
TransportBean ldapsServerTransportBean = getLdapsServerTransportBean();
setSelection( enableLdapsCheckbox, ldapsServerTransportBean.isEnabled() );
boolean ldapsEnabled = enableLdapsCheckbox.getSelection();
setEnabled( ldapsPortText, ldapsEnabled );
setText( ldapsPortText, Integer.toString( ldapsServerTransportBean.getSystemPort() ) );
setEnabled( ldapsAddressText, ldapsEnabled );
setText( ldapsAddressText, ldapsServerTransportBean.getTransportAddress() );
setEnabled( ldapsNbThreadsText, ldapsEnabled );
setText( ldapsNbThreadsText, Integer.toString( ldapsServerTransportBean.getTransportNbThreads() ) );
setEnabled( ldapsBackLogSizeText, ldapsEnabled );
setText( ldapsBackLogSizeText, Integer.toString( ldapsServerTransportBean.getTransportBackLog() ) );
// SASL Properties --------------------------------------------------------------------
LdapServerBean ldapServerBean = getLdapServerBean();
setText( saslHostText, ldapServerBean.getLdapServerSaslHost() );
setText( saslPrincipalText, ldapServerBean.getLdapServerSaslPrincipal() );
setText( saslSearchBaseDnText, ldapServerBean.getSearchBaseDn().toString() );
saslRealmsTableViewer.setInput( ldapServerBean.getLdapServerSaslRealms() );
saslRealmsTableViewer.refresh();
// Keystore Properties
setText( keystoreFileText, ldapServerBean.getLdapServerKeystoreFile() );
setText( keystorePasswordText, ldapServerBean.getLdapServerCertificatePassword() );
// Supported Auth Mechanisms
List<SaslMechHandlerBean> saslMechHandlers = ldapServerBean.getSaslMechHandlers();
uncheckAllSupportedAuthenticationMechanisms();
for ( SaslMechHandlerBean saslMechHandler : saslMechHandlers )
{
if ( SASL_MECHANISMS_SIMPLE.equalsIgnoreCase( saslMechHandler.getSaslMechName() ) )
{
setSelection( authMechSimpleCheckbox, saslMechHandler.isEnabled() );
}
else if ( SupportedSaslMechanisms.GSSAPI.equalsIgnoreCase( saslMechHandler.getSaslMechName() ) )
{
setSelection( authMechGssapiCheckbox, saslMechHandler.isEnabled() );
}
else if ( SupportedSaslMechanisms.CRAM_MD5.equalsIgnoreCase( saslMechHandler.getSaslMechName() ) )
{
setSelection( authMechCramMd5Checkbox, saslMechHandler.isEnabled() );
}
else if ( SupportedSaslMechanisms.DIGEST_MD5.equalsIgnoreCase( saslMechHandler.getSaslMechName() ) )
{
setSelection( authMechDigestMd5Checkbox, saslMechHandler.isEnabled() );
}
else if ( SupportedSaslMechanisms.GSS_SPNEGO.equalsIgnoreCase( saslMechHandler.getSaslMechName() ) )
{
setSelection( authMechGssSpnegoCheckbox, saslMechHandler.isEnabled() );
setEnabled( authMechGssSpnegoText, saslMechHandler.isEnabled() );
setText( authMechGssSpnegoText, saslMechHandler.getNtlmMechProvider() );
}
else if ( SupportedSaslMechanisms.NTLM.equalsIgnoreCase( saslMechHandler.getSaslMechName() ) )
{
setSelection( authMechNtlmCheckbox, saslMechHandler.isEnabled() );
setEnabled( authMechNtlmText, saslMechHandler.isEnabled() );
setText( authMechNtlmText, saslMechHandler.getNtlmMechProvider() );
}
}
// Delegating authentication
// TODO
// Limits
setText( maxTimeLimitText, Integer.toString( ldapServerBean.getLdapServerMaxTimeLimit() ) );
setText( maxSizeLimitText, Integer.toString( ldapServerBean.getLdapServerMaxSizeLimit() ) );
setText( maxPduSizeText, Integer.toString( ldapServerBean.getMaxPDUSize() ) );
// Enable TLS Checkbox
setSelection( enableTlsCheckbox, getTlsExtendedOpHandlerBean().isEnabled() );
// Hashing Password widgets
InterceptorBean hashingMethodInterceptor = getHashingPasswordInterceptor();
if ( hashingMethodInterceptor == null )
{
// No hashing method interceptor
setSelection( enableServerSidePasswordHashingCheckbox, false );
setEnabled( hashingMethodComboViewer.getCombo(), enableServerSidePasswordHashingCheckbox.getSelection() );
setSelection( hashingMethodComboViewer, LdapSecurityConstants.HASH_METHOD_SSHA );
}
else
{
LdapSecurityConstants hashingMethod = getHashingMethodFromInterceptor( hashingMethodInterceptor );
if ( hashingMethod != null )
{
// Setting selection for the hashing method
setSelection( enableServerSidePasswordHashingCheckbox, hashingMethodInterceptor.isEnabled() );
setEnabled( hashingMethodComboViewer.getCombo(),
enableServerSidePasswordHashingCheckbox.getSelection() );
setSelection( hashingMethodComboViewer, hashingMethod );
}
else
{
// Couldn't determine which hashing method is used
setSelection( enableServerSidePasswordHashingCheckbox, false );
setEnabled( hashingMethodComboViewer.getCombo(),
enableServerSidePasswordHashingCheckbox.getSelection() );
setSelection( hashingMethodComboViewer, LdapSecurityConstants.HASH_METHOD_SSHA );
}
}
// SSL/Start TLS Cipher Suites
List<String> enabledCiphers = ldapServerTransportBean.getEnabledCiphers();
List<SupportedCipher> supportedCiphers = new ArrayList<>();
if ( enabledCiphers == null )
{
// We don't have any selected ciphers. Propose the full list
for ( SupportedCipher cipher : SupportedCipher.supportedCiphersJava8 )
{
supportedCiphers.add( cipher );
}
}
else
{
for ( String supportedCipher : enabledCiphers )
{
SupportedCipher cipher = SupportedCipher.getByName( supportedCipher );
if ( cipher != null )
{
supportedCiphers.add( cipher );
}
}
}
ciphersSuiteTableViewer.setCheckedElements( supportedCiphers.toArray() );
ciphersSuiteTableViewer.refresh();
// SSL/Start TLS Enabled Protocols
// Check if we have a LDAP transport
TransportBean transportBean = getLdapTransportBean( TRANSPORT_ID_LDAP );
// Ok, process the enabled protocols now
List<String> enabledProtocols = transportBean.getEnabledProtocols();
if ( enabledProtocols != null )
{
for ( String enabledProtocol : transportBean.getEnabledProtocols() )
{
if ( SSL_V3.equalsIgnoreCase( enabledProtocol ) )
{
setSelection( sslv3Checkbox, true );
}
else if ( TLS_V1_0.equalsIgnoreCase( enabledProtocol ) )
{
setSelection( tlsv1_0Checkbox, true );
}
else if ( TLS_V1_1.equalsIgnoreCase( enabledProtocol ) )
{
setSelection( tlsv1_1Checkbox, true );
}
else if ( TLS_V1_2.equalsIgnoreCase( enabledProtocol ) )
{
setSelection( tlsv1_2Checkbox, true );
}
}
}
// Replication Pinger Sleep
setText( replicationPingerSleepText, Integer.toString( ldapServerBean.getReplPingerSleep() ) );
// Disk Synchronization Delay
setText( diskSynchronizationDelayText, Long.toString( getDirectoryServiceBean().getDsSyncPeriodMillis() ) );
addListeners();
}
}