jiuyiUniapp/service/node_modules/react-native/React/Inspector/RCTCxxInspectorPackagerConn...

73 lines
1.6 KiB
Plaintext
Raw Normal View History

2025-02-13 09:59:20 +08:00
/*
* Copyright (c) Meta Platforms, Inc. and affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
#import <React/RCTInspectorPackagerConnection.h>
#if RCT_DEV || RCT_REMOTE_PROFILE
#import <React/RCTDefines.h>
#import <React/RCTInspector.h>
#import <React/RCTLog.h>
#import <React/RCTUtils.h>
#import <SocketRocket/SRWebSocket.h>
#import <jsinspector-modern/InspectorPackagerConnection.h>
#import <chrono>
#import <memory>
#import "RCTCxxInspectorPackagerConnection.h"
#import "RCTCxxInspectorPackagerConnectionDelegate.h"
#import "RCTCxxInspectorWebSocketAdapter.h"
#import "RCTInspectorUtils.h"
using namespace facebook::react::jsinspector_modern;
@interface RCTCxxInspectorPackagerConnection () {
std::unique_ptr<InspectorPackagerConnection> _cxxImpl;
}
@end
@implementation RCTCxxInspectorPackagerConnection
RCT_NOT_IMPLEMENTED(-(instancetype)init)
- (instancetype)initWithURL:(NSURL *)url
{
if (self = [super init]) {
auto metadata = [RCTInspectorUtils getHostMetadata];
_cxxImpl = std::make_unique<InspectorPackagerConnection>(
[url absoluteString].UTF8String,
metadata.deviceName.UTF8String,
[[NSBundle mainBundle] bundleIdentifier].UTF8String,
std::make_unique<RCTCxxInspectorPackagerConnectionDelegate>());
}
return self;
}
- (void)sendEventToAllConnections:(NSString *)event
{
_cxxImpl->sendEventToAllConnections(event.UTF8String);
}
- (bool)isConnected
{
return _cxxImpl->isConnected();
}
- (void)connect
{
_cxxImpl->connect();
}
- (void)closeQuietly
{
_cxxImpl->closeQuietly();
}
@end
#endif