mirror of
https://github.com/ynput/ayon-core.git
synced 2026-01-01 16:34:53 +01:00
split 'get_hero_version' to 'get_hero_version_by_id' and 'get_hero_version_by_subset_id'
This commit is contained in:
parent
0f95a66359
commit
675da63f8c
2 changed files with 68 additions and 21 deletions
|
|
@ -15,10 +15,11 @@ from .entities import (
|
|||
get_version_by_id,
|
||||
get_version_by_name,
|
||||
get_versions,
|
||||
get_hero_version_by_id,
|
||||
get_hero_version_by_subset_id,
|
||||
get_hero_versions,
|
||||
get_last_versions,
|
||||
get_last_version_for_subset,
|
||||
get_hero_version,
|
||||
get_hero_versions,
|
||||
get_output_link_versions,
|
||||
|
||||
get_representation,
|
||||
|
|
@ -48,10 +49,11 @@ __all__ = (
|
|||
"get_version_by_id",
|
||||
"get_version_by_name",
|
||||
"get_versions",
|
||||
"get_hero_version_by_id",
|
||||
"get_hero_version_by_subset_id",
|
||||
"get_hero_versions",
|
||||
"get_last_versions",
|
||||
"get_last_version_for_subset",
|
||||
"get_hero_version",
|
||||
"get_hero_versions",
|
||||
"get_output_link_versions",
|
||||
|
||||
"get_representation",
|
||||
|
|
|
|||
|
|
@ -498,27 +498,57 @@ def get_versions(
|
|||
)
|
||||
|
||||
|
||||
def get_hero_version(
|
||||
project_name,
|
||||
subset_id=None,
|
||||
version_id=None,
|
||||
fields=None
|
||||
):
|
||||
if not subset_id and not version_id:
|
||||
def get_hero_version_by_subset_id(project_name, subset_id, fields=None):
|
||||
"""Hero version by subset id.
|
||||
|
||||
Args:
|
||||
project_name (str): Name of project where to look for queried entities.
|
||||
subset_id (str|ObjectId): Subset id under which is hero version.
|
||||
fields (list[str]): Fields that should be returned. All fields are
|
||||
returned if 'None' is passed.
|
||||
|
||||
Returns:
|
||||
None: If hero version for passed subset id does not exists.
|
||||
Dict: Hero version entity data.
|
||||
"""
|
||||
|
||||
subset_id = _convert_id(subset_id)
|
||||
if not subset_id:
|
||||
return None
|
||||
|
||||
subset_ids = None
|
||||
if subset_id is not None:
|
||||
subset_ids = [subset_id]
|
||||
|
||||
version_ids = None
|
||||
if version_id is not None:
|
||||
version_ids = [version_id]
|
||||
|
||||
versions = list(_get_versions(
|
||||
project_name,
|
||||
subset_ids=subset_ids,
|
||||
version_ids=version_ids,
|
||||
subset_ids=[subset_id],
|
||||
standard=False,
|
||||
hero=True,
|
||||
fields=fields
|
||||
))
|
||||
if versions:
|
||||
return versions[0]
|
||||
return None
|
||||
|
||||
|
||||
def get_hero_version_by_id(project_name, version_id, fields=None):
|
||||
"""Hero version by it's id.
|
||||
|
||||
Args:
|
||||
project_name (str): Name of project where to look for queried entities.
|
||||
version_id (str|ObjectId): Hero version id.
|
||||
fields (list[str]): Fields that should be returned. All fields are
|
||||
returned if 'None' is passed.
|
||||
|
||||
Returns:
|
||||
None: If hero version with passed id was not found.
|
||||
Dict: Hero version entity data.
|
||||
"""
|
||||
|
||||
version_id = _convert_id(version_id)
|
||||
if not version_id:
|
||||
return None
|
||||
|
||||
versions = list(_get_versions(
|
||||
project_name,
|
||||
version_ids=[version_id],
|
||||
standard=False,
|
||||
hero=True,
|
||||
fields=fields
|
||||
|
|
@ -534,6 +564,21 @@ def get_hero_versions(
|
|||
version_ids=None,
|
||||
fields=None
|
||||
):
|
||||
"""Hero version entities data from one project filtered by entered filters.
|
||||
|
||||
Args:
|
||||
project_name (str): Name of project where to look for queried entities.
|
||||
subset_ids (list[str|ObjectId]): Subset ids for which should look for
|
||||
hero versions. Filter ignored if 'None' is passed.
|
||||
version_ids (list[str|ObjectId]): Hero version ids. Filter ignored if
|
||||
'None' is passed.
|
||||
fields (list[str]): Fields that should be returned. All fields are
|
||||
returned if 'None' is passed.
|
||||
|
||||
Returns:
|
||||
Cursor|list: Iterable yielding hero versions matching passed filters.
|
||||
"""
|
||||
|
||||
return _get_versions(
|
||||
project_name,
|
||||
subset_ids,
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue