private String detectByVendorName( IRootDSE rootDSE )
{
String result = null;
IAttribute vnAttribute = rootDSE.getAttribute( "vendorName" );
IAttribute vvAttribute = rootDSE.getAttribute( "vendorVersion" );
if ( vnAttribute != null && vnAttribute.getStringValues().length > 0 && vvAttribute != null
&& vvAttribute.getStringValues().length > 0 )
{
if ( vnAttribute.getStringValues()[0].indexOf( "Apache Software Foundation" ) > -1 )
{
result = "Apache Directory Server";
}
if ( vnAttribute.getStringValues()[0].indexOf( "Novell" ) > -1
|| vvAttribute.getStringValues()[0].indexOf( "eDirectory" ) > -1 )
{
result = "Novell eDirectory";
}
if ( vnAttribute.getStringValues()[0].indexOf( "Sun" ) > -1
|| vvAttribute.getStringValues()[0].indexOf( "Sun" ) > -1 )
{
result = "Sun Directory Server";
}
if ( vnAttribute.getStringValues()[0].indexOf( "Netscape" ) > -1
|| vvAttribute.getStringValues()[0].indexOf( "Netscape" ) > -1 )
{
result = "Netscape Directory Server";
}
if ( vnAttribute.getStringValues()[0].indexOf( "International Business Machines" ) > -1
&& ( ( vvAttribute.getStringValues()[0].indexOf( "6.0" ) > -1 ) || ( vvAttribute.getStringValues()[0]
.indexOf( "5.2" ) > -1 ) ) )
{
result = "IBM Tivoli Directory Server";
}
}