Class Attribute

    • Constructor Detail

      • Attribute

        public Attribute()
        Constructs a new empty instance.
      • Attribute

        protected Attribute​(boolean noInit)
        Constructs a new empty instance.
      • Attribute

        public Attribute​(JSONObject jsonObject)
        Construct a new instance backed by the given JSONObject, the parameter is not copied so changes to it will be reflected in this instance and vice-versa.
      • Attribute

        public Attribute​(Attribute src)
        Constructs a new instance that is a deep copy of the source instance. It does not copy the bundle or changelog.
    • Method Detail

      • getId

        public String getId()
        Unique identifier
      • getName

        public String getName()
        Name of this attribute
      • getItemGroup

        public Reference getItemGroup()
        The item group this attribute belongs to
      • getOptions

        public List<Option> getOptions()
        Options associated with this attribute
      • getJSONObject

        public JSONObject getJSONObject()
        Returns the internal JSONObject backing this instance, the return value is not a copy so changes to it will be reflected in this instance and vice-versa.
        Specified by:
        getJSONObject in interface JSONifiable
      • isNotNullId

        public boolean isNotNullId()
        Checks whether the 'id' field is set and is not null
      • isNotNullName

        public boolean isNotNullName()
        Checks whether the 'name' field is set and is not null
      • isNotNullItemGroup

        public boolean isNotNullItemGroup()
        Checks whether the 'itemGroup' field is set and is not null
      • isNotNullOptions

        public boolean isNotNullOptions()
        Checks whether the 'options' field is set and is not null
      • isNotEmptyOptions

        public boolean isNotEmptyOptions()
        Checks whether the 'options' field is set and is not null and is not empty
      • hasId

        public boolean hasId()
        Checks whether the 'id' field has been set, however the value could be null
      • hasName

        public boolean hasName()
        Checks whether the 'name' field has been set, however the value could be null
      • hasItemGroup

        public boolean hasItemGroup()
        Checks whether the 'itemGroup' field has been set, however the value could be null
      • hasOptions

        public boolean hasOptions()
        Checks whether the 'options' field has been set, however the value could be null
      • setName

        public Attribute setName​(String name)
        Sets the field 'name'.
      • setItemGroup

        public Attribute setItemGroup​(Reference itemGroup)
        Sets the field 'itemGroup'. The parameter is not copied so changes to it will be reflected in this instance and vice-versa.
      • setOptions

        public Attribute setOptions​(List<Option> options)
        Sets the field 'options'. Nulls in the given List are skipped. List parameter is copied, so it will not reflect any changes, but objects inside it will.
      • clearId

        public void clearId()
        Clears the 'id' field, the 'has' method for this field will now return false
      • clearName

        public void clearName()
        Clears the 'name' field, the 'has' method for this field will now return false
      • clearItemGroup

        public void clearItemGroup()
        Clears the 'itemGroup' field, the 'has' method for this field will now return false
      • clearOptions

        public void clearOptions()
        Clears the 'options' field, the 'has' method for this field will now return false
      • containsChanges

        public boolean containsChanges()
        Returns true if this instance has any changes.
      • resetChangeLog

        public void resetChangeLog()
        Reset the log of changes made to this instance, calling copyChanges() after this would return an empty instance.
      • copyChanges

        public Attribute copyChanges()
        Create a copy of this instance that contains only fields that were set after the constructor was called.
      • mergeChanges

        public void mergeChanges​(Attribute src)
        Copy all the changed fields from the given source to this instance.