X-Git-Url: https://git.arvados.org/arvados-workbench2.git/blobdiff_plain/cba0f400f56889778321bdc0fdcf6cee236f6a79..e8dae47a3dead0a49cb60c1075b96a95ef8142e5:/src/store/processes/processes-actions.ts diff --git a/src/store/processes/processes-actions.ts b/src/store/processes/processes-actions.ts index d6675171..031683a7 100644 --- a/src/store/processes/processes-actions.ts +++ b/src/store/processes/processes-actions.ts @@ -6,23 +6,27 @@ import { Dispatch } from "redux"; import { RootState } from '~/store/store'; import { ServiceRepository } from '~/services/services'; import { updateResources } from '~/store/resources/resources-actions'; -import { FilterBuilder } from '~/common/api/filter-builder'; +import { FilterBuilder } from '~/services/api/filter-builder'; import { ContainerRequestResource } from '../../models/container-request'; +import { Process } from './process'; -export const loadProcess = (uuid: string) => - async (dispatch: Dispatch, getState: () => RootState, services: ServiceRepository) => { - const containerRequest = await services.containerRequestService.get(uuid); +export const loadProcess = (containerRequestUuid: string) => + async (dispatch: Dispatch, getState: () => RootState, services: ServiceRepository): Promise => { + const containerRequest = await services.containerRequestService.get(containerRequestUuid); dispatch(updateResources([containerRequest])); if (containerRequest.containerUuid) { const container = await services.containerService.get(containerRequest.containerUuid); dispatch(updateResources([container])); + await dispatch(loadSubprocesses(containerRequest.containerUuid)); + return { containerRequest, container }; } + return { containerRequest }; }; -export const loadSubprocesses = (uuid: string) => +export const loadSubprocesses = (containerUuid: string) => async (dispatch: Dispatch, getState: () => RootState, services: ServiceRepository) => { const containerRequests = await dispatch(loadContainerRequests( - new FilterBuilder().addEqual('requestingContainerUuid', uuid).getFilters() + new FilterBuilder().addEqual('requestingContainerUuid', containerUuid).getFilters() )) as ContainerRequestResource[]; const containerUuids: string[] = containerRequests.reduce((uuids, { containerUuid }) =>