Class Attribute


  • public final class Attribute
    extends java.lang.Object
    Represents an attribute.

    According to the man page, an attribute can have the following states:

    • Set - represented by Attribute.State.SET
    • Unset - represented by Attribute.State.UNSET
    • Set to a value - represented by Attribute.State.CUSTOM
    • Unspecified - used to revert an attribute . This is crucial in order to mark an attribute as unspecified in the attributes map and thus preventing following (with lower priority) nodes from setting the attribute to a value at all
    Since:
    3.7
    • Nested Class Summary

      Nested Classes 
      Modifier and Type Class Description
      static class  Attribute.State
      The attribute value state see also https://www.kernel.org/pub/software/scm/git/docs/gitattributes.html
    • Field Summary

      Fields 
      Modifier and Type Field Description
      private java.lang.String key  
      private Attribute.State state  
      private java.lang.String value  
    • Constructor Summary

      Constructors 
      Modifier Constructor Description
        Attribute​(java.lang.String key, java.lang.String value)
      Creates a new instance.
        Attribute​(java.lang.String key, Attribute.State state)
      Creates a new instance
      private Attribute​(java.lang.String key, Attribute.State state, java.lang.String value)  
    • Field Detail

      • key

        private final java.lang.String key
      • value

        private final java.lang.String value
    • Constructor Detail

      • Attribute

        private Attribute​(java.lang.String key,
                          Attribute.State state,
                          java.lang.String value)
      • Attribute

        public Attribute​(java.lang.String key,
                         java.lang.String value)
        Creates a new instance.
        Parameters:
        key - the attribute key. Should not be null.
        value - the custom attribute value
    • Method Detail

      • equals

        public boolean equals​(java.lang.Object obj)
        Overrides:
        equals in class java.lang.Object
      • getKey

        public java.lang.String getKey()
        Get key
        Returns:
        the attribute key (never returns null)
      • getState

        public Attribute.State getState()
        Return the state.
        Returns:
        the state (never returns null)
      • getValue

        public java.lang.String getValue()
        Get value
        Returns:
        the attribute value (may be null)
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object