Coverage Summary for Class: LongTermPreservationValidation (org.kitodo.longtermpreservationvalidation)

Class Class, % Method, % Line, %
LongTermPreservationValidation 100% (1/1) 100% (3/3) 87,5% (14/16)


 /*
  * (c) Kitodo. Key to digital objects e. V. <contact@kitodo.org>
  *
  * This file is part of the Kitodo project.
  *
  * It is licensed under GNU General Public License version 3 or later.
  *
  * For the full copyright and license information, please read the
  * GPL3-License.txt file that was distributed with this source code.
  */
 
 package org.kitodo.longtermpreservationvalidation;
 
 import java.net.URI;
 import java.util.Arrays;
 import java.util.EnumMap;
 import java.util.List;
 import java.util.Map;
 
 import org.kitodo.api.validation.ValidationResult;
 import org.kitodo.api.validation.longtermpreservation.FileType;
 import org.kitodo.api.validation.longtermpreservation.LongTermPreservationValidationInterface;
 
 /**
  * A LongTermPreservationValidationInterface implementation using Jhove.
  */
 public class LongTermPreservationValidation implements LongTermPreservationValidationInterface {
     /**
      * Returns the matching module name for the given file type.
      */
     @SuppressWarnings("serial")
     private static final Map<FileType, String> MODULE_NAMES = new EnumMap<>(FileType.class);
 
     static {
         MODULE_NAMES.put(FileType.GIF, "GIF-hul");
         MODULE_NAMES.put(FileType.JPEG, "JPEG-hul");
         MODULE_NAMES.put(FileType.JPEG_2000, "JPEG2000-hul");
         MODULE_NAMES.put(FileType.PDF, "PDF-hul");
         MODULE_NAMES.put(FileType.PNG, "PNG-gdm");
         MODULE_NAMES.put(FileType.TIFF, "TIFF-hul");
     }
 
     /**
      * Modules to initialize.
      */
     private static final List<String> MODULES = Arrays.asList("edu.harvard.hul.ois.jhove.module.GifModule",
         "edu.harvard.hul.ois.jhove.module.Jpeg2000Module", "edu.harvard.hul.ois.jhove.module.JpegModule",
         "edu.harvard.hul.ois.jhove.module.PdfModule", "com.mcgath.jhove.module.PngModule",
         "edu.harvard.hul.ois.jhove.module.TiffModule");
 
     /**
      * {@inheritDoc}<!-- . -->
      *
      * @param fileUri
      *            file URI to validate
      * @param fileType
      *            file type to validate
      */
     @Override
     public ValidationResult validate(URI fileUri, FileType fileType) {
         KitodoOutputHandler result = new KitodoOutputHandler();
         try {
             KitodoJhoveBase jhoveBase = new KitodoJhoveBase(MODULES);
             jhoveBase.validate(fileUri.getPath(), MODULE_NAMES.get(fileType), result);
         } catch (Exception e) {
             result.treatException(e);
         }
         return result.toValidationResult();
     }
 }