Exemplo n.º 1
0
        public void SetPrefixComparisonResult(byte prefixId, long pageNumber, ushort comparedBytes, int cmpResult)
        {
            if (Disabled)
            {
                return;
            }

            if (_cachedItem == null)
            {
                _cachedItem = new PrefixCompareResult()
                {
                    PageNumber    = pageNumber,
                    PrefixId      = prefixId,
                    CompareResult = cmpResult,
                    ComparedBytes = comparedBytes
                };
            }
            else
            {
                _cachedItem.PageNumber    = pageNumber;
                _cachedItem.PrefixId      = prefixId;
                _cachedItem.CompareResult = cmpResult;
                _cachedItem.ComparedBytes = comparedBytes;
            }
        }
Exemplo n.º 2
0
        public void SetPrefixComparisonResult(byte prefixId, long pageNumber, ushort comparedBytes, int cmpResult)
        {
            if(Disabled)
                return;

            if (_cachedItem == null)
            {
                _cachedItem = new PrefixCompareResult()
                {
                    PageNumber = pageNumber,
                    PrefixId = prefixId,
                    CompareResult = cmpResult,
                    ComparedBytes = comparedBytes
                };
            }
            else
            {
                _cachedItem.PageNumber = pageNumber;
                _cachedItem.PrefixId = prefixId;
                _cachedItem.CompareResult = cmpResult;
                _cachedItem.ComparedBytes = comparedBytes;
            }
        }
Exemplo n.º 3
0
        public bool TryGetCachedResult(byte prefixId, long pageNumber, ushort bytesToCompare, out int result)
        {
            if (_cachedItem == null || Disabled)
            {
                result = int.MinValue;
                return false;
            }

            if (_cachedItem.PageNumber != pageNumber)
            {
                _cachedItem = null;
                result = int.MinValue;
                return false;
            }

            if (_cachedItem.PrefixId != prefixId)
            {
                result = int.MinValue;
                return false;
            }

            if(_cachedItem.ComparedBytes != bytesToCompare)
            {
                if (_cachedItem.ComparedBytes > bytesToCompare && _cachedItem.CompareResult == 0)
                {
                    result = _cachedItem.CompareResult;
                    return true;
                }

                result = int.MinValue;
                return false;
            }

            result = _cachedItem.CompareResult;
            return true;
        }
Exemplo n.º 4
0
        public bool TryGetCachedResult(byte prefixId, long pageNumber, ushort bytesToCompare, out int result)
        {
            if (_cachedItem == null || Disabled)
            {
                result = int.MinValue;
                return(false);
            }

            if (_cachedItem.PageNumber != pageNumber)
            {
                _cachedItem = null;
                result      = int.MinValue;
                return(false);
            }

            if (_cachedItem.PrefixId != prefixId)
            {
                result = int.MinValue;
                return(false);
            }

            if (_cachedItem.ComparedBytes != bytesToCompare)
            {
                if (_cachedItem.ComparedBytes > bytesToCompare && _cachedItem.CompareResult == 0)
                {
                    result = _cachedItem.CompareResult;
                    return(true);
                }

                result = int.MinValue;
                return(false);
            }

            result = _cachedItem.CompareResult;
            return(true);
        }