Package com.clover.sdk.v3.analytics
Class AnalyticalEvent
- java.lang.Object
-
- com.clover.sdk.GenericParcelable
-
- com.clover.sdk.v3.analytics.AnalyticalEvent
-
- All Implemented Interfaces:
Parcelable
,JSONifiable
,Validator
public class AnalyticalEvent extends GenericParcelable implements Validator, JSONifiable
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interface
AnalyticalEvent.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<AnalyticalEvent>
CREATOR
static JSONifiable.Creator<AnalyticalEvent>
JSON_CREATOR
-
Fields inherited from interface android.os.Parcelable
CONTENTS_FILE_DESCRIPTOR, PARCELABLE_WRITE_RETURN_VALUE
-
-
Constructor Summary
Constructors Modifier Constructor Description AnalyticalEvent()
Constructs a new empty instance.protected
AnalyticalEvent(boolean noInit)
Constructs a new empty instance.AnalyticalEvent(AnalyticalEvent src)
Constructs a new instance that is a deep copy of the source instance.AnalyticalEvent(String json)
Constructs a new instance from the given JSON String.AnalyticalEvent(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
clearEvent()
Clears the 'event' field, the 'has' method for this field will now return falsevoid
clearPayload()
Clears the 'payload' field, the 'has' method for this field will now return falseboolean
containsChanges()
Returns true if this instance has any changes.AnalyticalEvent
copyChanges()
Create a copy of this instance that contains only fields that were set after the constructor was called.Event
getEvent()
protected GenericClient
getGenericClient()
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.Reference
getPayload()
boolean
hasEvent()
Checks whether the 'event' field has been set, however the value could be nullboolean
hasPayload()
Checks whether the 'payload' field has been set, however the value could be nullboolean
isNotNullEvent()
Checks whether the 'event' field is set and is not nullboolean
isNotNullPayload()
Checks whether the 'payload' field is set and is not nullvoid
mergeChanges(AnalyticalEvent 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.AnalyticalEvent
setEvent(Event event)
Sets the field 'event'.AnalyticalEvent
setPayload(Reference payload)
Sets the field 'payload'.void
validate()
-
Methods inherited from class com.clover.sdk.GenericParcelable
describeContents, getBundle, toString, writeToParcel
-
-
-
-
Field Detail
-
CREATOR
public static final Parcelable.Creator<AnalyticalEvent> CREATOR
-
JSON_CREATOR
public static final JSONifiable.Creator<AnalyticalEvent> JSON_CREATOR
-
-
Constructor Detail
-
AnalyticalEvent
public AnalyticalEvent()
Constructs a new empty instance.
-
AnalyticalEvent
protected AnalyticalEvent(boolean noInit)
Constructs a new empty instance.
-
AnalyticalEvent
public AnalyticalEvent(String json) throws IllegalArgumentException
Constructs a new instance from the given JSON String.- Throws:
IllegalArgumentException
-
AnalyticalEvent
public AnalyticalEvent(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.
-
AnalyticalEvent
public AnalyticalEvent(AnalyticalEvent src)
Constructs a new instance that is a deep copy of the source instance. It does not copy the bundle or changelog.
-
-
Method Detail
-
getEvent
public Event getEvent()
-
getPayload
public Reference getPayload()
-
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
-
isNotNullEvent
public boolean isNotNullEvent()
Checks whether the 'event' field is set and is not null
-
isNotNullPayload
public boolean isNotNullPayload()
Checks whether the 'payload' field is set and is not null
-
hasEvent
public boolean hasEvent()
Checks whether the 'event' field has been set, however the value could be null
-
hasPayload
public boolean hasPayload()
Checks whether the 'payload' field has been set, however the value could be null
-
setEvent
public AnalyticalEvent setEvent(Event event)
Sets the field 'event'.
-
setPayload
public AnalyticalEvent setPayload(Reference payload)
Sets the field 'payload'. The parameter is not copied so changes to it will be reflected in this instance and vice-versa.
-
clearEvent
public void clearEvent()
Clears the 'event' field, the 'has' method for this field will now return false
-
clearPayload
public void clearPayload()
Clears the 'payload' 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 AnalyticalEvent copyChanges()
Create a copy of this instance that contains only fields that were set after the constructor was called.
-
mergeChanges
public void mergeChanges(AnalyticalEvent src)
Copy all the changed fields from the given source to this instance.
-
-