Skip to content

Module neuroio.settings.v1

None

None

View Source
from httpx import Response

from neuroio.base import APIBase, APIBaseAsync, APIBaseBase

from neuroio.constants import (

    DEFAULT_EXACT_THRESHOLD,

    DEFAULT_HA_THRESHOLD,

    DEFAULT_JUNK_THRESHOLD,

)

from neuroio.utils import request_dict_processing

class SettingsBase(APIBaseBase):

    def get_url(self, key: str = None) -> str:

        if key:

            return self.base_url + f"/v1/settings/thresholds/{key}/"

        else:

            return self.base_url + "/v1/settings/thresholds/"

class Impl(APIBase, SettingsBase):

    def get(self) -> Response:

        with self.get_client() as client:

            return client.get(url=self.get_url())

    def update(

        self,

        exact: float = DEFAULT_EXACT_THRESHOLD,

        ha: float = DEFAULT_HA_THRESHOLD,

        junk: float = DEFAULT_JUNK_THRESHOLD,

    ) -> Response:

        data = request_dict_processing(locals(), ["self"])

        with self.get_client() as client:

            return client.patch(url=self.get_url(), data=data)

    def reset(self) -> Response:

        with self.get_client() as client:

            return client.post(url=self.get_url("reset"))

class ImplAsync(APIBaseAsync, SettingsBase):

    async def get(self) -> Response:

        async with self.get_client() as client:

            return await client.get(url=self.get_url())

    async def update(

        self,

        exact: float = DEFAULT_EXACT_THRESHOLD,

        ha: float = DEFAULT_HA_THRESHOLD,

        junk: float = DEFAULT_JUNK_THRESHOLD,

    ) -> Response:

        data = request_dict_processing(locals(), ["self"])

        async with self.get_client() as client:

            return await client.patch(url=self.get_url(), data=data)

    async def reset(self) -> Response:

        async with self.get_client() as client:

            return await client.post(url=self.get_url("reset"))

Variables

DEFAULT_EXACT_THRESHOLD
DEFAULT_HA_THRESHOLD
DEFAULT_JUNK_THRESHOLD

Classes

Impl

class Impl(
    settings: dict
)
View Source
class Impl(APIBase, SettingsBase):

    def get(self) -> Response:

        with self.get_client() as client:

            return client.get(url=self.get_url())

    def update(

        self,

        exact: float = DEFAULT_EXACT_THRESHOLD,

        ha: float = DEFAULT_HA_THRESHOLD,

        junk: float = DEFAULT_JUNK_THRESHOLD,

    ) -> Response:

        data = request_dict_processing(locals(), ["self"])

        with self.get_client() as client:

            return client.patch(url=self.get_url(), data=data)

    def reset(self) -> Response:

        with self.get_client() as client:

            return client.post(url=self.get_url("reset"))

Ancestors (in MRO)

  • neuroio.base.APIBase
  • abc.ABC
  • neuroio.base.Base
  • neuroio.settings.v1.SettingsBase
  • neuroio.base.APIBaseBase

Class variables

base_url

Methods

get

def get(
    self
) -> httpx.Response
View Source
    def get(self) -> Response:

        with self.get_client() as client:

            return client.get(url=self.get_url())

get_client

def get_client(
    self
) -> httpx.Client
View Source
    def get_client(self) -> Client:

        return Client(**self.settings)

get_url

def get_url(
    self,
    key: str = None
) -> str
View Source
    def get_url(self, key: str = None) -> str:

        if key:

            return self.base_url + f"/v1/settings/thresholds/{key}/"

        else:

            return self.base_url + "/v1/settings/thresholds/"

reset

def reset(
    self
) -> httpx.Response
View Source
    def reset(self) -> Response:

        with self.get_client() as client:

            return client.post(url=self.get_url("reset"))

update

def update(
    self,
    exact: float = 79.3,
    ha: float = 75.5,
    junk: float = 68.84
) -> httpx.Response
View Source
    def update(

        self,

        exact: float = DEFAULT_EXACT_THRESHOLD,

        ha: float = DEFAULT_HA_THRESHOLD,

        junk: float = DEFAULT_JUNK_THRESHOLD,

    ) -> Response:

        data = request_dict_processing(locals(), ["self"])

        with self.get_client() as client:

            return client.patch(url=self.get_url(), data=data)

ImplAsync

class ImplAsync(
    settings: dict
)
View Source
class ImplAsync(APIBaseAsync, SettingsBase):

    async def get(self) -> Response:

        async with self.get_client() as client:

            return await client.get(url=self.get_url())

    async def update(

        self,

        exact: float = DEFAULT_EXACT_THRESHOLD,

        ha: float = DEFAULT_HA_THRESHOLD,

        junk: float = DEFAULT_JUNK_THRESHOLD,

    ) -> Response:

        data = request_dict_processing(locals(), ["self"])

        async with self.get_client() as client:

            return await client.patch(url=self.get_url(), data=data)

    async def reset(self) -> Response:

        async with self.get_client() as client:

            return await client.post(url=self.get_url("reset"))

Ancestors (in MRO)

  • neuroio.base.APIBaseAsync
  • abc.ABC
  • neuroio.base.Base
  • neuroio.settings.v1.SettingsBase
  • neuroio.base.APIBaseBase

Class variables

base_url

Methods

get

def get(
    self
) -> httpx.Response
View Source
    async def get(self) -> Response:

        async with self.get_client() as client:

            return await client.get(url=self.get_url())

get_client

def get_client(
    self
) -> httpx.AsyncClient
View Source
    def get_client(self) -> AsyncClient:

        return AsyncClient(**self.settings)

get_url

def get_url(
    self,
    key: str = None
) -> str
View Source
    def get_url(self, key: str = None) -> str:

        if key:

            return self.base_url + f"/v1/settings/thresholds/{key}/"

        else:

            return self.base_url + "/v1/settings/thresholds/"

reset

def reset(
    self
) -> httpx.Response
View Source
    async def reset(self) -> Response:

        async with self.get_client() as client:

            return await client.post(url=self.get_url("reset"))

update

def update(
    self,
    exact: float = 79.3,
    ha: float = 75.5,
    junk: float = 68.84
) -> httpx.Response
View Source
    async def update(

        self,

        exact: float = DEFAULT_EXACT_THRESHOLD,

        ha: float = DEFAULT_HA_THRESHOLD,

        junk: float = DEFAULT_JUNK_THRESHOLD,

    ) -> Response:

        data = request_dict_processing(locals(), ["self"])

        async with self.get_client() as client:

            return await client.patch(url=self.get_url(), data=data)

SettingsBase

class SettingsBase(
    /,
    *args,
    **kwargs
)
View Source
class SettingsBase(APIBaseBase):

    def get_url(self, key: str = None) -> str:

        if key:

            return self.base_url + f"/v1/settings/thresholds/{key}/"

        else:

            return self.base_url + "/v1/settings/thresholds/"

Ancestors (in MRO)

  • neuroio.base.APIBaseBase

Descendants

  • neuroio.settings.v1.Impl
  • neuroio.settings.v1.ImplAsync

Class variables

base_url

Methods

get_url

def get_url(
    self,
    key: str = None
) -> str
View Source
    def get_url(self, key: str = None) -> str:

        if key:

            return self.base_url + f"/v1/settings/thresholds/{key}/"

        else:

            return self.base_url + "/v1/settings/thresholds/"