private void processQueuedAudits ( boolean interruptable ) { QueuedAudit audit ; try { while ( ! ( _auditService . isShutdown ( ) && interruptable ) && ( ( audit = _auditQueue . poll ( ) ) != null ) ) { boolean written = false ; while ( ! written ) { AuditOutput auditOutput = getAuditOutputForTime ( audit . time ) ; written = auditOutput . writeAudit ( audit ) ; } } } catch ( Exception e ) { _log . error ( "Processing of queued audits failed" , e ) ; } }
This method is run at regular intervals to remove audits from the audit queue and write them to a local file .