Skip to content

Commit d85397c

Browse files
committed
wip: unhandled promises
1 parent 48b0386 commit d85397c

File tree

7 files changed

+47
-173
lines changed

7 files changed

+47
-173
lines changed

meteor/server/api/ExternalMessageQueue.ts

Lines changed: 14 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import { Meteor } from 'meteor/meteor'
22
import { check } from '../lib/check'
33
import { StatusCode } from '@sofie-automation/blueprints-integration'
4-
import { deferAsync, getCurrentTime } from '../lib/lib'
4+
import { deferAsync, getCurrentTime, MeteorStartupAsync } from '../lib/lib'
55
import { registerClassToMeteorMethods } from '../methods'
66
import {
77
NewExternalMessageQueueAPI,
@@ -50,18 +50,19 @@ function updateExternalMessageQueueStatus(): void {
5050
}
5151
}
5252

53-
ExternalMessageQueue.observeChanges(
54-
{
55-
sent: { $not: { $gt: 0 } },
56-
tryCount: { $gt: 3 },
57-
},
58-
{
59-
added: updateExternalMessageQueueStatus,
60-
changed: updateExternalMessageQueueStatus,
61-
removed: updateExternalMessageQueueStatus,
62-
}
63-
)
64-
Meteor.startup(() => {
53+
MeteorStartupAsync(async () => {
54+
await ExternalMessageQueue.observeChanges(
55+
{
56+
sent: { $not: { $gt: 0 } },
57+
tryCount: { $gt: 3 },
58+
},
59+
{
60+
added: updateExternalMessageQueueStatus,
61+
changed: updateExternalMessageQueueStatus,
62+
removed: updateExternalMessageQueueStatus,
63+
}
64+
)
65+
6566
updateExternalMessageQueueStatus()
6667
// triggerdoMessageQueue(5000)
6768
})

meteor/server/api/deviceTriggers/observer.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -18,14 +18,14 @@ import { StudioObserver } from './StudioObserver'
1818
import { Studios } from '../../collections'
1919
import { ReactiveCacheCollection } from '../../publications/lib/ReactiveCacheCollection'
2020
import { stringifyError } from '@sofie-automation/shared-lib/dist/lib/stringifyError'
21+
import { MeteorStartupAsync } from '../../lib/lib'
2122

2223
type ObserverAndManager = {
2324
observer: StudioObserver
2425
manager: StudioDeviceTriggerManager
2526
}
2627

27-
Meteor.startup(() => {
28-
if (!Meteor.isServer) return
28+
MeteorStartupAsync(async () => {
2929
const studioObserversAndManagers = new Map<StudioId, ObserverAndManager>()
3030
const jobQueue = new JobQueueWithClasses({
3131
autoStart: true,
@@ -69,7 +69,7 @@ Meteor.startup(() => {
6969
}
7070
}
7171

72-
Studios.observeChanges(
72+
await Studios.observeChanges(
7373
{},
7474
{
7575
added: (studioId) => {

meteor/server/api/ingest/rundownInput.ts

Lines changed: 10 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ import { check } from '../../lib/check'
33
import { PeripheralDevice } from '@sofie-automation/corelib/dist/dataModel/PeripheralDevice'
44
import { NrcsIngestDataCache, MediaObjects, Parts, Rundowns, Segments } from '../../collections'
55
import { literal } from '../../lib/tempLib'
6-
import { lazyIgnore } from '../../lib/lib'
6+
import { lazyIgnore, MeteorStartupAsync } from '../../lib/lib'
77
import { IngestRundown, IngestSegment, IngestPart, IngestPlaylist } from '@sofie-automation/blueprints-integration'
88
import { logger } from '../../logging'
99
import { RundownIngestDataCache } from './ingestCache'
@@ -363,17 +363,15 @@ async function listIngestRundowns(peripheralDevice: PeripheralDevice): Promise<s
363363
}
364364

365365
// hackGetMediaObjectDuration stuff
366-
Meteor.startup(() => {
367-
if (Meteor.isServer) {
368-
MediaObjects.observe(
369-
{},
370-
{
371-
added: onMediaObjectChanged,
372-
changed: onMediaObjectChanged,
373-
},
374-
{ fields: { _id: 1, mediaId: 1, mediainfo: 1, studioId: 1 } }
375-
)
376-
}
366+
MeteorStartupAsync(async () => {
367+
await MediaObjects.observe(
368+
{},
369+
{
370+
added: onMediaObjectChanged,
371+
changed: onMediaObjectChanged,
372+
},
373+
{ fields: { _id: 1, mediaId: 1, mediainfo: 1, studioId: 1 } }
374+
)
377375
})
378376

379377
interface MediaObjectUpdatedIds {

meteor/server/api/studio/api.ts

Lines changed: 17 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ import { registerClassToMeteorMethods } from '../../methods'
44
import { NewStudiosAPI, StudiosAPIMethods } from '@sofie-automation/meteor-lib/dist/api/studios'
55
import { DBStudio } from '@sofie-automation/corelib/dist/dataModel/Studio'
66
import { literal, getRandomId } from '../../lib/tempLib'
7-
import { lazyIgnore } from '../../lib/lib'
7+
import { lazyIgnore, MeteorStartupAsync } from '../../lib/lib'
88
import { stringifyError } from '@sofie-automation/shared-lib/dist/lib/stringifyError'
99
import {
1010
ExpectedPackages,
@@ -133,17 +133,20 @@ function triggerUpdateStudioMappingsHash(studioId: StudioId) {
133133
10
134134
)
135135
}
136-
Studios.observeChanges(
137-
{},
138-
{
139-
added: triggerUpdateStudioMappingsHash,
140-
changed: triggerUpdateStudioMappingsHash,
141-
removed: triggerUpdateStudioMappingsHash,
142-
},
143-
{
144-
fields: {
145-
mappingsWithOverrides: 1,
146-
routeSetsWithOverrides: 1,
136+
137+
MeteorStartupAsync(async () => {
138+
await Studios.observeChanges(
139+
{},
140+
{
141+
added: triggerUpdateStudioMappingsHash,
142+
changed: triggerUpdateStudioMappingsHash,
143+
removed: triggerUpdateStudioMappingsHash,
147144
},
148-
}
149-
)
145+
{
146+
fields: {
147+
mappingsWithOverrides: 1,
148+
routeSetsWithOverrides: 1,
149+
},
150+
}
151+
)
152+
})

meteor/server/collections/lib.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,7 @@ export async function ObserveChangesHelper<DBInterface extends { _id: ProtectedS
6060
projection[field] = 1
6161
}
6262

63-
collection.observeChanges(
63+
await collection.observeChanges(
6464
{},
6565
{
6666
changed: (id: DBInterface['_id'], changedFields) => {

meteor/server/coreSystem/index.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,7 @@ async function initializeCoreSystem() {
7878
}
7979

8080
// Monitor database changes:
81-
CoreSystem.observeChanges(SYSTEM_ID, {
81+
await CoreSystem.observeChanges(SYSTEM_ID, {
8282
added: onCoreSystemChanged,
8383
changed: onCoreSystemChanged,
8484
removed: onCoreSystemChanged,
@@ -88,7 +88,7 @@ async function initializeCoreSystem() {
8888
checkDatabaseVersions()
8989
}
9090

91-
Blueprints.observeChanges(
91+
await Blueprints.observeChanges(
9292
{},
9393
{
9494
added: observeBlueprintChanges,

meteor/server/lib/ReactiveStore.ts

Lines changed: 0 additions & 128 deletions
This file was deleted.

0 commit comments

Comments
 (0)