class FormatIdentifierSiegfried implements FormatIdentifier {

    @Override
    public List<FormatIdentifierResponse> analysePath(Path path)
        throws FileFormatNotFoundException, FormatIdentifierBadRequestException, FormatIdentifierTechnicalException,
        FormatIdentifierNotFoundException {
        if (LOGGER.isDebugEnabled()) {
            LOGGER.debug("identify format for " + path);
        }
        try (SiegfriedClient siegfriedClient = siegfriedClientFactory.getClient()) {
            final RequestResponse<JsonNode> response = siegfriedClient.analysePath(path);
            return extractFormat(response.toJsonNode().get("$results").get(0), path);
        }
    }

    public  FormatIdentifierSiegfried(Map<String, Object> configurationProperties);
    @VisibleForTesting public  FormatIdentifierSiegfried(SiegfriedClientFactory siegfriedClientFactory, Path versionPath);

}