Class Comment

  • All Implemented Interfaces:
    Comparable<Comment>

    public class Comment
    extends Object
    implements Comparable<Comment>
    Store a single comment and/or rating. Unmodifiable except for marking as hidden. Stores a one-second timestamp but designed so identical comments within a certain time frame (bucket) are equal. Don't store in a plain set - see equals().
    Since:
    0.9.31
    • Constructor Detail

      • Comment

        public Comment​(String text,
                       String name,
                       int rating)
        My comment, now
        Parameters:
        text - may be null, will be truncated to max length, newlines replaced with spaces
        name - may be null, will be truncated to max length, newlines and commas removed
        rating - 0-5
      • Comment

        public Comment​(String text,
                       String name,
                       int rating,
                       long time,
                       boolean isMine)
        Parameters:
        text - may be null, will be truncated to max length, newlines replaced with spaces
        name - may be null, will be truncated to max length, newlines and commas removed
        time - java time (ms)
        rating - 0-5
    • Method Detail

      • getText

        public String getText()
      • getName

        public String getName()
      • getRating

        public int getRating()
      • getTime

        public long getTime()
        java time (ms)
      • isMine

        public boolean isMine()
      • isHidden

        public boolean isHidden()
      • setHidden

        void setHidden()
      • getID

        public int getID()
        A unique ID that may be used to delete this comment from the CommentSet via remove(int). NOT persisted across restarts.
      • toPersistentString

        public String toPersistentString()
        Returns:
        time,rating,mine,hidden,name,text
      • fromPersistentString

        public static Comment fromPersistentString​(String s)
        Returns:
        null if can't be parsed
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class Object
        Returns:
        bucket number
      • equals

        public boolean equals​(Object o)
        Comments within 10 minutes (not necessarily in same bucket) and otherwise equal are considered equal. Violates contract, as equal objects may have different hashcodes and be in adjacent buckets.
        Overrides:
        equals in class Object
      • equalsIgnoreTimestamp

        public boolean equalsIgnoreTimestamp​(Comment c)
        Ignores timestamp
        Parameters:
        c - non-null