getControllerCode method

String getControllerCode(
  1. List<String> functions
)

Generates the code for the controller class.

Implementation

String getControllerCode(List<String> functions) {
  StringBuffer buffer = StringBuffer();

  String className = NameHelper.toClassName(name);

  buffer.writeln("import 'package:get/get.dart';");
  buffer.writeln("import 'package:template/helpers/log_helper.dart';");
  buffer.writeln(
    "import 'package:template/services/${NameHelper.toUnderscoreName(service)}.dart';",
  );
  buffer.writeln("");
  buffer.writeln("class $className extends GetxController {");
  buffer.writeln("  RxBool isTestLoading = false.obs;");
  buffer.writeln("");
  buffer.writeln("  /* Services */");
  buffer.writeln(
    "  final ${NameHelper.toClassName(service)} _${NameHelper().toCamelCase(service)} = ${NameHelper.toClassName(service)}();",
  );
  buffer.writeln("");
  buffer.writeln("  /* Controllers */");
  buffer.writeln("");
  buffer.writeln("  /* Models */");
  buffer.writeln("");
  buffer.writeln("  /* Actions */");
  buffer.writeln(
    functions.map((func) => getFunctionCode(name: func)).join(''),
  );
  buffer.writeln("");
  buffer.writeln("}");

  return buffer.toString();
}