tree 76a85f11b4ec0df4edba4c4da9c52e99ec8bae2f
parent 0342ae40c612c85917874babf1a34a4bdbdeb700
author Youngho Yoon <34558998+yhoyoon@users.noreply.github.com> 1691517985 +0900
committer GitHub <noreply@github.com> 1691517985 +0000
gpgsig -----BEGIN PGP SIGNATURE-----
 
 wsBcBAABCAAQBQJk0oQhCRBK7hj4Ov3rIwAAsYsIAG5dOHiWvtX3qPPst3QD2n2W
 uYzmFpKzYtMuIyK4veCdpHDNlMEnYuWTUpJjowLqXkBk6tYbCoUZtccQnFKuMnp0
 bh9v5ntfmT1mgYB94ThVcoHjZTPDEjddpWpbM27RzN3kQwexevf5OYJuBEdC0Dd/
 XyJnLIxgHirPV5NZwcNzUIusphXuYRignMQn9XhGjlG9pjHldkUrykphL62Ddp3y
 DKNYYxAwDeNFnIaoXOpS5g7gpxgiG1B7SFboenScIWjDfjQtuzl4lHECiTAwWwEP
 jRXUTc5BlPccH5gXcNPJ8HC9ZP/5xnLp6QsjjoV4gNkn9WiYiHePuFAY+H4nw68=
 =KvHU
 -----END PGP SIGNATURE-----
 

[Android] Support FabricFilter to ChipClusters API (#28208)

* [Android] Support FabricFilter to ChipClusters API

This change adds a version that allows users to set FabricFilter options
to APIs that read Attribute, which is Fabric-Scoped List. For example,
- OperationalCredentialsCluster.readFabricsAttribute
- OperationalCredentialsCluster.readFabricsAttributeWithFabricFilter
In the existing API, FabricFilter was hard-coded with true value. So,
there was no way to read all fabric information of the attribute on the
PASE Session before the Android commissioner completed commissioning of
the device.
New API provides a FabricFilter parameter. So, before the Android
commissioner completes device commissioning, all fabric information of
the corresponding attribute can be read based on PASE Session.

Signed-off-by: Youngho Yoon <34558998+yhoyoon@users.noreply.github.com>

* Fix unit test errors

Signed-off-by: Youngho Yoon <34558998+yhoyoon@users.noreply.github.com>

* Fix the templates to not add extra whitespace

Signed-off-by: Youngho Yoon <34558998+yhoyoon@users.noreply.github.com>

* Restore empty line of end of file

Signed-off-by: Youngho Yoon <34558998+yhoyoon@users.noreply.github.com>

* Add unit test for FabricFilter

Signed-off-by: Youngho Yoon <34558998+yhoyoon@users.noreply.github.com>

* Remove new apis in ClusterReadMapping

Signed-off-by: Youngho Yoon <34558998+yhoyoon@users.noreply.github.com>

---------

Signed-off-by: Youngho Yoon <34558998+yhoyoon@users.noreply.github.com>