modifier.setDisabled( parseBoolean( val.toLowerCase() ) );
modifier.setDisabled( "true".equalsIgnoreCase( val ) );
    private PrincipalStoreEntry getEntry( Attributes attrs ) throws NamingException    {        PrincipalStoreEntryModifier modifier = new PrincipalStoreEntryModifier();        String principal = ( String ) attrs.get( KerberosAttribute.PRINCIPAL ).get();        String encryptionType = ( String ) attrs.get( KerberosAttribute.TYPE ).get();        String keyVersionNumber = ( String ) attrs.get( KerberosAttribute.VERSION ).get();        if ( attrs.get( KerberosAttribute.ACCOUNT_DISABLED ) != null )        {            String val = ( String ) attrs.get( KerberosAttribute.ACCOUNT_DISABLED ).get();             modifier.setDisabled( parseBoolean( val.toLowerCase() ) );        }        if ( attrs.get( KerberosAttribute.ACCOUNT_LOCKEDOUT ) != null )        {            String val = ( String ) attrs.get( KerberosAttribute.ACCOUNT_LOCKEDOUT ).get();             modifier.setLockedOut( parseBoolean( val.toLowerCase() ) );        }                if ( attrs.get( KerberosAttribute.ACCOUNT_EXPIRATION_TIME ) != null )        {            String val = ( String ) attrs.get( KerberosAttribute.ACCOUNT_EXPIRATION_TIME ).get();             try            {                modifier.setExpiration( KerberosTime.getTime( val ) );            }            catch ( ParseException e )            {                throw new InvalidAttributeValueException( "Account expiration attribute " +                    KerberosAttribute.ACCOUNT_EXPIRATION_TIME                     + " contained an invalid value for generalizedTime: " + val );            }        }        if ( attrs.get( KerberosAttribute.SAM_TYPE ) != null )        {            String samType = ( String ) attrs.get( KerberosAttribute.SAM_TYPE ).get();            modifier.setSamType( SamType.getTypeByOrdinal( Integer.parseInt( samType ) ) );        }        Object key = attrs.get( KerberosAttribute.KEY ).get();        byte[] keyBytes = null;        if ( key instanceof String )        {            String msg = "JNDI should not return a string for the kerberos key: JNDI property java.naming.ldap.attributes.binary must include the krb5key attribute.";            throw new NamingException( msg );        }        keyBytes = ( byte[] ) key;        modifier.setKey( keyBytes );        modifier.setPrincipal( new KerberosPrincipal( principal ) );        modifier.setEncryptionType( Integer.parseInt( encryptionType ) );        modifier.setKeyVersionNumber( Integer.parseInt( keyVersionNumber ) );        return modifier.getEntry();    }