private ObjectLocationContainer GetContainerForObjectId(ulong objectId)
        {
            var containerNumber = (int)(objectId / ContainerSize);

            // see if its loaded
            if (_objectLocationContainers.ContainsKey(containerNumber))
            {
                return(_objectLocationContainers[containerNumber]);
            }

            // see if there is a offset and load the container
            if (_containerOffsets.Count > containerNumber)
            {
                var offset       = _containerOffsets[(int)containerNumber];
                var storeManager = StoreManagerFactory.GetStoreManager() as IStoreManager2;
                if (storeManager == null)
                {
                    throw new Exception("Invalid store manager instance returned by store manager factory");
                }
                var container = storeManager.ReadObject <ObjectLocationContainer>(_storeFileName, offset);
                _objectLocationContainers.Add(containerNumber, container);
                return(container);
            }
            else
            {
                // else we create a new one
                var container = new ObjectLocationContainer();
                _objectLocationContainers.Add(containerNumber, container);
                _containerOffsets.Add(0);
                return(container);
            }
        }
        private ObjectLocationContainer GetContainerForObjectId(ulong objectId)
        {
            var containerNumber = (int) (objectId/ContainerSize);

            // see if its loaded
            if (_objectLocationContainers.ContainsKey(containerNumber))
            {
                return _objectLocationContainers[containerNumber];
            }

            // see if there is a offset and load the container
            if (_containerOffsets.Count > containerNumber)
            {
                var offset = _containerOffsets[(int) containerNumber];
                var storeManager = StoreManagerFactory.GetStoreManager() as IStoreManager2;
                if (storeManager == null) throw new Exception("Invalid store manager instance returned by store manager factory");
                var container = storeManager.ReadObject<ObjectLocationContainer>(_storeFileName, offset);
                _objectLocationContainers.Add(containerNumber, container);
                return container;
            }
            else
            {
                // else we create a new one
                var container = new ObjectLocationContainer();
                _objectLocationContainers.Add(containerNumber, container);
                _containerOffsets.Add(0);
                return container;
            }
        }