-import json
-import traceback
-
-
-class Rol:
- CONSUMER = "CONSUMER"
- PROVIDER = "PROVIDER"
-
-
-class AgreementsFilter(object):
- def __init__(self, status=None, provider=None, consumer=None):
- self.status = status
- self.provider = provider
- self.consumer = consumer
-
- def __repr__(self):
- return "<AgreementsFilter(status={}, provider={}, consumer={})>".format(
- self.status, self.provider, self.consumer
- )
-
- @staticmethod
- def _check(expectedvalue, actualvalue):
- if expectedvalue is None or expectedvalue == '':
- return True
- else:
- return actualvalue == expectedvalue
-
- def check(self, agreement):
- """Check if this agreement satisfy the filter.
-
- The agreement must be previously annotated
- """
- guaranteestatus = agreement.guaranteestatus
- provider = agreement.context.provider
- consumer = agreement.context.consumer
- return (
- AgreementsFilter._check(self.status, guaranteestatus) and
- AgreementsFilter._check(self.provider, provider) and
- AgreementsFilter._check(self.consumer, consumer)
- )
-
-
-class FilterForm(forms.Form):
- _attrs = {'class': 'form-control'}
- exclude = ()
- status = forms.ChoiceField(
- choices=[
- ('', 'All'),
- (wsag_model.AgreementStatus.StatusEnum.FULFILLED, 'Fulfilled'),
- (wsag_model.AgreementStatus.StatusEnum.VIOLATED, 'Violated'),
- (wsag_model.AgreementStatus.StatusEnum.NON_DETERMINED, 'Non determined')],
- widget=forms.Select(attrs=_attrs),
- required=False
- )
- provider = forms.CharField(
- widget=forms.TextInput(attrs=_attrs),
- required=False
- )
- consumer = forms.CharField(
- widget=forms.TextInput(attrs=_attrs),
- required=False
- )
-
-
-class SLAView (FreeAccessView, ThemeView):