class AuditFinalizePlugin extends ActionHandler {

    @Override
    public ItemStatus execute(WorkerParameters param, HandlerIO handler)
        throws ProcessingException {

        try {

            generateAuditReportToWorkspace(param, handler);

            storeReportToOffers(param.getContainerName());

            cleanupReport(param);

            LOGGER.info("Audit object finalization succeeded");
            return buildItemStatus(OBJECT_AUDIT_FINALIZE, StatusCode.OK, null);
        } catch (ProcessingStatusException e) {
            LOGGER.error(String.format("Audit object  finalization failed with status [%s]", e.getStatusCode()), e);
            return buildItemStatus(OBJECT_AUDIT_FINALIZE, e.getStatusCode(), null);
        }
    }

    public  AuditFinalizePlugin();
    @VisibleForTesting  AuditFinalizePlugin(AuditReportService auditReportService,
        LogbookOperationsClientFactory logbookOperationsClientFactory);

}