Removed unused but similarly buggy code to fb2f890c from WriteBindings 75/1475/2
authorTuukka Lehtonen <tuukka.lehtonen@semantum.fi>
Fri, 16 Feb 2018 13:27:23 +0000 (15:27 +0200)
committerTuukka Lehtonen <tuukka.lehtonen@semantum.fi>
Fri, 16 Feb 2018 13:27:57 +0000 (15:27 +0200)
refs #7770

Change-Id: I3750d0272c3fd4a228fe2c943dcf331955cbcee5

bundles/org.simantics.db.common/src/org/simantics/db/common/WriteBindings.java

index e9ecce63c8ba0eac39b71e933edb801247f17b04..2939f12cc8c0ed5a1ba3e0c348053fd75a7b3886 100644 (file)
@@ -257,305 +257,15 @@ public class WriteBindings {
                public TRANSFERABLE_GRAPH_SERIALIZER() {
                        super(TRANSFERABLE_GRAPH_BINDING.INSTANCE);
                }
-               
-               static int writeUTF(String str, byte[] bytearr, int byteIndex) throws IOException {
-                       
-                       int strlen = str.length();
-                       int utflen = 0;
-                       int c;
-                       int count = byteIndex;
-
-                       /* use charAt instead of copying String to char array */
-                       for (int i = 0; i < strlen; i++) {
-                               c = str.charAt(i);
-                               if ((c >= 0x0001) && (c <= 0x007F)) {
-                                       utflen++;
-                               } else if (c > 0x07FF) {
-                                       utflen += 3;
-                               } else {
-                                       utflen += 2;
-                               }
-                       }
-
-                       if (utflen > 65535)
-                               throw new UTFDataFormatException(
-                                               "encoded string too long: " + utflen + " bytes");
 
-//                     byte[] bytearr = new byte[utflen+2];
-
-                       if(utflen < 0x80) {
-                               bytearr[count++] = ((byte)utflen);
-                       }
-                       else {
-                               utflen -= 0x80;
-                               if(utflen < 0x4000) {
-                                       bytearr[count++] = (byte)( ((utflen&0x3f) | 0x80) );
-                                       bytearr[count++] = (byte)( (utflen>>>6) );
-                               }
-                               else {
-                                       utflen -= 0x4000;
-                                       if(utflen < 0x200000) {
-                                               bytearr[count++] = (byte)( ((utflen&0x1f) | 0xc0) );
-                                               bytearr[count++] = (byte)( ((utflen>>>5)&0xff) );
-                                               bytearr[count++] = (byte)( ((utflen>>>13)&0xff) );      
-                                       }
-                                       else {
-                                               utflen -= 0x200000;
-                                               if(utflen < 0x10000000) {
-                                                       bytearr[count++] = (byte)( ((utflen&0x0f) | 0xe0) );
-                                                       bytearr[count++] = (byte)( ((utflen>>>4)&0xff) );
-                                                       bytearr[count++] = (byte)( ((utflen>>>12)&0xff) );      
-                                                       bytearr[count++] = (byte)( ((utflen>>>20)&0xff) );
-                                               }
-                                               else {
-                                                       utflen -= 0x10000000;
-                                                       bytearr[count++] = (byte)( ((utflen&0x07) | 0xf0) );
-                                                       bytearr[count++] = (byte)( ((utflen>>>3)&0xff) );
-                                                       bytearr[count++] = (byte)( ((utflen>>>11)&0xff) );      
-                                                       bytearr[count++] = (byte)( ((utflen>>>19)&0xff) );
-                                                       bytearr[count++] = (byte)( ((utflen>>>27)&0xff) );
-                                               }
-                                       }                               
-                               }
-                       }       
-
-                       int i=0;
-                       for (i=0; i<strlen; i++) {
-                               c = str.charAt(i);
-                               if (!((c >= 0x0001) && (c <= 0x007F))) break;
-                               bytearr[count++] = (byte) c;
-                       }
-
-                       for (;i < strlen; i++){
-                               c = str.charAt(i);
-                               if ((c >= 0x0001) && (c <= 0x007F)) {
-                                       bytearr[count++] = (byte) c;
-
-                               } else if (c > 0x07FF) {
-                                       bytearr[count++] = (byte) (0xE0 | ((c >> 12) & 0x0F));
-                                       bytearr[count++] = (byte) (0x80 | ((c >>  6) & 0x3F));
-                                       bytearr[count++] = (byte) (0x80 | ((c >>  0) & 0x3F));
-                               } else {
-                                       bytearr[count++] = (byte) (0xC0 | ((c >>  6) & 0x1F));
-                                       bytearr[count++] = (byte) (0x80 | ((c >>  0) & 0x3F));
-                               }
-                       }
-                       
-                       return count - byteIndex;
-                       
-               }
-               
                @Override
                public byte[] serialize(Object obj) throws IOException {
-                       
                        TransferableGraph1 tg = (TransferableGraph1)obj;
-                       
                        return Bindings
                                        .getSerializerUnchecked(TransferableGraph1.class)
                                        .serialize(tg);
-/*
-                       // 16 = resourceCount + 3 arrays
-//                     long start = System.nanoTime();
-                       int actualSize = 16 + 8*tg.values.length + 4*tg.statements.length + 5*tg.identities.length;
-                       for(Value v : tg.values) actualSize += v.value.length;
-                       for(Identity id : tg.identities) { 
-                               if(id.definition instanceof Internal) actualSize += (4 + ((Internal)id.definition).name.length() + 5);
-                               else if(id.definition instanceof External) actualSize += (4 + ((External)id.definition).name.length() + 5);
-                               else if(id.definition instanceof Root) actualSize += (((Root)id.definition).name.length() + ((Root)id.definition).type.length() + 10);
-                               else if(id.definition instanceof Optional) actualSize += (4 + ((Optional)id.definition).name.length() + 5);
-                       }
-//                     long end = System.nanoTime() - start;
-//                     System.err.println("size took " + 1e-9*end);
-                       
-//                     long start2 = System.nanoTime();
-                       
-                       
-                       byte[] bytes = new byte[actualSize];
-                       int byteIndex = 0;
-
-                       int i = tg.resourceCount;
-                       
-                       bytes[byteIndex+3] = (byte)(i & 0xFF);i >>>= 8;
-                       bytes[byteIndex+2] = (byte)(i & 0xFF);i >>>= 8;
-                       bytes[byteIndex+1] = (byte)(i & 0xFF);i >>>= 8;
-                       bytes[byteIndex] = (byte)(i & 0xFF);i >>>= 8;
-                       byteIndex+=4;
-                       
-                       i = tg.identities.length;
-
-                       bytes[byteIndex+3] = (byte)(i & 0xFF);i >>>= 8;
-                       bytes[byteIndex+2] = (byte)(i & 0xFF);i >>>= 8;
-                       bytes[byteIndex+1] = (byte)(i & 0xFF);i >>>= 8;
-                       bytes[byteIndex] = (byte)(i & 0xFF);i >>>= 8;
-                       byteIndex+=4;
-                       
-                       for(Identity id : tg.identities) {
-
-                               i = id.resource;
-                               bytes[byteIndex+3] = (byte)(i & 0xFF);i >>>= 8;
-                               bytes[byteIndex+2] = (byte)(i & 0xFF);i >>>= 8;
-                               bytes[byteIndex+1] = (byte)(i & 0xFF);i >>>= 8;
-                               bytes[byteIndex] = (byte)(i & 0xFF);i >>>= 8;
-                               byteIndex+=4;
-                               
-                               if(id.definition instanceof Internal) {
-
-                                       Internal r = (Internal)id.definition;
-
-                                       bytes[byteIndex++] = 3;
-
-                                       i = r.parent;
-                                       bytes[byteIndex+3] = (byte)(i & 0xFF);i >>>= 8;
-                                       bytes[byteIndex+2] = (byte)(i & 0xFF);i >>>= 8;
-                                       bytes[byteIndex+1] = (byte)(i & 0xFF);i >>>= 8;
-                                       bytes[byteIndex] = (byte)(i & 0xFF);i >>>= 8;
-                                       byteIndex+=4;
-                                       
-                                       byteIndex += writeUTF(r.name, bytes, byteIndex);
-
-                               } else if(id.definition instanceof External) {
-
-                                       External r = (External)id.definition;
-
-                                       bytes[byteIndex++] = 1;
-
-                                       i = r.parent;
-                                       bytes[byteIndex+3] = (byte)(i & 0xFF);i >>>= 8;
-                                       bytes[byteIndex+2] = (byte)(i & 0xFF);i >>>= 8;
-                                       bytes[byteIndex+1] = (byte)(i & 0xFF);i >>>= 8;
-                                       bytes[byteIndex] = (byte)(i & 0xFF);i >>>= 8;
-                                       byteIndex+=4;
-                                       
-                                       byteIndex += writeUTF(r.name, bytes, byteIndex);
-                                       
-                               } else if(id.definition instanceof Root) {
-                                       
-                                       bytes[byteIndex++] = 0;
-                                       
-                                       Root r = (Root)id.definition;
-                                       byteIndex += writeUTF(r.name, bytes, byteIndex);
-                                       byteIndex += writeUTF(r.type, bytes, byteIndex);
-                                       
-                               } else if(id.definition instanceof Optional) {
-
-                                       Optional r = (Optional)id.definition;
-
-                                       bytes[byteIndex++] = 2;
-
-                                       i = r.parent;
-                                       bytes[byteIndex+3] = (byte)(i & 0xFF);i >>>= 8;
-                                       bytes[byteIndex+2] = (byte)(i & 0xFF);i >>>= 8;
-                                       bytes[byteIndex+1] = (byte)(i & 0xFF);i >>>= 8;
-                                       bytes[byteIndex] = (byte)(i & 0xFF);i >>>= 8;
-                                       byteIndex+=4;
-                                       
-                                       byteIndex += writeUTF(r.name, bytes, byteIndex);
-                                       
-                               }
-                               
-                       }
-                       
-                       i = tg.statements.length;
-                       bytes[byteIndex+3] = (byte)(i & 0xFF);i >>>= 8;
-                       bytes[byteIndex+2] = (byte)(i & 0xFF);i >>>= 8;
-                       bytes[byteIndex+1] = (byte)(i & 0xFF);i >>>= 8;
-                       bytes[byteIndex] = (byte)(i & 0xFF);i >>>= 8;
-                       byteIndex+=4;
-                       
-                       for(int s : tg.statements) {
-                               i = s;
-                               bytes[byteIndex+3] = (byte)(i & 0xFF);i >>>= 8;
-                               bytes[byteIndex+2] = (byte)(i & 0xFF);i >>>= 8;
-                               bytes[byteIndex+1] = (byte)(i & 0xFF);i >>>= 8;
-                               bytes[byteIndex] = (byte)(i & 0xFF);i >>>= 8;
-                               byteIndex+=4;
-                       }
-
-                       i = tg.values.length;
-                       bytes[byteIndex+3] = (byte)(i & 0xFF);i >>>= 8;
-                       bytes[byteIndex+2] = (byte)(i & 0xFF);i >>>= 8;
-                       bytes[byteIndex+1] = (byte)(i & 0xFF);i >>>= 8;
-                       bytes[byteIndex] = (byte)(i & 0xFF);i >>>= 8;
-                       byteIndex+=4;
-
-                       for(Value v : tg.values) {
-                               
-                               i = v.resource;
-                               bytes[byteIndex+3] = (byte)(i & 0xFF);i >>>= 8;
-                               bytes[byteIndex+2] = (byte)(i & 0xFF);i >>>= 8;
-                               bytes[byteIndex+1] = (byte)(i & 0xFF);i >>>= 8;
-                               bytes[byteIndex] = (byte)(i & 0xFF);i >>>= 8;
-                               byteIndex+=4;
-
-                               i = v.value.length;
-                               bytes[byteIndex+3] = (byte)(i & 0xFF);i >>>= 8;
-                               bytes[byteIndex+2] = (byte)(i & 0xFF);i >>>= 8;
-                               bytes[byteIndex+1] = (byte)(i & 0xFF);i >>>= 8;
-                               bytes[byteIndex] = (byte)(i & 0xFF);i >>>= 8;
-                               byteIndex+=4;
-                               
-                               System.arraycopy(v.value, 0, bytes, byteIndex, v.value.length);
-                               byteIndex += v.value.length;
-                               
-                       }
-
-//                     return bytes;
-                       
-//                     byte[] result = new byte[byteIndex];
-//                     System.arraycopy(bytes, 0, result, 0, byteIndex);
-//                     
-//                     byte[] result = Arrays.copyOf(bytes, byteIndex); 
-                       
-//                     long end2 = System.nanoTime() - start2;
-//                     System.err.println("size2 took " + 1e-9*end2);
-
-                       return bytes; 
-                       
-//                     long[] data = (long[])obj;
-//                     byte[] result = new byte[4+8*data.length];
-//                     
-//                     int len = data.length;
-//                     
-//                     result[3] = (byte)(len & 0xFF);
-//                     len >>>= 8;
-//                     result[2] = (byte)(len & 0xFF);
-//                     len >>>= 8;
-//                     result[1] = (byte)(len & 0xFF);
-//                     len >>>= 8;
-//                     result[0] = (byte)(len & 0xFF);
-//
-//                     int index = 4;
-//
-//                     for(int i=0;i<data.length;i++) {
-//                             
-//                             long l = data[i];
-//
-//                             result[index+7] = (byte)(l & 0xFF);
-//                             l >>>= 8;
-//                             result[index+6] = (byte)(l & 0xFF);
-//                             l >>>= 8;
-//                             result[index+5] = (byte)(l & 0xFF);
-//                             l >>>= 8;
-//                             result[index+4] = (byte)(l & 0xFF);
-//                             l >>>= 8;
-//                             result[index+3] = (byte)(l & 0xFF);
-//                             l >>>= 8;
-//                             result[index+2] = (byte)(l & 0xFF);
-//                             l >>>= 8;
-//                             result[index+1] = (byte)(l & 0xFF);
-//                             l >>>= 8;
-//                             result[index] = (byte)(l & 0xFF);
-//                             l >>>= 8;
-//                             
-//                             index += 8;
-//
-//                     }
-//                     
-//                     return result;
-*/
                }
-               
-               
+
                final private String utf(byte[] bytes) {
                        
                        char[] chars = new char[bytes.length];