Skip to content

Commit db11004

Browse files
committed
wip
1 parent 2efaab3 commit db11004

File tree

5 files changed

+30
-13
lines changed

5 files changed

+30
-13
lines changed

meteor/server/api/integration/expectedPackages.ts

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@ import {
3333
} from '../../collections'
3434
import { logger } from '../../logging'
3535
import _ from 'underscore'
36+
import { ExpectedPackageDB } from '@sofie-automation/corelib/dist/dataModel/ExpectedPackages'
3637

3738
export namespace PackageManagerIntegration {
3839
export async function updateExpectedPackageWorkStatuses(
@@ -98,9 +99,17 @@ export namespace PackageManagerIntegration {
9899
const fromPackageIds = workStatus.fromPackages.map((p) => p.id)
99100
if (fromPackageIds.length) {
100101
ps.push(
101-
ExpectedPackages.findOneAsync({
102-
_id: { $in: fromPackageIds },
103-
}).then((expPackage) => {
102+
ExpectedPackages.findOneAsync(
103+
{
104+
_id: { $in: fromPackageIds },
105+
},
106+
{
107+
projection: {
108+
_id: 1,
109+
studioId: 1,
110+
},
111+
}
112+
).then((expPackage: Pick<ExpectedPackageDB, '_id' | 'studioId'> | undefined) => {
104113
if (!expPackage)
105114
throw new Meteor.Error(404, `ExpectedPackages "${fromPackageIds}" not found`)
106115

meteor/server/publications/packageManager/expectedPackages/contentCache.ts

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,15 +28,24 @@ export const pieceInstanceFieldsSpecifier = literal<MongoFieldSpecifierOnesStric
2828
},
2929
})
3030

31+
export type ExpectedPackageDBCompact = Pick<ExpectedPackageDB, '_id' | 'rundownId' | 'bucketId' | 'package'>
32+
33+
export const expectedPackageDBFieldsSpecifier = literal<MongoFieldSpecifierOnesStrict<ExpectedPackageDB>>({
34+
_id: 1,
35+
rundownId: 1,
36+
bucketId: 1,
37+
package: 1,
38+
})
39+
3140
export interface ExpectedPackagesContentCache {
32-
ExpectedPackages: ReactiveCacheCollection<ExpectedPackageDB>
41+
ExpectedPackages: ReactiveCacheCollection<ExpectedPackageDBCompact>
3342
RundownPlaylists: ReactiveCacheCollection<RundownPlaylistCompact>
3443
PieceInstances: ReactiveCacheCollection<PieceInstanceCompact>
3544
}
3645

3746
export function createReactiveContentCache(): ExpectedPackagesContentCache {
3847
const cache: ExpectedPackagesContentCache = {
39-
ExpectedPackages: new ReactiveCacheCollection<ExpectedPackageDB>('expectedPackages'),
48+
ExpectedPackages: new ReactiveCacheCollection<ExpectedPackageDBCompact>('expectedPackages'),
4049
RundownPlaylists: new ReactiveCacheCollection<RundownPlaylistCompact>('rundownPlaylists'),
4150
PieceInstances: new ReactiveCacheCollection<PieceInstanceCompact>('pieceInstances'),
4251
}

meteor/server/publications/packageManager/expectedPackages/contentObserver.ts

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ import {
55
ExpectedPackagesContentCache,
66
rundownPlaylistFieldSpecifier,
77
pieceInstanceFieldsSpecifier,
8+
expectedPackageDBFieldsSpecifier,
89
} from './contentCache'
910
import { ExpectedPackages, PieceInstances, RundownPlaylists } from '../../../collections'
1011
import { ReactiveMongoObserverGroup, ReactiveMongoObserverGroupHandle } from '../../lib/observerGroup'
@@ -61,7 +62,10 @@ export class ExpectedPackagesContentObserver implements Meteor.LiveQueryHandle {
6162
{
6263
studioId: studioId,
6364
},
64-
cache.ExpectedPackages.link()
65+
cache.ExpectedPackages.link(),
66+
{
67+
projection: expectedPackageDBFieldsSpecifier,
68+
}
6569
),
6670

6771
RundownPlaylists.observeChanges(

meteor/server/publications/pieceContentStatusUI/checkPieceContentStatus.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -642,7 +642,7 @@ async function checkPieceContentExpectedPackageStatus(
642642
checkedPackageContainers.add(matchedPackageContainer[0])
643643

644644
const expectedPackageIds = [
645-
// Syntehise the expected packageId from the piece
645+
// Synthesize the expected packageId from the piece
646646
getExpectedPackageIdFromIngestSource(
647647
packageOwnerId,
648648
{

packages/corelib/src/dataModel/ExpectedPackages.ts

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -138,12 +138,6 @@ export type ExpectedPackageIngestSource =
138138
export function getExpectedPackageIdForPieceInstance(
139139
/** _id of the owner (the piece, adlib etc..) */
140140
ownerId: PieceInstanceId,
141-
// | AdLibActionId
142-
// | RundownBaselineAdLibActionId
143-
// | BucketAdLibId
144-
// | BucketAdLibActionId
145-
// | RundownId
146-
// | StudioId,
147141
/** The locally unique id of the expectedPackage */
148142
localExpectedPackageId: ExpectedPackage.Base['_id']
149143
): ExpectedPackageId {
@@ -189,6 +183,7 @@ export function getExpectedPackageIdFromIngestSource(
189183
return protectString(`${parentId}_${ownerId}_${getHash(localExpectedPackageId)}`)
190184
}
191185

186+
// Future implementation of id generation, once shared ownership is implemented
192187
// export function getExpectedPackageIdNew(
193188
// /** _id of the rundown*/
194189
// rundownId: RundownId,

0 commit comments

Comments
 (0)