Class InventoryItems

    • Constructor Detail

      • InventoryItems

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

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

        public InventoryItems​(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.
      • InventoryItems

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

      • getItems

        public List<Item> getItems()
        Array of inventory items
      • 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
      • isNotNullItems

        public boolean isNotNullItems()
        Checks whether the 'items' field is set and is not null
      • isNotEmptyItems

        public boolean isNotEmptyItems()
        Checks whether the 'items' field is set and is not null and is not empty
      • hasItems

        public boolean hasItems()
        Checks whether the 'items' field has been set, however the value could be null
      • setItems

        public InventoryItems setItems​(List<Item> items)
        Sets the field 'items'. Nulls in the given List are skipped. List parameter is copied, so it will not reflect any changes, but objects inside it will.
      • clearItems

        public void clearItems()
        Clears the 'items' 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 InventoryItems copyChanges()
        Create a copy of this instance that contains only fields that were set after the constructor was called.
      • mergeChanges

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