Interface Extensible

    • Method Detail

      • addAttachment

        <T> T addAttachment​(Class<T> key,
                            Object value)
        Add arbitrary attachments
        Type Parameters:
        T - class type
        Parameters:
        key - identifier
        value - value
        Returns:
        added attachment
      • getAttachments

        <T> Collection<T> getAttachments()
        Get arbitrary attachments
        Type Parameters:
        T - class type of attachments
        Returns:
        collection of attachments
      • getAttachment

        <T> T getAttachment​(Class<T> key)
        Get an arbitrary attachment
        Type Parameters:
        T - class type of attachments
        Parameters:
        key - identifier
        Returns:
        attachment found
      • removeAttachment

        <T> T removeAttachment​(Class<T> key)
        Remove arbitrary attachments
        Type Parameters:
        T - class type of attachments
        Parameters:
        key - identifier
        Returns:
        attachment removed
      • getProperty

        Object getProperty​(String key)
        Get an property
        Parameters:
        key - property identifier
        Returns:
        found property
      • setProperty

        void setProperty​(String key,
                         Object value)
        Set a property
        Parameters:
        key - property identifier
        value - property value
      • removeProperty

        void removeProperty​(String key)
        Remove a property
        Parameters:
        key - property identifier
      • getProperties

        Set<String> getProperties()
        Get the set of property names
        Returns:
        set of property values
      • setProperties

        void setProperties​(Map<String,​Object> props)
        Set a map of properties
        Parameters:
        props - map to retain