@@ -1463,6 +1463,8 @@ QgsProcessingParameterDefinition *QgsProcessingParameters::parameterFromVariantM
14631463 def.reset ( new QgsProcessingParameterEnum ( name ) );
14641464 else if ( type == QgsProcessingParameterString::typeName () )
14651465 def.reset ( new QgsProcessingParameterString ( name ) );
1466+ else if ( type == QgsProcessingParameterAuthConfig::typeName () )
1467+ def.reset ( new QgsProcessingParameterAuthConfig ( name ) );
14661468 else if ( type == QgsProcessingParameterExpression::typeName () )
14671469 def.reset ( new QgsProcessingParameterExpression ( name ) );
14681470 else if ( type == QgsProcessingParameterVectorLayer::typeName () )
@@ -1543,6 +1545,8 @@ QgsProcessingParameterDefinition *QgsProcessingParameters::parameterFromScriptCo
15431545 return QgsProcessingParameterEnum::fromScriptCode ( name, description, isOptional, definition );
15441546 else if ( type == QStringLiteral ( " string" ) )
15451547 return QgsProcessingParameterString::fromScriptCode ( name, description, isOptional, definition );
1548+ else if ( type == QStringLiteral ( " authcfg" ) )
1549+ return QgsProcessingParameterAuthConfig::fromScriptCode ( name, description, isOptional, definition );
15461550 else if ( type == QStringLiteral ( " expression" ) )
15471551 return QgsProcessingParameterExpression::fromScriptCode ( name, description, isOptional, definition );
15481552 else if ( type == QStringLiteral ( " field" ) )
@@ -3008,6 +3012,62 @@ QgsProcessingParameterString *QgsProcessingParameterString::fromScriptCode( cons
30083012 return new QgsProcessingParameterString ( name, description, defaultValue, multiLine, isOptional );
30093013}
30103014
3015+ //
3016+ // QgsProcessingParameterAuthConfig
3017+ //
3018+
3019+ QgsProcessingParameterAuthConfig::QgsProcessingParameterAuthConfig ( const QString &name, const QString &description, const QVariant &defaultValue, bool optional )
3020+ : QgsProcessingParameterDefinition( name, description, defaultValue, optional )
3021+ {
3022+
3023+ }
3024+
3025+ QgsProcessingParameterDefinition *QgsProcessingParameterAuthConfig::clone () const
3026+ {
3027+ return new QgsProcessingParameterAuthConfig ( *this );
3028+ }
3029+
3030+ QString QgsProcessingParameterAuthConfig::valueAsPythonString ( const QVariant &value, QgsProcessingContext & ) const
3031+ {
3032+ if ( !value.isValid () )
3033+ return QStringLiteral ( " None" );
3034+
3035+ QString s = value.toString ();
3036+ return QgsProcessingUtils::stringToPythonLiteral ( s );
3037+ }
3038+
3039+ QString QgsProcessingParameterAuthConfig::asScriptCode () const
3040+ {
3041+ QString code = QStringLiteral ( " ##%1=" ).arg ( mName );
3042+ if ( mFlags & FlagOptional )
3043+ code += QStringLiteral ( " optional " );
3044+ code += QStringLiteral ( " authcfg " );
3045+
3046+ code += mDefault .toString ();
3047+ return code.trimmed ();
3048+ }
3049+
3050+ QgsProcessingParameterAuthConfig *QgsProcessingParameterAuthConfig::fromScriptCode ( const QString &name, const QString &description, bool isOptional, const QString &definition )
3051+ {
3052+ QString def = definition;
3053+
3054+ if ( def.startsWith ( ' "' ) || def.startsWith ( ' \' ' ) )
3055+ def = def.mid ( 1 );
3056+ if ( def.endsWith ( ' "' ) || def.endsWith ( ' \' ' ) )
3057+ def.chop ( 1 );
3058+
3059+ QVariant defaultValue = def;
3060+ if ( def == QStringLiteral ( " None" ) )
3061+ defaultValue = QVariant ();
3062+
3063+ return new QgsProcessingParameterAuthConfig ( name, description, defaultValue, isOptional );
3064+ }
3065+
3066+
3067+ //
3068+ // QgsProcessingParameterExpression
3069+ //
3070+
30113071QgsProcessingParameterExpression::QgsProcessingParameterExpression ( const QString &name, const QString &description, const QVariant &defaultValue, const QString &parentLayerParameterName, bool optional )
30123072 : QgsProcessingParameterDefinition( name, description, defaultValue, optional )
30133073 , mParentLayerParameterName( parentLayerParameterName )
0 commit comments