-
Notifications
You must be signed in to change notification settings - Fork 2.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
MTRDevice XPC Interface #34547
MTRDevice XPC Interface #34547
Conversation
Review changes with SemanticDiff. |
PR #34547: Size comparison from 55786a0 to 817ade3 Full report (51 builds for bl602, bl702, bl702l, cc13x4_26x4, cc32xx, cyw30739, esp32, linux, mbed, nrfconnect, nxp, psoc6, qpg, stm32, tizen)
|
PR #34547: Size comparison from 55786a0 to da51f2b Full report (85 builds for bl602, bl702, bl702l, cc13x4_26x4, cc32xx, cyw30739, efr32, esp32, linux, mbed, nrfconnect, nxp, psoc6, qpg, stm32, telink, tizen)
|
@@ -0,0 +1,47 @@ | |||
// |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please remove this line.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
i think this is part of the project new file template so we should probably also fix it there
@@ -0,0 +1,54 @@ | |||
// |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please remove this line.
attributeID:(NSNumber *)attributeID | ||
params:(MTRReadParams * _Nullable)params | ||
resultHandler:(MTRDeviceXPCServerAttributeReadResult)resultHandler; | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'd also add a method that has a -(BOOL)returningSomething; signature to test that path too.
PR #34547: Size comparison from 55786a0 to a51e83c Full report (85 builds for bl602, bl702, bl702l, cc13x4_26x4, cc32xx, cyw30739, efr32, esp32, linux, mbed, nrfconnect, nxp, psoc6, qpg, stm32, telink, tizen)
|
c1f15b8
to
a51e83c
Compare
PR #34547: Size comparison from 08dfc13 to a51e83c Full report (54 builds for bl602, bl702, bl702l, cc13x4_26x4, cc32xx, cyw30739, efr32, esp32, linux, mbed, nrfconnect, nxp, psoc6, qpg, stm32, tizen)
|
PR #34547: Size comparison from 08dfc13 to ef9ac76 Increases above 0.2%:
Full report (85 builds for bl602, bl702, bl702l, cc13x4_26x4, cc32xx, cyw30739, efr32, esp32, linux, mbed, nrfconnect, nxp, psoc6, qpg, stm32, telink, tizen)
|
#import "MTRDeviceController_Internal.h" | ||
#import "MTRLogging_Internal.h" | ||
|
||
@implementation MTRRemoteDeviceController |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can we call this MTRDeviceController_XPC?
#pragma once | ||
|
||
@interface MTRRemoteDeviceControllerParameters () | ||
@property (nonatomic, strong, readonly) NSString * xpcServiceName; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
atomic, copy, readonly?
MTR_NEWLY_AVAILABLE | ||
@interface MTRRemoteDeviceControllerParameters : MTRDeviceControllerAbstractParameters | ||
- (instancetype)initWithXPCServiceName:(NSString *)xpcServiceName uniqueIdentifier:(NSUUID *)uniqueIdentifier; | ||
@property (nonatomic, strong, readonly) NSUUID * uniqueIdentifier; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
atomic, copy, readonly?
@@ -308,6 +310,18 @@ - (void)setOTAProviderDelegate:(id<MTROTAProviderDelegate>)otaProviderDelegate q | |||
|
|||
@end | |||
|
|||
// REVIEWERS: own file? | |||
@implementation MTRRemoteDeviceControllerParameters |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't love remote here,
Thinking out loud: MTRDeviceControllerStartupParametersXPCService ?
@@ -0,0 +1,61 @@ | |||
/** |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
MTRDevice_XPCHelpers/Additions/Tools/Utilities/Protocols?
I assume this will be different than the MTRDevice_XPC.m object?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is something I just started realizing needs to be different - there's the proxy service side and there's the proxy object that the client will use rather than just using the proxy service object directly, i.e. to get a synchronous API to match existing MTRDevice API. Thus, the time for raising MTRDevice / lowering its implementation has come. Will discuss with you shortly.
start closing off `MTRDevice` direct use add a note to self / reviewers fix `newBaseDevice` / `removeExpectedValue[s]` error ty @bzbarsky-apple move `MTRDevice_Concrete.h` to Project scope was Public note to self about coming change in MTRDeviceController move some MTRDevice utilities to MTRDevice_Internal.h where they are at least shared between MTRDevice and MTRDevice_Concrete. but probably they merit their own files - the header is getting heavy add subclass-facing init to `MTRDevice` superclass for `MTRDevice_Concrete` code was `NSObject`, but now is `MTRDevice`, which hides its `init`s. fix build of `MTRDevice_Internal.h` Revert "move some MTRDevice utilities" This reverts commit ba7331f. fix MTRDevice_Concrete block-scoped pointer types move clamped number to utilities remove duplicated MTRClampedNumber implementations more `MTRClampedNumber` cleanup duplicate MTRDeviceDelegateInfo for now restore prematurely removed `MTRDevice` methods move common `MTRDeviceClusterData` keys remove now-obsolete include for CodeUtils remove duplicate `MTRDeviceClusterData` remove duplicate key symbols from `MTRDevice_Concrete` remove availability annotations for nonpublic API Restyled by whitespace Restyled by clang-format remove superfluous init/new signatures available by default
008c9ee
to
d774007
Compare
|
PR #34547: Size comparison from 83dc1c8 to d774007 Full report (84 builds for bl602, bl702, bl702l, cc13x4_26x4, cc32xx, cyw30739, efr32, esp32, linux, nrfconnect, nxp, psoc6, qpg, stm32, telink, tizen)
|
work ongoing in other branches |
work in progress - goal is to get a simple test running first with a method not on MTRDevice, then start implementing MTRDevice methods