Feature #2183
closedLocalControlHeader: CachingPolicy
100%
Description
Add CachingPolicy field in LocalControlHeader.
Support CachingPolicy feature in FaceEnableLocalControlCommand and FaceDisableLocalControlCommand
      
      Updated by Junxiao Shi almost 11 years ago
      
    
    - Tracker changed from Task to Feature
 
Suggestion: change bool enableX, bool enableY into bit-wise OR'ed parameter, to make the API more readable.
      
      Updated by Junxiao Shi almost 11 years ago
      
    
    - Blocks Feature #2185: Recognize CachingPolicy=NoCache added
 
      
      Updated by Junxiao Shi almost 11 years ago
      
    
    - Blocks Feature #2182: InMemoryStorage for management added
 
      
      Updated by Junxiao Shi almost 11 years ago
      
    
    - Related to Feature #2184: faces/enable-local-control: CachingPolicy added
 
      
      Updated by Jiewen Tan almost 11 years ago
      
    
    Suggestion: change
bool enableX, bool enableYinto bit-wise OR'ed parameter, to make the API more readable.
May I ask where to start, i.e. which files I should modify or which directories I should put my own files in?
      
      Updated by Jiewen Tan almost 11 years ago
      
    
    - Status changed from New to In Progress
 
      
      Updated by Junxiao Shi almost 11 years ago
      
    
    Look at nfd-local-control-header.hpp and how it's used in Interest and Data types.
I'm also thinking about making LocalControlHeader a Tag (see tag.hpp and tag-host.hpp), because it makes sense only in limited context.
      
      Updated by Jiewen Tan almost 11 years ago
      
    
    Is NoCache a boolean type? I suppose that I should use prependBooleanBlock() to add a NoCache block to a CachingPolicy block.
      
      Updated by Junxiao Shi almost 11 years ago
      
    
    Is NoCache a boolean type? I suppose that I should use prependBooleanBlock() to add a NoCache block to a CachingPolicy block.
I don't know about this area of code.
See spec for how the encoded packet looks like.
      
      Updated by Jiewen Tan almost 11 years ago
      
    
    Junxiao Shi wrote:
Is NoCache a boolean type? I suppose that I should use prependBooleanBlock() to add a NoCache block to a CachingPolicy block.
I don't know about this area of code.
See spec for how the encoded packet looks like.
The spec says that the NoCache TLV has no value. I am not sure how to prepend a no value block to the CachingPolicy TLV.
      
      Updated by Junxiao Shi almost 11 years ago
      
    
    
    
      
      Updated by Jiewen Tan almost 11 years ago
      
    
    I can't find the test case for the nfd-local-control-header.hpp. Should I create one for it?
      
      Updated by Junxiao Shi almost 11 years ago
      
    
    I can't find the test case for the nfd-local-control-header.hpp. Should I create one for it?
Yes, you must.
      
      Updated by Jiewen Tan almost 11 years ago
      
    
    Actually, I found it is tested at the test case of interest, i.e. test-interest.cpp.
      
      Updated by Jiewen Tan almost 11 years ago
      
    
    Undefined symbols for architecture x86_64:
  "ndn::nfd::CachingPolicy::CachingPolicy()", referenced from:
      ndn::nfd::LocalControlHeader::LocalControlHeader() in libndn-cxx.a(interest.cpp.2.o)
      ndn::nfd::LocalControlHeader::LocalControlHeader() in libndn-cxx.a(data.cpp.2.o)
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
I encountered this linker error. Do you have any idea what causes it? I have implemented a CachingPolicy class and put it into the file nfd-local-control-header.hpp together with the LocalControlHeader class.
      
      Updated by Alex Afanasyev almost 11 years ago
      
    
    You should share the code first (e.g., gerrit). Without seeing the code causing problem, I don't think anybody here would be able to give a good advise.
      
      Updated by Jiewen Tan almost 11 years ago
      
    
    Alex Afanasyev wrote:
You should share the code first (e.g., gerrit). Without seeing the code causing problem, I don't think anybody here would be able to give a good advise.
Uploaded.
      
      Updated by Jiewen Tan almost 11 years ago
      
    
    - Status changed from In Progress to Code review
 
      
      Updated by Junxiao Shi over 10 years ago
      
    
    - Status changed from Code review to Closed
 - % Done changed from 0 to 100