loadConfiguration method

ProjectConfiguration loadConfiguration(
  1. String morphemeYamlPath,
  2. ApiGenerationConfig generationConfig
)

Loads and processes project configuration.

Parameters:

  • morphemeYamlPath: Path to morpheme.yaml configuration file
  • generationConfig: API generation configuration

Returns ProjectConfiguration with loaded settings

Implementation

ProjectConfiguration loadConfiguration(
  String morphemeYamlPath,
  ApiGenerationConfig generationConfig,
) {
  try {
    final yamlData = YamlHelper.loadFileYaml(morphemeYamlPath);

    return ProjectConfiguration(
      projectName: yamlData['project_name'] ?? yamlData['name'] ?? 'morpheme',
      morphemeYamlPath: morphemeYamlPath,
      additionalSettings: _extractAdditionalSettings(yamlData),
    );
  } catch (e) {
    throw ConfigurationException(
        'Failed to load project configuration from $morphemeYamlPath: $e');
  }
}