1 package org.opentrafficsim.editor;
2
3 import org.w3c.dom.DOMException;
4 import org.w3c.dom.Document;
5 import org.w3c.dom.NamedNodeMap;
6 import org.w3c.dom.Node;
7 import org.w3c.dom.NodeList;
8 import org.w3c.dom.UserDataHandler;
9
10
11
12
13
14
15
16
17
18
19 public final class XiIncludeNode implements Node
20 {
21
22
23 public static final Node XI_INCLUDE = new XiIncludeNode();
24
25
26 private static final Node FILE_CHILD = new FileNode(new Attributes("File"));
27
28
29 private static final Node FALLBACK_CHILD = new FileNode(new Attributes("Fallback"));
30
31
32
33
34 private XiIncludeNode()
35 {
36
37 }
38
39 @Override
40 public String getNodeName()
41 {
42 return "xi:include";
43 }
44
45 @Override
46 public String getNodeValue() throws DOMException
47 {
48 return null;
49 }
50
51 @Override
52 public void setNodeValue(final String nodeValue) throws DOMException
53 {
54 }
55
56 @Override
57 public short getNodeType()
58 {
59 return Node.TEXT_NODE;
60 }
61
62 @Override
63 public Node getParentNode()
64 {
65 return null;
66 }
67
68 @Override
69 public NodeList getChildNodes()
70 {
71 return new NodeList()
72 {
73 @Override
74 public Node item(final int index)
75 {
76 if (index == 0)
77 {
78 return FILE_CHILD;
79 }
80 if (index == 1)
81 {
82 return FALLBACK_CHILD;
83 }
84 return null;
85 }
86
87 @Override
88 public int getLength()
89 {
90 return 2;
91 }
92 };
93 }
94
95 @Override
96 public Node getFirstChild()
97 {
98 return FILE_CHILD;
99 }
100
101 @Override
102 public Node getLastChild()
103 {
104 return FALLBACK_CHILD;
105 }
106
107 @Override
108 public Node getPreviousSibling()
109 {
110 return null;
111 }
112
113 @Override
114 public Node getNextSibling()
115 {
116 return null;
117 }
118
119 @Override
120 public NamedNodeMap getAttributes()
121 {
122 return null;
123 }
124
125 @Override
126 public Document getOwnerDocument()
127 {
128 return null;
129 }
130
131 @Override
132 public Node insertBefore(final Node newChild, final Node refChild) throws DOMException
133 {
134 return null;
135 }
136
137 @Override
138 public Node replaceChild(final Node newChild, final Node oldChild) throws DOMException
139 {
140 return null;
141 }
142
143 @Override
144 public Node removeChild(final Node oldChild) throws DOMException
145 {
146 return null;
147 }
148
149 @Override
150 public Node appendChild(final Node newChild) throws DOMException
151 {
152 return null;
153 }
154
155 @Override
156 public boolean hasChildNodes()
157 {
158 return true;
159 }
160
161 @Override
162 public Node cloneNode(final boolean deep)
163 {
164 return null;
165 }
166
167 @Override
168 public void normalize()
169 {
170 }
171
172 @Override
173 public boolean isSupported(final String feature, final String version)
174 {
175 return false;
176 }
177
178 @Override
179 public String getNamespaceURI()
180 {
181 return null;
182 }
183
184 @Override
185 public String getPrefix()
186 {
187 return null;
188 }
189
190 @Override
191 public void setPrefix(final String prefix) throws DOMException
192 {
193 }
194
195 @Override
196 public String getLocalName()
197 {
198 return null;
199 }
200
201 @Override
202 public boolean hasAttributes()
203 {
204 return false;
205 }
206
207 @Override
208 public String getBaseURI()
209 {
210 return null;
211 }
212
213 @Override
214 public short compareDocumentPosition(final Node other) throws DOMException
215 {
216 return 0;
217 }
218
219 @Override
220 public String getTextContent() throws DOMException
221 {
222 return null;
223 }
224
225 @Override
226 public void setTextContent(final String textContent) throws DOMException
227 {
228 }
229
230 @Override
231 public boolean isSameNode(final Node other)
232 {
233 return false;
234 }
235
236 @Override
237 public String lookupPrefix(final String namespaceURI)
238 {
239 return null;
240 }
241
242 @Override
243 public boolean isDefaultNamespace(final String namespaceURI)
244 {
245 return false;
246 }
247
248 @Override
249 public String lookupNamespaceURI(final String prefix)
250 {
251 return null;
252 }
253
254 @Override
255 public boolean isEqualNode(final Node arg)
256 {
257 return false;
258 }
259
260 @Override
261 public Object getFeature(final String feature, final String version)
262 {
263 return null;
264 }
265
266 @Override
267 public Object setUserData(final String key, final Object data, final UserDataHandler handler)
268 {
269 return null;
270 }
271
272 @Override
273 public Object getUserData(final String key)
274 {
275 return null;
276 }
277
278
279
280
281
282
283
284
285
286
287 private static class FileNode implements Node
288 {
289
290
291 private final Attributes attributes;
292
293
294
295
296
297 public FileNode(final Attributes attributes)
298 {
299 this.attributes = attributes;
300 }
301
302 @Override
303 public String getNodeName()
304 {
305 return "xsd:attribute";
306 }
307
308 @Override
309 public String getNodeValue() throws DOMException
310 {
311 return null;
312 }
313
314 @Override
315 public void setNodeValue(final String nodeValue) throws DOMException
316 {
317 }
318
319 @Override
320 public short getNodeType()
321 {
322 return Node.ATTRIBUTE_NODE;
323 }
324
325 @Override
326 public Node getParentNode()
327 {
328 return null;
329 }
330
331 @Override
332 public NodeList getChildNodes()
333 {
334 return null;
335 }
336
337 @Override
338 public Node getFirstChild()
339 {
340 return null;
341 }
342
343 @Override
344 public Node getLastChild()
345 {
346 return null;
347 }
348
349 @Override
350 public Node getPreviousSibling()
351 {
352 return null;
353 }
354
355 @Override
356 public Node getNextSibling()
357 {
358 return null;
359 }
360
361 @Override
362 public NamedNodeMap getAttributes()
363 {
364 return this.attributes;
365 }
366
367 @Override
368 public Document getOwnerDocument()
369 {
370 return null;
371 }
372
373 @Override
374 public Node insertBefore(final Node newChild, final Node refChild) throws DOMException
375 {
376 return null;
377 }
378
379 @Override
380 public Node replaceChild(final Node newChild, final Node oldChild) throws DOMException
381 {
382 return null;
383 }
384
385 @Override
386 public Node removeChild(final Node oldChild) throws DOMException
387 {
388 return null;
389 }
390
391 @Override
392 public Node appendChild(final Node newChild) throws DOMException
393 {
394 return null;
395 }
396
397 @Override
398 public boolean hasChildNodes()
399 {
400 return false;
401 }
402
403 @Override
404 public Node cloneNode(final boolean deep)
405 {
406 return null;
407 }
408
409 @Override
410 public void normalize()
411 {
412 }
413
414 @Override
415 public boolean isSupported(final String feature, final String version)
416 {
417 return false;
418 }
419
420 @Override
421 public String getNamespaceURI()
422 {
423 return null;
424 }
425
426 @Override
427 public String getPrefix()
428 {
429 return null;
430 }
431
432 @Override
433 public void setPrefix(final String prefix) throws DOMException
434 {
435 }
436
437 @Override
438 public String getLocalName()
439 {
440 return null;
441 }
442
443 @Override
444 public boolean hasAttributes()
445 {
446 return true;
447 }
448
449 @Override
450 public String getBaseURI()
451 {
452 return null;
453 }
454
455 @Override
456 public short compareDocumentPosition(final Node other) throws DOMException
457 {
458 return 0;
459 }
460
461 @Override
462 public String getTextContent() throws DOMException
463 {
464 return null;
465 }
466
467 @Override
468 public void setTextContent(final String textContent) throws DOMException
469 {
470 }
471
472 @Override
473 public boolean isSameNode(final Node other)
474 {
475 return false;
476 }
477
478 @Override
479 public String lookupPrefix(final String namespaceURI)
480 {
481 return null;
482 }
483
484 @Override
485 public boolean isDefaultNamespace(final String namespaceURI)
486 {
487 return false;
488 }
489
490 @Override
491 public String lookupNamespaceURI(final String prefix)
492 {
493 return null;
494 }
495
496 @Override
497 public boolean isEqualNode(final Node arg)
498 {
499 return false;
500 }
501
502 @Override
503 public Object getFeature(final String feature, final String version)
504 {
505 return null;
506 }
507
508 @Override
509 public Object setUserData(final String key, final Object data, final UserDataHandler handler)
510 {
511 return null;
512 }
513
514 @Override
515 public Object getUserData(final String key)
516 {
517 return null;
518 }
519
520 }
521
522
523
524
525
526
527
528
529
530
531 private static class Attributes implements NamedNodeMap
532 {
533
534
535 private final String name;
536
537
538
539
540
541 public Attributes(final String name)
542 {
543 this.name = name;
544 }
545
546
547 private Node file = new Node()
548 {
549
550 @Override
551 public String getNodeName()
552 {
553 return null;
554 }
555
556 @Override
557 public String getNodeValue() throws DOMException
558 {
559 return Attributes.this.name;
560 }
561
562 @Override
563 public void setNodeValue(final String nodeValue) throws DOMException
564 {
565 }
566
567 @Override
568 public short getNodeType()
569 {
570 return 0;
571 }
572
573 @Override
574 public Node getParentNode()
575 {
576 return null;
577 }
578
579 @Override
580 public NodeList getChildNodes()
581 {
582 return null;
583 }
584
585 @Override
586 public Node getFirstChild()
587 {
588 return null;
589 }
590
591 @Override
592 public Node getLastChild()
593 {
594 return null;
595 }
596
597 @Override
598 public Node getPreviousSibling()
599 {
600 return null;
601 }
602
603 @Override
604 public Node getNextSibling()
605 {
606 return null;
607 }
608
609 @Override
610 public NamedNodeMap getAttributes()
611 {
612 return null;
613 }
614
615 @Override
616 public Document getOwnerDocument()
617 {
618 return null;
619 }
620
621 @Override
622 public Node insertBefore(final Node newChild, final Node refChild) throws DOMException
623 {
624 return null;
625 }
626
627 @Override
628 public Node replaceChild(final Node newChild, final Node oldChild) throws DOMException
629 {
630 return null;
631 }
632
633 @Override
634 public Node removeChild(final Node oldChild) throws DOMException
635 {
636 return null;
637 }
638
639 @Override
640 public Node appendChild(final Node newChild) throws DOMException
641 {
642 return null;
643 }
644
645 @Override
646 public boolean hasChildNodes()
647 {
648 return false;
649 }
650
651 @Override
652 public Node cloneNode(final boolean deep)
653 {
654 return null;
655 }
656
657 @Override
658 public void normalize()
659 {
660 }
661
662 @Override
663 public boolean isSupported(final String feature, final String version)
664 {
665 return false;
666 }
667
668 @Override
669 public String getNamespaceURI()
670 {
671 return null;
672 }
673
674 @Override
675 public String getPrefix()
676 {
677 return null;
678 }
679
680 @Override
681 public void setPrefix(final String prefix) throws DOMException
682 {
683 }
684
685 @Override
686 public String getLocalName()
687 {
688 return null;
689 }
690
691 @Override
692 public boolean hasAttributes()
693 {
694 return false;
695 }
696
697 @Override
698 public String getBaseURI()
699 {
700 return null;
701 }
702
703 @Override
704 public short compareDocumentPosition(final Node other) throws DOMException
705 {
706 return 0;
707 }
708
709 @Override
710 public String getTextContent() throws DOMException
711 {
712 return null;
713 }
714
715 @Override
716 public void setTextContent(final String textContent) throws DOMException
717 {
718 }
719
720 @Override
721 public boolean isSameNode(final Node other)
722 {
723 return false;
724 }
725
726 @Override
727 public String lookupPrefix(final String namespaceURI)
728 {
729 return null;
730 }
731
732 @Override
733 public boolean isDefaultNamespace(final String namespaceURI)
734 {
735 return false;
736 }
737
738 @Override
739 public String lookupNamespaceURI(final String prefix)
740 {
741 return null;
742 }
743
744 @Override
745 public boolean isEqualNode(final Node arg)
746 {
747 return false;
748 }
749
750 @Override
751 public Object getFeature(final String feature, final String version)
752 {
753 return null;
754 }
755
756 @Override
757 public Object setUserData(final String key, final Object data, final UserDataHandler handler)
758 {
759 return null;
760 }
761
762 @Override
763 public Object getUserData(final String key)
764 {
765 return null;
766 }
767
768 };
769
770 @Override
771 public Node getNamedItem(final String name)
772 {
773 if (name.equals("name"))
774 {
775 return this.file;
776 }
777 return null;
778 }
779
780 @Override
781 public Node setNamedItem(final Node arg) throws DOMException
782 {
783 return null;
784 }
785
786 @Override
787 public Node removeNamedItem(final String name) throws DOMException
788 {
789 return null;
790 }
791
792 @Override
793 public Node item(final int index)
794 {
795 if (index == 0)
796 {
797 return this.file;
798 }
799 return null;
800 }
801
802 @Override
803 public int getLength()
804 {
805 return 1;
806 }
807
808 @Override
809 public Node getNamedItemNS(final String namespaceURI, final String localName) throws DOMException
810 {
811 return null;
812 }
813
814 @Override
815 public Node setNamedItemNS(final Node arg) throws DOMException
816 {
817 return null;
818 }
819
820 @Override
821 public Node removeNamedItemNS(final String namespaceURI, final String localName) throws DOMException
822 {
823 return null;
824 }
825
826 }
827
828 }