From cb37526263071941b45a2b57f94b86f13314ad58 Mon Sep 17 00:00:00 2001 From: JunsuChoi Date: Fri, 18 Sep 2026 16:48:58 +0900 Subject: [PATCH] [tizen_rpc_port] Use native API wrapper --- packages/tizen_rpc_port/CHANGELOG.md | 1 + packages/tizen_rpc_port/lib/src/parcel.dart | 140 ++++++------------ .../tizen/inc/ftpw_tizen_rpc_port.h | 27 ++++ .../lib/aarch64/libftpw_tizen_rpc_port.so | Bin 0 -> 10448 bytes .../tizen/lib/armel/libftpw_tizen_rpc_port.so | Bin 0 -> 9676 bytes .../tizen/lib/i586/libftpw_tizen_rpc_port.so | Bin 0 -> 9696 bytes .../lib/x86_64/libftpw_tizen_rpc_port.so | Bin 0 -> 14640 bytes .../tizen_rpc_port/tizen/project_def.prop | 4 + 8 files changed, 78 insertions(+), 94 deletions(-) create mode 100644 packages/tizen_rpc_port/tizen/inc/ftpw_tizen_rpc_port.h create mode 100755 packages/tizen_rpc_port/tizen/lib/aarch64/libftpw_tizen_rpc_port.so create mode 100755 packages/tizen_rpc_port/tizen/lib/armel/libftpw_tizen_rpc_port.so create mode 100755 packages/tizen_rpc_port/tizen/lib/i586/libftpw_tizen_rpc_port.so create mode 100755 packages/tizen_rpc_port/tizen/lib/x86_64/libftpw_tizen_rpc_port.so diff --git a/packages/tizen_rpc_port/CHANGELOG.md b/packages/tizen_rpc_port/CHANGELOG.md index a6c1d17c0..19a13eabd 100644 --- a/packages/tizen_rpc_port/CHANGELOG.md +++ b/packages/tizen_rpc_port/CHANGELOG.md @@ -2,6 +2,7 @@ * Omit obvious local variable types. * Reformat with a line length of 100. +* Use wrapper api. ## 0.1.8 diff --git a/packages/tizen_rpc_port/lib/src/parcel.dart b/packages/tizen_rpc_port/lib/src/parcel.dart index 6d960ec0b..0f424d57e 100644 --- a/packages/tizen_rpc_port/lib/src/parcel.dart +++ b/packages/tizen_rpc_port/lib/src/parcel.dart @@ -487,16 +487,14 @@ class Parcel { /// Gets the reader position of this parcel. int get reader { - _ensureFunctionsLoaded(); - final int Function(rpc_port_parcel_h, Pointer)? func = _rpcPortParcelGetReader; - if (func == null) { - throw UnsupportedError( - 'The reader property is not supported on this version of Tizen.', - ); - } return using((Arena arena) { final Pointer pValue = arena(); - final int ret = func(_handle, pValue); + final int ret = _rpcPortParcelGetReader(_handle, pValue); + if (ret == _errorNotImplemented) { + throw UnsupportedError( + 'The reader property is not supported on this version of Tizen.', + ); + } if (ret != 0) { throw PlatformException( code: ret.toString(), @@ -510,14 +508,12 @@ class Parcel { /// Sets the reader position of this parcel. set reader(int value) { RangeError.checkNotNegative(value, 'value'); - _ensureFunctionsLoaded(); - final int Function(rpc_port_parcel_h, int)? func = _rpcPortParcelSetReader; - if (func == null) { + final int ret = _rpcPortParcelSetReader(_handle, value); + if (ret == _errorNotImplemented) { throw UnsupportedError( 'The reader property is not supported on this version of Tizen.', ); } - final int ret = func(_handle, value); if (ret != 0) { throw PlatformException( code: ret.toString(), @@ -528,16 +524,14 @@ class Parcel { /// Gets the data size of this parcel. int get dataSize { - _ensureFunctionsLoaded(); - final int Function(rpc_port_parcel_h, Pointer)? func = _rpcPortParcelGetDataSize; - if (func == null) { - throw UnsupportedError( - 'The dataSize property is not supported on this version of Tizen.', - ); - } return using((Arena arena) { final Pointer pValue = arena(); - final int ret = func(_handle, pValue); + final int ret = _rpcPortParcelGetDataSize(_handle, pValue); + if (ret == _errorNotImplemented) { + throw UnsupportedError( + 'The dataSize property is not supported on this version of Tizen.', + ); + } if (ret != 0) { throw PlatformException( code: ret.toString(), @@ -551,14 +545,12 @@ class Parcel { /// Sets the data size of this parcel. set dataSize(int value) { RangeError.checkNotNegative(value, 'value'); - _ensureFunctionsLoaded(); - final int Function(rpc_port_parcel_h, int)? func = _rpcPortParcelSetDataSize; - if (func == null) { + final int ret = _rpcPortParcelSetDataSize(_handle, value); + if (ret == _errorNotImplemented) { throw UnsupportedError( 'The dataSize property is not supported on this version of Tizen.', ); } - final int ret = func(_handle, value); if (ret != 0) { throw PlatformException( code: ret.toString(), @@ -570,14 +562,12 @@ class Parcel { /// Reserves the capacity of this parcel. void reserve(int size) { RangeError.checkNotNegative(size, 'size'); - _ensureFunctionsLoaded(); - final int Function(rpc_port_parcel_h, int)? func = _rpcPortParcelReserve; - if (func == null) { + final int ret = _rpcPortParcelReserve(_handle, size); + if (ret == _errorNotImplemented) { throw UnsupportedError( 'The reserve method is not supported on this version of Tizen.', ); } - final int ret = func(_handle, size); if (ret != 0) { throw PlatformException( code: ret.toString(), @@ -587,71 +577,33 @@ class Parcel { } } -DynamicLibrary? _libRpcPort; -bool _libRpcPortLoaded = false; +const int _errorNotImplemented = -38; // -ENOSYS -DynamicLibrary? _getLibRpcPort() { - if (!_libRpcPortLoaded) { - try { - _libRpcPort = DynamicLibrary.open('librpc-port.so.1'); - } catch (_) { - _libRpcPort = null; - } - _libRpcPortLoaded = true; - } - return _libRpcPort; -} +final DynamicLibrary _libRpcPort = DynamicLibrary.open('libftpw_tizen_rpc_port.so'); -int Function(rpc_port_parcel_h, Pointer)? _rpcPortParcelGetReader; -int Function(rpc_port_parcel_h, int)? _rpcPortParcelSetReader; -int Function(rpc_port_parcel_h, Pointer)? _rpcPortParcelGetDataSize; -int Function(rpc_port_parcel_h, int)? _rpcPortParcelSetDataSize; -int Function(rpc_port_parcel_h, int)? _rpcPortParcelReserve; - -bool _functionsLoaded = false; - -void _ensureFunctionsLoaded() { - if (_functionsLoaded) { - return; - } - _functionsLoaded = true; - final DynamicLibrary? lib = _getLibRpcPort(); - if (lib == null) { - return; - } - try { - _rpcPortParcelGetReader = lib - .lookup)>>( - 'rpc_port_parcel_get_reader', - ) - .asFunction(); - } catch (_) {} - try { - _rpcPortParcelSetReader = lib - .lookup>( - 'rpc_port_parcel_set_reader', - ) - .asFunction(); - } catch (_) {} - try { - _rpcPortParcelGetDataSize = lib - .lookup)>>( - 'rpc_port_parcel_get_data_size', - ) - .asFunction(); - } catch (_) {} - try { - _rpcPortParcelSetDataSize = lib - .lookup>( - 'rpc_port_parcel_set_data_size', - ) - .asFunction(); - } catch (_) {} - try { - _rpcPortParcelReserve = lib - .lookup>( - 'rpc_port_parcel_reserve', - ) - .asFunction(); - } catch (_) {} -} +final int Function(rpc_port_parcel_h, Pointer) _rpcPortParcelGetReader = + _libRpcPort.lookupFunction), + int Function(rpc_port_parcel_h, Pointer)>( + 'ftpw_tizen_rpc_port_rpc_port_parcel_get_reader', +); + +final int Function(rpc_port_parcel_h, int) _rpcPortParcelSetReader = _libRpcPort.lookupFunction< + Int32 Function(rpc_port_parcel_h, Uint32), int Function(rpc_port_parcel_h, int)>( + 'ftpw_tizen_rpc_port_rpc_port_parcel_set_reader', +); + +final int Function(rpc_port_parcel_h, Pointer) _rpcPortParcelGetDataSize = + _libRpcPort.lookupFunction), + int Function(rpc_port_parcel_h, Pointer)>( + 'ftpw_tizen_rpc_port_rpc_port_parcel_get_data_size', +); + +final int Function(rpc_port_parcel_h, int) _rpcPortParcelSetDataSize = _libRpcPort.lookupFunction< + Int32 Function(rpc_port_parcel_h, Uint32), int Function(rpc_port_parcel_h, int)>( + 'ftpw_tizen_rpc_port_rpc_port_parcel_set_data_size', +); + +final int Function(rpc_port_parcel_h, int) _rpcPortParcelReserve = _libRpcPort.lookupFunction< + Int32 Function(rpc_port_parcel_h, Uint32), int Function(rpc_port_parcel_h, int)>( + 'ftpw_tizen_rpc_port_rpc_port_parcel_reserve', +); diff --git a/packages/tizen_rpc_port/tizen/inc/ftpw_tizen_rpc_port.h b/packages/tizen_rpc_port/tizen/inc/ftpw_tizen_rpc_port.h new file mode 100644 index 000000000..5dd246793 --- /dev/null +++ b/packages/tizen_rpc_port/tizen/inc/ftpw_tizen_rpc_port.h @@ -0,0 +1,27 @@ +// Copyright 2026 Samsung Electronics Co., Ltd. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. +#ifndef FLUTTER_TIZEN_PLUGINS_WRAPPER_TIZEN_RPC_PORT_H_ +#define FLUTTER_TIZEN_PLUGINS_WRAPPER_TIZEN_RPC_PORT_H_ + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +int ftpw_tizen_rpc_port_rpc_port_parcel_get_reader(void *parcel, + uint32_t *value); +int ftpw_tizen_rpc_port_rpc_port_parcel_set_reader(void *parcel, + uint32_t value); +int ftpw_tizen_rpc_port_rpc_port_parcel_get_data_size(void *parcel, + uint32_t *value); +int ftpw_tizen_rpc_port_rpc_port_parcel_set_data_size(void *parcel, + uint32_t value); +int ftpw_tizen_rpc_port_rpc_port_parcel_reserve(void *parcel, uint32_t value); + +#ifdef __cplusplus +} +#endif + +#endif diff --git a/packages/tizen_rpc_port/tizen/lib/aarch64/libftpw_tizen_rpc_port.so b/packages/tizen_rpc_port/tizen/lib/aarch64/libftpw_tizen_rpc_port.so new file mode 100755 index 0000000000000000000000000000000000000000..f6e3756b4c94519b412ef8a06280c5633739bac2 GIT binary patch literal 10448 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≥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 M{+m`I>h`w&4ULj*8UO$Q literal 0 HcmV?d00001 diff --git a/packages/tizen_rpc_port/tizen/project_def.prop b/packages/tizen_rpc_port/tizen/project_def.prop index c337fe68a..ba062043b 100644 --- a/packages/tizen_rpc_port/tizen/project_def.prop +++ b/packages/tizen_rpc_port/tizen/project_def.prop @@ -18,3 +18,7 @@ USER_CPP_UNDEFS = USER_INC_DIRS = inc src USER_INC_FILES = USER_CPP_INC_FILES = + +# User libraries +USER_LIB_DIRS += lib/${BUILD_ARCH} +USER_LIBS += ftpw_tizen_rpc_port