コード例 #1
0
        internal static bool EqualsEntryId(byte[] x, byte[] y)
        {
            if (RuleUtil.EqualsByteArray(x, y))
            {
                return(true);
            }
            Participant participant  = RuleUtil.GetParticipant(x);
            Participant participant2 = RuleUtil.GetParticipant(y);

            return(!(participant == null) && !(participant2 == null) && participant.AreAddressesEqual(participant2));
        }
コード例 #2
0
        private static bool MatchByteArray(LimitChecker limitChecker, byte[] content, byte[] pattern, ContentFlags flags)
        {
            if (!limitChecker.CheckAndIncrementContentRestrictionCount(1, content))
            {
                return(false);
            }
            switch (flags & (ContentFlags.SubString | ContentFlags.Prefix))
            {
            case ContentFlags.FullString:
                return(RuleUtil.EqualsByteArray(content, pattern));

            case ContentFlags.SubString:
                return(RuleUtil.Contains(content, pattern));

            case ContentFlags.Prefix:
                return(RuleUtil.IsPrefix(content, pattern));

            default:
                throw new InvalidRuleException(string.Format("Not supported content flags {0}", flags));
            }
        }