private boolean isBPDExpired ( ) { Map < String , String > bpd = passport . getBPD ( ) ; log . info ( "[BPD] max age: " + maxAge + " days" ) ; long maxMillis = - 1L ; try { int days = Integer . parseInt ( maxAge ) ; if ( days == 0 ) { log . info ( "[BPD] auto-expiry disabled" ) ; return false ; } if ( days > 0 ) maxMillis = days * 24 * 60 * 60 * 1000L ; } catch ( NumberFormatException e ) { log . error ( e . getMessage ( ) , e ) ; return false ; } long lastUpdate = 0L ; if ( bpd != null ) { String lastUpdateProperty = bpd . get ( BPD_KEY_LASTUPDATE ) ; try { lastUpdate = lastUpdateProperty != null ? Long . parseLong ( lastUpdateProperty ) : lastUpdate ; } catch ( NumberFormatException e ) { log . error ( e . getMessage ( ) , e ) ; return false ; } log . info ( "[BPD] last update: " + ( lastUpdate == 0 ? "never" : new Date ( lastUpdate ) ) ) ; } long now = System . currentTimeMillis ( ) ; if ( maxMillis < 0 || ( now - lastUpdate ) > maxMillis ) { log . info ( "[BPD] expired, will be updated now" ) ; return true ; } return false ; }
Prueft ob die BPD abgelaufen sind und neu geladen werden muessen .