Пример #1
0
        /// <summary>
        /// get position
        /// </summary>
        /// <param name="record"></param>
        /// <returns></returns>
        internal DbPos GetPosition(IRecord record)
        {
            DbPos      pos        = null;
            PositionId positionId = GetPositionId(record);

            PositionCache.TryGetValue(positionId, out pos);
            return(pos);
        }
Пример #2
0
 /// <summary>
 /// clear record from position cache
 /// </summary>
 /// <param name="record"></param>
 internal void ClearRecord(IRecord record)
 {
     if (!IgnorePositionCache)
     {
         PositionId positionId = GetPositionId(record);
         PositionCache.Remove(positionId);
     }
 }
Пример #3
0
        /// <summary>
        /// get current  position
        /// </summary>
        /// <returns></returns>
        internal DbPos GetCurrentPosition()
        {
            DbPos      pos        = null;
            IRecord    currRec    = ((DataView)LocalDataviewManager.Task.DataView).getCurrRec();
            PositionId positionId = GetPositionId(currRec);

            PositionCache.TryGetValue(positionId, out pos);
            return(pos);
        }
Пример #4
0
        /// <summary>
        /// get position id
        /// </summary>
        /// <param name="record"></param>
        /// <returns></returns>
        protected PositionId GetPositionId(IRecord record)
        {
            PositionId positionId = new PositionId(record.getId(), ((IDataviewHeader)DataSourceViewDefinition).Id);

            return(positionId);
        }
Пример #5
0
 /// <summary>
 /// remove position value
 /// </summary>
 /// <param name="clientId"></param>
 /// <param name="position"></param>
 internal void Remove(PositionId positionId)
 {
     positions.Remove(positionId);
 }
Пример #6
0
 /// <summary>
 /// Adds position value
 /// </summary>
 /// <param name="clientId"></param>
 /// <param name="position"></param>
 internal void Set(PositionId positionId, DbPos position)
 {
     positions[positionId] = position.Clone();
 }
Пример #7
0
 /// <summary>
 /// get position value
 /// </summary>
 /// <param name="positionId"></param>
 /// <param name="position"></param>
 /// <returns></returns>
 internal bool TryGetValue(PositionId positionId, out DbPos position)
 {
     return(positions.TryGetValue(positionId, out position));
 }