Replace FaceFlags with individual fields
FaceFlags field with individual fields: FaceScope, FacePersistency, LinkType.
Spec: FaceMgmt rev41.
This Task involves changes in the following places:
Face::getFaceStatusand Face Dataset
- Face Status Change Notification
- Declare a base class for common fields in
FaceEventNotificationtypes, or declare a concept for getters and setters of those common fields.
Face::getFaceStatusto use this base class or concept.
- Populate face status change notification with modified
#2 Updated by Junxiao Shi about 5 years ago
#8 Updated by Junxiao Shi about 5 years ago
After the Change for
ndn::nfd::FaceStatus type and
ndn::nfd::FaceEventNotification type is merged, you can make two separate Changes for #1991 and rest of #1992 (except deleting old API). Those can be worked on in parallel.
After both of those Changes are merged, make a fourth Change to delete old API.
#11 Updated by Junxiao Shi about 5 years ago
The recently merged ndn-cxx commit is designed to be backwards-compatible, but a file is renamed and we forget to set a alias at old file name.
We should make a urgent commit to ndn-cxx that makes a symbolic link from nfd-face-flags.hpp to nfd-face-traits.hpp.
#20 Updated by Chengyu Fan about 5 years ago
I think the obsolete APIs contain the face flag setter and getter, isLocal, isOnDemand, and FaceFlags enum.
But there are still some NFD codes use some of them:
- tests/daemon/mgmt/face-manager.cppm line 1602, 1664 use setFlags()
- tools/nfd-autoreg.cpp, line 162, 167, and 298 use isLocal or isOnDemand
I'll modify them first, and then move the obsolete APIs in ndn-cxx.
If I misunderstand anything, please let me know.