Example #1
0
 private void PopulateLatest <T>(
     T document,
     string packageId,
     string normalizedVersion,
     bool lastUpdatedFromCatalog,
     DateTimeOffset?lastCommitTimestamp,
     string lastCommitId,
     HijackDocumentChanges changes) where T : KeyedDocument, HijackDocument.ILatest
 {
     PopulateKey(document, packageId, normalizedVersion);
     _baseDocumentBuilder.PopulateCommitted(
         document,
         lastUpdatedFromCatalog,
         lastCommitTimestamp,
         lastCommitId);
     document.IsLatestStableSemVer1 = changes.LatestStableSemVer1;
     document.IsLatestSemVer1       = changes.LatestSemVer1;
     document.IsLatestStableSemVer2 = changes.LatestStableSemVer2;
     document.IsLatestSemVer2       = changes.LatestSemVer2;
 }
Example #2
0
        public HijackDocument.Full FullFromCatalog(
            string normalizedVersion,
            HijackDocumentChanges changes,
            PackageDetailsCatalogLeaf leaf)
        {
            var document = new HijackDocument.Full();

            PopulateLatest(
                document,
                leaf.PackageId,
                normalizedVersion,
                lastUpdatedFromCatalog: true,
                lastCommitTimestamp: leaf.CommitTimestamp,
                lastCommitId: leaf.CommitId,
                changes: changes);
            _baseDocumentBuilder.PopulateMetadata(document, normalizedVersion, leaf);
            document.Listed = leaf.IsListed();

            return(document);
        }
Example #3
0
        public HijackDocument.Full FullFromDb(
            string packageId,
            HijackDocumentChanges changes,
            Package package)
        {
            var document = new HijackDocument.Full();

            PopulateLatest(
                document,
                packageId,
                lastUpdatedFromCatalog: false,
                lastCommitTimestamp: null,
                lastCommitId: null,
                normalizedVersion: package.NormalizedVersion,
                changes: changes);
            _baseDocumentBuilder.PopulateMetadata(document, packageId, package);
            document.Listed = package.Listed;

            return(document);
        }
Example #4
0
        public HijackDocument.Latest LatestFromCatalog(
            string packageId,
            string normalizedVersion,
            DateTimeOffset lastCommitTimestamp,
            string lastCommitId,
            HijackDocumentChanges changes)
        {
            var document = new HijackDocument.Latest();

            PopulateLatest(
                document,
                packageId,
                normalizedVersion,
                lastUpdatedFromCatalog: true,
                lastCommitTimestamp: lastCommitTimestamp,
                lastCommitId: lastCommitId,
                changes: changes);

            return(document);
        }