generateRouteMethod static method
Generate a route method
Implementation
static String generateRouteMethod({
required String httpMethod,
required String path,
required String methodName,
required String returnType,
List<Map<String, String>>? parameters,
}) {
final buffer = StringBuffer();
buffer.writeln(' @$httpMethod(\'$path\')');
buffer.write(' $returnType $methodName(');
if (parameters != null && parameters.isNotEmpty) {
final params = parameters.map((p) {
final type = p['type']!;
final name = p['name']!;
final annotation = p['annotation'];
if (annotation != null) {
return '@$annotation() $type $name';
}
return '$type $name';
}).join(', ');
buffer.write(params);
}
buffer.writeln(') {');
buffer.writeln(' // TODO: Implement $methodName');
if (returnType == 'String') {
buffer.writeln(" return 'Response from $methodName';");
} else if (returnType.startsWith('List')) {
buffer.writeln(' return [];');
} else if (returnType.startsWith('Map')) {
buffer.writeln(' return {};');
} else if (returnType == 'void') {
buffer.writeln(' // Implementation here');
} else {
buffer.writeln(' throw UnimplementedError();');
}
buffer.writeln(' }');
return buffer.toString();
}