Type alias WorkerModule

WorkerModule: { activeWorkTypes: (() => Promise<string[]>); addWork: ((data: WorkData, userId?: string) => Promise<Work>); allocateWork: ((doc: { types: string[]; worker: string }) => Promise<Work>); count: ((query: WorkQueueQuery) => Promise<number>); deleteWork: ((_id: string, userId: string) => Promise<Work | null>); doWork: ((work: Work, unchainedAPI: UnchainedCore) => Promise<WorkResult<any>>); ensureOneWork: ((work: Work) => Promise<Work>); findWork: ((query: { originalWorkId?: string; workId?: string }) => Promise<Work>); findWorkQueue: ((query: WorkQueueQuery & { limit?: number; skip?: number; sort?: { key: string; value: "DESC" | "ASC" }[] }) => Promise<Work[]>); finishWork: ((_id: string, data: WorkResult<any> & { finished?: Date; started?: Date; worker: string }, userId: string) => Promise<Work | null>); markOldWorkAsFailed: ((params: { referenceDate: Date; types: string[]; worker: string }, userId?: string) => Promise<Work[]>); rescheduleWork: ((work: Work, scheduled: Date, unchainedAPI: UnchainedCore) => Promise<Work>); status: ((work: Work) => WorkStatus); type: ((work: Work) => string); workExists: ((query: { originalWorkId?: string; workId?: string }) => Promise<boolean>) }

Type declaration

  • activeWorkTypes: (() => Promise<string[]>)
      • (): Promise<string[]>
      • Returns Promise<string[]>

  • addWork: ((data: WorkData, userId?: string) => Promise<Work>)
      • (data: WorkData, userId?: string): Promise<Work>
      • Parameters

        Returns Promise<Work>

  • allocateWork: ((doc: { types: string[]; worker: string }) => Promise<Work>)
      • (doc: { types: string[]; worker: string }): Promise<Work>
      • Parameters

        • doc: { types: string[]; worker: string }
          • types: string[]
          • worker: string

        Returns Promise<Work>

  • count: ((query: WorkQueueQuery) => Promise<number>)
  • deleteWork: ((_id: string, userId: string) => Promise<Work | null>)
      • (_id: string, userId: string): Promise<Work | null>
      • Parameters

        • _id: string
        • userId: string

        Returns Promise<Work | null>

  • doWork: ((work: Work, unchainedAPI: UnchainedCore) => Promise<WorkResult<any>>)
  • ensureOneWork: ((work: Work) => Promise<Work>)
  • findWork: ((query: { originalWorkId?: string; workId?: string }) => Promise<Work>)
      • (query: { originalWorkId?: string; workId?: string }): Promise<Work>
      • Parameters

        • query: { originalWorkId?: string; workId?: string }
          • Optional originalWorkId?: string
          • Optional workId?: string

        Returns Promise<Work>

  • findWorkQueue: ((query: WorkQueueQuery & { limit?: number; skip?: number; sort?: { key: string; value: "DESC" | "ASC" }[] }) => Promise<Work[]>)
      • (query: WorkQueueQuery & { limit?: number; skip?: number; sort?: { key: string; value: "DESC" | "ASC" }[] }): Promise<Work[]>
      • Parameters

        • query: WorkQueueQuery & { limit?: number; skip?: number; sort?: { key: string; value: "DESC" | "ASC" }[] }

        Returns Promise<Work[]>

  • finishWork: ((_id: string, data: WorkResult<any> & { finished?: Date; started?: Date; worker: string }, userId: string) => Promise<Work | null>)
      • (_id: string, data: WorkResult<any> & { finished?: Date; started?: Date; worker: string }, userId: string): Promise<Work | null>
      • Parameters

        • _id: string
        • data: WorkResult<any> & { finished?: Date; started?: Date; worker: string }
        • userId: string

        Returns Promise<Work | null>

  • markOldWorkAsFailed: ((params: { referenceDate: Date; types: string[]; worker: string }, userId?: string) => Promise<Work[]>)
      • (params: { referenceDate: Date; types: string[]; worker: string }, userId?: string): Promise<Work[]>
      • Parameters

        • params: { referenceDate: Date; types: string[]; worker: string }
          • referenceDate: Date
          • types: string[]
          • worker: string
        • Optional userId: string

        Returns Promise<Work[]>

  • rescheduleWork: ((work: Work, scheduled: Date, unchainedAPI: UnchainedCore) => Promise<Work>)
  • status: ((work: Work) => WorkStatus)
  • type: ((work: Work) => string)
      • (work: Work): string
      • Parameters

        Returns string

  • workExists: ((query: { originalWorkId?: string; workId?: string }) => Promise<boolean>)
      • (query: { originalWorkId?: string; workId?: string }): Promise<boolean>
      • Parameters

        • query: { originalWorkId?: string; workId?: string }
          • Optional originalWorkId?: string
          • Optional workId?: string

        Returns Promise<boolean>