private List<CosStream> getStream() { COSStream stream = ((org.verapdf.pd.PDMetadata) this.simplePDObject).getCOSStream(); if (stream != null) { List<CosStream> streams = new ArrayList<>(MAX_NUMBER_OF_ELEMENTS); streams.add(new GFCosStream(stream)); return Collections.unmodifiableList(streams); } return Collections.emptyList(); } }
@Override public String getFilter() { List<ASAtom> filters = ((org.verapdf.pd.PDMetadata) this.simplePDObject) .getFilters(); if (filters != null && !filters.isEmpty()) { StringBuilder result = new StringBuilder(); for (ASAtom filter : filters) { result.append(filter.getValue()).append(' '); } return result.substring(0, result.length() - 1); } return null; }
public PDMetadata getMetadata() { COSObject obj = getKey(ASAtom.METADATA); if (obj.getType() == COSObjType.COS_STREAM) { return new PDMetadata(obj); } return null; }
@Override public InputStream getMetadata() { if (imageXObject != null && !imageXObject.empty()) { PDMetadata metadata = imageXObject.getMetadata(); return metadata == null ? null : metadata.getStream(); } return null; }
private static MetadataImpl parseMetadata(PDMetadata meta, PDDocument document) { try { VeraPDFMeta xmp = VeraPDFMeta.parse(meta.getStream()); if (xmp != null) { return new MetadataImpl(xmp, meta.getObject(), document.getDocument(), false); } } catch (XMPException e) { LOGGER.log(Level.FINE, "Problems with XMP parsing. " + e.getMessage(), e); } return null; }
public COSStream getCOSStream() { COSBase currentObject = getObject().getDirectBase(); if (currentObject.getType() == COSObjType.COS_STREAM) { return (COSStream) currentObject; } LOGGER.log(Level.SEVERE, "Metadata object is not a stream"); return null; }
@Override public boolean isPDFObjectPresent() { return this.metadata != null && !metadata.empty(); }
public List<ASAtom> getFilters() { COSObject filters = getKey(ASAtom.FILTER); if (filters != null) { List<ASAtom> res = new ArrayList<>(); switch (filters.getType()) { case COS_NAME: res.add(filters.getName()); break; case COS_ARRAY: for (int i = 0; i < filters.size().intValue(); ++i) { COSObject elem = filters.at(i); if (elem.getType() == COSObjType.COS_NAME) { res.add(elem.getName()); } else { LOGGER.log(Level.SEVERE, "Filter array contain non COSName element"); } } break; } return Collections.unmodifiableList(res); } return Collections.emptyList(); }
public PDMetadata getMetadata() { COSObject meta = getKey(ASAtom.METADATA); if (meta != null && meta.getType() == COSObjType.COS_STREAM) { return new PDMetadata(meta); } return null; }
@Override public InputStream getMetadataStream() { if (formXObject != null && !formXObject.empty()) { PDMetadata metadata = formXObject.getMetadata(); return metadata == null ? null : metadata.getStream(); } return null; }
public PDMetadata getMetadata() { COSObject metadata = getKey(ASAtom.METADATA); if (metadata != null && metadata.getType() == COSObjType.COS_STREAM) { return new PDMetadata(metadata); } return null; }
@Override public InputStream getMetadataStream() { if (profile != null && !profile.empty()) { PDMetadata meta = profile.getMetadata(); if (meta != null) { return meta.getStream(); } } return null; }
public InputStream getStream() { COSStream stream = getCOSStream(); if (stream != null) { return stream.getData(COSStream.FilterFlags.DECODE); } return null; } }
public PDMetadata getMetadata() { COSObject object = getKey(ASAtom.METADATA); if (object != null && object.getType() == COSObjType.COS_STREAM) { return new PDMetadata(object); } return null; }
private static InputStream getMetadataStream(COSDocument document) throws IOException { PDMetadata meta = document.getPDDocument().getMetadata(); if (meta != null) { return meta.getStream(); } return null; }
public PDMetadata getMetadata() { COSObject metadata = getKey(ASAtom.METADATA); if (metadata != null && metadata.getType() == COSObjType.COS_STREAM) { return new PDMetadata(metadata); } return null; } }
private List<XMPPackage> getXMPPackage() { List<XMPPackage> xmp = new ArrayList<>(MAX_NUMBER_OF_ELEMENTS); PDFAFlavour flavour = StaticContainers.getFlavour(); try (InputStream stream = ((org.verapdf.pd.PDMetadata) this.simplePDObject).getStream()) { if (stream != null) { VeraPDFMeta metadata = VeraPDFMeta.parse(stream); if (isMainMetadata) { xmp.add(new AXLMainXMPPackage(metadata, true, flavour)); } else if (flavour == null || flavour.getPart() != PDFAFlavour.Specification.ISO_19005_1) { VeraPDFXMPNode mainExtensionNode = null; try (InputStream mainStream = mainMetadata.getStream()) { if (mainStream != null) { VeraPDFMeta mainMeta = VeraPDFMeta.parse(mainStream); mainExtensionNode = mainMeta.getExtensionSchemasNode(); } xmp.add(new AXLXMPPackage(metadata, true, mainExtensionNode, flavour)); } } } } catch (XMPException | IOException e) { LOGGER.log(Level.FINE, "Problems with parsing metadata. " + e.getMessage(), e); if (isMainMetadata) { xmp.add(new AXLMainXMPPackage(null, false, flavour)); } else if (flavour == null || flavour.getPart() != PDFAFlavour.Specification.ISO_19005_1) { xmp.add(new AXLXMPPackage(null, false, null, flavour)); } } return xmp; }