#import <Foundation/Foundation.h>
#import "JABActionInfo.h"
#define CMDOPT_KEY_OPCODE @"opCode"
#define CMDOPT_KEY_ACTIONCLASS @"actionClass"
#define CMDOPT_KEY_ACTIONINFO @"actionInfo"
#define CMDOPT_KEY_JABBERID @"jabberID"
#define CMDOPT_KEY_GROUPNAME @"groupName"
#define CMDOPT_KEY_GROUPGUID @"groupGuid"
#define CMDOPT_KEY_TESTCOUNT @"testCount"
#define CMDOPT_KEY_TESTPREFIX @"testPrefix"
#define CMDOPT_KEY_VERBOSE @"verbose"
#define CMDOPT_KEY_SRCDOMAIN @"srcDomain"
#define CMDOPT_KEY_DSTDOMAIN @"dstDomain"
#ifdef DEBUG
#define CMDOPT_KEY_DBPATHVAL @"dbPathVal"
#define CMDOPT_KEY_DBNOWRITEFLAG @"dbNoWrite"
#define CMDOPT_KEY_SHOWSQLFLAG @"showSQL"
#define CMDOPT_KEY_SUMMARYFLAG @"showSummary"
#endif
enum OpResultCodes {
OPRESULT_OK = 0,
OPRESULT_FAILED,
OPRESULT_INVALARGS
};
@class JABActionInfo;
@class JABLogger;
@interface JABAction : NSObject {
NSInteger _operation; NSString *_targetJid; NSInteger _verboseFlag;
JABActionInfo *_actionInfo;
JABLogger *_logger;
NSInteger _result; }
@property(assign, readwrite) NSInteger operation;
@property(retain, readwrite) NSString *targetJid;
@property(assign,readwrite) NSInteger verboseFlag;
@property(assign, readwrite) JABActionInfo *actionInfo; @property(retain, readwrite) JABLogger *logger;
@property(assign, readwrite) NSInteger result;
+ (id) jabActionWithCommandOptions: (NSDictionary *) cmdOpts;
- (id) initWithCommandOptions: (NSDictionary *) cmdOpts;
- (void) dealloc;
- (void) doCommand;
- (void) doAction;
- (void) logResultWithOkMessage: (NSString *) okMsg errorMessage: (NSString *) errMsg;
@end