public void provideExpirationWarnings ( int daysBeforeExpireWarning , String keyStoreName ) throws Exception { if ( TraceComponent . isAnyTracingEnabled ( ) && tc . isEntryEnabled ( ) ) Tr . entry ( tc , "provideExpirationWarnings" , Integer . valueOf ( daysBeforeExpireWarning ) ) ; KeyStore keystore = getKeyStore ( false , false ) ; if ( keystore != null ) { try { Enumeration < String > e = keystore . aliases ( ) ; if ( e != null ) { for ( ; e . hasMoreElements ( ) ; ) { String alias = e . nextElement ( ) ; if ( null == alias ) continue ; Certificate [ ] cert_chain = keystore . getCertificateChain ( alias ) ; if ( null == cert_chain ) continue ; for ( int i = 0 ; i < cert_chain . length ; i ++ ) { printWarning ( daysBeforeExpireWarning , keyStoreName , alias , ( X509Certificate ) cert_chain [ i ] ) ; } } } } catch ( Exception e ) { if ( TraceComponent . isAnyTracingEnabled ( ) && tc . isDebugEnabled ( ) ) Tr . debug ( tc , "Exception validating KeyStore expirations; " + e ) ; FFDCFilter . processException ( e , getClass ( ) . getName ( ) , "provideExpirationWarnings" , this ) ; throw e ; } } if ( TraceComponent . isAnyTracingEnabled ( ) && tc . isEntryEnabled ( ) ) Tr . exit ( tc , "provideExpirationWarnings" ) ; }
Cycle through the keystore looking for expired certificates . Print a warning for any certificates that are expired or will expire during the input interval .