96 lines
1.5 KiB
Objective-C
Executable File
96 lines
1.5 KiB
Objective-C
Executable File
//
|
|
// MOBFSocket.h
|
|
// CFNetworkDemo
|
|
//
|
|
// Created by fenghj on 15/8/18.
|
|
// Copyright © 2015年 vimfung. All rights reserved.
|
|
//
|
|
|
|
#import <Foundation/Foundation.h>
|
|
|
|
/**
|
|
* Socket连接处理器
|
|
*/
|
|
typedef void (^MOBFTCPClientConnectedHandler) ();
|
|
|
|
/**
|
|
* Socket断开连接处理器
|
|
*
|
|
* @param error 错误信息
|
|
*/
|
|
typedef void (^MOBFTCPClientDisconnectedHandler) (NSError *error);
|
|
|
|
/**
|
|
* Socket接收数据处理器
|
|
*
|
|
* @param data 数据
|
|
*/
|
|
typedef void (^MOBFTCPClientReceiveDataHandler) (NSData *data);
|
|
|
|
/**
|
|
* Socket实现
|
|
*/
|
|
@interface MOBFTCPClient : NSObject
|
|
|
|
/**
|
|
* 主机
|
|
*/
|
|
@property (nonatomic, copy, readonly) NSString *host;
|
|
|
|
/**
|
|
* 端口
|
|
*/
|
|
@property (nonatomic, readonly) UInt32 port;
|
|
|
|
/**
|
|
* 初始化Socket
|
|
*
|
|
* @param host 主机名称
|
|
* @param port 端口号
|
|
*
|
|
* @return Socket对象
|
|
*/
|
|
- (instancetype)initWithHost:(NSString *)host port:(UInt32)port;
|
|
|
|
/**
|
|
* 连接
|
|
*
|
|
* @return YES 连接成功,NO 连接失败
|
|
*/
|
|
- (BOOL)connect;
|
|
|
|
/**
|
|
* 断开连接
|
|
*/
|
|
- (void)disconnect;
|
|
|
|
/**
|
|
* 写入数据
|
|
*
|
|
* @param data 数据
|
|
*/
|
|
- (void)sendData:(NSData *)data;
|
|
|
|
/**
|
|
* 已连接事件
|
|
*
|
|
* @param handler 事件处理器
|
|
*/
|
|
- (void)onConnected:(MOBFTCPClientConnectedHandler)handler;
|
|
|
|
/**
|
|
* 已断开链接事件
|
|
*
|
|
* @param handler 事件处理器
|
|
*/
|
|
- (void)onDisconnected:(MOBFTCPClientDisconnectedHandler)handler;
|
|
|
|
/**
|
|
* 接收数据
|
|
*
|
|
* @param handler 事件处理器
|
|
*/
|
|
- (void)onReceiveData:(MOBFTCPClientReceiveDataHandler)handler;
|
|
|
|
@end
|