mirror of
https://github.com/hibiken/asynqmon.git
synced 2025-10-21 22:06:11 +08:00
Add completed state
This commit is contained in:
@@ -4,6 +4,7 @@ import {
|
||||
batchDeleteArchivedTasks,
|
||||
batchDeleteRetryTasks,
|
||||
batchDeleteScheduledTasks,
|
||||
batchDeleteCompletedTasks,
|
||||
BatchDeleteTasksResponse,
|
||||
batchArchiveRetryTasks,
|
||||
batchArchiveScheduledTasks,
|
||||
@@ -17,23 +18,22 @@ import {
|
||||
deleteAllArchivedTasks,
|
||||
deleteAllRetryTasks,
|
||||
deleteAllScheduledTasks,
|
||||
deleteAllCompletedTasks,
|
||||
deleteArchivedTask,
|
||||
deleteRetryTask,
|
||||
deleteScheduledTask,
|
||||
deleteCompletedTask,
|
||||
archiveAllRetryTasks,
|
||||
archiveAllScheduledTasks,
|
||||
archiveRetryTask,
|
||||
archiveScheduledTask,
|
||||
listActiveTasks,
|
||||
ListActiveTasksResponse,
|
||||
listArchivedTasks,
|
||||
ListArchivedTasksResponse,
|
||||
listPendingTasks,
|
||||
ListPendingTasksResponse,
|
||||
ListTasksResponse,
|
||||
listRetryTasks,
|
||||
ListRetryTasksResponse,
|
||||
listScheduledTasks,
|
||||
ListScheduledTasksResponse,
|
||||
listCompletedTasks,
|
||||
PaginationOptions,
|
||||
runAllArchivedTasks,
|
||||
runAllRetryTasks,
|
||||
@@ -72,6 +72,9 @@ export const LIST_RETRY_TASKS_ERROR = "LIST_RETRY_TASKS_ERROR";
|
||||
export const LIST_ARCHIVED_TASKS_BEGIN = "LIST_ARCHIVED_TASKS_BEGIN";
|
||||
export const LIST_ARCHIVED_TASKS_SUCCESS = "LIST_ARCHIVED_TASKS_SUCCESS";
|
||||
export const LIST_ARCHIVED_TASKS_ERROR = "LIST_ARCHIVED_TASKS_ERROR";
|
||||
export const LIST_COMPLETED_TASKS_BEGIN = "LIST_COMPLETED_TASKS_BEGIN";
|
||||
export const LIST_COMPLETED_TASKS_SUCCESS = "LIST_COMPLETED_TASKS_SUCCESS";
|
||||
export const LIST_COMPLETED_TASKS_ERROR = "LIST_COMPLETED_TASKS_ERROR";
|
||||
export const CANCEL_ACTIVE_TASK_BEGIN = "CANCEL_ACTIVE_TASK_BEGIN";
|
||||
export const CANCEL_ACTIVE_TASK_SUCCESS = "CANCEL_ACTIVE_TASK_SUCCESS";
|
||||
export const CANCEL_ACTIVE_TASK_ERROR = "CANCEL_ACTIVE_TASK_ERROR";
|
||||
@@ -213,6 +216,21 @@ export const DELETE_ALL_ARCHIVED_TASKS_SUCCESS =
|
||||
"DELETE_ALL_ARCHIVED_TASKS_SUCCESS";
|
||||
export const DELETE_ALL_ARCHIVED_TASKS_ERROR =
|
||||
"DELETE_ALL_ARCHIVED_TASKS_ERROR";
|
||||
export const DELETE_COMPLETED_TASK_BEGIN = "DELETE_COMPLETED_TASK_BEGIN";
|
||||
export const DELETE_COMPLETED_TASK_SUCCESS = "DELETE_COMPLETED_TASK_SUCCESS";
|
||||
export const DELETE_COMPLETED_TASK_ERROR = "DELETE_COMPLETED_TASK_ERROR";
|
||||
export const DELETE_ALL_COMPLETED_TASKS_BEGIN =
|
||||
"DELETE_ALL_COMPLETED_TASKS_BEGIN";
|
||||
export const DELETE_ALL_COMPLETED_TASKS_SUCCESS =
|
||||
"DELETE_ALL_COMPLETED_TASKS_SUCCESS";
|
||||
export const DELETE_ALL_COMPLETED_TASKS_ERROR =
|
||||
"DELETE_ALL_COMPLETED_TASKS_ERROR";
|
||||
export const BATCH_DELETE_COMPLETED_TASKS_BEGIN =
|
||||
"BATCH_DELETE_COMPLETED_TASKS_BEGIN";
|
||||
export const BATCH_DELETE_COMPLETED_TASKS_SUCCESS =
|
||||
"BATCH_DELETE_COMPLETED_TASKS_SUCCESS";
|
||||
export const BATCH_DELETE_COMPLETED_TASKS_ERROR =
|
||||
"BATCH_DELETE_COMPLETED_TASKS_ERROR";
|
||||
|
||||
interface GetTaskInfoBeginAction {
|
||||
type: typeof GET_TASK_INFO_BEGIN;
|
||||
@@ -236,7 +254,7 @@ interface ListActiveTasksBeginAction {
|
||||
interface ListActiveTasksSuccessAction {
|
||||
type: typeof LIST_ACTIVE_TASKS_SUCCESS;
|
||||
queue: string;
|
||||
payload: ListActiveTasksResponse;
|
||||
payload: ListTasksResponse;
|
||||
}
|
||||
|
||||
interface ListActiveTasksErrorAction {
|
||||
@@ -253,7 +271,7 @@ interface ListPendingTasksBeginAction {
|
||||
interface ListPendingTasksSuccessAction {
|
||||
type: typeof LIST_PENDING_TASKS_SUCCESS;
|
||||
queue: string;
|
||||
payload: ListPendingTasksResponse;
|
||||
payload: ListTasksResponse;
|
||||
}
|
||||
|
||||
interface ListPendingTasksErrorAction {
|
||||
@@ -270,7 +288,7 @@ interface ListScheduledTasksBeginAction {
|
||||
interface ListScheduledTasksSuccessAction {
|
||||
type: typeof LIST_SCHEDULED_TASKS_SUCCESS;
|
||||
queue: string;
|
||||
payload: ListScheduledTasksResponse;
|
||||
payload: ListTasksResponse;
|
||||
}
|
||||
|
||||
interface ListScheduledTasksErrorAction {
|
||||
@@ -287,7 +305,7 @@ interface ListRetryTasksBeginAction {
|
||||
interface ListRetryTasksSuccessAction {
|
||||
type: typeof LIST_RETRY_TASKS_SUCCESS;
|
||||
queue: string;
|
||||
payload: ListRetryTasksResponse;
|
||||
payload: ListTasksResponse;
|
||||
}
|
||||
|
||||
interface ListRetryTasksErrorAction {
|
||||
@@ -304,7 +322,7 @@ interface ListArchivedTasksBeginAction {
|
||||
interface ListArchivedTasksSuccessAction {
|
||||
type: typeof LIST_ARCHIVED_TASKS_SUCCESS;
|
||||
queue: string;
|
||||
payload: ListArchivedTasksResponse;
|
||||
payload: ListTasksResponse;
|
||||
}
|
||||
|
||||
interface ListArchivedTasksErrorAction {
|
||||
@@ -313,6 +331,23 @@ interface ListArchivedTasksErrorAction {
|
||||
error: string; // error description
|
||||
}
|
||||
|
||||
interface ListCompletedTasksBeginAction {
|
||||
type: typeof LIST_COMPLETED_TASKS_BEGIN;
|
||||
queue: string;
|
||||
}
|
||||
|
||||
interface ListCompletedTasksSuccessAction {
|
||||
type: typeof LIST_COMPLETED_TASKS_SUCCESS;
|
||||
queue: string;
|
||||
payload: ListTasksResponse;
|
||||
}
|
||||
|
||||
interface ListCompletedTasksErrorAction {
|
||||
type: typeof LIST_COMPLETED_TASKS_ERROR;
|
||||
queue: string;
|
||||
error: string; // error description
|
||||
}
|
||||
|
||||
interface CancelActiveTaskBeginAction {
|
||||
type: typeof CANCEL_ACTIVE_TASK_BEGIN;
|
||||
queue: string;
|
||||
@@ -911,6 +946,61 @@ interface DeleteAllArchivedTasksErrorAction {
|
||||
error: string;
|
||||
}
|
||||
|
||||
interface DeleteCompletedTaskBeginAction {
|
||||
type: typeof DELETE_COMPLETED_TASK_BEGIN;
|
||||
queue: string;
|
||||
taskId: string;
|
||||
}
|
||||
|
||||
interface DeleteCompletedTaskSuccessAction {
|
||||
type: typeof DELETE_COMPLETED_TASK_SUCCESS;
|
||||
queue: string;
|
||||
taskId: string;
|
||||
}
|
||||
|
||||
interface DeleteCompletedTaskErrorAction {
|
||||
type: typeof DELETE_COMPLETED_TASK_ERROR;
|
||||
queue: string;
|
||||
taskId: string;
|
||||
error: string;
|
||||
}
|
||||
|
||||
interface BatchDeleteCompletedTasksBeginAction {
|
||||
type: typeof BATCH_DELETE_COMPLETED_TASKS_BEGIN;
|
||||
queue: string;
|
||||
taskIds: string[];
|
||||
}
|
||||
|
||||
interface BatchDeleteCompletedTasksSuccessAction {
|
||||
type: typeof BATCH_DELETE_COMPLETED_TASKS_SUCCESS;
|
||||
queue: string;
|
||||
payload: BatchDeleteTasksResponse;
|
||||
}
|
||||
|
||||
interface BatchDeleteCompletedTasksErrorAction {
|
||||
type: typeof BATCH_DELETE_COMPLETED_TASKS_ERROR;
|
||||
queue: string;
|
||||
taskIds: string[];
|
||||
error: string;
|
||||
}
|
||||
|
||||
interface DeleteAllCompletedTasksBeginAction {
|
||||
type: typeof DELETE_ALL_COMPLETED_TASKS_BEGIN;
|
||||
queue: string;
|
||||
}
|
||||
|
||||
interface DeleteAllCompletedTasksSuccessAction {
|
||||
type: typeof DELETE_ALL_COMPLETED_TASKS_SUCCESS;
|
||||
queue: string;
|
||||
deleted: number;
|
||||
}
|
||||
|
||||
interface DeleteAllCompletedTasksErrorAction {
|
||||
type: typeof DELETE_ALL_COMPLETED_TASKS_ERROR;
|
||||
queue: string;
|
||||
error: string;
|
||||
}
|
||||
|
||||
// Union of all tasks related action types.
|
||||
export type TasksActionTypes =
|
||||
| GetTaskInfoBeginAction
|
||||
@@ -931,6 +1021,9 @@ export type TasksActionTypes =
|
||||
| ListArchivedTasksBeginAction
|
||||
| ListArchivedTasksSuccessAction
|
||||
| ListArchivedTasksErrorAction
|
||||
| ListCompletedTasksBeginAction
|
||||
| ListCompletedTasksSuccessAction
|
||||
| ListCompletedTasksErrorAction
|
||||
| CancelActiveTaskBeginAction
|
||||
| CancelActiveTaskSuccessAction
|
||||
| CancelActiveTaskErrorAction
|
||||
@@ -1029,7 +1122,16 @@ export type TasksActionTypes =
|
||||
| RunAllArchivedTasksErrorAction
|
||||
| DeleteAllArchivedTasksBeginAction
|
||||
| DeleteAllArchivedTasksSuccessAction
|
||||
| DeleteAllArchivedTasksErrorAction;
|
||||
| DeleteAllArchivedTasksErrorAction
|
||||
| DeleteCompletedTaskBeginAction
|
||||
| DeleteCompletedTaskSuccessAction
|
||||
| DeleteCompletedTaskErrorAction
|
||||
| BatchDeleteCompletedTasksBeginAction
|
||||
| BatchDeleteCompletedTasksSuccessAction
|
||||
| BatchDeleteCompletedTasksErrorAction
|
||||
| DeleteAllCompletedTasksBeginAction
|
||||
| DeleteAllCompletedTasksSuccessAction
|
||||
| DeleteAllCompletedTasksErrorAction;
|
||||
|
||||
export function getTaskInfoAsync(qname: string, id: string) {
|
||||
return async (dispatch: Dispatch<TasksActionTypes>) => {
|
||||
@@ -1039,15 +1141,15 @@ export function getTaskInfoAsync(qname: string, id: string) {
|
||||
dispatch({
|
||||
type: GET_TASK_INFO_SUCCESS,
|
||||
payload: response,
|
||||
})
|
||||
});
|
||||
} catch (error) {
|
||||
console.error("getTaskInfoAsync: ", toErrorStringWithHttpStatus(error));
|
||||
dispatch({
|
||||
type: GET_TASK_INFO_ERROR,
|
||||
error: toErrorString(error),
|
||||
})
|
||||
});
|
||||
}
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
export function listActiveTasksAsync(
|
||||
@@ -1185,6 +1287,33 @@ export function listArchivedTasksAsync(
|
||||
};
|
||||
}
|
||||
|
||||
export function listCompletedTasksAsync(
|
||||
qname: string,
|
||||
pageOpts?: PaginationOptions
|
||||
) {
|
||||
return async (dispatch: Dispatch<TasksActionTypes>) => {
|
||||
try {
|
||||
dispatch({ type: LIST_COMPLETED_TASKS_BEGIN, queue: qname });
|
||||
const response = await listCompletedTasks(qname, pageOpts);
|
||||
dispatch({
|
||||
type: LIST_COMPLETED_TASKS_SUCCESS,
|
||||
queue: qname,
|
||||
payload: response,
|
||||
});
|
||||
} catch (error) {
|
||||
console.error(
|
||||
"listCompletedTasksAsync: ",
|
||||
toErrorStringWithHttpStatus(error)
|
||||
);
|
||||
dispatch({
|
||||
type: LIST_COMPLETED_TASKS_ERROR,
|
||||
queue: qname,
|
||||
error: toErrorString(error),
|
||||
});
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
export function cancelActiveTaskAsync(queue: string, taskId: string) {
|
||||
return async (dispatch: Dispatch<TasksActionTypes>) => {
|
||||
dispatch({ type: CANCEL_ACTIVE_TASK_BEGIN, queue, taskId });
|
||||
@@ -1395,10 +1524,7 @@ export function deletePendingTaskAsync(queue: string, taskId: string) {
|
||||
};
|
||||
}
|
||||
|
||||
export function batchDeletePendingTasksAsync(
|
||||
queue: string,
|
||||
taskIds: string[]
|
||||
) {
|
||||
export function batchDeletePendingTasksAsync(queue: string, taskIds: string[]) {
|
||||
return async (dispatch: Dispatch<TasksActionTypes>) => {
|
||||
dispatch({ type: BATCH_DELETE_PENDING_TASKS_BEGIN, queue, taskIds });
|
||||
try {
|
||||
@@ -1938,3 +2064,76 @@ export function runAllArchivedTasksAsync(queue: string) {
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
export function deleteCompletedTaskAsync(queue: string, taskId: string) {
|
||||
return async (dispatch: Dispatch<TasksActionTypes>) => {
|
||||
dispatch({ type: DELETE_COMPLETED_TASK_BEGIN, queue, taskId });
|
||||
try {
|
||||
await deleteCompletedTask(queue, taskId);
|
||||
dispatch({ type: DELETE_COMPLETED_TASK_SUCCESS, queue, taskId });
|
||||
} catch (error) {
|
||||
console.error(
|
||||
"deleteCompletedTaskAsync: ",
|
||||
toErrorStringWithHttpStatus(error)
|
||||
);
|
||||
dispatch({
|
||||
type: DELETE_COMPLETED_TASK_ERROR,
|
||||
error: toErrorString(error),
|
||||
queue,
|
||||
taskId,
|
||||
});
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
export function batchDeleteCompletedTasksAsync(
|
||||
queue: string,
|
||||
taskIds: string[]
|
||||
) {
|
||||
return async (dispatch: Dispatch<TasksActionTypes>) => {
|
||||
dispatch({ type: BATCH_DELETE_COMPLETED_TASKS_BEGIN, queue, taskIds });
|
||||
try {
|
||||
const response = await batchDeleteCompletedTasks(queue, taskIds);
|
||||
dispatch({
|
||||
type: BATCH_DELETE_COMPLETED_TASKS_SUCCESS,
|
||||
queue: queue,
|
||||
payload: response,
|
||||
});
|
||||
} catch (error) {
|
||||
console.error(
|
||||
"batchDeleteCompletedTasksAsync: ",
|
||||
toErrorStringWithHttpStatus(error)
|
||||
);
|
||||
dispatch({
|
||||
type: BATCH_DELETE_COMPLETED_TASKS_ERROR,
|
||||
error: toErrorString(error),
|
||||
queue,
|
||||
taskIds,
|
||||
});
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
export function deleteAllCompletedTasksAsync(queue: string) {
|
||||
return async (dispatch: Dispatch<TasksActionTypes>) => {
|
||||
dispatch({ type: DELETE_ALL_COMPLETED_TASKS_BEGIN, queue });
|
||||
try {
|
||||
const response = await deleteAllCompletedTasks(queue);
|
||||
dispatch({
|
||||
type: DELETE_ALL_COMPLETED_TASKS_SUCCESS,
|
||||
deleted: response.deleted,
|
||||
queue,
|
||||
});
|
||||
} catch (error) {
|
||||
console.error(
|
||||
"deleteAllCompletedTasksAsync: ",
|
||||
toErrorStringWithHttpStatus(error)
|
||||
);
|
||||
dispatch({
|
||||
type: DELETE_ALL_COMPLETED_TASKS_ERROR,
|
||||
error: toErrorString(error),
|
||||
queue,
|
||||
});
|
||||
}
|
||||
};
|
||||
}
|
||||
|
Reference in New Issue
Block a user