reviewboard.scmtools.conditions¶
Condition choices and operators for repositories and SCMTools.
- class RepositoryConditionChoiceMixin[source]¶
Bases:
object
Mixin for condition choices that operate off repositories.
This will set state needed to match against the choice.
- __annotations__ = {}¶
- class IsRepositoryPrivateOperator(choice)[source]¶
Bases:
BaseConditionOperator
An operator for matching private repositories.
- operator_id = 'is-private'[source]¶
The ID of the operator.
This must be unique within a
BaseConditionChoice
.
- matches(match_value, **kwargs)[source]¶
Return whether the repository is private.
- Parameters:
match_value (
reviewboard.scmtools.models.Repository
) – The repository to match.**kwargs (
dict
) – Unused keyword arguments.
- Returns:
True
if the repository is private.False
if public.- Return type:
- __annotations__ = {}¶
- class IsRepositoryPublicOperator(choice)[source]¶
Bases:
BaseConditionOperator
An operator for matching public repositories.
- operator_id = 'is-public'[source]¶
The ID of the operator.
This must be unique within a
BaseConditionChoice
.
- matches(match_value, **kwargs)[source]¶
Return whether the repository is public.
- Parameters:
match_value (
reviewboard.scmtools.models.Repository
) – The repository to match.**kwargs (
dict
) – Unused keyword arguments.
- Returns:
True
if the repository is public.False
if private.- Return type:
- __annotations__ = {}¶
- class RepositoriesChoice(**kwargs)[source]¶
Bases:
RepositoryConditionChoiceMixin
,BaseConditionModelMultipleChoice
A condition choice for matching repositories.
This is used to match a
Repository
against a list of repositories, against no repository (None
), or against a repository public/private state.- operators = <djblets.conditions.operators.ConditionOperators object>[source]¶
The operators for this choice.
This must be set to an instance of
ConditionOperators
.
- get_queryset()[source]¶
Return the queryset used to look up repository choices.
- Returns:
The queryset for repositories.
- Return type:
- get_match_value(repository, **kwargs)[source]¶
Return the value used for matching.
This will return the provided repository directly.
- Parameters:
repository (
reviewboard.scmtools.models.Repository
) – The provided repository.**kwargs (
dict
) – Unused keyword arguments.
- Returns:
The provided repository.
- Return type:
- __annotations__ = {}¶
- class RepositoryTypeChoice(**kwargs)[source]¶
Bases:
RepositoryConditionChoiceMixin
,BaseConditionChoice
A condition choice for matching repository types.
This is used to match a
Repository
of a certain type (based on theTool
).- choice_id = 'repository_type'[source]¶
The ID of the choice.
This must be unique within a
ConditionSet
.
- operators = <djblets.conditions.operators.ConditionOperators object>[source]¶
The operators for this choice.
This must be set to an instance of
ConditionOperators
.
- default_value_field(**kwargs)[source]¶
Return the default value field for this choice.
This will call out to
get_queryset()
before returning the field, allowing subclasses to simply setqueryset
or to perform more dynamic queries before constructing the form field.- Parameters:
**kwargs (
dict
) – Extra keyword arguments for this function, for future expansion.- Returns:
The form field for the value.
- Return type:
djblets.conditions.values.ConditionValueMultipleChoiceField
- get_match_value(repository, **kwargs)[source]¶
Return the value used for matching.
This will return the SCMTool ID for the provided repository.
- Parameters:
repository (
reviewboard.scmtools.models.Repository
) – The provided repository.**kwargs (
dict
) – Unused keyword arguments.
- Returns:
The SCMTool ID for the repository’s tool.
- Return type:
- __annotations__ = {}¶
- class RepositoryConditionChoices(choices=[])[source]¶
Bases:
ConditionChoices
A standard set of repository condition choices.
This provides a handful of condition choices that are useful for repositories. They can be used in integrations or any other place where conditions are used.
- choice_classes = [<class 'reviewboard.scmtools.conditions.RepositoriesChoice'>, <class 'reviewboard.scmtools.conditions.RepositoryTypeChoice'>][source]¶
A list of default choices.
This is only used if a list of choices is not passed to the constructor.
- __annotations__ = {'_by_id': 'Dict[int, RegistryItemType]', '_items': 'set[RegistryItemType]', '_key_order': 'List[int]', '_lock': 'RLock', '_registry': 'dict[str, dict[object, RegistryItemType]]', 'already_registered_error_class': 'Type[AlreadyRegisteredError]', 'default_errors': 'RegistryErrorsDict', 'errors': 'RegistryErrorsDict', 'item_name': 'Optional[str]', 'lookup_attrs': 'Sequence[str]', 'lookup_error_class': 'Type[ItemLookupError]', 'state': 'RegistryState'}¶
- __parameters__ = ()¶