package eu.dnetlib.iis.wf.importer.content.approver; /** * Basic content approver checking PDF file header. * @author mhorst * */ public class PDFHeaderBasedContentApprover implements ContentApprover, IdentifiableContentApprover { // ------------------------ LOGIC -------------------------- @Override public boolean approve(byte[] data) { if (data == null || data.length < 5) { return false; } return isValidPdfHeader(data); } @Override public boolean approve(String id, byte[] content) { return approve(content); } // ------------------------ PRIVATE -------------------------- private boolean isValidPdfHeader(byte[] data) { return data[0]==0x25 && // % data[1]==0x50 && // P data[2]==0x44 && // D data[3]==0x46 && // F data[4]==0x2D; // - } }