Implementation
static Future<MergeMultiplePDFResponse> mergeMultiplePDF({required List<String> paths, required String outputDirPath}) async {
final Map<String, dynamic> params = <String, dynamic>{
'paths': paths,
'outputDirPath': outputDirPath
};
if(paths.length == 0){
mergeMultiplePDFResponse.value.status = Status.error;
mergeMultiplePDFResponse.value.message = Status.errorMessage;
}else{
try {
bool isPDF = true;
for(int i=0; i< paths.length ; i++){
if(!GetUtils.isPDF(paths[i])){
isPDF = false;
}
}
if(!isPDF){
mergeMultiplePDFResponse.value.status = Status.error;
mergeMultiplePDFResponse.value.message = Status.errorMessagePDF;
}else{
final String? response = await _channel.invokeMethod('mergeMultiplePDF', params);
if(response != "error"){
mergeMultiplePDFResponse.value.status = Status.success;
mergeMultiplePDFResponse.value.message = Status.successMessage;
mergeMultiplePDFResponse.value.response = response;
}else{
mergeMultiplePDFResponse.value.status = Status.error;
mergeMultiplePDFResponse.value.message = Status.errorMessage;
}
}
} on Exception catch (exception) {
mergeMultiplePDFResponse.value.status = Status.error;
mergeMultiplePDFResponse.value.message = exception.toString();
} catch (e) {
mergeMultiplePDFResponse.value.status = Status.error;
mergeMultiplePDFResponse.value.message = e.toString();
}
}
return mergeMultiplePDFResponse.value;
}