in idb_companion/Server/FBIDBServiceHandler.mm [981:1010]
Status FBIDBServiceHandler::get_setting(ServerContext* context, const idb::GetSettingRequest* request, idb::GetSettingResponse* response)
{@autoreleasepool{
switch (request->setting()) {
case idb::Setting::LOCALE: {
NSError *error = nil;
NSString *localeIdentifier = [[_commandExecutor get_current_locale_identifier] await:&error];
if (error) {
return Status(grpc::StatusCode::INTERNAL, error.localizedDescription.UTF8String);
}
response->set_value(localeIdentifier.UTF8String);
return Status::OK;
}
case idb::Setting::ANY: {
NSError *error = nil;
NSString *name = nsstring_from_c_string(request->name().c_str());
NSString *domain = nil;
if (request->domain().length() > 0) {
domain = nsstring_from_c_string(request->domain().c_str());
}
NSString *value = [[_commandExecutor get_preference:name domain:domain] await:&error];
if (error) {
return Status(grpc::StatusCode::INTERNAL, error.localizedDescription.UTF8String);
}
response->set_value(value.UTF8String);
return Status::OK;
}
default:
return Status(grpc::StatusCode::INTERNAL, "Unknown setting case");
}
}}