JAL-1807 Bob's JalviewJS prototype first commit
[jalviewjs.git] / site / j2s / java / util / AbstractCollection.js
1 // 4/23/2015 1:20:24 PM BH removing need for array.getClass().getComponentType()\r
2 \r
3 Clazz.load(["java.util.Collection"],"java.util.AbstractCollection",["java.lang.StringBuilder","$.UnsupportedOperationException","java.lang.reflect.Array"],function(){\r
4 c$=Clazz.declareType(java.util,"AbstractCollection",null,java.util.Collection);\r
5 Clazz.makeConstructor(c$,\r
6 function(){\r
7 });\r
8 Clazz.overrideMethod(c$,"add",\r
9 function(object){\r
10 throw new UnsupportedOperationException();\r
11 },"~O");\r
12 Clazz.overrideMethod(c$,"addAll",\r
13 function(collection){\r
14 var result=false;\r
15 var it=collection.iterator();\r
16 while(it.hasNext()){\r
17 if(this.add(it.next())){\r
18 result=true;\r
19 }}\r
20 return result;\r
21 },"java.util.Collection");\r
22 Clazz.overrideMethod(c$,"clear",\r
23 function(){\r
24 var it=this.iterator();\r
25 while(it.hasNext()){\r
26 it.next();\r
27 it.remove();\r
28 }\r
29 });\r
30 Clazz.overrideMethod(c$,"contains",\r
31 function(object){\r
32 var it=this.iterator();\r
33 if(object!=null){\r
34 while(it.hasNext()){\r
35 if(object.equals(it.next())){\r
36 return true;\r
37 }}\r
38 }else{\r
39 while(it.hasNext()){\r
40 if(it.next()==null){\r
41 return true;\r
42 }}\r
43 }return false;\r
44 },"~O");\r
45 Clazz.overrideMethod(c$,"containsAll",\r
46 function(collection){\r
47 var it=collection.iterator();\r
48 while(it.hasNext()){\r
49 if(!this.contains(it.next())){\r
50 return false;\r
51 }}\r
52 return true;\r
53 },"java.util.Collection");\r
54 Clazz.overrideMethod(c$,"isEmpty",\r
55 function(){\r
56 return this.size()==0;\r
57 });\r
58 Clazz.overrideMethod(c$,"remove",\r
59 function(object){\r
60 var it=this.iterator();\r
61 if(object!=null){\r
62 while(it.hasNext()){\r
63 if(object.equals(it.next())){\r
64 it.remove();\r
65 return true;\r
66 }}\r
67 }else{\r
68 while(it.hasNext()){\r
69 if(it.next()==null){\r
70 it.remove();\r
71 return true;\r
72 }}\r
73 }return false;\r
74 },"~O");\r
75 Clazz.overrideMethod(c$,"removeAll",\r
76 function(collection){\r
77 var result=false;\r
78 var it=this.iterator();\r
79 while(it.hasNext()){\r
80 if(collection.contains(it.next())){\r
81 it.remove();\r
82 result=true;\r
83 }}\r
84 return result;\r
85 },"java.util.Collection");\r
86 Clazz.overrideMethod(c$,"retainAll",\r
87 function(collection){\r
88 var result=false;\r
89 var it=this.iterator();\r
90 while(it.hasNext()){\r
91 if(!collection.contains(it.next())){\r
92 it.remove();\r
93 result=true;\r
94 }}\r
95 return result;\r
96 },"java.util.Collection");\r
97 Clazz.defineMethod(c$,"toArray",\r
98 function(){\r
99 var size=this.size();\r
100 var index=0;\r
101 var it=this.iterator();\r
102 var array=new Array(size);\r
103 while(index<size){\r
104 array[index++]=it.next();\r
105 }\r
106 return array;\r
107 });\r
108 Clazz.defineMethod(c$,"toArray",\r
109 function(contents){\r
110 var size=this.size();\r
111 var index=0;\r
112 // if(size>contents.length){  // BH unnec\r
113 //var ct=contents.getClass().getComponentType();\r
114 //contents=java.lang.reflect.Array.newInstance(ct,size);\r
115 //}\r
116 for(var entry,$entry=this.iterator();$entry.hasNext()&&((entry=$entry.next())||true);){\r
117 contents[index++]=entry;\r
118 }\r
119 if(index<contents.length){\r
120 contents[index]=null;\r
121 }return contents;\r
122 },"~A");\r
123 Clazz.overrideMethod(c$,"toString",\r
124 function(){\r
125 if(this.isEmpty()){\r
126 return"[]";\r
127 }var buffer=new StringBuilder(this.size()*16);\r
128 buffer.append('[');\r
129 var it=this.iterator();\r
130 while(it.hasNext()){\r
131 var next=it.next();\r
132 if(next!==this){\r
133 buffer.append(next);\r
134 }else{\r
135 buffer.append("(this Collection)");\r
136 }if(it.hasNext()){\r
137 buffer.append(", ");\r
138 }}\r
139 buffer.append(']');\r
140 return buffer.toString();\r
141 });\r
142 });\r