Skip to content

Commit

Permalink
re-order of methods
Browse files Browse the repository at this point in the history
  • Loading branch information
andreilitvin committed Jul 23, 2024
1 parent d47d0b5 commit 947ef98
Showing 1 changed file with 23 additions and 22 deletions.
45 changes: 23 additions & 22 deletions src/app/AttributeAccessInterfaceRegistry.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -73,6 +73,29 @@ void AttributeAccessInterfaceRegistry::UnregisterAllForEndpoint(EndpointId endpo
[endpointId](AttributeAccessInterface * entry) { return entry->MatchesEndpoint(endpointId); }, mAttributeAccessOverrides);
}

void AttributeAccessInterfaceRegistry::Unregister(AttributeAccessInterface * attrOverride)
{
mAttributeAccessInterfaceCache.Invalidate();
UnregisterMatchingAttributeAccessInterfaces([attrOverride](AttributeAccessInterface * entry) { return entry == attrOverride; },
mAttributeAccessOverrides);
}

bool AttributeAccessInterfaceRegistry::Register(AttributeAccessInterface * attrOverride)
{
mAttributeAccessInterfaceCache.Invalidate();
for (auto * cur = mAttributeAccessOverrides; cur; cur = cur->GetNext())
{
if (cur->Matches(*attrOverride))
{
ChipLogError(InteractionModel, "Duplicate attribute override registration failed");
return false;
}
}
attrOverride->SetNext(mAttributeAccessOverrides);
mAttributeAccessOverrides = attrOverride;
return true;
}

AttributeAccessInterface * AttributeAccessInterfaceRegistry::Get(EndpointId endpointId, ClusterId clusterId)
{
using CacheResult = AttributeAccessInterfaceCache::CacheResult;
Expand Down Expand Up @@ -104,28 +127,6 @@ AttributeAccessInterface * AttributeAccessInterfaceRegistry::Get(EndpointId endp
return nullptr;
}

void AttributeAccessInterfaceRegistry::Unregister(AttributeAccessInterface * attrOverride)
{
mAttributeAccessInterfaceCache.Invalidate();
UnregisterMatchingAttributeAccessInterfaces([attrOverride](AttributeAccessInterface * entry) { return entry == attrOverride; },
mAttributeAccessOverrides);
}

bool AttributeAccessInterfaceRegistry::Register(AttributeAccessInterface * attrOverride)
{
mAttributeAccessInterfaceCache.Invalidate();
for (auto * cur = mAttributeAccessOverrides; cur; cur = cur->GetNext())
{
if (cur->Matches(*attrOverride))
{
ChipLogError(InteractionModel, "Duplicate attribute override registration failed");
return false;
}
}
attrOverride->SetNext(mAttributeAccessOverrides);
mAttributeAccessOverrides = attrOverride;
return true;
}

} // namespace app
} // namespace chip

0 comments on commit 947ef98

Please sign in to comment.