Changeset View
Changeset View
Standalone View
Standalone View
swh/graphql/resolvers/resolvers.py
Show First 20 Lines • Show All 171 Lines • ▼ Show 20 Lines | ) -> Union[ | ||||
rs.content.BaseContentNode, | rs.content.BaseContentNode, | ||||
]: | ]: | ||||
""" | """ | ||||
DirectoryEntry target can be a directory, content or a revision | DirectoryEntry target can be a directory, content or a revision | ||||
""" | """ | ||||
return NodeObjectFactory.create(f"dir-entry-{obj.targetType}", obj, info, **kw) | return NodeObjectFactory.create(f"dir-entry-{obj.targetType}", obj, info, **kw) | ||||
@query.field("content") | |||||
def content_resolver( | |||||
obj: None, info: GraphQLResolveInfo, **kw | |||||
) -> rs.content.ContentNode: | |||||
return NodeObjectFactory.create("content", obj, info, **kw) | |||||
@search_result.field("target") | @search_result.field("target") | ||||
def search_result_target_resolver( | def search_result_target_resolver( | ||||
obj: rs.search.SearchResultNode, info: GraphQLResolveInfo, **kw | obj: rs.search.SearchResultNode, info: GraphQLResolveInfo, **kw | ||||
) -> Union[ | ) -> Union[ | ||||
rs.origin.BaseOriginNode, | rs.origin.BaseOriginNode, | ||||
rs.snapshot.BaseSnapshotNode, | rs.snapshot.BaseSnapshotNode, | ||||
rs.revision.BaseRevisionNode, | rs.revision.BaseRevisionNode, | ||||
rs.release.BaseReleaseNode, | rs.release.BaseReleaseNode, | ||||
rs.directory.BaseDirectoryNode, | rs.directory.BaseDirectoryNode, | ||||
rs.content.BaseContentNode, | rs.content.BaseContentNode, | ||||
]: | ]: | ||||
""" | """ | ||||
SearchResult target can be an origin, snapshot, revision, release | SearchResult target can be an origin, snapshot, revision, release | ||||
directory or a content | directory or a content | ||||
""" | """ | ||||
return NodeObjectFactory.create(f"search-result-{obj.targetType}", obj, info, **kw) | return NodeObjectFactory.create(f"search-result-{obj.targetType}", obj, info, **kw) | ||||
@query.field("contentByHashes") | @query.field("contentByHashes") | ||||
def content_by_hash_resolver( | def content_by_hashes_resolver( | ||||
obj: None, info: GraphQLResolveInfo, **kw | obj: None, info: GraphQLResolveInfo, **kw | ||||
) -> rs.content.ContentNode: | ) -> rs.content.ContentbyHashesNode: | ||||
return NodeObjectFactory.create("content-by-hash", obj, info, **kw) | return NodeObjectFactory.create("content-by-hashes", obj, info, **kw) | ||||
# Connection resolvers | # Connection resolvers | ||||
# A connection resolver should return an instance of BaseConnection | # A connection resolver should return an instance of BaseConnection | ||||
@query.field("origins") | @query.field("origins") | ||||
def origins_resolver( | def origins_resolver( | ||||
▲ Show 20 Lines • Show All 56 Lines • ▼ Show 20 Lines | def search_resolver( | ||||
obj: None, info: GraphQLResolveInfo, **kw | obj: None, info: GraphQLResolveInfo, **kw | ||||
) -> rs.search.SearchConnection: | ) -> rs.search.SearchConnection: | ||||
return ConnectionObjectFactory.create("search", obj, info, **kw) | return ConnectionObjectFactory.create("search", obj, info, **kw) | ||||
# Simple list resolvers (lists without paginations) | # Simple list resolvers (lists without paginations) | ||||
@query.field("contentsBySWHID") | |||||
def contnets_by_swhid_resolver( | |||||
obj: None, info: GraphQLResolveInfo, **kw | |||||
) -> rs.content.ContentSwhidList: | |||||
return SimpleListFactory.create("contents-swhid", obj, info, **kw) | |||||
@query.field("contentsByHashes") | |||||
def contnets_by_hashes_resolver( | |||||
obj: None, info: GraphQLResolveInfo, **kw | |||||
) -> rs.content.ContentHashList: | |||||
return SimpleListFactory.create("contents-hashes", obj, info, **kw) | |||||
@query.field("resolveSWHID") | @query.field("resolveSWHID") | ||||
def search_swhid_resolver( | def search_swhid_resolver( | ||||
obj: None, info: GraphQLResolveInfo, **kw | obj: None, info: GraphQLResolveInfo, **kw | ||||
) -> rs.search.ResolveSwhidList: | ) -> rs.search.ResolveSwhidList: | ||||
return SimpleListFactory.create("resolve-swhid", obj, info, **kw) | return SimpleListFactory.create("resolve-swhid", obj, info, **kw) | ||||
@revision.field("author") | @revision.field("author") | ||||
▲ Show 20 Lines • Show All 75 Lines • Show Last 20 Lines |