1.1 --- a/emul/compact/src/main/java/java/io/BufferedReader.java Fri Feb 01 16:25:57 2013 +0100
1.2 +++ b/emul/compact/src/main/java/java/io/BufferedReader.java Fri Feb 01 16:34:51 2013 +0100
1.3 @@ -25,7 +25,6 @@
1.4
1.5 package java.io;
1.6
1.7 -import org.apidesign.bck2brwsr.emul.lang.System;
1.8
1.9
1.10 /**
2.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
2.2 +++ b/emul/compact/src/main/java/java/lang/System.java Fri Feb 01 16:34:51 2013 +0100
2.3 @@ -0,0 +1,36 @@
2.4 +/**
2.5 + * Back 2 Browser Bytecode Translator
2.6 + * Copyright (C) 2012 Jaroslav Tulach <jaroslav.tulach@apidesign.org>
2.7 + *
2.8 + * This program is free software: you can redistribute it and/or modify
2.9 + * it under the terms of the GNU General Public License as published by
2.10 + * the Free Software Foundation, version 2 of the License.
2.11 + *
2.12 + * This program is distributed in the hope that it will be useful,
2.13 + * but WITHOUT ANY WARRANTY; without even the implied warranty of
2.14 + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
2.15 + * GNU General Public License for more details.
2.16 + *
2.17 + * You should have received a copy of the GNU General Public License
2.18 + * along with this program. Look for COPYING file in the top folder.
2.19 + * If not, see http://opensource.org/licenses/GPL-2.0.
2.20 + */
2.21 +package java.lang;
2.22 +
2.23 +/** Poor man's re-implementation of most important System methods.
2.24 + *
2.25 + * @author Jaroslav Tulach <jtulach@netbeans.org>
2.26 + */
2.27 +public class System {
2.28 + private System() {
2.29 + }
2.30 +
2.31 + public static void arraycopy(Object value, int srcBegin, Object dst, int dstBegin, int count) {
2.32 + org.apidesign.bck2brwsr.emul.lang.System.arraycopy(value, srcBegin, dst, dstBegin, count);
2.33 + }
2.34 +
2.35 + public static long currentTimeMillis() {
2.36 + return org.apidesign.bck2brwsr.emul.lang.System.currentTimeMillis();
2.37 + }
2.38 +
2.39 +}
3.1 --- a/emul/compact/src/main/java/java/util/ArrayDeque.java Fri Feb 01 16:25:57 2013 +0100
3.2 +++ b/emul/compact/src/main/java/java/util/ArrayDeque.java Fri Feb 01 16:34:51 2013 +0100
3.3 @@ -34,7 +34,6 @@
3.4
3.5 package java.util;
3.6 import java.io.*;
3.7 -import org.apidesign.bck2brwsr.emul.lang.System;
3.8
3.9 /**
3.10 * Resizable-array implementation of the {@link Deque} interface. Array
4.1 --- a/emul/compact/src/main/java/java/util/ArrayList.java Fri Feb 01 16:25:57 2013 +0100
4.2 +++ b/emul/compact/src/main/java/java/util/ArrayList.java Fri Feb 01 16:34:51 2013 +0100
4.3 @@ -25,7 +25,6 @@
4.4
4.5 package java.util;
4.6
4.7 -import org.apidesign.bck2brwsr.emul.lang.System;
4.8
4.9 /**
4.10 * Resizable-array implementation of the <tt>List</tt> interface. Implements
5.1 --- a/emul/compact/src/main/java/java/util/Arrays.java Fri Feb 01 16:25:57 2013 +0100
5.2 +++ b/emul/compact/src/main/java/java/util/Arrays.java Fri Feb 01 16:34:51 2013 +0100
5.3 @@ -26,7 +26,6 @@
5.4 package java.util;
5.5
5.6 import java.lang.reflect.*;
5.7 -import org.apidesign.bck2brwsr.emul.lang.System;
5.8
5.9 /**
5.10 * This class contains various methods for manipulating arrays (such as
6.1 --- a/emul/compact/src/main/java/java/util/Collections.java Fri Feb 01 16:25:57 2013 +0100
6.2 +++ b/emul/compact/src/main/java/java/util/Collections.java Fri Feb 01 16:34:51 2013 +0100
6.3 @@ -27,7 +27,6 @@
6.4 import java.io.Serializable;
6.5 import java.io.IOException;
6.6 import java.lang.reflect.Array;
6.7 -import org.apidesign.bck2brwsr.emul.lang.System;
6.8
6.9 /**
6.10 * This class consists exclusively of static methods that operate on or return
7.1 --- a/emul/compact/src/main/java/java/util/ComparableTimSort.java Fri Feb 01 16:25:57 2013 +0100
7.2 +++ b/emul/compact/src/main/java/java/util/ComparableTimSort.java Fri Feb 01 16:34:51 2013 +0100
7.3 @@ -25,7 +25,6 @@
7.4
7.5 package java.util;
7.6
7.7 -import org.apidesign.bck2brwsr.emul.lang.System;
7.8
7.9 /**
7.10 * This is a near duplicate of {@link TimSort}, modified for use with
8.1 --- a/emul/compact/src/main/java/java/util/PriorityQueue.java Fri Feb 01 16:25:57 2013 +0100
8.2 +++ b/emul/compact/src/main/java/java/util/PriorityQueue.java Fri Feb 01 16:34:51 2013 +0100
8.3 @@ -25,7 +25,6 @@
8.4
8.5 package java.util;
8.6
8.7 -import org.apidesign.bck2brwsr.emul.lang.System;
8.8
8.9 /**
8.10 * An unbounded priority {@linkplain Queue queue} based on a priority heap.
9.1 --- a/emul/compact/src/main/java/java/util/TimSort.java Fri Feb 01 16:25:57 2013 +0100
9.2 +++ b/emul/compact/src/main/java/java/util/TimSort.java Fri Feb 01 16:34:51 2013 +0100
9.3 @@ -25,7 +25,6 @@
9.4
9.5 package java.util;
9.6
9.7 -import org.apidesign.bck2brwsr.emul.lang.System;
9.8
9.9 /**
9.10 * A stable, adaptive, iterative mergesort that requires far fewer than
10.1 --- a/emul/compact/src/main/java/java/util/Vector.java Fri Feb 01 16:25:57 2013 +0100
10.2 +++ b/emul/compact/src/main/java/java/util/Vector.java Fri Feb 01 16:34:51 2013 +0100
10.3 @@ -25,7 +25,6 @@
10.4
10.5 package java.util;
10.6
10.7 -import org.apidesign.bck2brwsr.emul.lang.System;
10.8
10.9 /**
10.10 * The {@code Vector} class implements a growable array of
11.1 --- a/emul/mini/src/main/java/org/apidesign/bck2brwsr/emul/lang/System.java Fri Feb 01 16:25:57 2013 +0100
11.2 +++ b/emul/mini/src/main/java/org/apidesign/bck2brwsr/emul/lang/System.java Fri Feb 01 16:34:51 2013 +0100
11.3 @@ -45,6 +45,10 @@
11.4 )
11.5 public static native byte[] expandArray(byte[] arr, int expectedSize);
11.6
11.7 - @JavaScriptBody(args = {}, body = "new Date().getMilliseconds() * 1000;")
11.8 - public static native long nanoTime();
11.9 + @JavaScriptBody(args = {}, body = "new Date().getMilliseconds();")
11.10 + public static native long currentTimeMillis();
11.11 +
11.12 + public static long nanoTime() {
11.13 + return 1000L * currentTimeMillis();
11.14 + }
11.15 }