Skip to content

Commit a1fc70f

Browse files
m-kuhnnyalldawson
authored andcommittedMar 6, 2018
Improved error reporting for unknown parameters
1 parent cdef548 commit a1fc70f

File tree

1 file changed

+7
-3
lines changed

1 file changed

+7
-3
lines changed
 

‎python/plugins/processing/modeler/ModelerParameterDefinitionDialog.py

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@
1616
* *
1717
***************************************************************************
1818
"""
19+
from processing.modeler.exceptions import UndefinedParameterException
1920

2021
__author__ = 'Victor Olaya'
2122
__date__ = 'August 2012'
@@ -399,9 +400,12 @@ def accept(self):
399400
isinstance(self.param, QgsProcessingParameterCrs)):
400401
self.param = QgsProcessingParameterCrs(name, description, self.selector.crs().authid())
401402
else:
402-
paramType = QgsApplication.instance().processingRegistry().parameterType(self.paramType)
403-
self.param = paramType.create(name)
404-
self.param.setMetadata(paramType.metadata())
403+
paramTypeDef = QgsApplication.instance().processingRegistry().parameterType(self.paramType)
404+
if not paramTypeDef:
405+
msg = self.tr('The parameter `{}` is not registered, are you missing a required plugin?'.format(self.paramType))
406+
raise UndefinedParameterException(msg)
407+
self.param = paramTypeDef.create(name)
408+
self.param.setMetadata(paramTypeDef.metadata())
405409

406410
if not self.requiredCheck.isChecked():
407411
self.param.setFlags(self.param.flags() | QgsProcessingParameterDefinition.FlagOptional)

0 commit comments

Comments
 (0)
Please sign in to comment.