feat: migrate to cloudflare d1 and queues
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
import { OpenAPIHono, createRoute, z } from "@hono/zod-openapi";
|
||||
import type { HonoRequest } from "hono";
|
||||
|
||||
import { AnilistUpdateType } from "~/libs/anilist/updateType.ts";
|
||||
import { maybeScheduleNextAiringEpisode } from "~/libs/maybeScheduleNextAiringEpisode";
|
||||
import { buildNewEpisodeTaskId } from "~/libs/tasks/id";
|
||||
import { queueTask } from "~/libs/tasks/queueTask";
|
||||
@@ -76,9 +77,9 @@ export async function updateWatchStatus(
|
||||
watchStatus,
|
||||
);
|
||||
if (wasAdded) {
|
||||
await maybeScheduleNextAiringEpisode(req, titleId);
|
||||
await maybeScheduleNextAiringEpisode(titleId);
|
||||
} else if (wasDeleted) {
|
||||
await removeTask("new-episode", buildNewEpisodeTaskId(titleId));
|
||||
await removeTask("NEW_EPISODE", buildNewEpisodeTaskId(titleId));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -115,13 +116,12 @@ app.openapi(route, async (c) => {
|
||||
}
|
||||
|
||||
await queueTask(
|
||||
"anilist-updates",
|
||||
"ANILIST_UPDATES",
|
||||
{
|
||||
deviceId,
|
||||
watchStatus,
|
||||
titleId,
|
||||
isRetrying: true,
|
||||
nameSuffix: "watch-status",
|
||||
updateType: AnilistUpdateType.UpdateWatchStatus,
|
||||
},
|
||||
{ req: c.req, scheduleConfig: { delay: { minute: 1 } } },
|
||||
);
|
||||
|
||||
Reference in New Issue
Block a user