Feature #17119

Updated by Ward Vandewege 10 months ago

Suggestion from customer:

Could we define virtual folders in the S3 / WebDAV / FUSE interface whose contents are defined by a query, e.g. filter on collections that have a certain property?

* Define new group_class called "filter" "filters"
* Has arvados filters in a property
* Can use with "group contents" API which reads the filters from the "filter" group properties and applies them to the contents query
* "filter" "filters" groups cannot own things and cannot have outgoing permission links
* Add support for showing "filter" groups the same way projects/subprojects are displayed in workbench 2
* Add support for navigating to "filter" groups in Go filesystem (used by keep-web) which uses "group contents" API
* When setting filters there should be some validation to prevent user from setting an obviously invalid filter


In controller, get the group object, check the group_class, if it is "filter" "filters" then add the filters to the query, and pass along the query to the backend.