2017-02-23 17:54:37 +00:00
|
|
|
/**
|
2018-09-11 22:27:47 +00:00
|
|
|
* Copyright (c) Facebook, Inc. and its affiliates.
|
2017-02-23 17:54:37 +00:00
|
|
|
*
|
2018-02-17 02:24:55 +00:00
|
|
|
* This source code is licensed under the MIT license found in the
|
|
|
|
* LICENSE file in the root directory of this source tree.
|
2017-02-23 17:54:37 +00:00
|
|
|
*/
|
|
|
|
|
|
|
|
#import <React/RCTDefines.h>
|
|
|
|
|
|
|
|
#if RCT_DEV // Only supported in dev mode
|
|
|
|
|
2017-11-21 02:12:13 +00:00
|
|
|
@class RCTReconnectingWebSocket;
|
2017-08-07 13:57:56 +00:00
|
|
|
|
2017-11-21 02:12:13 +00:00
|
|
|
@protocol RCTReconnectingWebSocketDelegate
|
|
|
|
- (void)reconnectingWebSocketDidOpen:(RCTReconnectingWebSocket *)webSocket;
|
|
|
|
- (void)reconnectingWebSocket:(RCTReconnectingWebSocket *)webSocket didReceiveMessage:(id)message;
|
|
|
|
/** Sent when the socket has closed due to error or clean shutdown. An automatic reconnect will start shortly. */
|
|
|
|
- (void)reconnectingWebSocketDidClose:(RCTReconnectingWebSocket *)webSocket;
|
2017-02-23 17:54:37 +00:00
|
|
|
@end
|
|
|
|
|
|
|
|
@interface RCTReconnectingWebSocket : NSObject
|
|
|
|
|
2017-11-21 02:12:13 +00:00
|
|
|
/** Delegate will be messaged on the given queue (required). */
|
|
|
|
- (instancetype)initWithURL:(NSURL *)url queue:(dispatch_queue_t)queue;
|
|
|
|
|
|
|
|
@property (nonatomic, weak) id<RCTReconnectingWebSocketDelegate> delegate;
|
2017-04-17 14:28:46 +00:00
|
|
|
- (void)send:(id)data;
|
2017-02-23 17:54:37 +00:00
|
|
|
- (void)start;
|
|
|
|
- (void)stop;
|
|
|
|
|
2017-11-21 02:12:13 +00:00
|
|
|
- (instancetype)initWithURL:(NSURL *)url __deprecated_msg("Use initWithURL:queue: instead");
|
|
|
|
/** @brief Must be set before -start to have effect */
|
|
|
|
@property (nonatomic, strong) dispatch_queue_t delegateDispatchQueue __deprecated_msg("Use initWithURL:queue: instead");
|
|
|
|
|
2017-02-23 17:54:37 +00:00
|
|
|
@end
|
|
|
|
|
|
|
|
#endif
|