generatePairwiseAlternative method
Future<List<PairwiseAlternativeInput> >
generatePairwiseAlternative(
- List<
AhpHierarchy> nodes
override
GENERATE PAIRWISE ALTERNATIVE INPUTS
Implementation
/// GENERATE PAIRWISE ALTERNATIVE INPUTS
@override
Future<List<PairwiseAlternativeInput>> generatePairwiseAlternative(
List<AhpHierarchy> nodes,
) async {
try {
const computeThreshold = 15;
final hierarchyList =
nodes.map((e) => AhpHierarchyMapper.fromEntity(e).toMap()).toList();
if (kIsWeb) {
final result = await generateInputPairwiseAlternative({
"data": hierarchyList,
});
return result
.map((e) => PairwiseAlternativeInputDto.fromMap(e).toEntity())
.toList();
} else {
List<Map<String, dynamic>> result = [];
if (nodes.length < computeThreshold) {
result = await generateInputPairwiseAlternative({
"data": hierarchyList,
});
} else {
_useIsolate = true;
result = await _isolateMain.runTask(
DecisionAlgorithm.ahp,
AhpProcessingCommand.generateInputPairwiseAlternative,
{
"data": hierarchyList,
},
);
}
return result
.map((e) => PairwiseAlternativeInputDto.fromMap(e).toEntity())
.toList();
}
} catch (e) {
_useIsolate = false;
rethrow;
}
}