Skip to content

Commit ba50128

Browse files
helin24Commit Bot
authored and
Commit Bot
committed
Add script location to generated code message
The previous message added to Java generated code was not helpful for finding the generating code. TEST=N/A Change-Id: Ie60202ac68e8790a422a47c6edfd75997cf32145 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/232024 Reviewed-by: Ben Konyi <[email protected]> Commit-Queue: Ben Konyi <[email protected]>
1 parent 23b954f commit ba50128

File tree

5 files changed

+35
-18
lines changed

5 files changed

+35
-18
lines changed

pkg/vm_service/java/src/org/dartlang/vm/service/consumer/BreakpointConsumer.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
*/
1414
package org.dartlang.vm.service.consumer;
1515

16-
// This is a generated file.
16+
// This file is generated by the script: pkg/vm_service/tool/generate.dart in dart-lang/sdk.
1717

1818
import org.dartlang.vm.service.element.Breakpoint;
1919

pkg/vm_service/java/src/org/dartlang/vm/service/consumer/CpuSamplesConsumer.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
*/
1414
package org.dartlang.vm.service.consumer;
1515

16-
// This is a generated file.
16+
// This file is generated by the script: pkg/vm_service/tool/generate.dart in dart-lang/sdk.
1717

1818
import org.dartlang.vm.service.element.CpuSamples;
1919

pkg/vm_service/tool/generate.dart

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,12 @@ Future _generateDart(String appDirPath, List<Node> nodes) async {
6767
Future _generateJava(String appDirPath, List<Node> nodes) async {
6868
var srcDirPath = normalize(join(appDirPath, '..', 'java', 'src'));
6969
var generator = java.JavaGenerator(srcDirPath);
70-
java.api = java.Api();
70+
71+
final scriptPath = Platform.script.toFilePath();
72+
final kSdk = '/sdk/';
73+
final scriptLocation =
74+
scriptPath.substring(scriptPath.indexOf(kSdk) + kSdk.length);
75+
java.api = java.Api(scriptLocation);
7176
java.api.parse(nodes);
7277
java.api.generate(generator);
7378

pkg/vm_service/tool/java/generate_java.dart

Lines changed: 19 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -101,11 +101,14 @@ class Api extends Member with ApiParseUtil {
101101
List<Enum?> enums = [];
102102
List<Type?> types = [];
103103
Map<String, List<String>> streamIdMap = {};
104+
final String scriptLocation;
104105

105106
String? get docs => null;
106107

107108
String get name => 'api';
108109

110+
Api(this.scriptLocation);
111+
109112
void addProperty(String typeName, String propertyName, {String? javadoc}) {
110113
var t = types.firstWhere((t) => t!.name == typeName)!;
111114
for (var f in t.fields) {
@@ -148,7 +151,8 @@ class Api extends Member with ApiParseUtil {
148151
}
149152
}
150153

151-
gen.writeType('$servicePackage.VmService', (TypeWriter writer) {
154+
gen.writeType('$servicePackage.VmService', scriptLocation,
155+
(TypeWriter writer) {
152156
writer.addImport('com.google.gson.JsonArray');
153157
writer.addImport('com.google.gson.JsonObject');
154158
writer.addImport('com.google.gson.JsonPrimitive');
@@ -311,11 +315,11 @@ class Api extends Member with ApiParseUtil {
311315
if (docs != null) docs = docs.trim();
312316

313317
if (definition.startsWith('class ')) {
314-
types.add(Type(this, name, definition, docs));
318+
types.add(Type(this, scriptLocation, name, definition, docs));
315319
} else if (name.substring(0, 1).toLowerCase() == name.substring(0, 1)) {
316-
methods.add(Method(name, definition, docs));
320+
methods.add(Method(name, scriptLocation, definition, docs));
317321
} else if (definition.startsWith('enum ')) {
318-
enums.add(Enum(name, definition, docs));
322+
enums.add(Enum(name, scriptLocation, definition, docs));
319323
} else {
320324
throw 'unexpected entity: ${name}, ${definition}';
321325
}
@@ -365,18 +369,19 @@ class Api extends Member with ApiParseUtil {
365369

366370
class Enum extends Member {
367371
final String name;
372+
final String scriptLocation;
368373
final String? docs;
369374

370375
List<EnumValue> enums = [];
371376

372-
Enum(this.name, String definition, [this.docs]) {
377+
Enum(this.name, this.scriptLocation, String definition, [this.docs]) {
373378
_parse(Tokenizer(definition).tokenize());
374379
}
375380

376381
String get elementTypeName => '$servicePackage.element.$name';
377382

378383
void generateEnum(JavaGenerator gen) {
379-
gen.writeType(elementTypeName, (TypeWriter writer) {
384+
gen.writeType(elementTypeName, scriptLocation, (TypeWriter writer) {
380385
writer.javadoc = convertDocLinks(docs);
381386
writer.isEnum = true;
382387
enums.sort((v1, v2) => v1.name!.compareTo(v2.name!));
@@ -496,13 +501,14 @@ class MemberType extends Member {
496501

497502
class Method extends Member {
498503
final String name;
504+
final String scriptLocation;
499505
final String? docs;
500506

501507
MemberType returnType = MemberType();
502508
bool deprecated = false;
503509
List<MethodArg> args = [];
504510

505-
Method(this.name, String definition, [this.docs]) {
511+
Method(this.name, this.scriptLocation, String definition, [this.docs]) {
506512
_parse(Tokenizer(definition).tokenize());
507513
}
508514

@@ -521,7 +527,7 @@ class Method extends Member {
521527
bool get hasOptionalArgs => args.any((MethodArg arg) => arg.optional);
522528

523529
void generateConsumerInterface(JavaGenerator gen) {
524-
gen.writeType(consumerTypeName, (TypeWriter writer) {
530+
gen.writeType(consumerTypeName, scriptLocation, (TypeWriter writer) {
525531
writer.javadoc = convertDocLinks(returnType.docs);
526532
writer.interfaceNames.add('$servicePackage.consumer.Consumer');
527533
writer.isInterface = true;
@@ -752,13 +758,15 @@ class TextOutputVisitor implements NodeVisitor {
752758

753759
class Type extends Member {
754760
final Api parent;
761+
final String scriptLocation;
755762
String? rawName;
756763
String? name;
757764
String? superName;
758765
final String? docs;
759766
List<TypeField> fields = [];
760767

761-
Type(this.parent, String categoryName, String definition, [this.docs]) {
768+
Type(this.parent, this.scriptLocation, String categoryName, String definition,
769+
[this.docs]) {
762770
_parse(Tokenizer(definition).tokenize());
763771
}
764772

@@ -787,7 +795,8 @@ class Type extends Member {
787795
api.types.toList()..retainWhere((t) => t!.superName == name);
788796

789797
void generateElement(JavaGenerator gen) {
790-
gen.writeType('$servicePackage.element.$name', (TypeWriter writer) {
798+
gen.writeType('$servicePackage.element.$name', scriptLocation,
799+
(TypeWriter writer) {
791800
if (fields.any((f) => f.type.types.any((t) => t.isArray))) {
792801
writer.addImport('com.google.gson.JsonObject');
793802
}

pkg/vm_service/tool/java/src_gen_java.dart

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -57,8 +57,8 @@ class JavaGenerator {
5757
Iterable<String> get allWrittenFiles => _generatedPaths;
5858

5959
/// Generate a Java class/interface in the given package
60-
void writeType(String typeName, WriteType write) {
61-
var classWriter = TypeWriter(typeName);
60+
void writeType(String typeName, scriptLocation, WriteType write) {
61+
var classWriter = TypeWriter(typeName, scriptLocation);
6262
write(classWriter);
6363
var pkgDirPath = join(srcDirPath, joinAll(pkgNameFor(typeName).split('.')));
6464
var pkgDir = Directory(pkgDirPath);
@@ -123,10 +123,12 @@ class TypeWriter {
123123
final StringBuffer _content = StringBuffer();
124124
final List<String> _fields = <String>[];
125125
final Map<String, String> _methods = Map<String, String>();
126+
final String scriptLocation;
126127

127-
TypeWriter(String typeName)
128+
TypeWriter(String typeName, scriptLocation)
128129
: this.pkgName = pkgNameFor(typeName),
129-
this.className = classNameFor(typeName);
130+
this.className = classNameFor(typeName),
131+
this.scriptLocation = scriptLocation;
130132

131133
String get kind {
132134
if (isInterface) return 'interface';
@@ -263,7 +265,8 @@ class TypeWriter {
263265
if (fileHeader != null) buffer.write(fileHeader);
264266
buffer.writeln('package $pkgName;');
265267
buffer.writeln();
266-
buffer.writeln('// This is a generated file.');
268+
buffer.writeln(
269+
'// This file is generated by the script: ${scriptLocation} in dart-lang/sdk.');
267270
buffer.writeln();
268271
addImport(superclassName);
269272
interfaceNames.forEach((t) => addImport(t));

0 commit comments

Comments
 (0)