Class MPropertyContainer

    • Constructor Detail

      • MPropertyContainer

        public MPropertyContainer()
        Creates an empty property container.
    • Method Detail

      • clear

        public void clear()
        Clears properties.
      • size

        public int size()
        Gets the total number of properties.
        Returns:
        number of properties
      • getKeys

        public String[] getKeys()
        Returns the property keys.
        Returns:
        the array of keys
      • getKey

        public String getKey​(int i)
        Gets a property key.
        Parameters:
        i - property index
        Returns:
        the property name
      • get

        public MProp get​(String key)
        Gets a property object.
        Parameters:
        key - property name
        Returns:
        the value of the property, or null if the key is not found
      • setString

        public void setString​(String key,
                              String value)
        Sets a property. Setting null value removes the property.
        Parameters:
        key - the property name
        value - the value or null
      • set

        public void set​(String key,
                        MProp value)
        Sets a property object. Setting null value removes the property.
        Parameters:
        key - the property name
        value - the value or null
      • set

        public void set​(String key,
                        MProp value,
                        int opts)
        Sets a property object. Setting null value removes the property.
        Parameters:
        key - the property name
        value - the value or null
        opts - 0 or MProp.COORDDEP
      • remove

        public void remove​(MProp p)
        Removes a property.
        Parameters:
        p - the object
        Since:
        Marvin 4.1.6, 02/21/2007
      • replace

        public void replace​(MProp oldp,
                            MProp newp)
        Replaces or removes a property.
        Parameters:
        oldp - the old object
        newp - the new object or null to remove
        Since:
        Marvin 4.1.6, 02/14/2007
      • contains

        public boolean contains​(MProp p)
        Tests whether the container contains the specified property object.
        Parameters:
        p - the object
        Since:
        Marvin 4.1.6, 02/21/2007
      • isValid

        public boolean isValid​(MProp prop)
        Tests whether a coordinate dependent property is still valid.
        Parameters:
        prop - the property
        Returns:
        true if the property is valid, false otherwise
        See Also:
        MProp.COORDDEP, set(String, MProp, int)
      • isSelfReference

        public boolean isSelfReference​(MProp p)
        Tests whether a property is a self reference to the containing molecule.
        Parameters:
        p - the property
        Returns:
        true if the property is a self reference, false otherwise
        Since:
        Marvin 5.0, 11/05/2007
      • isHierarchic

        public boolean isHierarchic()
        Tests whether the property list contains subcollections like MListProp and MHashProp. A property list containing names in MDL RDfile style can be made hierarchic by calling hierarchize().
        Returns:
        true if the property list contains subcollections, false otherwise
        Since:
        Marvin 4.1.6, 02/15/2007
      • hierarchize

        public String hierarchize()
        Converts hierarchically specified RDF properties to MListProp and MHashProp objects.
        Returns:
        the most likely "root" name (the name of the first MHashProp type property) or null
        Since:
        Marvin 4.1.6, 02/14/2007
        See Also:
        flatten(), isHierarchic()
      • flatten

        public void flatten()
        Flattens hierarchically specified RDF properties. The inverse operation of hierarchize().
        Since:
        Marvin 4.1.6, 02/14/2007
        See Also:
        isHierarchic()
      • getPropList

        public List<MProp> getPropList()
        Gets the list of basic properties. Properties containers like MListProp and MHashProp are not added to the list but searched recursively for their basic elements.
        Returns:
        the list of MProp objects
        Since:
        Marvin 4.1.6, 02/15/2007
      • getObject

        public Object getObject​(String key)
        Gets a property object.
        Parameters:
        key - property name
        Returns:
        the value of the property, or null if the key is not found
      • setObject

        public void setObject​(String key,
                              Object val)
        Sets a property object. Setting null value removes the property.
        Parameters:
        key - the property name
        val - the value or null
      • clone

        public Object clone()
        Clones this object.
        Overrides:
        clone in class Object