rt/emul/compact/src/main/java/java/lang/System.java
author Anton Epple <toni.epple@eppleton.de>
Wed, 18 Sep 2013 11:20:57 +0200
branchcanvas
changeset 1289 5a0768a5e095
parent 1269 8dce385fd361
parent 1279 6e49193b04f1
child 1290 3fc3e7c4fb5c
permissions -rw-r--r--
merging latest changes from default
     1 /**
     2  * Back 2 Browser Bytecode Translator
     3  * Copyright (C) 2012 Jaroslav Tulach <jaroslav.tulach@apidesign.org>
     4  *
     5  * This program is free software: you can redistribute it and/or modify
     6  * it under the terms of the GNU General Public License as published by
     7  * the Free Software Foundation, version 2 of the License.
     8  *
     9  * This program is distributed in the hope that it will be useful,
    10  * but WITHOUT ANY WARRANTY; without even the implied warranty of
    11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    12  * GNU General Public License for more details.
    13  *
    14  * You should have received a copy of the GNU General Public License
    15  * along with this program. Look for COPYING file in the top folder.
    16  * If not, see http://opensource.org/licenses/GPL-2.0.
    17  */
    18 package java.lang;
    19 
    20 import org.apidesign.bck2brwsr.core.JavaScriptBody;
    21 
    22 /** Poor man's re-implementation of most important System methods.
    23  *
    24  * @author Jaroslav Tulach <jtulach@netbeans.org>
    25  */
    26 public class System {
    27     private System() {
    28     }
    29     
    30     public static void arraycopy(Object value, int srcBegin, Object dst, int dstBegin, int count) {
    31         org.apidesign.bck2brwsr.emul.lang.System.arraycopy(value, srcBegin, dst, dstBegin, count);
    32     }
    33     
    34     public static long currentTimeMillis() {
    35         return org.apidesign.bck2brwsr.emul.lang.System.currentTimeMillis();
    36     }
    37     
    38     public static long nanoTime() {
    39         return org.apidesign.bck2brwsr.emul.lang.System.nanoTime();
    40     }
    41     
    42     public static int identityHashCode(Object obj) {
    43         return obj.defaultHashCode();
    44     }
    45 
    46     public static String getProperty(String name) {
    47         return null;
    48     }
    49     
    50     public static String getProperty(String key, String def) {
    51         return def;
    52     }
    53     
    54     /**
    55      * Returns the system-dependent line separator string.  It always
    56      * returns the same value - the initial value of the {@linkplain
    57      * #getProperty(String) system property} {@code line.separator}.
    58      *
    59      * <p>On UNIX systems, it returns {@code "\n"}; on Microsoft
    60      * Windows systems it returns {@code "\r\n"}.
    61      */
    62     public static String lineSeparator() {
    63         return "\n";
    64     }
    65 
    66     @JavaScriptBody(args = { "exitCode" }, body = "window.close();")
    67     public static void exit(int exitCode) {
    68     }
    69 }