name: Add support for ImplicitSha256DigestComponent
This support includes the following new API functions:
- name::Component::isImplicitSha256Digest()
- name::Component::fromImplicitSha256Digest(...)
- Name::appendImplicitSha256Digest(...)
- Updated toUri()/fromUri(...) to support "sha256digest=..." URI
representation of the ImplicitSha256Digest component
Change-Id: I756c4b94196cf031da98b5689bd60630533dfeb3
Refs: #1640, #2088
diff --git a/src/name-component.hpp b/src/name-component.hpp
index b8023b1..e49275a 100644
--- a/src/name-component.hpp
+++ b/src/name-component.hpp
@@ -463,6 +463,34 @@
static Component
fromSequenceNumber(uint64_t seqNo);
+ ////////////////////////////////////////////////////////////////////////////////
+
+ /**
+ * @brief Check if the component is GenericComponent
+ */
+ bool
+ isGeneric() const;
+
+ /**
+ * @brief Check if the component is ImplicitSha256DigestComponent
+ */
+ bool
+ isImplicitSha256Digest() const;
+
+ /**
+ * @brief Create ImplicitSha256DigestComponent component
+ */
+ static Component
+ fromImplicitSha256Digest(const ConstBufferPtr& digest);
+
+ /**
+ * @brief Create ImplicitSha256DigestComponent component
+ */
+ static Component
+ fromImplicitSha256Digest(const uint8_t* digest, size_t digestSize);
+
+ ////////////////////////////////////////////////////////////////////////////////
+
bool
empty() const
{