mirror of
https://github.com/ynput/ayon-core.git
synced 2025-12-25 21:32:15 +01:00
renamed 'get_version' to 'get_version_by_id'
This commit is contained in:
parent
9456dac8b9
commit
0d5cc529d5
5 changed files with 108 additions and 27 deletions
|
|
@ -12,8 +12,8 @@ from .entities import (
|
|||
get_subsets,
|
||||
get_subset_families,
|
||||
|
||||
get_version_by_id,
|
||||
get_version_by_name,
|
||||
get_version,
|
||||
get_versions,
|
||||
get_last_versions,
|
||||
get_last_version_for_subset,
|
||||
|
|
@ -45,8 +45,8 @@ __all__ = (
|
|||
"get_subsets",
|
||||
"get_subset_families",
|
||||
|
||||
"get_version_by_id",
|
||||
"get_version_by_name",
|
||||
"get_version",
|
||||
"get_versions",
|
||||
"get_last_versions",
|
||||
"get_last_version_for_subset",
|
||||
|
|
|
|||
|
|
@ -224,7 +224,7 @@ def get_asset_ids_with_subsets(project_name, asset_ids=None):
|
|||
|
||||
|
||||
def get_subset_by_id(project_name, subset_id, fields=None):
|
||||
"""Single subset document by it's id.
|
||||
"""Single subset entity data by it's id.
|
||||
|
||||
Args:
|
||||
project_name (str): Name of project where to look for queried entities.
|
||||
|
|
@ -247,7 +247,7 @@ def get_subset_by_id(project_name, subset_id, fields=None):
|
|||
|
||||
|
||||
def get_subset_by_name(project_name, subset_name, asset_id, fields=None):
|
||||
"""Single subset document by subset name and it's version id.
|
||||
"""Single subset entity data by it's name and it's version id.
|
||||
|
||||
Args:
|
||||
project_name (str): Name of project where to look for queried entities.
|
||||
|
|
@ -279,12 +279,31 @@ def get_subset_by_name(project_name, subset_name, asset_id, fields=None):
|
|||
|
||||
def get_subsets(
|
||||
project_name,
|
||||
asset_ids=None,
|
||||
subset_ids=None,
|
||||
subset_names=None,
|
||||
asset_ids=None,
|
||||
archived=False,
|
||||
fields=None
|
||||
):
|
||||
"""Subset entities data from one project filtered by entered filters.
|
||||
|
||||
Filters are additive (all conditions must pass to return subset).
|
||||
|
||||
Args:
|
||||
project_name (str): Name of project where to look for queried entities.
|
||||
subset_ids (list[str, ObjectId]): Subset ids that should be queried.
|
||||
Filter ignored if 'None' is passed.
|
||||
subset_names (list[str]): Subset names that should be queried.
|
||||
Filter ignored if 'None' is passed.
|
||||
asset_ids (list[str, ObjectId]): Asset ids under which should look for
|
||||
the subsets. Filter ignored if 'None' is passed.
|
||||
fields (list[str]): Fields that should be returned. All fields are
|
||||
returned if 'None' is passed.
|
||||
|
||||
Returns:
|
||||
Cursor: Iterable cursor yielding all matching subsets.
|
||||
"""
|
||||
|
||||
subset_types = ["subset"]
|
||||
if archived:
|
||||
subset_types.append("archived_subset")
|
||||
|
|
@ -316,6 +335,17 @@ def get_subsets(
|
|||
|
||||
|
||||
def get_subset_families(project_name, subset_ids=None):
|
||||
"""Set of main families of subsets.
|
||||
|
||||
Args:
|
||||
project_name (str): Name of project where to look for queried entities.
|
||||
subset_ids (list[str, ObjectId]): Subset ids that should be queried.
|
||||
All subsets from project are used if 'None' is passed.
|
||||
|
||||
Returns:
|
||||
set[str]: Main families of matching subsets.
|
||||
"""
|
||||
|
||||
subset_filter = {
|
||||
"type": "subset"
|
||||
}
|
||||
|
|
@ -340,23 +370,56 @@ def get_subset_families(project_name, subset_ids=None):
|
|||
return set()
|
||||
|
||||
|
||||
def get_version_by_name(project_name, subset_id, version, fields=None):
|
||||
conn = _get_project_connection(project_name)
|
||||
def get_version_by_id(project_name, version_id, fields=None):
|
||||
"""Single version entity data by it's id.
|
||||
|
||||
Args:
|
||||
project_name (str): Name of project where to look for queried entities.
|
||||
version_id (ObjectId): Id of version which should be found.
|
||||
fields (list[str]): Fields that should be returned. All fields are
|
||||
returned if 'None' is passed.
|
||||
|
||||
Returns:
|
||||
None: If version with specified filters was not found.
|
||||
Dict: Version document which can be reduced to specified 'fields'.
|
||||
"""
|
||||
|
||||
version_id = _convert_id(version_id)
|
||||
if not version_id:
|
||||
return None
|
||||
|
||||
query_filter = {
|
||||
"type": "version",
|
||||
"parent": _convert_id(subset_id),
|
||||
"name": version
|
||||
"type": {"$in": ["version", "hero_version"]},
|
||||
"_id": version_id
|
||||
}
|
||||
conn = _get_project_connection(project_name)
|
||||
return conn.find_one(query_filter, _prepare_fields(fields))
|
||||
|
||||
|
||||
def get_version(project_name, version_id, fields=None):
|
||||
if not version_id:
|
||||
def get_version_by_name(project_name, version, subset_id, fields=None):
|
||||
"""Single version entity data by it's name and subset id.
|
||||
|
||||
Args:
|
||||
project_name (str): Name of project where to look for queried entities.
|
||||
version (int): name of version entity (it's version).
|
||||
subset_id (ObjectId): Id of version which should be found.
|
||||
fields (list[str]): Fields that should be returned. All fields are
|
||||
returned if 'None' is passed.
|
||||
|
||||
Returns:
|
||||
None: If version with specified filters was not found.
|
||||
Dict: Version document which can be reduced to specified 'fields'.
|
||||
"""
|
||||
|
||||
subset_id = _convert_id(subset_id)
|
||||
if not subset_id:
|
||||
return None
|
||||
|
||||
conn = _get_project_connection(project_name)
|
||||
query_filter = {
|
||||
"type": {"$in": ["version", "hero_version"]},
|
||||
"_id": _convert_id(version_id)
|
||||
"type": "version",
|
||||
"parent": subset_id,
|
||||
"name": version
|
||||
}
|
||||
return conn.find_one(query_filter, _prepare_fields(fields))
|
||||
|
||||
|
|
@ -402,11 +465,29 @@ def _get_versions(
|
|||
|
||||
def get_versions(
|
||||
project_name,
|
||||
subset_ids=None,
|
||||
version_ids=None,
|
||||
subset_ids=None,
|
||||
hero=False,
|
||||
fields=None
|
||||
):
|
||||
"""Version entities data from one project filtered by entered filters.
|
||||
|
||||
Filters are additive (all conditions must pass to return subset).
|
||||
|
||||
Args:
|
||||
project_name (str): Name of project where to look for queried entities.
|
||||
version_ids (list[str, ObjectId]): Version ids that will be queried.
|
||||
Filter ignored if 'None' is passed.
|
||||
subset_ids (list[str]): Subset ids that will be queried.
|
||||
Filter ignored if 'None' is passed.
|
||||
hero (bool): Look also for hero versions.
|
||||
fields (list[str]): Fields that should be returned. All fields are
|
||||
returned if 'None' is passed.
|
||||
|
||||
Returns:
|
||||
Cursor: Iterable cursor yielding all matching versions.
|
||||
"""
|
||||
|
||||
return _get_versions(
|
||||
project_name,
|
||||
subset_ids,
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@ from openpype.client import (
|
|||
get_subset_families,
|
||||
get_subset_by_id,
|
||||
get_subsets,
|
||||
get_version,
|
||||
get_version_by_id,
|
||||
get_versions,
|
||||
get_representations,
|
||||
get_thumbnail_id_from_source,
|
||||
|
|
@ -676,12 +676,12 @@ class VersionTextEdit(QtWidgets.QTextEdit):
|
|||
|
||||
project_name = self.dbcon.active_project()
|
||||
if not version_doc:
|
||||
version_doc = get_version(project_name, version_id=version_id)
|
||||
version_doc = get_version_by_id(project_name, version_id)
|
||||
assert version_doc, "Not a valid version id"
|
||||
|
||||
if version_doc["type"] == "hero_version":
|
||||
_version_doc = get_version(
|
||||
project_name, version_id=version_doc["version_id"]
|
||||
_version_doc = get_version_by_id(
|
||||
project_name, version_doc["version_id"]
|
||||
)
|
||||
version_doc["data"] = _version_doc["data"]
|
||||
version_doc["name"] = HeroVersionType(
|
||||
|
|
|
|||
|
|
@ -9,7 +9,7 @@ import qtawesome
|
|||
from openpype.client import (
|
||||
get_asset_by_id,
|
||||
get_subset_by_id,
|
||||
get_version,
|
||||
get_version_by_id,
|
||||
get_last_version_for_subset,
|
||||
get_representation,
|
||||
)
|
||||
|
|
@ -321,8 +321,8 @@ class InventoryModel(TreeModel):
|
|||
not_found_ids.append(repre_id)
|
||||
continue
|
||||
|
||||
version = get_version(
|
||||
project_name, version_id=representation["parent"]
|
||||
version = get_version_by_id(
|
||||
project_name, representation["parent"]
|
||||
)
|
||||
if not version:
|
||||
not_found["version"].append(group_items)
|
||||
|
|
@ -330,8 +330,8 @@ class InventoryModel(TreeModel):
|
|||
continue
|
||||
|
||||
elif version["type"] == "hero_version":
|
||||
_version = get_version(
|
||||
project_name, version_id=version["version_id"]
|
||||
_version = get_version_by_id(
|
||||
project_name, version["version_id"]
|
||||
)
|
||||
version["name"] = HeroVersionType(_version["name"])
|
||||
version["data"] = _version["data"]
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@ import qtawesome
|
|||
from bson.objectid import ObjectId
|
||||
|
||||
from openpype.client import (
|
||||
get_version,
|
||||
get_version_by_id,
|
||||
get_versions,
|
||||
get_hero_versions,
|
||||
get_representation,
|
||||
|
|
@ -663,9 +663,9 @@ class SceneInventoryView(QtWidgets.QTreeView):
|
|||
fields=["parent"]
|
||||
)
|
||||
|
||||
repre_version_doc = get_version(
|
||||
repre_version_doc = get_version_by_id(
|
||||
project_name,
|
||||
version_id=repre_doc["parent"],
|
||||
repre_doc["parent"],
|
||||
fields=["parent"]
|
||||
)
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue