| Index: editor/util/plugins/com.google.dart.java2dart/src/com/google/dart/java2dart/processor/IOSemanticProcessor.java
|
| diff --git a/editor/util/plugins/com.google.dart.java2dart/src/com/google/dart/java2dart/processor/IOSemanticProcessor.java b/editor/util/plugins/com.google.dart.java2dart/src/com/google/dart/java2dart/processor/IOSemanticProcessor.java
|
| index 50f1eac366d10d65955e2947ddac2fc2503a9106..85f2bfb3b6273240fd0102fe1ba63b49bb5953eb 100644
|
| --- a/editor/util/plugins/com.google.dart.java2dart/src/com/google/dart/java2dart/processor/IOSemanticProcessor.java
|
| +++ b/editor/util/plugins/com.google.dart.java2dart/src/com/google/dart/java2dart/processor/IOSemanticProcessor.java
|
| @@ -90,8 +90,25 @@ public class IOSemanticProcessor extends SemanticProcessor {
|
| @Override
|
| public Void visitMethodInvocation(MethodInvocation node) {
|
| super.visitMethodInvocation(node);
|
| + Expression target = node.getTarget();
|
| List<Expression> args = node.getArgumentList().getArguments();
|
| SimpleIdentifier nameNode = node.getMethodName();
|
| + // System.out.print[ln](x) -> print(x)
|
| + if (isMethodInClass(node, "print", "java.io.PrintStream")
|
| + || isMethodInClass(node, "println", "java.io.PrintStream")) {
|
| + if (target instanceof PropertyAccess) {
|
| + PropertyAccess propertyAccess = (PropertyAccess) target;
|
| + SimpleIdentifier propertyName = propertyAccess.getPropertyName();
|
| + Expression propertyTarget = propertyAccess.getTarget();
|
| + if (propertyName.getName().equals("out") && propertyTarget instanceof SimpleIdentifier) {
|
| + if (((SimpleIdentifier) propertyTarget).getName().equals("System")) {
|
| + replaceNode(node, methodInvocation("print", args));
|
| + return null;
|
| + }
|
| + }
|
| + }
|
| + }
|
| + // java.net.URI
|
| if (isMethodInClass2(node, "create(java.lang.String)", "java.net.URI")) {
|
| replaceNode(node, methodInvocation(identifier("parseUriWithException"), args));
|
| return null;
|
| @@ -113,7 +130,6 @@ public class IOSemanticProcessor extends SemanticProcessor {
|
| nameNode.setToken(token("resolveUri"));
|
| return null;
|
| }
|
| - // remove URI.normalize()
|
| if (isMethodInClass2(node, "normalize()", "java.net.URI")) {
|
| replaceNode(node, node.getTarget());
|
| return null;
|
|
|