47 lines
1.0 KiB
Python
47 lines
1.0 KiB
Python
from abc import abstractmethod
|
|
from numbers import Number
|
|
|
|
from open_feature.evaluation_context.evaluation_context import EvaluationContext
|
|
|
|
|
|
class AbstractProvider:
|
|
@abstractmethod
|
|
def get_name(self) -> str:
|
|
pass
|
|
|
|
@abstractmethod
|
|
def get_boolean_details(
|
|
self,
|
|
key: str,
|
|
default_value: bool,
|
|
evaluation_context: EvaluationContext = EvaluationContext(),
|
|
):
|
|
pass
|
|
|
|
@abstractmethod
|
|
def get_string_details(
|
|
self,
|
|
key: str,
|
|
default_value: str,
|
|
evaluation_context: EvaluationContext = EvaluationContext(),
|
|
):
|
|
pass
|
|
|
|
@abstractmethod
|
|
def get_number_details(
|
|
self,
|
|
key: str,
|
|
default_value: Number,
|
|
evaluation_context: EvaluationContext = EvaluationContext(),
|
|
):
|
|
pass
|
|
|
|
@abstractmethod
|
|
def get_object_details(
|
|
self,
|
|
key: str,
|
|
default_value: dict,
|
|
evaluation_context: EvaluationContext = EvaluationContext(),
|
|
):
|
|
pass
|