private Optional<String> guessExtension(byte[] bytes) { try { // No extension : try to guess it MagicMatch match = Magic.getMagicMatch(bytes); String guessedExtension = match.getExtension(); if (!Strings.isNullOrEmpty(guessedExtension)) { return Optional.of(guessedExtension); } else { return Optional.absent(); } } catch (Exception e) { this.logger.warn("Error while attempting to guess attachment extension", e); return Optional.absent(); } }