Skip to content

sql_query_filter

SQL query filter strategy.

SQLQueryFilter

Strategy for a SQL query filter.

Registers strategies:

  • ("filterType", "filter/sql")
Source code in oteapi/strategies/filter/sql_query_filter.py
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
@dataclass
class SQLQueryFilter:
    """Strategy for a SQL query filter.

    **Registers strategies**:

    - `("filterType", "filter/sql")`

    """

    filter_config: SqlQueryFilterConfig

    def initialize(self) -> SqlQueryContent:
        """Initialize strategy."""
        return SqlQueryContent(sqlquery=self.filter_config.query)

    def get(self) -> AttrDict:
        """Execute strategy and return a dictionary."""
        return AttrDict()

filter_config: SqlQueryFilterConfig instance-attribute

get()

Execute strategy and return a dictionary.

Source code in oteapi/strategies/filter/sql_query_filter.py
48
49
50
def get(self) -> AttrDict:
    """Execute strategy and return a dictionary."""
    return AttrDict()

initialize()

Initialize strategy.

Source code in oteapi/strategies/filter/sql_query_filter.py
44
45
46
def initialize(self) -> SqlQueryContent:
    """Initialize strategy."""
    return SqlQueryContent(sqlquery=self.filter_config.query)

SqlQueryContent

Bases: AttrDict

Class for returning values from SQL Query data model.

Source code in oteapi/strategies/filter/sql_query_filter.py
26
27
28
29
class SqlQueryContent(AttrDict):
    """Class for returning values from SQL Query data model."""

    sqlquery: str = Field(..., description="A SQL query string.")

sqlquery: str = Field(..., description='A SQL query string.') class-attribute instance-attribute

SqlQueryFilterConfig

Bases: FilterConfig

SQL query filter strategy filter config.

Source code in oteapi/strategies/filter/sql_query_filter.py
16
17
18
19
20
21
22
23
class SqlQueryFilterConfig(FilterConfig):
    """SQL query filter strategy filter config."""

    filterType: Literal["filter/sql"] = Field(
        "filter/sql",
        description=FilterConfig.model_fields["filterType"].description,
    )
    query: str = Field(..., description="A SQL query string.")

filterType: Literal['filter/sql'] = Field('filter/sql', description=FilterConfig.model_fields['filterType'].description) class-attribute instance-attribute

query: str = Field(..., description='A SQL query string.') class-attribute instance-attribute