@NotNull
    public Map<String, String> getXmpProperties()
    {
        Map<String, String> propertyValueByPath = new HashMap<String, String>();

        if (_xmpMeta != null)
        {
            try {
                IteratorOptions options = new IteratorOptions().setJustLeafnodes(true);
                for (Iterator i = _xmpMeta.iterator(options); i.hasNext(); ) {
                    XMPPropertyInfo prop = (XMPPropertyInfo)i.next();
                    String path = prop.getPath();
                    String value = prop.getValue();
                    if (path != null && value != null) {
                        propertyValueByPath.put(path, value);
                    }
                }
            } catch (XMPException ignored) {
            }
        }

        return Collections.unmodifiableMap(propertyValueByPath);
    }
@ NotNull public Map < String , String > getXmpProperties ( ) { Map < String , String > propertyValueByPath = new HashMap < String , String > ( ) ; if ( _xmpMeta != null ) { try { IteratorOptions options = new IteratorOptions ( ) . setJustLeafnodes ( true ) ; for ( Iterator i = _xmpMeta . iterator ( options ) ; i . hasNext ( ) ; ) { XMPPropertyInfo prop = ( XMPPropertyInfo ) i . next ( ) ; String path = prop . getPath ( ) ; String value = prop . getValue ( ) ; if ( path != null && value != null ) { propertyValueByPath . put ( path , value ) ; } } } catch ( XMPException ignored ) { } } return Collections . unmodifiableMap ( propertyValueByPath ) ; }
Gets a map of all XMP properties in this directory.
<p>
This is required because XMP properties are represented as strings, whereas the rest of this library
uses integers for keys.