Changeset View
Changeset View
Standalone View
Standalone View
swh/graphql/resolvers/directory.py
Show All 19 Lines | def is_type_of(self): | ||||
return "Directory" | return "Directory" | ||||
class DirectoryNode(BaseDirectoryNode): | class DirectoryNode(BaseDirectoryNode): | ||||
def _get_node_data(self): | def _get_node_data(self): | ||||
""" | """ | ||||
When a directory is requested directly with its SWHID | When a directory is requested directly with its SWHID | ||||
""" | """ | ||||
directory_id = self.kwargs.get("SWHID").object_id | directory_id = self.kwargs.get("swhid").object_id | ||||
# path = "" | # path = "" | ||||
if archive.Archive().is_directory_available([directory_id]): | if archive.Archive().is_directory_available([directory_id]): | ||||
return self._get_directory_by_id(directory_id) | return self._get_directory_by_id(directory_id) | ||||
return None | return None | ||||
class RevisionDirectoryNode(BaseDirectoryNode): | class RevisionDirectoryNode(BaseDirectoryNode): | ||||
def _get_node_data(self): | def _get_node_data(self): | ||||
""" | """ | ||||
When a directory is requested from a revision | When a directory is requested from a revision | ||||
self.obj is revision here | self.obj is revision here | ||||
self.obj.directorySWHID is the required dir SWHID | self.obj.directorySWHID is the required directory SWHID | ||||
(set from resolvers.revision.py:BaseRevisionNode) | (set from resolvers.revision.py:BaseRevisionNode) | ||||
""" | """ | ||||
directory_id = self.obj.directorySWHID.object_id | directory_id = self.obj.directorySWHID.object_id | ||||
return self._get_directory_by_id(directory_id) | return self._get_directory_by_id(directory_id) | ||||
class TargetDirectoryNode(BaseDirectoryNode): | class TargetDirectoryNode(BaseDirectoryNode): | ||||
def _get_node_data(self): | def _get_node_data(self): | ||||
""" | """ | ||||
When a directory is requested as a target | When a directory is requested as a target | ||||
self.obj can be a Release or a DirectoryEntry | self.obj can be a Release or a DirectoryEntry | ||||
obj.targetHash is the requested directory id here | obj.targetHash is the requested directory id here | ||||
""" | """ | ||||
return self._get_directory_by_id(self.obj.targetHash) | return self._get_directory_by_id(self.obj.targetHash) |