Package com.clover.sdk.v3.inventory
Class Attribute
- java.lang.Object
-
- com.clover.sdk.GenericParcelable
-
- com.clover.sdk.v3.inventory.Attribute
-
- All Implemented Interfaces:
Parcelable
,JSONifiable
,Validator
public class Attribute extends GenericParcelable implements Validator, JSONifiable
- See Also:
IInventoryService
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interface
Attribute.Constraints
-
Nested classes/interfaces inherited from interface com.clover.sdk.JSONifiable
JSONifiable.Creator<T>
-
Nested classes/interfaces inherited from interface android.os.Parcelable
Parcelable.ClassLoaderCreator<T extends Object>, Parcelable.Creator<T extends Object>
-
-
Field Summary
Fields Modifier and Type Field Description static Parcelable.Creator<Attribute>
CREATOR
static JSONifiable.Creator<Attribute>
JSON_CREATOR
-
Fields inherited from interface android.os.Parcelable
CONTENTS_FILE_DESCRIPTOR, PARCELABLE_WRITE_RETURN_VALUE
-
-
Constructor Summary
Constructors Modifier Constructor Description Attribute()
Constructs a new empty instance.protected
Attribute(boolean noInit)
Constructs a new empty instance.Attribute(Attribute src)
Constructs a new instance that is a deep copy of the source instance.Attribute(String json)
Constructs a new instance from the given JSON String.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.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
clearId()
Clears the 'id' field, the 'has' method for this field will now return falsevoid
clearItemGroup()
Clears the 'itemGroup' field, the 'has' method for this field will now return falsevoid
clearName()
Clears the 'name' field, the 'has' method for this field will now return falsevoid
clearOptions()
Clears the 'options' field, the 'has' method for this field will now return falseboolean
containsChanges()
Returns true if this instance has any changes.Attribute
copyChanges()
Create a copy of this instance that contains only fields that were set after the constructor was called.protected GenericClient
getGenericClient()
String
getId()
Unique identifierReference
getItemGroup()
The item group this attribute belongs toJSONObject
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.String
getName()
Name of this attributeList<Option>
getOptions()
Options associated with this attributeboolean
hasId()
Checks whether the 'id' field has been set, however the value could be nullboolean
hasItemGroup()
Checks whether the 'itemGroup' field has been set, however the value could be nullboolean
hasName()
Checks whether the 'name' field has been set, however the value could be nullboolean
hasOptions()
Checks whether the 'options' field has been set, however the value could be nullboolean
isNotEmptyOptions()
Checks whether the 'options' field is set and is not null and is not emptyboolean
isNotNullId()
Checks whether the 'id' field is set and is not nullboolean
isNotNullItemGroup()
Checks whether the 'itemGroup' field is set and is not nullboolean
isNotNullName()
Checks whether the 'name' field is set and is not nullboolean
isNotNullOptions()
Checks whether the 'options' field is set and is not nullvoid
mergeChanges(Attribute src)
Copy all the changed fields from the given source to this instance.void
resetChangeLog()
Reset the log of changes made to this instance, calling copyChanges() after this would return an empty instance.Attribute
setId(String id)
Sets the field 'id'.Attribute
setItemGroup(Reference itemGroup)
Sets the field 'itemGroup'.Attribute
setName(String name)
Sets the field 'name'.Attribute
setOptions(List<Option> options)
Sets the field 'options'.void
validate()
-
Methods inherited from class com.clover.sdk.GenericParcelable
describeContents, getBundle, toString, writeToParcel
-
-
-
-
Field Detail
-
CREATOR
public static final Parcelable.Creator<Attribute> CREATOR
-
JSON_CREATOR
public static final JSONifiable.Creator<Attribute> JSON_CREATOR
-
-
Constructor Detail
-
Attribute
public Attribute()
Constructs a new empty instance.
-
Attribute
protected Attribute(boolean noInit)
Constructs a new empty instance.
-
Attribute
public Attribute(String json) throws IllegalArgumentException
Constructs a new instance from the given JSON String.- Throws:
IllegalArgumentException
-
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
-
getGenericClient
protected GenericClient getGenericClient()
- Specified by:
getGenericClient
in classGenericParcelable
-
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 interfaceJSONifiable
-
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
-
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.
-
-