ReaktoroService

core.services.flow.ReaktoroService
class ReaktoroService[F[_]](reactionService: ReactionService[F], chemistEngineClient: Client[F], chemistEngineUri: Uri)(implicit evidence$1: Concurrent[F])

Service for interacting with the Chemist Engine to compute system properties for reactions.

This service integrates with the ReactionService to fetch reaction details and uses an HTTP client to communicate with the Chemist Engine. System properties are computed by creating system states and sending them to the Chemist Engine for processing. The service supports parallel processing for improved performance.

Type parameters

F

The effect type (e.g., IO, SyncIO, etc.) that supports concurrency.

Value parameters

chemistEngineClient

The HTTP client for interacting with the Chemist Engine.

chemistEngineUri

The base URI of the Chemist Engine.

reactionService

The service for managing reaction details.

Attributes

Source
ReaktoroService.scala
Graph
Supertypes
class Object
trait Matchable
class Any

Members list

Value members

Concrete methods

def computeSystemPropsForReaction(reactionId: ReactionId, database: DataBase, amounts: MoleculeAmountList): F[List[Either[SystemPropsError, SystemProps]]]

Computes system properties for a given reaction ID by creating system states and sending them to the Chemist Engine for processing.

Computes system properties for a given reaction ID by creating system states and sending them to the Chemist Engine for processing.

Value parameters

amounts

The molecule amounts for the reaction.

database

The thermodynamic database to use for the computation.

reactionId

The unique ID of the reaction.

Attributes

Returns

An effectful computation yielding a list of Either[SystemPropsError, SystemProps]. Each element represents the result of computing system properties for a specific system state, with errors captured as SystemPropsError.

Source
ReaktoroService.scala