ToDocument() public method

public ToDocument ( ) : Lucene.Net.Documents.Document
return Lucene.Net.Documents.Document
Ejemplo n.º 1
0
        public void UpdatePackage(Package package)
        {
            if (_getShouldAutoUpdate())
            {
                var packageRegistrationKey = package.PackageRegistrationKey;
                var updateTerm             = new Term("PackageRegistrationKey", packageRegistrationKey.ToString(CultureInfo.InvariantCulture));

                if (!package.IsLatest || !package.IsLatestStable)
                {
                    // Someone passed us in a version which was e.g. just unlisted? Or just not the latest version which is what we want to index. Doesn't really matter. We'll find one to index.
                    package = _packageRepository.GetAll()
                              .Where(p => (p.IsLatest || p.IsLatestStable) && p.PackageRegistrationKey == packageRegistrationKey)
                              .Include(p => p.PackageRegistration)
                              .Include(p => p.PackageRegistration.Owners)
                              .Include(p => p.SupportedFrameworks)
                              .FirstOrDefault();
                }

                // Just update the provided package
                EnsureIndexWriter(creatingIndex: false);
                if (package != null)
                {
                    var indexEntity = new PackageIndexEntity(package);
                    _indexWriter.UpdateDocument(updateTerm, indexEntity.ToDocument());
                }
                else
                {
                    _indexWriter.DeleteDocuments(updateTerm);
                }
                _indexWriter.Commit();
            }
        }
Ejemplo n.º 2
0
        public void UpdatePackage(Package package)
        {
            var packageRegistrationKey = package.PackageRegistrationKey;
            var updateTerm             = new Term("PackageRegistrationKey", packageRegistrationKey.ToString(CultureInfo.InvariantCulture));

            if (!package.IsLatest || package.IsLatestStable)
            {
                // Someone passed us in a version which was e.g. just unlisted? Or just not the latest version which is what we want to index. Doesn't really matter. We'll find one to index.
                package = _packageRepository.GetAll()
                          .Where(p => (p.IsLatest || p.IsLatestStable) && p.PackageRegistrationKey == packageRegistrationKey)
                          .Include(p => p.PackageRegistration)
                          .Include(p => p.PackageRegistration.Owners)
                          .Include(p => p.SupportedFrameworks)
                          .FirstOrDefault();
            }

            // Just update the provided package
            using (Trace.Activity(String.Format(CultureInfo.CurrentCulture, "Updating Lucene Index for: {0} {1} [PackageKey:{2}]", package.PackageRegistration.Id, package.Version, package.Key)))
            {
                EnsureIndexWriter(creatingIndex: false);
                if (package != null)
                {
                    var indexEntity = new PackageIndexEntity(package);
                    Trace.Information(String.Format(CultureInfo.CurrentCulture, "Updating Document: {0}", updateTerm.ToString()));
                    _indexWriter.UpdateDocument(updateTerm, indexEntity.ToDocument());
                }
                else
                {
                    Trace.Information(String.Format(CultureInfo.CurrentCulture, "Deleting Document: {0}", updateTerm.ToString()));
                    _indexWriter.DeleteDocuments(updateTerm);
                }
                _indexWriter.Commit();
            }
        }
Ejemplo n.º 3
0
        private void AddPackage(PackageIndexEntity packageInfo)
        {
            EnsureIndexWriter(creatingIndex: false);

            DoAndRetryOnOutOfMemory(
                () => _indexWriter.AddDocument(packageInfo.ToDocument()),
                handleException: () => DisposeAndEnsureIndexWriter(creatingIndex: false));
        }
Ejemplo n.º 4
0
        public void UpdatePackage(Package package)
        {
            if (_indexContainsAllVersions)
            {
                //just update everything since the last write time
                UpdateIndex(forceRefresh: false);
                return;
            }

            // when we only store the latest, we can run the rest of this
            if (_getShouldAutoUpdate())
            {
                var packageRegistrationKey = package.PackageRegistrationKey;
                var updateTerm             = new Term("PackageRegistrationKey", packageRegistrationKey.ToString(CultureInfo.InvariantCulture));

                if (!package.IsLatest || !package.IsLatestStable)
                {
                    // Someone passed us in a version which was e.g. just unlisted? Or just not the latest version which is what we want to index. Doesn't really matter. We'll find one to index.
                    using (var context = _contextThunk())
                    {
                        var packageRepo = new EntityRepository <Package>(context);
                        package = packageRepo.GetAll()
                                  .Where(p => (p.IsLatest || p.IsLatestStable) && p.PackageRegistrationKey == packageRegistrationKey)
                                  .Include(p => p.PackageRegistration)
                                  .Include(p => p.PackageRegistration.Owners)
                                  .Include(p => p.SupportedFrameworks)
                                  .FirstOrDefault();
                    }
                }

                // Just update the provided package
                EnsureIndexWriter(creatingIndex: false);
                if (package != null)
                {
                    var indexEntity = new PackageIndexEntity(package);
                    _indexWriter.UpdateDocument(updateTerm, indexEntity.ToDocument());
                }
                else
                {
                    _indexWriter.DeleteDocuments(updateTerm);
                }
                _indexWriter.Commit();
            }
        }
Ejemplo n.º 5
0
 public void UpdatePackage(Package package)
 {
     // Just update the provided package
     using (Trace.Activity(String.Format(CultureInfo.CurrentCulture, "Updating Lucene Index for: {0} {1} [PackageKey:{2}]", package.PackageRegistration.Id, package.Version, package.Key)))
     {
         EnsureIndexWriter(creatingIndex: false);
         var indexEntity = new PackageIndexEntity(package);
         var updateTerm = new Term("PackageRegistrationKey", package.PackageRegistrationKey.ToString(CultureInfo.InvariantCulture));
         if (package.Listed)
         {
             Trace.Information(String.Format(CultureInfo.CurrentCulture, "Updating Document: {0}", updateTerm.ToString()));
             _indexWriter.UpdateDocument(updateTerm, indexEntity.ToDocument());
         }
         else
         {
             Trace.Information(String.Format(CultureInfo.CurrentCulture, "Deleting Document: {0}", updateTerm.ToString()));
             _indexWriter.DeleteDocuments(updateTerm);
         }
         _indexWriter.Commit();
     }
 }
 public void UpdatePackage(Package package)
 {
     // Just update the provided package
     using (Trace.Activity(String.Format(CultureInfo.CurrentCulture, "Updating Lucene Index for: {0} {1} [PackageKey:{2}]", package.PackageRegistration.Id, package.Version, package.Key)))
     {
         EnsureIndexWriter(creatingIndex: false);
         var indexEntity = new PackageIndexEntity(package);
         var updateTerm  = new Term("PackageRegistrationKey", package.PackageRegistrationKey.ToString(CultureInfo.InvariantCulture));
         if (package.Listed)
         {
             Trace.Information(String.Format(CultureInfo.CurrentCulture, "Updating Document: {0}", updateTerm.ToString()));
             _indexWriter.UpdateDocument(updateTerm, indexEntity.ToDocument());
         }
         else
         {
             Trace.Information(String.Format(CultureInfo.CurrentCulture, "Deleting Document: {0}", updateTerm.ToString()));
             _indexWriter.DeleteDocuments(updateTerm);
         }
         _indexWriter.Commit();
     }
 }
 private void AddPackage(PackageIndexEntity packageInfo)
 {
     _indexWriter.AddDocument(packageInfo.ToDocument());
 }
        public void UpdatePackage(Package package)
        {
            if (_getShouldAutoUpdate())
            {
                var packageRegistrationKey = package.PackageRegistrationKey;
                var updateTerm = new Term("PackageRegistrationKey", packageRegistrationKey.ToString(CultureInfo.InvariantCulture));

                if (!package.IsLatest || !package.IsLatestStable)
                {
                    // Someone passed us in a version which was e.g. just unlisted? Or just not the latest version which is what we want to index. Doesn't really matter. We'll find one to index.
                    package = _packageRepository.GetAll()
                        .Where(p => (p.IsLatest || p.IsLatestStable) && p.PackageRegistrationKey == packageRegistrationKey)
                        .Include(p => p.PackageRegistration)
                        .Include(p => p.PackageRegistration.Owners)
                        .Include(p => p.SupportedFrameworks)
                        .FirstOrDefault();
                }

                // Just update the provided package
                using (Trace.Activity(String.Format(CultureInfo.CurrentCulture, "Updating Document: {0}", updateTerm.ToString())))
                {
                    EnsureIndexWriter(creatingIndex: false);
                    if (package != null)
                    {
                        var indexEntity = new PackageIndexEntity(package);
                        Trace.Information(String.Format(CultureInfo.CurrentCulture, "Updating Lucene Index for: {0} {1} [PackageKey:{2}]", package.PackageRegistration.Id, package.Version, package.Key));
                        _indexWriter.UpdateDocument(updateTerm, indexEntity.ToDocument());
                    }
                    else
                    {
                        Trace.Information(String.Format(CultureInfo.CurrentCulture, "Deleting Document: {0}", updateTerm.ToString()));
                        _indexWriter.DeleteDocuments(updateTerm);
                    }
                    _indexWriter.Commit();
                }
            }
        }
 private void AddPackage(PackageIndexEntity packageInfo)
 {
     _indexWriter.AddDocument(packageInfo.ToDocument());
 }