generateServerFile method
Returns the contents of the .pbserver.dart file for this .proto file.
Implementation
String generateServerFile(
[OutputConfiguration config = const DefaultOutputConfiguration()]) {
if (!_linked) throw StateError('not linked');
var out = makeWriter();
_writeHeading(out,
extraIgnores: {'deprecated_member_use_from_same_package'});
if (serviceGenerators.isNotEmpty) {
out.println(_asyncImport);
out.println();
out.println(_protobufImport);
out.println();
out.println(_coreImport);
}
// Import .pb.dart files needed for requests and responses.
var imports = <FileGenerator>{};
for (var x in serviceGenerators) {
x.addImportsTo(imports);
}
for (var target in imports) {
_writeImport(out, config, target, '.pb.dart');
}
// Import .pbjson.dart file needed for $json and $messageJson.
if (serviceGenerators.isNotEmpty) {
_writeImport(out, config, this, '.pbjson.dart');
out.println();
}
var resolvedImport =
config.resolveImport(protoFileUri, protoFileUri, '.pb.dart');
out.println("export '$resolvedImport';");
out.println();
for (var s in serviceGenerators) {
s.generate(out);
}
return out.toString();
}