public override long expressInterest(Interest interest, OnData onData,
                                                 OnTimeout onTimeout, OnNetworkNack onNetworkNack,
                                                 WireFormat wireFormat)
            {
                try {
                    Assert.AssertEquals(3, interest.getLink().getDelegations().size());
                } catch (EncodingException ex) {
                    Assert.Fail("Error in getLink: " + ex);
                }

                if (interest.matchesName(contentData_.getName()))
                {
                    contentCount_[0] = 1;
                    onData.onData(interest, contentData_);
                }
                else if (interest.matchesName(cKeyData_.getName()))
                {
                    cKeyCount_[0] = 1;
                    onData.onData(interest, cKeyData_);
                }
                else if (interest.matchesName(dKeyData_.getName()))
                {
                    dKeyCount_[0] = 1;
                    onData.onData(interest, dKeyData_);
                }
                else
                {
                    onTimeout.onTimeout(interest);
                }

                return(0);
            }
            public override long expressInterest(Interest interest, OnData onData,
                                                 OnTimeout onTimeout, OnNetworkNack onNetworkNack,
                                                 WireFormat wireFormat)
            {
                if (interest.matchesName(contentData_.getName()))
                {
                    contentCount_[0] = 1;
                    onData.onData(interest, contentData_);
                }
                else if (interest.matchesName(cKeyData_.getName()))
                {
                    cKeyCount_[0] = 1;
                    onData.onData(interest, cKeyData_);
                }
                else if (interest.matchesName(dKeyData_.getName()))
                {
                    dKeyCount_[0] = 1;
                    onData.onData(interest, dKeyData_);
                }
                else
                {
                    onTimeout.onTimeout(interest);
                }

                return(0);
            }
Exemple #3
0
 public void processInterest(Interest interest, OnData onData,
                             OnTimeout onTimeout, OnNetworkNack onNetworkNack)
 {
     if (interest.getName().isPrefixOf(expiredCertificate.getName()))
     {
         onData.onData(interest, expiredCertificate);
     }
     else
     {
         originalProcessInterest.processInterest(interest, onData,
                                                 onTimeout, onNetworkNack);
     }
 }
Exemple #4
0
            public override long expressInterest(Interest interest, OnData onData,
                                                 OnTimeout onTimeout, OnNetworkNack onNetworkNack,
                                                 WireFormat wireFormat)
            {
                ++expressInterestCallCount_[0];

                Name interestName = new Name(interest.getName());

                interestName.append(timeMarker_);
                Assert.AssertEquals(true, outer_TestProducer.encryptionKeys.Contains(interestName));
                onData.onData(interest, (Data)ILOG.J2CsMapping.Collections.Collections.Get(outer_TestProducer.encryptionKeys, interestName));

                return(0);
            }
            public void processInterest(Interest interest, OnData onData,
                                        OnTimeout onTimeout, OnNetworkNack onNetworkNack)
            {
                CertificateV2 certificate = outer_ValidatorFixture.cache_.find(interest);

                if (certificate != null)
                {
                    onData.onData(interest, certificate);
                }
                else
                {
                    onTimeout.onTimeout(interest);
                }
            }
Exemple #6
0
            public override long expressInterest(Interest interest, OnData onData,
                                                 OnTimeout onTimeout, OnNetworkNack onNetworkNack,
                                                 WireFormat wireFormat)
            {
                Assert.AssertEquals(expectedInterest_, interest.getName());

                bool gotInterestName = false;
                Name interestName    = null;

                for (int i = 0; i < 3; ++i)
                {
                    interestName = new Name(interest.getName());
                    if (i == 0)
                    {
                        interestName.append(timeMarkerFirstHop_);
                    }
                    else if (i == 1)
                    {
                        interestName.append(timeMarkerSecondHop_);
                    }
                    else if (i == 2)
                    {
                        interestName.append(timeMarkerThirdHop_);
                    }

                    // matchesName will check the Exclude.
                    if (interest.matchesName(interestName))
                    {
                        gotInterestName = true;
                        ++requestCount_[0];
                        break;
                    }
                }

                if (gotInterestName)
                {
                    onData.onData(interest,
                                  (Data)ILOG.J2CsMapping.Collections.Collections.Get(outer_TestProducer.encryptionKeys, interestName));
                }

                return(0);
            }
        public override long expressInterest(Interest interest, OnData onData,
                                             OnTimeout onTimeout, OnNetworkNack onNetworkNack,
                                             WireFormat wireFormat)
        {
            // Make a copy of the interest.
            ILOG.J2CsMapping.Collections.Collections.Add(sentInterests_, new Interest(interest));

            Data data = storage_.find(interest);

            if (data != null)
            {
                ILOG.J2CsMapping.Collections.Collections.Add(sentData_, new Data(data));
                onData.onData(interest, data);
            }
            else
            {
                onTimeout.onTimeout(interest);
            }

            return(0);
        }
Exemple #8
0
            public void processInterest(Interest interest, OnData onData,
                                        OnTimeout onTimeout, OnNetworkNack onNetworkNack)
            {
                try {
                    // Create another key for the same identity and sign it properly.
                    PibKey parentKey = outer_TestValidator.fixture_.keyChain_
                                       .createKey(outer_TestValidator.fixture_.subIdentity_);
                    PibKey requestedKey = outer_TestValidator.fixture_.subIdentity_.getKey(interest
                                                                                           .getName());

                    // Copy the Name.
                    Name certificateName = new Name(requestedKey.getName());
                    certificateName.append("looper").appendVersion(1);
                    CertificateV2 certificate = new CertificateV2();
                    certificate.setName(certificateName);

                    // Set the MetaInfo.
                    certificate.getMetaInfo().setType(net.named_data.jndn.ContentType.KEY);
                    // Set the freshness period to one hour.
                    certificate.getMetaInfo().setFreshnessPeriod(3600 * 1000.0d);

                    // Set the content.
                    certificate.setContent(requestedKey.getPublicKey());

                    // Set SigningInfo.
                    SigningInfo                             // Set SigningInfo.
                        paras = new SigningInfo(parentKey);
                    // Validity period from 10 days before to 10 days after now.
                    double now = net.named_data.jndn.util.Common.getNowMilliseconds();
                    paras.setValidityPeriod(new ValidityPeriod(now - 10 * 24
                                                               * 3600 * 1000.0d, now + 10 * 24 * 3600 * 1000.0d));

                    outer_TestValidator.fixture_.keyChain_.sign(certificate, paras);
                    onData.onData(interest, certificate);
                } catch (Exception ex) {
                    Assert.Fail("Error in InfiniteCertificateChain: " + ex);
                }
            }