generateController static method

String generateController({
  1. required String className,
  2. required String route,
  3. String? description,
  4. bool includeRudMethods = false,
})

Generate a basic REST controller

Implementation

static String generateController({
  required String className,
  required String route,
  String? description,
  bool includeRudMethods = false,
}) {
  final buffer = StringBuffer();

  buffer.writeln("import 'package:vaden/vaden.dart';");
  buffer.writeln();

  if (description != null) {
    buffer.writeln("@Api(tag: '${_toKebabCase(className)}', description: '$description')");
  } else {
    buffer.writeln("@Api(tag: '${_toKebabCase(className)}')");
  }

  buffer.writeln("@Controller('$route')");
  buffer.writeln('class $className {');

  if (includeRudMethods) {
    buffer.writeln(_generateCrudMethods());
  } else {
    buffer.writeln(_generateBasicMethod());
  }

  buffer.writeln('}');

  return buffer.toString();
}