fromYamlMap static method
Implementation
static Danger<TemplateSettingStruct, BpriverYamlException> fromYamlMap(YamlMap yamlMap) {
final log = Log(classLocation: TemplateSettingStruct, functionLocation: 'fromYamlMap');
final permanentlyPropertyNameListResult = BpriverYaml.getByKeyFromYamlMapAsTListWithDefault<String>(yamlMap, 'permanently', []);
log.add(permanentlyPropertyNameListResult);
if (permanentlyPropertyNameListResult is! Success<List<String>, BpriverYamlExceptionEF>) return Failure(permanentlyPropertyNameListResult.asException, log);
final listPropertyNameListResult = BpriverYaml.getByKeyFromYamlMapAsTListWithDefault<String>(yamlMap, 'list', []);
log.add(listPropertyNameListResult);
if (listPropertyNameListResult is! Success<List<String>, BpriverYamlExceptionEF>) return Failure(listPropertyNameListResult.asException, log);
final fragmentKeyResult = BpriverYaml.getByKeyFromYamlMapAsTWithDefault<YamlMap>(yamlMap, 'fragment', YamlMap());
log.add(fragmentKeyResult);
if (fragmentKeyResult is! Success<YamlMap, BpriverYamlExceptionE>) return Failure(fragmentKeyResult.asException, log);
final fragmentPropertyRosterResult = FragmentPropertyStructList.fromYamlMap(fragmentKeyResult.wrapped);
log.add(fragmentPropertyRosterResult);
if (fragmentPropertyRosterResult is! Success<PropertyStructList<FragmentPropertyStruct>, BpriverYamlException>) return Failure(fragmentPropertyRosterResult.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 = TemplateSettingStruct(
permanentlyPropertyNameListResult.wrapped,
listPropertyNameListResult.wrapped,
fragmentPropertyRosterResult.wrapped,
templateResult.wrapped,
);
return Success(result, log);
}