Class AbstractComment

  • All Implemented Interfaces:

    public abstract class AbstractComment
    extends Object
    implements Comment
    The AbstractComment implements Comment and provides the API implementation, at the same time offering abstract methods with which concrete implementations can control retrieval and storage of resources.
    • Method Detail

      • addAttachment

        public final Resource addAttachment​(String name,
                                            InputStream inputStream,
                                            String mimeType)
                                     throws CommentException
        Attach a file to this comment.
        Specified by:
        addAttachment in interface Comment
        name - The name of the file to attach.
        inputStream - The InputStream representing the contents of the file.
        mimeType - The mime-type of this file.
        The Resource representing the attachment just added.
        CommentException - Upon encountering an error during persistence of the attachment.
      • getAnnotationData

        public final String getAnnotationData()
        Description copied from interface: Comment
        Returns the string representing annotation data that is part of this comment and pertains to the target of the associated comment collection.
        Specified by:
        getAnnotationData in interface Comment
        The string of the annotation data, or null if none is present.
      • getAttachment

        public final Resource getAttachment​(String name)
        Retrieve an attachment of this comment by its file name.
        Specified by:
        getAttachment in interface Comment
        name - The file name of the attachment.
        A Resource representing the attachment, or null if no attachment with the given name exists.
      • getAuthorName

        public final String getAuthorName()
        Description copied from interface: Comment
        Returns the author's identifying name that represents the author of this comment. This may be a user ID, a regular name, depending on the implementation.
        Specified by:
        getAuthorName in interface Comment
        The string representing the author name.
      • getAttachmentMap

        public final Map<String,​Resource> getAttachmentMap()
        Retrieves a map, an entry of which represents a file-name/attachment pair. The map contains all the attachments of the comment.
        Specified by:
        getAttachmentMap in interface Comment
        A Map representing the available attachments, or an empty map if no attachments are present.
      • getCreated

        public final Calendar getCreated()
        The time stamp this comment was created.
        Specified by:
        getCreated in interface Comment
        A Calendar representing creation time.
      • getLastModified

        public final Calendar getLastModified()
        Description copied from interface: Comment
        Returns the moment in time this collection was last modified.
        Specified by:
        getLastModified in interface Comment
        The calendar representing the last modification.
      • getMessage

        public final String getMessage()
        Retrieves the message of this comment.
        Specified by:
        getMessage in interface Comment
        A String representing the message.
      • getPath

        public final String getPath()
        Get the path of the resource representing this comment.
        Specified by:
        getPath in interface Comment
        A string representing the path.
      • removeAttachment

        public final void removeAttachment​(String name)
                                    throws CommentException
        Removes an attachment from this comment, as identified by its name.
        Specified by:
        removeAttachment in interface Comment
        name - The name of the attachment to remove.
        CommentException - If an error occurs removing the attachment.
      • remove

        public final void remove()
        Removes (deletes) this comment from its collection. If the given comment has already been removed, nothing happens. After removal, the given comment object must be considered invalid/stale and must not be used anymore.
        Specified by:
        remove in interface Comment