VirtualBox

Changeset 31694 in vbox for trunk/src/VBox/Main


Ignore:
Timestamp:
Aug 16, 2010 1:48:57 PM (15 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
64838
Message:

Java XPCOM bridge: octet arrays are byte[] in XPCOM backend, proper null treatment

Location:
trunk/src/VBox/Main/glue
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Main/glue/glue-java.xsl

    r31166 r31694  
    315315
    316316        <xsl:when test="$type='octet'">
    317           <xsl:value-of select="'short'" />
     317          <xsl:value-of select="'byte'" />
    318318        </xsl:when>
    319319
     
    22042204
    22052205public class Helper {
    2206     public static List<Short> wrap(short[] vals) {
    2207         if (vals==null || vals.length == 0)  return Collections.emptyList();
     2206    public static List<Short> wrap(byte[] vals) {
     2207        if (vals==null)
     2208            return null;
    22082209
    22092210        List<Short> ret = new ArrayList<Short>(vals.length);
     
    22152216
    22162217    public static List<Integer> wrap(int[] vals) {
    2217         if (vals==null || vals.length == 0)  return Collections.emptyList();
     2218        if (vals==null)
     2219             return null;
    22182220
    22192221        List<Integer> ret = new ArrayList<Integer>(vals.length);
    22202222        for (int v : vals) {
    2221                 ret.add(v);
     2223             ret.add(v);
    22222224        }
    22232225        return ret;
     
    22252227
    22262228    public static List<Long> wrap(long[] vals) {
    2227         if (vals==null || vals.length == 0)  return Collections.emptyList();
     2229        if (vals==null)
     2230             return null;
    22282231
    22292232        List<Long> ret = new ArrayList<Long>(vals.length);
     
    22352238
    22362239    public static List<String> wrap(String[] vals) {
    2237         if (vals==null || vals.length == 0)  return Collections.emptyList();
    2238 
     2240        if (vals==null)
     2241            return null;
    22392242        List<String> ret = new ArrayList<String>(vals.length);
    22402243        for (String v : vals) {
    2241                 ret.add(v);
     2244            ret.add(v);
    22422245        }
    22432246        return ret;
     
    22452248
    22462249    public static <T> List<T> wrap(Class<T> wrapperClass, T[] thisPtrs) {
    2247         if (thisPtrs==null || thisPtrs.length == 0)  return Collections.emptyList();
     2250        if (thisPtrs==null)
     2251             return null;
    22482252
    22492253        List<T> ret = new ArrayList<T>(thisPtrs.length);
     
    22852289
    22862290    public static short[] unwrap(List<Short> vals) {
    2287         if (vals==null || vals.size() == 0)  return new short[0];
     2291        if (vals==null)
     2292           return null;
    22882293
    22892294        short[] ret = new short[vals.size()];
     
    22962301
    22972302    public static int[] unwrap(List<Integer> vals) {
    2298         if (vals==null || vals.size() == 0)  return new int[0];
     2303        if (vals == null)
     2304           return null;
    22992305
    23002306        int[] ret = new int[vals.size()];
     
    23072313
    23082314    public static long[] unwrap(List<Long> vals) {
    2309         if (vals==null || vals.size() == 0)  return new long[0];
     2315        if (vals == null)
     2316           return null;
    23102317
    23112318        long[] ret = new long[vals.size()];
     
    23182325
    23192326    public static boolean[] unwrap(List<Boolean> vals) {
    2320         if (vals==null || vals.size() == 0)  return new boolean[0];
     2327        if (vals==null)
     2328           return null;
    23212329
    23222330        boolean[] ret = new boolean[vals.size()];
     
    23292337
    23302338    public static String[] unwrap(List<String> vals) {
    2331         if (vals==null || vals.size() == 0)  return new String[0];
     2339        if (vals==null)
     2340            return null;
    23322341
    23332342        String[] ret = new String[vals.size()];
     
    23652374    public static <T1, T2> List<T1> wrap2(Class<T1> wrapperClass1, Class<T2> wrapperClass2, T2[] thisPtrs) {
    23662375        try {
    2367             if (thisPtrs==null || thisPtrs.length == 0)  return Collections.emptyList();
     2376            if (thisPtrs==null)
     2377                return null;
    23682378
    23692379            Constructor<T1> c = wrapperClass1.getConstructor(wrapperClass2);
     
    24132423    @SuppressWarnings("unchecked")
    24142424    public static <T1 extends IUnknown,T2> T2[] unwrap2(Class<T1> wrapperClass1, Class<T2> wrapperClass2, List<T1> thisPtrs) {
    2415         if (thisPtrs==null || thisPtrs.size() == 0)  return null;
     2425        if (thisPtrs==null)  return null;
    24162426
    24172427        T2 ret[] = (T2[])Array.newInstance(wrapperClass2, thisPtrs.size());
  • trunk/src/VBox/Main/glue/tests/TestVBox.java

    r31232 r31694  
    116116    }
    117117
     118    /*
     119    static void testReadLogBI(VirtualBoxManager mgr, IVirtualBox vbox)
     120    {
     121        IMachine m =  vbox.getMachines().get(0);
     122        long logNo = 0;
     123        BigInteger off = BigInteger.valueOf(0);
     124        BigInteger size = BigInteger.valueOf(16 * 1024);
     125        while (true)
     126        {
     127            byte[] buf = m.readLog(logNo, off, size);
     128            if (buf.length == 0)
     129                break;
     130            System.out.print(new String(buf));
     131            off.add(BigInteger.valueOf(buf.length));
     132        }
     133    }
     134
     135    static void testReadLog(VirtualBoxManager mgr, IVirtualBox vbox)
     136    {
     137        IMachine m =  vbox.getMachines().get(0);
     138        long logNo = 0;
     139        long off = 0;
     140        long size = 16 * 1024;
     141        while (true)
     142        {
     143            byte[] buf = m.readLog(logNo, off, size);
     144            if (buf.length == 0)
     145                break;
     146            System.out.print(new String(buf));
     147            off += buf.length;
     148        }
     149        }
     150    */
     151
     152
    118153    public static void main(String[] args)
    119154    {
     
    154189                System.out.println("VirtualBox version: " + vbox.getVersion() + "\n");
    155190                testEnumeration(mgr, vbox);
     191                //testReadLog(mgr, vbox);
    156192                testStart(mgr, vbox);
    157193                testEvents(mgr, vbox.getEventSource());
Note: See TracChangeset for help on using the changeset viewer.

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette