Poniższy diagram sekwencji pokazuje interakcje między komponentami systemu podczas procesu konwersji z formatu pip do formatu poetry.
sequenceDiagram
actor User
participant CLI
participant Registry as ConverterRegistry
participant Converter as PipToPoetryConverter
participant PipSchema
participant PoetrySchema
participant FileSystem
User->>CLI: spectomate -s pip -t poetry -i requirements.txt -o pyproject.toml
CLI->>Registry: get_converter("pip", "poetry")
Registry-->>CLI: PipToPoetryConverter
CLI->>Converter: new(source_file, target_file, options)
CLI->>Converter: execute()
Converter->>Converter: read_source()
Converter->>FileSystem: read requirements.txt
FileSystem-->>Converter: file content
Converter->>PipSchema: parse_file(requirements.txt)
PipSchema-->>Converter: parsed data
Converter->>Converter: convert(source_data)
Converter->>PoetrySchema: convert_from_pip(pip_data, project_name, version)
PoetrySchema-->>Converter: poetry data
Converter->>Converter: write_target(target_data)
Converter->>PoetrySchema: generate_pyproject_toml(data)
PoetrySchema-->>Converter: pyproject.toml content
Converter->>FileSystem: write pyproject.toml
Converter-->>CLI: target_file path
CLI-->>User: Konwersja zakończona pomyślnie
Diagram pokazuje sekwencję interakcji między komponentami systemu podczas konwersji z formatu pip do formatu poetry: