If an application requires a callback (for example, to allow the client framework to provide notification of synchronization results) create a custom callback handler.
// Interface file #import "SUPDefaultCallbackHandler.h" @interface CallbackHandler : SUPDefaultCallbackHandler { } @end // Implementation file #import "CallbackHandler.H" #import "SUPSynchronizationStatus.h" @implementation CallbackHandler + (CallbackHandler*)getInstance { CallbackHandler* _me_1 = [[CallbackHandler alloc] init]; [_me_1 autorelease]; return _me_1; } //The onSynchronize method overrides the //onSynchronize method from SUPDefaultCallbackHandler. - (SUPSynchronizationActionType)onSynchronize:(SUPObjectList *)syncGroupList withContext:(SUPSynchronizationContext *)context { switch ([context status]) { case SUPSynchronizationStatus_STARTING: // perform necessary action break; case SUPSynchronizationStatus_ERROR: // perform necessary action break; case SUPSynchronizationStatus_FINISHING: // perform necessary action break; case SUPSynchronizationStatus_ASYNC_REPLAY_UPLOADED: // perform necessary action break; case SUPSynchronizationStatus_ASYNC_REPLAY_COMPLETED: // perform necessary action break; case SUPSynchronizationStatus_DOWNLOADING: // perform necessary action break; case SUPSynchronizationStatus_STARTING_ON_NOTIFICATION: // perform necessary action break; case SUPSynchronizationStatus_UPLOADING: // perform necessary action break; default: break; } return SUPSynchronizationAction_CONTINUE; } @end