X-Git-Url: https://git.arvados.org/arvados-workbench2.git/blobdiff_plain/3f809e0be2a712d1e576f1b2acf4aff73e0f16b0..da050efb3aea15f768e1873f80459e55a56f55e7:/src/services/permission-service/permission-service.ts diff --git a/src/services/permission-service/permission-service.ts b/src/services/permission-service/permission-service.ts index 95666de0..4bb0fe09 100644 --- a/src/services/permission-service/permission-service.ts +++ b/src/services/permission-service/permission-service.ts @@ -4,20 +4,19 @@ import { LinkService } from "~/services/link-service/link-service"; import { PermissionResource } from "~/models/permission"; -import { ListArguments, ListResults } from '~/services/common-service/common-resource-service'; -import { joinFilters, FilterBuilder } from '../api/filter-builder'; +import { ListArguments, ListResults, CommonResourceService } from '~/services/common-service/common-resource-service'; import { LinkClass } from '../../models/link'; export class PermissionService extends LinkService { - list(args: ListArguments = {}): Promise> { - const { filters, ...other } = args; - const classFilter = new FilterBuilder().addEqual('class', LinkClass.PERMISSION).getFilters(); - const newArgs = { - ...other, - filters: joinFilters(filters, classFilter), - }; - return super.list(newArgs); + permissionListService = new CommonResourceService(this.serverApi, 'permissions', this.actions); + create(data?: Partial) { + return super.create({ ...data, linkClass: LinkClass.PERMISSION }); + } + + listResourcePermissions(uuid: string, args: ListArguments = {}): Promise> { + const service = new CommonResourceService(this.serverApi, `permissions/${uuid}`, this.actions); + return service.list(args); } }