/// <summary> /// Asynchronously validate the Interest. /// </summary> /// /// <param name="interest">The Interest to validate, which is copied.</param> /// <param name="successCallback"></param> /// <param name="failureCallback">ValidationError.</param> public void validate(Interest interest, InterestValidationSuccessCallback successCallback, InterestValidationFailureCallback failureCallback) { InterestValidationState state = new InterestValidationState(interest, successCallback, failureCallback); logger_.log(ILOG.J2CsMapping.Util.Logging.Level.FINE, "Start validating interest {0}", interest .getName().toUri()); policy_.checkPolicy(interest, state, new Validator.Anonymous_C2(this)); }
/// <summary> /// Create an InterestValidationState for the Data packet. /// The caller must ensure that the state instance is valid until the validation /// finishes (i.e., until validateCertificateChain() and /// validateOriginalPacket() have been called). /// </summary> /// /// <param name="interest">The Interest packet being validated, which is copied.</param> /// <param name="successCallback"></param> /// <param name="failureCallback">Interest validation, where error is a ValidationError.</param> public InterestValidationState(Interest interest, InterestValidationSuccessCallback successCallback, InterestValidationFailureCallback failureCallback) { this.successCallbacks_ = new ArrayList <InterestValidationSuccessCallback>(); // Make a copy. interest_ = new Interest(interest); ILOG.J2CsMapping.Collections.Collections.Add(successCallbacks_, successCallback); failureCallback_ = failureCallback; if (successCallback == null) { throw new ArgumentException("The successCallback is null"); } if (failureCallback_ == null) { throw new ArgumentException("The failureCallback is null"); } }
public void addSuccessCallback( InterestValidationSuccessCallback successCallback) { ILOG.J2CsMapping.Collections.Collections.Add(successCallbacks_, successCallback); }