Flutter Engine
 
Loading...
Searching...
No Matches
flutter::IsolateNameServerNatives Class Reference

#include <isolate_name_server_natives.h>

Static Public Member Functions

static Dart_Handle LookupPortByName (const std::string &name)
 
static bool RegisterPortWithName (Dart_Handle port_handle, const std::string &name)
 
static bool RemovePortNameMapping (const std::string &name)
 

Detailed Description

Definition at line 14 of file isolate_name_server_natives.h.

Member Function Documentation

◆ LookupPortByName()

Dart_Handle flutter::IsolateNameServerNatives::LookupPortByName ( const std::string &  name)
static

Definition at line 16 of file isolate_name_server_natives.cc.

17 {
18 auto name_server = UIDartState::Current()->GetIsolateNameServer();
19 if (!name_server) {
20 return Dart_Null();
21 }
22 Dart_PortEx port = name_server->LookupIsolatePortByName(name);
23 if (port.port_id == ILLEGAL_PORT) {
24 return Dart_Null();
25 }
26 return Dart_NewSendPortEx(port);
27}
std::shared_ptr< IsolateNameServer > GetIsolateNameServer() const
static UIDartState * Current()
DEF_SWITCHES_START aot vmservice shared library name
Definition switch_defs.h:27

References flutter::UIDartState::Current(), flutter::UIDartState::GetIsolateNameServer(), and flutter::name.

◆ RegisterPortWithName()

bool flutter::IsolateNameServerNatives::RegisterPortWithName ( Dart_Handle  port_handle,
const std::string &  name 
)
static

Definition at line 29 of file isolate_name_server_natives.cc.

30 {
31 auto name_server = UIDartState::Current()->GetIsolateNameServer();
32 if (!name_server) {
33 return false;
34 }
35 Dart_PortEx port;
36 Dart_SendPortGetIdEx(port_handle, &port);
37 if (!name_server->RegisterIsolatePortWithName(port, name)) {
38 return false;
39 }
40 return true;
41}

References flutter::UIDartState::Current(), flutter::UIDartState::GetIsolateNameServer(), and flutter::name.

◆ RemovePortNameMapping()

bool flutter::IsolateNameServerNatives::RemovePortNameMapping ( const std::string &  name)
static

Definition at line 43 of file isolate_name_server_natives.cc.

43 {
44 auto name_server = UIDartState::Current()->GetIsolateNameServer();
45 if (!name_server || !name_server->RemoveIsolateNameMapping(name)) {
46 return false;
47 }
48 return true;
49}

References flutter::UIDartState::Current(), flutter::UIDartState::GetIsolateNameServer(), and flutter::name.


The documentation for this class was generated from the following files: