Tracks the synchronisation state of one object shared between Kademi and an external system, so an integration can tell what has already been synced and which side changed since. Each row belongs to a sync job and names the object by a portable id that both systems agree on, along with the type of object it is. The three dates let a job compare the remote object, the Kademi object and the last completed sync to decide what to do next.
Group: Database Entities
Implements: Relational, Serializable
Properties
| Property | Returns | Description |
|---|---|---|
| adminOrg | Organisation | The account whose data is being synchronised. Never null. |
| id | long | The database identifier of this sync status row. |
| lastLocalModified | Date | When the object was last changed in Kademi, as recorded at the last sync. Compare it against the Kademi record's current modified date to see whether this side has moved on. |
| lastRemoteModified | Date | When the object was last changed in the external system, as recorded at the last sync. Compare it against the remote object's current modified date to see whether the far side has moved on. |
| lastSyncDate | Date | When the last synchronisation of this object finished. Null if it has never completed one. |
| lastSyncDirection | String | Which way the last sync moved the data, to Kademi or from Kademi. Free text set by the integration. |
| lastSyncOperation | String | What the last sync did to the object, such as update, create or delete. Free text set by the integration. |
| objectId | String | The portable identifier of the object, which must mean the same thing on both sides of the integration. It is how a Kademi record and its remote counterpart are matched up. |
| syncJobId | String | Identifies the sync job configuration this row was produced by, so several integrations can track the same object independently. |
| type | String | The kind of object being synchronised, such as profile, org or lead. Free text defined by the integration rather than a fixed set. |
Methods
getId() · getAdminOrg() · setAdminOrg(Organisation adminOrg) · getSyncJobId() · setSyncJobId(String syncJobId) · getType() · setType(String type) · getObjectId() · setObjectId(String objectId) · getLastRemoteModified() · setLastRemoteModified(Date lastRemoteModified) · getLastLocalModified() · setLastLocalModified(Date lastLocalModified) · getLastSyncDate() · setLastSyncDate(Date lastSyncDate) · getLastSyncOperation() · setLastSyncOperation(String lastSyncOperation) · getLastSyncDirection() · setLastSyncDirection(String lastSyncDirection)
getId()
Returns: long
The database identifier of this sync status row.
getAdminOrg()
Returns: Organisation
The account whose data is being synchronised. Never null.
setAdminOrg(Organisation adminOrg)
Returns: void
Sets the account whose data is being synchronised.
| Parameter | Description |
|---|---|
adminOrg | the owning account |
getSyncJobId()
Returns: String
Identifies the sync job configuration this row was produced by, so several integrations can track the same object independently.
setSyncJobId(String syncJobId)
Returns: void
Sets the sync job configuration this row belongs to.
| Parameter | Description |
|---|---|
syncJobId | the sync job's identifier |
getType()
Returns: String
The kind of object being synchronised, such as profile, org or lead. Free text defined by the integration rather than a fixed set.
setType(String type)
Returns: void
Sets the kind of object being synchronised.
| Parameter | Description |
|---|---|
type | the object type, such as profile, org or lead |
getObjectId()
Returns: String
The portable identifier of the object, which must mean the same thing on both sides of the integration. It is how a Kademi record and its remote counterpart are matched up.
setObjectId(String objectId)
Returns: void
Sets the portable identifier of the object, which both systems must agree on.
| Parameter | Description |
|---|---|
objectId | the shared identifier of the synchronised object |
getLastRemoteModified()
Returns: Date
When the object was last changed in the external system, as recorded at the last sync. Compare it against the remote object's current modified date to see whether the far side has moved on.
setLastRemoteModified(Date lastRemoteModified)
Returns: void
Sets the external system's modified date for the object as at the last sync.
| Parameter | Description |
|---|---|
lastRemoteModified | the remote object's modified date |
getLastLocalModified()
Returns: Date
When the object was last changed in Kademi, as recorded at the last sync. Compare it against the Kademi record's current modified date to see whether this side has moved on.
setLastLocalModified(Date lastLocalModified)
Returns: void
Sets the Kademi modified date for the object as at the last sync.
| Parameter | Description |
|---|---|
lastLocalModified | the Kademi object's modified date |
getLastSyncDate()
Returns: Date
When the last synchronisation of this object finished. Null if it has never completed one.
setLastSyncDate(Date lastSyncDate)
Returns: void
Sets when the last synchronisation of this object finished.
| Parameter | Description |
|---|---|
lastSyncDate | the date and time the last sync completed |
getLastSyncOperation()
Returns: String
What the last sync did to the object, such as update, create or delete. Free text set by the integration.
setLastSyncOperation(String lastSyncOperation)
Returns: void
Sets what the last sync did to the object.
| Parameter | Description |
|---|---|
lastSyncOperation | the operation performed, such as update, create or delete |
getLastSyncDirection()
Returns: String
Which way the last sync moved the data, to Kademi or from Kademi. Free text set by the integration.
setLastSyncDirection(String lastSyncDirection)
Returns: void
Sets which way the last sync moved the data.
| Parameter | Description |
|---|---|
lastSyncDirection | the direction, such as to Kademi or from Kademi |