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