fromChainSourceListAndObjectDefinition static method

Danger<CitrusObjectArray, ChainException> fromChainSourceListAndObjectDefinition(
  1. Iterable<String> chainSourceList,
  2. ObjectDefinition objectDefinition
)

Implementation

static Danger<CitrusObjectArray, ChainException> fromChainSourceListAndObjectDefinition(Iterable<String> chainSourceList, ObjectDefinition objectDefinition) {

    final log = Log(classLocation: CitrusObjectArray, functionLocation: 'fromChainSourceListAndObjectDefinition');

    final List<CitrusObject> list = [];

    for (final source in chainSourceList) {

        final chainResult = Chain.fromSource(source);
        log.add(chainResult);
        if (chainResult is! Success<Chain, ChainSyntaxException>) return Failure(chainResult.asException, log);

        final result = CitrusObject.fromChainAndObjectDefinition(chainResult.wrapped, objectDefinition);
        log.add(result);
        if (result is! Success<CitrusObject, ChainException>) return Failure(result.asException, log);

        list.add(result.wrapped);

    }

    final result = CitrusObjectArray(list);

    return Success(result, log);

}