typedef定义block实现监听者模型

#import <Foundation/Foundation.h>
@class loginMgr;
@class AddGroupMemberRpsModel;
@interface addGroupMemberMgr : NSObject
typedef void(^AddGroupMemberObserver)(AddGroupMemberRpsModel*);
@property(nonatomic,strong)loginMgr *loginManager;
@property(nonatomic,assign)BOOL agmTag;
@property(nonatomic,copy)AddGroupMemberObserver observer;
-(void)test;
-(void)setAddGroupMemberListener:(AddGroupMemberObserver)observer isStart:(BOOL)agmTag;
@end

#define log(...) NSLog(__VA_ARGS__)

#import "addGroupMemberMgr.h"
@implementation addGroupMemberMgr
-(void)test{
    
    [self reqInit:@"308" memberIds:@"1416795393998" opType:@"1"];
   
    
}
-(void)reqInit:(NSString*) groupId memberIds:(NSString*)memberIds opType:(NSString*)opType{
    if(_loginManager){
        void(^Listener)(NSDictionary *) = ^(NSDictionary *dict){
            NSDictionary *dict2 = [cfgParseMgr jsonReader:PRE_FAVLIST_CFG subfixType:SUF_FAVLIST_CFG];
            blog(@"dict3>>>\n%@",dict2);
           
            [self createGroupReq:url auth:auth sid:sid userId:userId groupId:groupId memberIds:memberIds opType:opType];
            
        };
        [_loginManager setusrCfgListener:Listener isStart:TRUE];
    }
}
-(void)createGroupReq:(NSString*)url auth:(NSString*)arg1 sid:(NSString*)arg2 userId:(NSString*)arg3 groupId:(NSString*)arg4 memberIds:(NSString*)arg5 opType:(NSString*)arg6{
    
    NSString *str0 = [NSString stringWithFormat:@"&groupId=%@&memberIds=%@&opType=%@",arg4,arg5,arg6];
    blog(@"url(createGroupMgr)>>>\n%@",str1);
    cmnGetHandler *getHandler = [[cmnGetHandler alloc]init];
    [self feedbackRsp:getHandler];
    [getHandler mnReq:url setAuth:arg1 setSid:arg2 setUsrId:arg3 setSufix:str0];
    
    
}
-(void)feedbackRsp:(cmnGetHandler*)getHandler{
    void(^Listener)(NSDictionary *) = ^(NSDictionary *dict0){
        log(@"dict>>>\n%@\nmsg:%@",dict0,[dict0 objectForKey:@"msg"]);
        AddGroupMemberRpsModel *rspModel = [AddGroupMemberRpsModel getAddGroupMemberRpsModel];
        rspModel.code = [dict0 objectForKey:@"code"];
        rspModel.data = [dict0 objectForKey:@"data"];
        rspModel.msg = [dict0 objectForKey:@"msg"];
        rspModel.sid = [dict0 objectForKey:@"sid"];
        if (_agmTag) {
              _observer(rspModel);
        }
      
          };
    [getHandler setListener:Listener isStart:TRUE];
}
-(void)setAddGroupMemberListener:(AddGroupMemberObserver)observer isStart:(BOOL)agmTag{
    _observer = observer;
    _agmTag = agmTag;
}
@end

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值