fromYamlMap static method

Danger<TemplateFileSetting, BpriverYamlException> fromYamlMap(
  1. YamlMap yamlMap
)

Implementation

static Danger<TemplateFileSetting, BpriverYamlException> fromYamlMap(YamlMap yamlMap) {

    final log = Log(classLocation: TemplateFileSetting, functionLocation: 'fromYamlMap');

    final textSymbolNamesResult =  BpriverYaml.getByKeyFromYamlMapAsTListWithDefault<String>(yamlMap, 'text', []);
    log.add(textSymbolNamesResult);
    if (textSymbolNamesResult is! Success<List<String>, BpriverYamlExceptionEF>) return Failure(textSymbolNamesResult.asException, log);

    final textArraySymbolNamesResult =  BpriverYaml.getByKeyFromYamlMapAsTListWithDefault<String>(yamlMap, 'text_array', []);
    log.add(textArraySymbolNamesResult);
    if (textArraySymbolNamesResult is! Success<List<String>, BpriverYamlExceptionEF>) return Failure(textArraySymbolNamesResult.asException, log);

    final fragmentDefinitionsResult =  FragmentDefinition.fromYamlMap(yamlMap);
    log.add(fragmentDefinitionsResult);
    if (fragmentDefinitionsResult is! Success<List<FragmentDefinition>, BpriverYamlException>) return Failure(fragmentDefinitionsResult.asException, log);

    final flagSymbolNamesResult =  BpriverYaml.getByKeyFromYamlMapAsTListWithDefault<String>(yamlMap, 'flag', []);
    log.add(flagSymbolNamesResult);
    if (flagSymbolNamesResult is! Success<List<String>, BpriverYamlExceptionEF>) return Failure(flagSymbolNamesResult.asException, log);

    final objectDefinitionsResult =  ObjectDefinition.fromYamlMapAndKey(yamlMap, 'object');
    log.add(objectDefinitionsResult);
    if (objectDefinitionsResult is! Success<List<ObjectDefinition>, BpriverYamlException>) return Failure(objectDefinitionsResult.asException, log);

    final objectArrayDefinitionsResult =  ObjectDefinition.fromYamlMapAndKey(yamlMap, 'object_array');
    log.add(objectArrayDefinitionsResult);
    if (objectArrayDefinitionsResult is! Success<List<ObjectDefinition>, BpriverYamlException>) return Failure(objectArrayDefinitionsResult.asException, log);

    final templateKeyResult =  BpriverYaml.getByKeyFromYamlMapAsT<YamlMap>(yamlMap, 'template');
    log.add(templateKeyResult);
    if (templateKeyResult is! Success<YamlMap, BpriverYamlExceptionDE>) return Failure(templateKeyResult.asException, log);

    final templateResult =  FileSystemModelList.fromYamlMap(templateKeyResult.wrapped);
    log.add(templateResult);
    if (templateResult is! Success<FileSystemModelList<FileSystemModel>, BpriverYamlExceptionH>) return Failure(templateResult.asException, log);

    final result = TemplateFileSetting(
        textSymbolNamesResult.wrapped,
        textArraySymbolNamesResult.wrapped,
        fragmentDefinitionsResult.wrapped,
        flagSymbolNamesResult.wrapped,
        objectDefinitionsResult.wrapped,
        objectArrayDefinitionsResult.wrapped,
        templateResult.wrapped,
    );

    return Success(result, log);

}