Skip to content

Commit 123570c

Browse files
authored
[Fabric-Bridge] Put fabric sync logic into namespace 'bridge' (#36362)
1 parent 12484a9 commit 123570c

15 files changed

+78
-18
lines changed

examples/fabric-bridge-app/fabric-bridge-common/include/BridgedAdministratorCommissioning.h

+4
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,8 @@
2020
#include <app-common/zap-generated/cluster-objects.h>
2121
#include <app/AttributeAccessInterfaceRegistry.h>
2222

23+
namespace bridge {
24+
2325
/**
2426
* @brief CADMIN cluster implementation for handling attribute interactions of bridged device endpoints.
2527
*
@@ -56,3 +58,5 @@ class BridgedAdministratorCommissioning : public chip::app::AttributeAccessInter
5658
// to reflect this change.
5759
chip::app::AttributeAccessInterface * mOriginalAttributeInterface = nullptr;
5860
};
61+
62+
} // namespace bridge

examples/fabric-bridge-app/fabric-bridge-common/include/BridgedDevice.h

+4
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,8 @@
2323

2424
#include <string>
2525

26+
namespace bridge {
27+
2628
class BridgedDevice
2729
{
2830
public:
@@ -90,3 +92,5 @@ class BridgedDevice
9092
BridgedAttributes mAttributes;
9193
AdminCommissioningAttributes mAdminCommissioningAttributes;
9294
};
95+
96+
} // namespace bridge

examples/fabric-bridge-app/fabric-bridge-common/include/BridgedDeviceBasicInformationImpl.h

+4
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,8 @@
1818
#include <app-common/zap-generated/ids/Clusters.h>
1919
#include <app/AttributeAccessInterface.h>
2020

21+
namespace bridge {
22+
2123
class BridgedDeviceBasicInformationImpl : public chip::app::AttributeAccessInterface
2224
{
2325
public:
@@ -30,3 +32,5 @@ class BridgedDeviceBasicInformationImpl : public chip::app::AttributeAccessInter
3032
CHIP_ERROR Read(const chip::app::ConcreteReadAttributePath & path, chip::app::AttributeValueEncoder & encoder) override;
3133
CHIP_ERROR Write(const chip::app::ConcreteDataAttributePath & path, chip::app::AttributeValueDecoder & decoder) override;
3234
};
35+
36+
} // namespace bridge

examples/fabric-bridge-app/fabric-bridge-common/include/BridgedDeviceManager.h

+4
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,8 @@
2424

2525
#include <memory>
2626

27+
namespace bridge {
28+
2729
class BridgedDeviceManager
2830
{
2931
public:
@@ -134,3 +136,5 @@ inline BridgedDeviceManager & BridgeDeviceMgr()
134136
{
135137
return BridgedDeviceManager::sInstance;
136138
}
139+
140+
} // namespace bridge

examples/fabric-bridge-app/fabric-bridge-common/src/BridgedAdministratorCommissioning.cpp

+4
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,8 @@ using namespace chip::app;
2626
using namespace chip::app::Clusters;
2727
using namespace chip::app::Clusters::AdministratorCommissioning;
2828

29+
namespace bridge {
30+
2931
CHIP_ERROR BridgedAdministratorCommissioning::Init()
3032
{
3133
// We expect initialization after emberAfInit(). This allows us to unregister the existing
@@ -79,3 +81,5 @@ CHIP_ERROR BridgedAdministratorCommissioning::Read(const ConcreteReadAttributePa
7981

8082
return CHIP_NO_ERROR;
8183
}
84+
85+
} // namespace bridge

examples/fabric-bridge-app/fabric-bridge-common/src/BridgedDevice.cpp

+4
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,8 @@
2727
using namespace chip;
2828
using namespace chip::app::Clusters::Actions;
2929

30+
namespace bridge {
31+
3032
BridgedDevice::BridgedDevice(ScopedNodeId scopedNodeId)
3133
{
3234
mReachable = false;
@@ -116,3 +118,5 @@ void BridgedDevice::SetAdminCommissioningAttributes(const AdminCommissioningAttr
116118
}
117119
});
118120
}
121+
122+
} // namespace bridge

examples/fabric-bridge-app/fabric-bridge-common/src/BridgedDeviceBasicInformationImpl.cpp

+4
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,8 @@ using namespace ::chip;
2929
using namespace ::chip::app;
3030
using namespace ::chip::app::Clusters;
3131

32+
namespace bridge {
33+
3234
CHIP_ERROR BridgedDeviceBasicInformationImpl::Read(const ConcreteReadAttributePath & path, AttributeValueEncoder & encoder)
3335
{
3436
// Registration is done for the bridged device basic information only
@@ -105,3 +107,5 @@ CHIP_ERROR BridgedDeviceBasicInformationImpl::Write(const ConcreteDataAttributeP
105107

106108
return CHIP_ERROR_INVALID_ARGUMENT;
107109
}
110+
111+
} // namespace bridge

examples/fabric-bridge-app/fabric-bridge-common/src/BridgedDeviceManager.cpp

+4
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,8 @@ using namespace chip::Transport;
4545
using namespace chip::DeviceLayer;
4646
using namespace chip::app::Clusters;
4747

48+
namespace bridge {
49+
4850
namespace {
4951

5052
constexpr uint8_t kMaxRetries = 10;
@@ -343,3 +345,5 @@ std::optional<unsigned> BridgedDeviceManager::RemoveDeviceByScopedNodeId(chip::S
343345
}
344346
return std::nullopt;
345347
}
348+
349+
} // namespace bridge

examples/fabric-bridge-app/linux/CommissionerControlDelegate.cpp

+11-7
Original file line numberDiff line numberDiff line change
@@ -186,13 +186,13 @@ CHIP_ERROR CommissionerControlDelegate::HandleCommissionNode(const Commissioning
186186
VerifyOrReturnError(mNextStep == Step::kStartCommissionNode, CHIP_ERROR_INCORRECT_STATE);
187187

188188
#if defined(PW_RPC_FABRIC_BRIDGE_SERVICE) && PW_RPC_FABRIC_BRIDGE_SERVICE
189-
err = CommissionNode(Controller::CommissioningWindowPasscodeParams()
190-
.SetSetupPIN(kSetupPinCode)
191-
.SetTimeout(params.commissioningTimeout)
192-
.SetDiscriminator(params.discriminator)
193-
.SetIteration(params.iterations)
194-
.SetSalt(params.salt),
195-
mVendorId, mProductId);
189+
err = bridge::CommissionNode(Controller::CommissioningWindowPasscodeParams()
190+
.SetSetupPIN(kSetupPinCode)
191+
.SetTimeout(params.commissioningTimeout)
192+
.SetDiscriminator(params.discriminator)
193+
.SetIteration(params.iterations)
194+
.SetSalt(params.salt),
195+
mVendorId, mProductId);
196196
#else
197197
ChipLogProgress(NotSpecified, "Failed to reverse commission bridge: PW_RPC_FABRIC_BRIDGE_SERVICE not defined");
198198
err = CHIP_ERROR_NOT_IMPLEMENTED;
@@ -209,6 +209,8 @@ CHIP_ERROR CommissionerControlDelegate::HandleCommissionNode(const Commissioning
209209
} // namespace app
210210
} // namespace chip
211211

212+
namespace bridge {
213+
212214
CHIP_ERROR CommissionerControlInit()
213215
{
214216
CHIP_ERROR err;
@@ -262,3 +264,5 @@ CHIP_ERROR CommissionerControlShutdown()
262264

263265
return CHIP_NO_ERROR;
264266
}
267+
268+
} // namespace bridge

examples/fabric-bridge-app/linux/RpcClient.cpp

+4
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,8 @@
3535

3636
using namespace chip;
3737

38+
namespace bridge {
39+
3840
namespace {
3941

4042
// Constants
@@ -205,3 +207,5 @@ CHIP_ERROR KeepActive(chip::ScopedNodeId scopedNodeId, uint32_t stayActiveDurati
205207

206208
return WaitForResponse(call);
207209
}
210+
211+
} // namespace bridge

examples/fabric-bridge-app/linux/RpcServer.cpp

+4
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,8 @@ using namespace chip;
3737
using namespace chip::app;
3838
using namespace chip::app::Clusters;
3939

40+
namespace bridge {
41+
4042
namespace {
4143

4244
#if defined(PW_RPC_FABRIC_BRIDGE_SERVICE) && PW_RPC_FABRIC_BRIDGE_SERVICE
@@ -256,3 +258,5 @@ void InitRpcServer(uint16_t rpcServerPort)
256258
std::thread rpc_service(RunRpcService);
257259
rpc_service.detach();
258260
}
261+
262+
} // namespace bridge

examples/fabric-bridge-app/linux/include/CommissionerControlDelegate.h

+4
Original file line numberDiff line numberDiff line change
@@ -89,5 +89,9 @@ class CommissionerControlDelegate : public Delegate
8989
} // namespace app
9090
} // namespace chip
9191

92+
namespace bridge {
93+
9294
CHIP_ERROR CommissionerControlInit();
9395
CHIP_ERROR CommissionerControlShutdown();
96+
97+
} // namespace bridge

examples/fabric-bridge-app/linux/include/RpcClient.h

+4
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,8 @@
2222
#include <lib/core/ScopedNodeId.h>
2323
#include <platform/CHIPDeviceLayer.h>
2424

25+
namespace bridge {
26+
2527
/**
2628
* Sets the RPC server port to which the RPC client will connect.
2729
*
@@ -70,3 +72,5 @@ CHIP_ERROR
7072
CommissionNode(chip::Controller::CommissioningWindowPasscodeParams params, chip::VendorId vendorId, uint16_t productId);
7173

7274
CHIP_ERROR KeepActive(chip::ScopedNodeId scopedNodeId, uint32_t stayActiveDurationMs, uint32_t timeoutMs);
75+
76+
} // namespace bridge

examples/fabric-bridge-app/linux/include/RpcServer.h

+4
Original file line numberDiff line numberDiff line change
@@ -18,4 +18,8 @@
1818

1919
#pragma once
2020

21+
namespace bridge {
22+
2123
void InitRpcServer(uint16_t rpcServerPort);
24+
25+
} // namespace bridge

examples/fabric-bridge-app/linux/main.cpp

+15-11
Original file line numberDiff line numberDiff line change
@@ -98,7 +98,7 @@ ArgParser::OptionSet sProgramCustomOptions = { HandleCustomOption, sProgramCusto
9898
#if defined(PW_RPC_FABRIC_BRIDGE_SERVICE) && PW_RPC_FABRIC_BRIDGE_SERVICE
9999
void AttemptRpcClientConnect(System::Layer * systemLayer, void * appState)
100100
{
101-
if (StartRpcClient() == CHIP_NO_ERROR)
101+
if (bridge::StartRpcClient() == CHIP_NO_ERROR)
102102
{
103103
ChipLogProgress(NotSpecified, "Connected to Fabric-Admin");
104104
}
@@ -110,6 +110,10 @@ void AttemptRpcClientConnect(System::Layer * systemLayer, void * appState)
110110
}
111111
#endif // defined(PW_RPC_FABRIC_BRIDGE_SERVICE) && PW_RPC_FABRIC_BRIDGE_SERVICE
112112

113+
} // namespace
114+
115+
namespace bridge {
116+
113117
class AdministratorCommissioningCommandHandler : public CommandHandlerInterface
114118
{
115119
public:
@@ -241,35 +245,35 @@ BridgedDeviceBasicInformationImpl gBridgedDeviceBasicInformationAttributes;
241245
AdministratorCommissioningCommandHandler gAdministratorCommissioningCommandHandler;
242246
BridgedDeviceInformationCommandHandler gBridgedDeviceInformationCommandHandler;
243247

244-
} // namespace
248+
} // namespace bridge
245249

246250
void ApplicationInit()
247251
{
248252
ChipLogDetail(NotSpecified, "Fabric-Bridge: ApplicationInit()");
249253

250254
MatterEcosystemInformationPluginServerInitCallback();
251-
CommandHandlerInterfaceRegistry::Instance().RegisterCommandHandler(&gAdministratorCommissioningCommandHandler);
252-
CommandHandlerInterfaceRegistry::Instance().RegisterCommandHandler(&gBridgedDeviceInformationCommandHandler);
253-
AttributeAccessInterfaceRegistry::Instance().Register(&gBridgedDeviceBasicInformationAttributes);
255+
CommandHandlerInterfaceRegistry::Instance().RegisterCommandHandler(&bridge::gAdministratorCommissioningCommandHandler);
256+
CommandHandlerInterfaceRegistry::Instance().RegisterCommandHandler(&bridge::gBridgedDeviceInformationCommandHandler);
257+
AttributeAccessInterfaceRegistry::Instance().Register(&bridge::gBridgedDeviceBasicInformationAttributes);
254258

255259
#if defined(PW_RPC_FABRIC_BRIDGE_SERVICE) && PW_RPC_FABRIC_BRIDGE_SERVICE
256-
SetRpcRemoteServerPort(gFabricAdminServerPort);
257-
InitRpcServer(gLocalServerPort);
260+
bridge::SetRpcRemoteServerPort(gFabricAdminServerPort);
261+
bridge::InitRpcServer(gLocalServerPort);
258262
AttemptRpcClientConnect(&DeviceLayer::SystemLayer(), nullptr);
259263
#endif
260264

261-
BridgeDeviceMgr().Init();
262-
VerifyOrDie(gBridgedAdministratorCommissioning.Init() == CHIP_NO_ERROR);
265+
bridge::BridgeDeviceMgr().Init();
266+
VerifyOrDie(bridge::gBridgedAdministratorCommissioning.Init() == CHIP_NO_ERROR);
263267

264-
VerifyOrDieWithMsg(CommissionerControlInit() == CHIP_NO_ERROR, NotSpecified,
268+
VerifyOrDieWithMsg(bridge::CommissionerControlInit() == CHIP_NO_ERROR, NotSpecified,
265269
"Failed to initialize Commissioner Control Server");
266270
}
267271

268272
void ApplicationShutdown()
269273
{
270274
ChipLogDetail(NotSpecified, "Fabric-Bridge: ApplicationShutdown()");
271275

272-
if (CommissionerControlShutdown() != CHIP_NO_ERROR)
276+
if (bridge::CommissionerControlShutdown() != CHIP_NO_ERROR)
273277
{
274278
ChipLogError(NotSpecified, "Failed to shutdown Commissioner Control Server");
275279
}

0 commit comments

Comments
 (0)