92dae04c84469a63af7c0e068848ead3294b5c40 |
|
21-Mar-2018 |
Yifan Hong <elsk@google.com> |
regex-instance: Fix CompatibilityMatrix::combine to use regex API combine() is used when a framework compatibility matrix is formed. Fix it so that the generated FCM contains <regex-instance> as well. Caveat: In the old code, combine() considered two HAL versions replacement of each other when their package, interface and instance are equal. (For example, if 1.xml states audio@2.0::IDeviceFactory/default and 2.xml states audio@4.0::IDeviceFactory/default then generated matrix only requires one of them to exist. With the introduction of <regex-instanece>, combine() only combines two versions if the regex pattern *exactly matches*; that is (for example) if 1.xml states camera@1.0::ICamera/legacy/0 AND camera@1.0::ICamera/legacy/[0-9]+ and 2.xml states camera@3.0::ICamera/legacy/[0-9]+ combine() requires camera@1.0::ICamera/legacy/0 AND (camera@1.0::ICamera/legacy[0-9]+ OR camera@3.0::ICamera/legacy[0-9]+) ... because the pattern "legacy[0-9]+" are exactly the same. It will not combine even if two regex patterns has the same meaning, e.g. when one of them is "legacy/[0-9]{1,}". Bug: 73738616 Test: libvintf_test Test: vintf_object_test Test: vts_treble_vintf_test Change-Id: Ie34f0f1ccab1e942f6aa9e9e40aa20140f220844 Merged-In: Ie34f0f1ccab1e942f6aa9e9e40aa20140f220844
/system/libvintf/include/vintf/HalInterface.h
|
2b93dbe7e1348a97a3953e0aeb7060e4cc461f3d |
|
22-Mar-2018 |
Yifan Hong <elsk@google.com> |
regex-instance: HalInterface stores regex instances. Parse <regex-instance> regular expression patterns using Extended Regular Expression syntax, and store it in HalInterface object. Bug: 73738616 Test: libvintf_test Test: vintf_object_test Test: vts_treble_vintf_test Change-Id: If0b8e3bc053a6c2ecd9048092071f52f7896bba0 Merged-In: If0b8e3bc053a6c2ecd9048092071f52f7896bba0
/system/libvintf/include/vintf/HalInterface.h
|
6e82b1189284e680294caa102497f39307811ddd |
|
20-Mar-2018 |
Yifan Hong <elsk@google.com> |
regex-instance: HalInterface: add regex API and hide public fields <regex-instance> is added under an <interface> tag, which is represented by an HalInterface object. Add API for looping over all <regex-instance>s / <instance>s under it. With this API, HalInterface can hide its public fields. Bug: 73738616 Test: libvintf_test Test: vintf_object_test Test: vts_treble_vintf_test Change-Id: Ia072dd7e946c28789797db8a46fd968bc7872dca Merged-In: Ia072dd7e946c28789797db8a46fd968bc7872dca
/system/libvintf/include/vintf/HalInterface.h
|
43e2aaeb4b857cc7a2f55e6aeb5f8ec9bcc63c7d |
|
18-May-2017 |
Yifan Hong <elsk@google.com> |
Add HalInterface to compatibility matrix Test: libvintf_test Test: vintf_object_test Bug: 38395193 Change-Id: I6dfc21bbfb63b575558405e441f3926ff3813eb8
/system/libvintf/include/vintf/HalInterface.h
|
96d4649f72786806e4c385817d05a2b921c2f4ec |
|
18-May-2017 |
Yifan Hong <elsk@google.com> |
Renamed ManifestHalInterface to HalInterface because it is used by compatibility matrix as well. Bug: 38395193 Test: compiles Change-Id: I186fdf4e7fd7076f2ac9d7e95eda5ba7510f9dad
/system/libvintf/include/vintf/HalInterface.h
|