Modifier and Type | Field and Description |
---|---|
static String |
ApplyBlackList |
static String |
ApplyWhiteList |
static String |
BlackList |
static String |
WhiteList |
Constructor and Description |
---|
XmpFilterBlackWhite() |
Modifier and Type | Method and Description |
---|---|
InputStream |
filter(InputStream xmpIS)
Filter XMP properties from an XML inputstream and return the filtered XML in a new inputstream.
|
boolean |
isActive() |
void |
setConfig(Dictionary cfg) |
InputStream |
sieve(InputStream xmpIS)
Sieve XMP properties from an XML inputstream and return the properties hold back during filtering
in a new XMP document.
|
@Property(boolValue=false, label="Apply Whitelist to XMP Properties", description="Only let the whitelisted xmp properties through, applied before any blacklist") public static final String ApplyWhiteList
@Property(value="", label="Whitelisted XML Names for XMP filtering", description="XML Names, such as \'{namespace-uri}name\', \'{namespace-uri}*\', \'prefix:name\' and \'prefix:*\', passed on during XMP filtering. Use \'[>n]\' or \'[<n]\' to limit the values accepted for multi-valued XMP properties. Example: \'history[<100]\' will only let the first 99 values through", cardinality=2147483647) public static final String WhiteList
@Property(boolValue=true, label="Apply Blacklist to XMP Properties", description="Filter out the blacklisted xmp properties, applied after any whitelisting") public static final String ApplyBlackList
@Property(value="{http://ns.adobe.com/photoshop/1.0/}DocumentAncestors[>100]", label="Blacklisted XML Names for XMP filtering", description="XML Names, such as \'{namespace-uri}name\', \'{namespace-uri}*\', \'prefix:name\' and \'prefix:*\', filtered out during XMP processing. Use \'[>n]\' or \'[<n]\' to limit the values removed for multi-valued XMP properties. Example: \'history[>100]\' discards the 101st and following values.", cardinality=2147483647) public static final String BlackList
public void setConfig(Dictionary cfg)
public InputStream filter(InputStream xmpIS) throws IOException
XmpFilter
filter
in interface XmpFilter
xmpIS
- the XML for filteringIOException
public InputStream sieve(InputStream xmpIS) throws IOException
XmpFilter
XmpFilter.filter(InputStream)
may return the partial contents of an array XMP property (e.g.
the first 10 entries). XmpFilter.sieve(InputStream)
will either report the complete array or
ignore the property.
Example: during ingestion, all but the first entry in xmpMM:History is filtered. The reported
metadata contains just this one entry. If this metadata was written back to the document, all
existing subsequent xmpMM:History entries would be overwritten and lost.
The XmpFilter.sieve(InputStream)
, called on the original data, will return such a property in full,
e.g. the complete xmpMM:History. This allows the caller to merge changes as it desires.sieve
in interface XmpFilter
xmpIS
- the XML for sievingIOException
Copyright © 2010 - 2020 Adobe. All Rights Reserved