2017-02-23 17:54:37 +00:00
|
|
|
/**
|
|
|
|
* Copyright (c) 2015-present, Facebook, Inc.
|
|
|
|
* All rights reserved.
|
|
|
|
*
|
|
|
|
* This source code is licensed under the BSD-style license found in the
|
|
|
|
* LICENSE file in the root directory of this source tree. An additional grant
|
|
|
|
* of patent rights can be found in the PATENTS file in the same directory.
|
|
|
|
*/
|
|
|
|
|
|
|
|
#import <React/RCTDefines.h>
|
|
|
|
|
|
|
|
#if RCT_DEV // Only supported in dev mode
|
|
|
|
|
|
|
|
@class RCTSRWebSocket;
|
|
|
|
|
|
|
|
@protocol RCTWebSocketProtocolDelegate
|
|
|
|
|
2017-08-29 14:59:40 +00:00
|
|
|
- (void)webSocketDidOpen:(RCTSRWebSocket *)webSocket;
|
|
|
|
|
2017-02-23 17:54:37 +00:00
|
|
|
- (void)webSocket:(RCTSRWebSocket *)webSocket didReceiveMessage:(id)message;
|
|
|
|
|
2017-08-07 13:57:56 +00:00
|
|
|
- (void)webSocket:(RCTSRWebSocket *)webSocket didCloseWithCode:(NSInteger)code reason:(NSString *)reason wasClean:(BOOL)wasClean;
|
|
|
|
|
2017-02-23 17:54:37 +00:00
|
|
|
@end
|
|
|
|
|
|
|
|
@interface RCTReconnectingWebSocket : NSObject
|
|
|
|
|
|
|
|
- (instancetype)initWithURL:(NSURL *)url;
|
|
|
|
@property (nonatomic, weak) id<RCTWebSocketProtocolDelegate> delegate;
|
2017-08-14 15:07:13 +00:00
|
|
|
/** @brief Must be set before -start to have effect */
|
|
|
|
@property (nonatomic, strong) dispatch_queue_t delegateDispatchQueue;
|
2017-04-17 14:28:46 +00:00
|
|
|
- (void)send:(id)data;
|
2017-02-23 17:54:37 +00:00
|
|
|
- (void)start;
|
|
|
|
- (void)stop;
|
|
|
|
|
|
|
|
@end
|
|
|
|
|
|
|
|
#endif
|