public override ItemLink[] GetReferences(Item item)
        {
            Assert.ArgumentNotNull((object)item, "item");
            List <ItemLink> list;

            lock (this.locks.GetLock((object)item.ID))
            {
                var items = _factory.GetContextLinkDatabaseDataManager(item).GetItemTriplesBySubject(item);

                list = SitecoreTripleHelper.TriplesToItemLinks(items);
            }
            return(list.ToArray());
        }
        public override ItemLink[] GetItemVersionReferrers(Item version)
        {
            Assert.ArgumentNotNull((object)version, "version");
            List <ItemLink> list;

            lock (this.locks.GetLock((object)version.ID))
            {
                var items = _factory.GetContextLinkDatabaseDataManager(version).GetItemTriplesByObject(version);

                list = SitecoreTripleHelper.TriplesToItemLinks(items);
            }
            return(list.ToArray());
        }