26 static_assert(std::is_base_of<tlv::Error, MetadataObject::Error>::value,
27 "MetadataObject::Error must inherit from tlv::Error");
52 optional<uint64_t> version,
53 time::milliseconds freshnessPeriod)
const 57 " is not a valid discovery Interest name"));
62 Data data(discoveryInterestName);
65 keyChain.
sign(data, si);
73 m_versionedName = name;
80 return name.
size() >= 3 && name[-3] == KEYWORD_METADATA_COMP &&
81 name[-2].isVersion() && name[-1].isSegment();
89 .setMustBeFresh(
true);
const Name & getName() const
Get name.
The interface of signing key management.
std::string to_string(const T &val)
const Block & getContent() const
Get Content.
Data & setContent(const Block &block)
Set Content from a block.
void parse() const
Parse TLV-VALUE into sub-elements.
Represents an Interest packet.
Name & append(const Component &component)
Append a component.
Signing parameters passed to KeyChain.
Name & appendVersion(optional< uint64_t > version=nullopt)
Append a version component.
const Block & get(uint32_t type) const
Return the first sub-element of the specified TLV-TYPE.
Represents an absolute name.
size_t size() const
Returns the number of components.
void sign(Data &data, const SigningInfo ¶ms=getDefaultSigningInfo())
Sign data according to the supplied signing information.
Represents a name component.
Data & setFreshnessPeriod(time::milliseconds freshnessPeriod)
void toUri(std::ostream &os, name::UriFormat format=name::UriFormat::DEFAULT) const
Write URI representation of the name to the output stream.
bool empty() const
Checks if the name is empty, i.e.
size_t wireEncode(EncodingImpl< TAG > &encoder) const
Fast encoding or block size estimation.
void wireDecode(const Block &wire)
Decode name from wire encoding.
Represents a Data packet.
uint32_t getContentType() const
Name & appendSegment(uint64_t segmentNo)
Append a segment number (sequential) component.
const name::Component KEYWORD_METADATA_COMP