moleculeresolver.services

Submodules

Classes

ServiceAdapter

Contract for a resolver service adapter.

ServiceSearchResult

Normalized single-service search result consumed by MoleculeResolver.

CIRServiceAdapter

OPSINServiceAdapter

Contract for a resolver service adapter.

CASRegistryServiceAdapter

ChEBIServiceAdapter

ChemeoServiceAdapter

CTSServiceAdapter

CompToxServiceAdapter

NISTServiceAdapter

SRSServiceAdapter

PubChemServiceAdapter

Contract for a resolver service adapter.

ServiceAdapterRegistry

Simple runtime registry for all service adapters.

Package Contents

class moleculeresolver.services.ServiceAdapter

Bases: abc.ABC

Contract for a resolver service adapter.

name: str
resolve(resolver: moleculeresolver.moleculeresolver.MoleculeResolver, flattened_identifiers: list[str], flattened_modes: list[str], required_formula: str | None, required_charge: int | None, required_structure_type: str | None) ServiceSearchResult | None

Resolve by trying each identifier/mode pair in order.

abstractmethod resolve_one(resolver: moleculeresolver.moleculeresolver.MoleculeResolver, identifier: str, mode: str, required_formula: str | None, required_charge: int | None, required_structure_type: str | None) ServiceSearchResult | None

Resolve one identifier/mode pair for this adapter or return None.

class moleculeresolver.services.ServiceSearchResult

Normalized single-service search result consumed by MoleculeResolver.

molecule: moleculeresolver.molecule.Molecule
mode_used: str
identifier_used: str
additional_information: str | None
current_service: str
synonyms: list[str]
cas: set[str]
class moleculeresolver.services.CIRServiceAdapter

Bases: moleculeresolver.services.base.ServiceAdapter

name = 'cir'
resolve_one(resolver, identifier: str, mode: str, required_formula: str | None, required_charge: int | None, required_structure_type: str | None) moleculeresolver.services.base.ServiceSearchResult | None
class moleculeresolver.services.OPSINServiceAdapter

Bases: moleculeresolver.services.base.ServiceAdapter

Contract for a resolver service adapter.

name = 'opsin'
resolve_one(resolver, identifier: str, mode: str, required_formula: str | None, required_charge: int | None, required_structure_type: str | None) moleculeresolver.services.base.ServiceSearchResult | None

Resolve one identifier/mode pair for this adapter or return None.

class moleculeresolver.services.CASRegistryServiceAdapter

Bases: _ModeDrivenAdapter

name = 'cas_registry'
fetch_method_name = 'get_molecule_from_CAS_registry'
_build_result(cmp, mode: str) moleculeresolver.services.base.ServiceSearchResult
class moleculeresolver.services.ChEBIServiceAdapter

Bases: _ModeDrivenAdapter

name = 'chebi'
fetch_method_name = 'get_molecule_from_ChEBI'
_build_result(cmp, mode: str) moleculeresolver.services.base.ServiceSearchResult
class moleculeresolver.services.ChemeoServiceAdapter

Bases: _ModeDrivenAdapter

name = 'chemeo'
fetch_method_name = 'get_molecule_from_Chemeo'
_build_result(cmp, mode: str) moleculeresolver.services.base.ServiceSearchResult
class moleculeresolver.services.CTSServiceAdapter

Bases: _ModeDrivenAdapter

name = 'cts'
fetch_method_name = 'get_molecule_from_CTS'
_build_result(cmp, mode: str) moleculeresolver.services.base.ServiceSearchResult
class moleculeresolver.services.CompToxServiceAdapter

Bases: _ModeDrivenAdapter

name = 'comptox'
fetch_method_name = 'get_molecule_from_CompTox'
_build_result(cmp, mode: str) moleculeresolver.services.base.ServiceSearchResult
class moleculeresolver.services.NISTServiceAdapter

Bases: _ModeDrivenAdapter

name = 'nist'
fetch_method_name = 'get_molecule_from_NIST'
_build_result(cmp, mode: str) moleculeresolver.services.base.ServiceSearchResult
class moleculeresolver.services.SRSServiceAdapter

Bases: _ModeDrivenAdapter

name = 'srs'
fetch_method_name = 'get_molecule_from_SRS'
_build_result(cmp, mode: str) moleculeresolver.services.base.ServiceSearchResult
class moleculeresolver.services.PubChemServiceAdapter

Bases: moleculeresolver.services.base.ServiceAdapter

Contract for a resolver service adapter.

name = 'pubchem'
resolve_one(resolver, identifier: str, mode: str, required_formula: str | None, required_charge: int | None, required_structure_type: str | None) moleculeresolver.services.base.ServiceSearchResult | None

Resolve one identifier/mode pair for this adapter or return None.

class moleculeresolver.services.ServiceAdapterRegistry

Simple runtime registry for all service adapters.

_adapters: dict[str, moleculeresolver.services.base.ServiceAdapter]
register(adapter: moleculeresolver.services.base.ServiceAdapter) None
get(service_name: str) moleculeresolver.services.base.ServiceAdapter | None
names() list[str]