question: public void resetLockoutAttempts ( String userDN , AMIdentity amIdentity , AccountLockoutInfo acInfo , boolean resetDuration ) { debug . message ( "entering ISAccountLockout.resetLockoutAttempts" ) ; if ( debug . messageEnabled ( ) ) { debug . message ( "ISAccountLockout.resetLockoutAttempts:: " + "resetDuration =" + resetDuration ) ; } int fail_count = 0 ; long lastFailTime = 0 ; long locked_out_at = 0 ; long actualLockoutDuration = failureLockoutDuration ; long currentLockoutDuration = acInfo . getActualLockoutDuration ( ) ; if ( acInfo != null ) { fail_count = acInfo . getFailCount ( ) ; lastFailTime = acInfo . getLastFailTime ( ) ; locked_out_at = acInfo . getLockoutAt ( ) ; long now = currentTimeMillis ( ) ; if ( ! resetDuration ) { actualLockoutDuration = currentLockoutDuration ; if ( debug . messageEnabled ( ) ) { debug . message ( "ISAccountLockout.resetLockoutAttempts::" + "Locked out At =" + locked_out_at ) ; } if ( locked_out_at > 0 ) { if ( debug . messageEnabled ( ) ) { debug . message ( "ISAccountLockout.resetLockoutAttempts::" + " Using the multiplier" ) ; } actualLockoutDuration = failureLockoutMultiplier * ( currentLockoutDuration ) ; } } } if ( storeInvalidAttemptsInDS ) { try { if ( ( fail_count != 0 ) || ( lastFailTime != 0 ) || ( locked_out_at != 0 ) || ( actualLockoutDuration != currentLockoutDuration ) ) { Map attrMap = new HashMap ( ) ; Set invalidAttempts = new HashSet ( ) ; String invalidXML = createInvalidAttemptsXML ( 0 , 0 , 0 , actualLockoutDuration ) ; invalidAttempts . add ( invalidXML ) ; attrMap . put ( invalidAttemptsDataAttrName , invalidAttempts ) ; setLockoutObjectClass ( amIdentity ) ; amIdentity . setAttributes ( attrMap ) ; debug . message ( "Saving XML = " + invalidXML ) ; amIdentity . store ( ) ; } debug . message ( "ISAccountLockout::resetLockoutAttempts done" ) ; } catch ( Exception exp ) { debug . message ( "error reseting Lockout Attempts" ) ; } } acInfo . setFailCount ( 0 ) ; acInfo . setLastFailTime ( 0 ) ; acInfo . setLockoutAt ( 0 ) ; acInfo . setLockout ( false ) ; acInfo . setActualLockoutDuration ( actualLockoutDuration ) ; }
target:  Resets attempts related data in Data store if the user has successfully authenticated.