12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 |
- from typing import List
- from typing import Optional
- class LabelProvider:
- """
- label provider interface that should be implemented by label provider developers
- """
- def __init__(self, root_folder, configuration):
- """
- prepare everything needed to provide labels
- :param root_folder: relative path to label folder
- :param configuration: object parsed from configuration.json
- """
- raise NotImplementedError
- def close(self):
- """
- is called everytime a label provider is not used anymore
- :return:
- """
- raise NotImplementedError
- def get_labels(self) -> List[dict]:
- """
- return all available labels
- :return:
- """
- raise NotImplementedError
- @staticmethod
- def create_label(reference: str, name: str, parent_id: Optional[int] = None):
- """
- create a label result
- :param reference: label reference
- :param name: label name
- :param parent_id: parent's identifier
- :return:
- """
- return {
- 'name': name,
- 'reference': reference,
- 'parent_id': parent_id
- }
|