001: /*
002: * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
003: *
004: * Copyright 1997-2007 Sun Microsystems, Inc. All rights reserved.
005: *
006: * The contents of this file are subject to the terms of either the GNU
007: * General Public License Version 2 only ("GPL") or the Common
008: * Development and Distribution License("CDDL") (collectively, the
009: * "License"). You may not use this file except in compliance with the
010: * License. You can obtain a copy of the License at
011: * http://www.netbeans.org/cddl-gplv2.html
012: * or nbbuild/licenses/CDDL-GPL-2-CP. See the License for the
013: * specific language governing permissions and limitations under the
014: * License. When distributing the software, include this License Header
015: * Notice in each file and include the License file at
016: * nbbuild/licenses/CDDL-GPL-2-CP. Sun designates this
017: * particular file as subject to the "Classpath" exception as provided
018: * by Sun in the GPL Version 2 section of the License file that
019: * accompanied this code. If applicable, add the following below the
020: * License Header, with the fields enclosed by brackets [] replaced by
021: * your own identifying information:
022: * "Portions Copyrighted [year] [name of copyright owner]"
023: *
024: * Contributor(s):
025: *
026: * The Original Software is NetBeans. The Initial Developer of the Original
027: * Software is Sun Microsystems, Inc. Portions Copyright 1997-2006 Sun
028: * Microsystems, Inc. All Rights Reserved.
029: *
030: * If you wish your version of this file to be governed by only the CDDL
031: * or only the GPL Version 2, indicate your decision by adding
032: * "[Contributor] elects to include this software in this distribution
033: * under the [CDDL or GPL Version 2] license." If you do not indicate a
034: * single choice of license, a recipient has the option to distribute
035: * your version of this file under either the CDDL, the GPL Version 2 or
036: * to extend the choice of license to its licensees as provided above.
037: * However, if you add GPL Version 2 code and therefore, elected the GPL
038: * Version 2 license, then the option applies only if the new code is
039: * made subject to such option by the copyright holder.
040: */
041: /**
042: * This generated bean class Users
043: * matches the schema element '_users'.
044: *
045: * Generated on Mon Sep 27 16:53:12 PDT 2004
046: */package org.netbeans.modules.collab.channel.filesharing.msgbean;
047:
048: public class Users {
049: private java.util.List _User = new java.util.ArrayList(); // List<User>
050:
051: public Users() {
052: }
053:
054: // Deep copy
055: public Users(
056: org.netbeans.modules.collab.channel.filesharing.msgbean.Users source) {
057: for (java.util.Iterator it = source._User.iterator(); it
058: .hasNext();) {
059: _User
060: .add(new org.netbeans.modules.collab.channel.filesharing.msgbean.User(
061: (org.netbeans.modules.collab.channel.filesharing.msgbean.User) it
062: .next()));
063: }
064: }
065:
066: // This attribute is an array, possibly empty
067: public void setUser(
068: org.netbeans.modules.collab.channel.filesharing.msgbean.User[] value) {
069: if (value == null) {
070: value = new User[0];
071: }
072:
073: _User.clear();
074:
075: for (int i = 0; i < value.length; ++i) {
076: _User.add(value[i]);
077: }
078: }
079:
080: public void setUser(
081: int index,
082: org.netbeans.modules.collab.channel.filesharing.msgbean.User value) {
083: _User.set(index, value);
084: }
085:
086: public org.netbeans.modules.collab.channel.filesharing.msgbean.User[] getUser() {
087: User[] arr = new User[_User.size()];
088:
089: return (User[]) _User.toArray(arr);
090: }
091:
092: public java.util.List fetchUserList() {
093: return _User;
094: }
095:
096: public org.netbeans.modules.collab.channel.filesharing.msgbean.User getUser(
097: int index) {
098: return (User) _User.get(index);
099: }
100:
101: // Return the number of user
102: public int sizeUser() {
103: return _User.size();
104: }
105:
106: public int addUser(
107: org.netbeans.modules.collab.channel.filesharing.msgbean.User value) {
108: _User.add(value);
109:
110: return _User.size() - 1;
111: }
112:
113: // Search from the end looking for @param value, and then remove it.
114: public int removeUser(
115: org.netbeans.modules.collab.channel.filesharing.msgbean.User value) {
116: int pos = _User.indexOf(value);
117:
118: if (pos >= 0) {
119: _User.remove(pos);
120: }
121:
122: return pos;
123: }
124:
125: public void writeNode(java.io.Writer out, String nodeName,
126: String indent) throws java.io.IOException {
127: out.write(indent);
128: out.write("<");
129: out.write(nodeName);
130: out.write(">\n");
131:
132: String nextIndent = indent + " ";
133:
134: for (java.util.Iterator it = _User.iterator(); it.hasNext();) {
135: org.netbeans.modules.collab.channel.filesharing.msgbean.User element = (org.netbeans.modules.collab.channel.filesharing.msgbean.User) it
136: .next();
137:
138: if (element != null) {
139: element.writeNode(out, "user", nextIndent);
140: }
141: }
142:
143: out.write(indent);
144: out.write("</" + nodeName + ">\n");
145: }
146:
147: public void readNode(org.w3c.dom.Node node) {
148: org.w3c.dom.NodeList children = node.getChildNodes();
149:
150: for (int i = 0, size = children.getLength(); i < size; ++i) {
151: org.w3c.dom.Node childNode = children.item(i);
152: String childNodeName = ((childNode.getLocalName() == null) ? childNode
153: .getNodeName().intern()
154: : childNode.getLocalName().intern());
155: String childNodeValue = "";
156:
157: if (childNode.getFirstChild() != null) {
158: childNodeValue = childNode.getFirstChild()
159: .getNodeValue();
160: }
161:
162: if (childNodeName == "user") {
163: User aUser = new org.netbeans.modules.collab.channel.filesharing.msgbean.User();
164: aUser.readNode(childNode);
165: _User.add(aUser);
166: } else {
167: // Found extra unrecognized childNode
168: }
169: }
170: }
171:
172: public void changePropertyByName(String name, Object value) {
173: if (name == null) {
174: return;
175: }
176:
177: name = name.intern();
178:
179: if (name == "user") {
180: addUser((User) value);
181: } else if (name == "user[]") {
182: setUser((User[]) value);
183: } else {
184: throw new IllegalArgumentException(name
185: + " is not a valid property name for Users");
186: }
187: }
188:
189: public Object fetchPropertyByName(String name) {
190: if (name == "user[]") {
191: return getUser();
192: }
193:
194: throw new IllegalArgumentException(name
195: + " is not a valid property name for Users");
196: }
197:
198: // Return an array of all of the properties that are beans and are set.
199: public java.lang.Object[] childBeans(boolean recursive) {
200: java.util.List children = new java.util.LinkedList();
201: childBeans(recursive, children);
202:
203: java.lang.Object[] result = new java.lang.Object[children
204: .size()];
205:
206: return (java.lang.Object[]) children.toArray(result);
207: }
208:
209: // Put all child beans into the beans list.
210: public void childBeans(boolean recursive, java.util.List beans) {
211: for (java.util.Iterator it = _User.iterator(); it.hasNext();) {
212: org.netbeans.modules.collab.channel.filesharing.msgbean.User element = (org.netbeans.modules.collab.channel.filesharing.msgbean.User) it
213: .next();
214:
215: if (element != null) {
216: if (recursive) {
217: element.childBeans(true, beans);
218: }
219:
220: beans.add(element);
221: }
222: }
223: }
224:
225: public boolean equals(Object o) {
226: if (o == this ) {
227: return true;
228: }
229:
230: if (!(o instanceof org.netbeans.modules.collab.channel.filesharing.msgbean.Users)) {
231: return false;
232: }
233:
234: org.netbeans.modules.collab.channel.filesharing.msgbean.Users inst = (org.netbeans.modules.collab.channel.filesharing.msgbean.Users) o;
235:
236: if (sizeUser() != inst.sizeUser()) {
237: return false;
238: }
239:
240: // Compare every element.
241: for (java.util.Iterator it = _User.iterator(), it2 = inst._User
242: .iterator(); it.hasNext() && it2.hasNext();) {
243: org.netbeans.modules.collab.channel.filesharing.msgbean.User element = (org.netbeans.modules.collab.channel.filesharing.msgbean.User) it
244: .next();
245: org.netbeans.modules.collab.channel.filesharing.msgbean.User element2 = (org.netbeans.modules.collab.channel.filesharing.msgbean.User) it2
246: .next();
247:
248: if (!((element == null) ? (element2 == null) : element
249: .equals(element2))) {
250: return false;
251: }
252: }
253:
254: return true;
255: }
256:
257: public int hashCode() {
258: int result = 17;
259: result = (37 * result)
260: + ((_User == null) ? 0 : _User.hashCode());
261:
262: return result;
263: }
264: }
265:
266: /*
267: The following schema file has been used for generation:
268:
269: <?xml version="1.0" encoding="UTF-8"?>
270: <!--
271: Document : collab.xsd
272: Created on : May 21, 2004, 7:45 PM
273: Author : Ayub Khan
274: Description:
275: Purpose of the document follows.
276: -->
277: <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
278: targetNamespace="http://sun.com/ns/collab/dev/1_0/filesharing"
279: xmlns:c="http://sun.com/ns/collab/dev/1_0"
280: xmlns:ch="http://sun.com/ns/collab/dev/1_0/filesharing"
281: elementFormDefault="qaulified">
282:
283: <!-- collab element -->
284: <xsd:element name="c:collab" type="_collab">
285: </xsd:element>
286:
287: <xsd:complexType name="_collab">
288: <xsd:sequence>
289: <xsd:element name="version" type="xsd:string"
290: minOccurs="1" maxOccurs="1"/>
291: <xsd:choice maxOccurs="1">
292: <xsd:element name="ch:send-file" type="_send-file"
293: minOccurs="0" maxOccurs="1"/>
294: <xsd:element name="ch:file-changed" type="_file-changed"
295: minOccurs="0" maxOccurs="1"/>
296: <xsd:element name="ch:lock-region" type="_lock-region"
297: minOccurs="0" maxOccurs="1"/>
298: <xsd:element name="ch:unlock-region" type="_unlock-region"
299: minOccurs="0" maxOccurs="1"/>
300: <xsd:element name="ch:join-filesharing" type="_join-filesharing"
301: minOccurs="0" maxOccurs="1"/>
302: <xsd:element name="ch:pause-filesharing" type="_pause-filesharing"
303: minOccurs="0" maxOccurs="1"/>
304: <xsd:element name="ch:resume-filesharing" type="_resume-filesharing"
305: minOccurs="0" maxOccurs="1"/>
306: <xsd:element name="ch:leave-filesharing" type="_leave-filesharing"
307: minOccurs="0" maxOccurs="1"/>
308: <xsd:element name="ch:commands" type="_commands"
309: minOccurs="0" maxOccurs="1"/>
310: </xsd:choice>
311: </xsd:sequence>
312: </xsd:complexType>
313:
314: <!-- Schema for send-file -->
315: <xsd:complexType name="_send-file">
316: <xsd:sequence>
317: <xsd:element name="file-groups" type="_file-groups"
318: minOccurs="1" maxOccurs="1"/>
319: <xsd:element name="send-file-data" type="_send-file-data"
320: minOccurs="1" maxOccurs="unbounded"/>
321: </xsd:sequence>
322: </xsd:complexType>
323:
324: <!-- Schema for file-changed -->
325: <xsd:complexType name="_file-changed">
326: <xsd:sequence>
327: <xsd:element name="file-groups" type="_file-groups"
328: minOccurs="1" maxOccurs="1"/>
329: <xsd:element name="file-changed-data" type="_file-changed-data"
330: minOccurs="1" maxOccurs="unbounded"/>
331: </xsd:sequence>
332: </xsd:complexType>
333:
334: <!-- Schema for lock-region -->
335: <xsd:complexType name="_lock-region">
336: <xsd:sequence>
337: <xsd:element name="file-groups" type="_file-groups"
338: minOccurs="1" maxOccurs="1"/>
339: <xsd:element name="lock-region-data" type="_lock-region-data"
340: minOccurs="1" maxOccurs="unbounded"/>
341: </xsd:sequence>
342: </xsd:complexType>
343:
344: <!-- Schema for unlock-region -->
345: <xsd:complexType name="_unlock-region">
346: <xsd:sequence>
347: <xsd:element name="file-groups" type="_file-groups"
348: minOccurs="1" maxOccurs="1"/>
349: <xsd:element name="unlock-region-data" type="_unlock-region-data"
350: minOccurs="1" maxOccurs="unbounded"/>
351: </xsd:sequence>
352: </xsd:complexType>
353:
354: <!-- Schema for join filesharing -->
355: <xsd:complexType name="_join-filesharing">
356: <xsd:sequence>
357: <xsd:choice maxOccurs="1">
358: <xsd:element name="begin-join"
359: minOccurs="0" maxOccurs="1"/>
360: <xsd:element name="end-join"
361: minOccurs="0" maxOccurs="1"/>
362: </xsd:choice>
363: <xsd:element name="user" type="_user"
364: minOccurs="1" maxOccurs="1"/>
365: </xsd:sequence>
366: </xsd:complexType>
367:
368: <!-- Schema for pause filesharing -->
369: <xsd:complexType name="_pause-filesharing">
370: <xsd:sequence>
371: <xsd:element name="join-user" type="_join-user"
372: minOccurs="1" maxOccurs="1"/>
373: <xsd:element name="moderator" type="_moderator"
374: minOccurs="1" maxOccurs="1"/>
375: <xsd:element name="file-owners" type="_file-owners"
376: minOccurs="1" maxOccurs="1"/>
377: <xsd:element name="users" type="_users"
378: minOccurs="1" maxOccurs="1"/>
379: <xsd:element name="file-groups" type="_file-groups"
380: minOccurs="1" maxOccurs="1"/>
381: </xsd:sequence>
382: </xsd:complexType>
383:
384: <!-- Schema for resume filesharing -->
385: <xsd:complexType name="_resume-filesharing">
386: <xsd:sequence>
387: <xsd:element name="moderator" type="_moderator"
388: minOccurs="1" maxOccurs="1"/>
389: </xsd:sequence>
390: </xsd:complexType>
391:
392: <!-- Schema for pause filesharing -->
393: <xsd:complexType name="_leave-filesharing">
394: <xsd:sequence>
395: <xsd:element name="user" type="_user"
396: minOccurs="1" maxOccurs="1"/>
397: <xsd:element name="new-moderator" type="_moderator"
398: minOccurs="1" maxOccurs="1"/>
399: <xsd:element name="new-file-owner" type="_new-file-owner"
400: minOccurs="1" maxOccurs="1"/>
401: <xsd:element name="file-groups" type="_file-groups"
402: minOccurs="1" maxOccurs="1"/>
403: </xsd:sequence>
404: </xsd:complexType>
405:
406: <!-- Schema for commands -->
407: <xsd:complexType name="_commands">
408: <xsd:sequence>
409: <xsd:choice maxOccurs="1">
410: <xsd:element name="filesystem-command" type="_filesystem-command"
411: minOccurs="1" maxOccurs="1"/>
412: </xsd:choice>
413: </xsd:sequence>
414: </xsd:complexType>
415:
416: <!-- ===================================================== -->
417:
418: <xsd:complexType name="_file-groups">
419: <xsd:sequence>
420: <xsd:element name="file-group" type="_file-group"
421: minOccurs="1" maxOccurs="unbounded"/>
422: </xsd:sequence>
423: </xsd:complexType>
424:
425: <xsd:complexType name="_file-group">
426: <xsd:sequence>
427: <xsd:element name="file-group-name" type="xsd:string"
428: minOccurs="1" maxOccurs="1"/>
429: <xsd:element name="user" type="_user"
430: minOccurs="1" maxOccurs="1"/>
431: <!-- file-name contains full path -->
432: <xsd:element name="file-name" type="xsd:string"
433: minOccurs="1" maxOccurs="unbounded"/>
434: </xsd:sequence>
435: </xsd:complexType>
436:
437: <xsd:complexType name="_send-file-data">
438: <xsd:sequence>
439: <xsd:element name="file-data" type="_file-data"
440: minOccurs="1" maxOccurs="1"/>
441: <xsd:element name="choose-line-region-function" type="xsd:boolean"
442: minOccurs="1" maxOccurs="1"/>
443: <xsd:choice maxOccurs="1">
444: <xsd:element name="line-region-function" type="_line-region-function"
445: minOccurs="1" maxOccurs="1"/>
446: <xsd:element name="line-region" type="_line-region"
447: minOccurs="1" maxOccurs="unbounded"/>
448: </xsd:choice>
449: <xsd:element name="content" type="_content"
450: minOccurs="1" maxOccurs="1"/>
451: </xsd:sequence>
452: </xsd:complexType>
453:
454: <xsd:complexType name="_line-region-function">
455: <xsd:sequence>
456: <xsd:element name="funtion-name" type="xsd:string"
457: minOccurs="1" maxOccurs="1"/>
458: <xsd:element name="arguments" type="xsd:string"
459: minOccurs="1" maxOccurs="unbounded"/>
460: </xsd:sequence>
461: </xsd:complexType>
462:
463: <xsd:complexType name="_file-data">
464: <xsd:sequence>
465: <!-- file-name contains full path -->
466: <xsd:element name="file-name" type="xsd:string"
467: minOccurs="1" maxOccurs="1"/>
468: <xsd:element name="content-type" type="xsd:string"
469: minOccurs="1" maxOccurs="1"/>
470: <xsd:element name="description" type="xsd:string"
471: minOccurs="0" maxOccurs="1"/>
472: </xsd:sequence>
473: </xsd:complexType>
474:
475: <!-- Schema for file-changed -->
476: <xsd:complexType name="_file-changed-data">
477: <xsd:sequence>
478: <!-- file-name contains full path -->
479: <xsd:element name="file-name" type="xsd:string"
480: minOccurs="1" maxOccurs="1"/>
481: <xsd:element name="digest" type="xsd:string"
482: minOccurs="1" maxOccurs="1"/>
483: <xsd:element name="region-changed" type="_region-changed"
484: minOccurs="1" maxOccurs="unbounded"/>
485: </xsd:sequence>
486: </xsd:complexType>
487:
488: <!-- Schema for lock-region -->
489: <xsd:complexType name="_lock-region-data">
490: <xsd:sequence>
491: <!-- file-name contains full path -->
492: <xsd:element name="file-name" type="xsd:string"
493: minOccurs="1" maxOccurs="1"/>
494: <xsd:element name="line-region" type="_line-region"
495: minOccurs="1" maxOccurs="unbounded"/>
496: <xsd:choice maxOccurs="1">
497: <xsd:element name="text-region" type="_text-region"
498: minOccurs="1" maxOccurs="1"/>
499: <xsd:element name="java-region" type="_java-region"
500: minOccurs="1" maxOccurs="1"/>
501: </xsd:choice>
502: <xsd:element name="content" type="_content"
503: minOccurs="1" maxOccurs="1"/>
504: </xsd:sequence>
505: </xsd:complexType>
506:
507: <!-- Schema for unlock-region -->
508: <xsd:complexType name="_unlock-region-data">
509: <xsd:sequence>
510: <!-- file-name contains full path -->
511: <xsd:element name="file-name" type="xsd:string"
512: minOccurs="1" maxOccurs="1"/>
513: <xsd:element name="line-region" type="_line-region"
514: minOccurs="1" maxOccurs="unbounded"/>
515: <xsd:choice maxOccurs="1">
516: <xsd:element name="text-region" type="_text-region"
517: minOccurs="1" maxOccurs="1"/>
518: <xsd:element name="java-region" type="_java-region"
519: minOccurs="1" maxOccurs="1"/>
520: </xsd:choice>
521: <xsd:element name="content" type="_content"
522: minOccurs="1" maxOccurs="1"/>
523: </xsd:sequence>
524: </xsd:complexType>
525:
526: <!-- user elements -->
527: <xsd:complexType name="_moderator">
528: <xsd:sequence>
529: <xsd:element name="users" type="_users"
530: minOccurs="1" maxOccurs="1"/>
531: </xsd:sequence>
532: </xsd:complexType>
533:
534: <xsd:complexType name="_join-user">
535: <xsd:sequence>
536: <xsd:element name="user" type="_user"
537: minOccurs="1" maxOccurs="1"/>
538: </xsd:sequence>
539: </xsd:complexType>
540:
541: <xsd:complexType name="_file-owners">
542: <xsd:sequence>
543: <xsd:element name="users" type="_users"
544: minOccurs="1" maxOccurs="1"/>
545: </xsd:sequence>
546: </xsd:complexType>
547:
548: <xsd:complexType name="_new-file-owner">
549: <xsd:sequence>
550: <xsd:element name="users" type="_users"
551: minOccurs="1" maxOccurs="1"/>
552: </xsd:sequence>
553: </xsd:complexType>
554:
555: <xsd:complexType name="_users">
556: <xsd:sequence>
557: <xsd:element name="user" type="_user"
558: minOccurs="0" maxOccurs="unbounded"/>
559: </xsd:sequence>
560: </xsd:complexType>
561:
562: <xsd:complexType name="_user">
563: <xsd:sequence>
564: <xsd:element name="id" type="xsd:string"
565: minOccurs="1" maxOccurs="1"/>
566: <xsd:element name="name" type="xsd:string"
567: minOccurs="0" maxOccurs="1"/>
568: <xsd:element name="description" type="xsd:string"
569: minOccurs="0" maxOccurs="1"/>
570: </xsd:sequence>
571: </xsd:complexType>
572:
573: <!-- filesystem command schema -->
574: <xsd:complexType name="_filesystem-command">
575: <xsd:sequence>
576: <xsd:choice maxOccurs="1">
577: <!-- file commands -->
578: <xsd:element name="delete-file" type="_delete-file"
579: minOccurs="1" maxOccurs="1"/>
580: </xsd:choice>
581: </xsd:sequence>
582: </xsd:complexType>
583:
584: <xsd:complexType name="_delete-file">
585: <xsd:sequence>
586: <!-- file-name contains full path -->
587: <xsd:element name="file-name" type="xsd:string"
588: minOccurs="1" maxOccurs="1"/>
589: </xsd:sequence>
590: </xsd:complexType>
591:
592: <!-- ===================================================== -->
593:
594: <xsd:complexType name="_region-changed">
595: <xsd:sequence>
596: <xsd:choice maxOccurs="1">
597: <xsd:element name="text-region-changed" type="_text-region-changed"
598: minOccurs="1" maxOccurs="1"/>
599: <xsd:element name="java-region-changed" type="_java-region-changed"
600: minOccurs="1" maxOccurs="1"/>
601: <xsd:element name="line-region-changed" type="_line-region-changed"
602: minOccurs="1" maxOccurs="1"/>
603: </xsd:choice>
604: </xsd:sequence>
605: </xsd:complexType>
606:
607: <xsd:complexType name="_text-region-changed">
608: <xsd:sequence>
609: <xsd:element name="text-region" type="_text-region"
610: minOccurs="1" maxOccurs="1"/>
611: <xsd:element name="text-change" type="_text-change"
612: minOccurs="1" maxOccurs="1"/>
613: </xsd:sequence>
614: </xsd:complexType>
615:
616: <xsd:complexType name="_java-region-changed">
617: <xsd:sequence>
618: <xsd:element name="java-region" type="_java-region"
619: minOccurs="1" maxOccurs="1"/>
620: <xsd:element name="java-change" type="_java-change"
621: minOccurs="1" maxOccurs="1"/>
622: </xsd:sequence>
623: </xsd:complexType>
624:
625: <xsd:complexType name="_line-region-changed">
626: <xsd:sequence>
627: <xsd:element name="line-region" type="_line-region"
628: minOccurs="1" maxOccurs="1"/>
629: <xsd:element name="line-change" type="_line-change"
630: minOccurs="1" maxOccurs="1"/>
631: </xsd:sequence>
632: </xsd:complexType>
633:
634: <xsd:complexType name="_region" abstract="true">
635: <xsd:sequence>
636: <xsd:element name="region-name" type="xsd:string"
637: minOccurs="1" maxOccurs="1">
638: </xsd:element>
639: </xsd:sequence>
640: </xsd:complexType>
641:
642: <xsd:complexType name="_change" abstract="true"/>
643:
644: <xsd:complexType name="_content">
645: <xsd:sequence>
646: <xsd:element name="encoding" type="xsd:string"
647: minOccurs="1" maxOccurs="1">
648: </xsd:element>
649: <xsd:element name="digest" type="xsd:string"
650: minOccurs="1" maxOccurs="1">
651: </xsd:element>
652: <xsd:element name="data" type="xsd:string"
653: minOccurs="1" maxOccurs="1">
654: </xsd:element>
655: </xsd:sequence>
656: </xsd:complexType>
657:
658:
659:
660: <!-- ===================================================== -->
661: <!-- ================ Text Region =================== -->
662: <!-- ===================================================== -->
663:
664: <xsd:complexType name="_text-region">
665: <xsd:complexContent>
666: <xsd:extension base="_region">
667: <xsd:sequence>
668: <xsd:element name="begin-offset" type="xsd:integer"
669: minOccurs="1" maxOccurs="1">
670: </xsd:element>
671: <xsd:element name="length" type="xsd:integer"
672: minOccurs="1" maxOccurs="1">
673: </xsd:element>
674: </xsd:sequence>
675: </xsd:extension>
676: </xsd:complexContent>
677: </xsd:complexType>
678:
679: <xsd:complexType name="_line-range">
680: <xsd:sequence>
681: <xsd:element name="from-line" type="xsd:integer"
682: minOccurs="1" maxOccurs="1"/>
683: <xsd:element name="to-line" type="xsd:integer"
684: minOccurs="1" maxOccurs="1"/>
685: </xsd:sequence>
686: </xsd:complexType>
687:
688: <xsd:complexType name="_offset-range">
689: <xsd:sequence>
690: <xsd:element name="begin-offset" type="xsd:integer"
691: minOccurs="1" maxOccurs="1">
692: </xsd:element>
693: <xsd:element name="length" type="xsd:integer"
694: minOccurs="1" maxOccurs="1">
695: </xsd:element>
696: </xsd:sequence>
697: </xsd:complexType>
698:
699: <xsd:complexType name="_text-change">
700: <xsd:complexContent>
701: <xsd:extension base="_change">
702: <xsd:choice maxOccurs="1">
703: <xsd:element name="change-texts" type="_change-texts"
704: minOccurs="1" maxOccurs="1"/>
705: <xsd:element name="content" type="_content"
706: minOccurs="1" maxOccurs="1"/>
707: </xsd:choice>
708: </xsd:extension>
709: </xsd:complexContent>
710: </xsd:complexType>
711:
712:
713:
714: <!-- ===================================================== -->
715: <!-- ================ Java Region =================== -->
716: <!-- ===================================================== -->
717: <xsd:complexType name="_java-region">
718: <xsd:complexContent>
719: <xsd:extension base="_region">
720: <xsd:sequence>
721: <xsd:element name="begin-offset" type="xsd:integer"
722: minOccurs="1" maxOccurs="1">
723: </xsd:element>
724: <xsd:element name="length" type="xsd:integer"
725: minOccurs="1" maxOccurs="1">
726: </xsd:element>
727: </xsd:sequence>
728: </xsd:extension>
729: </xsd:complexContent>
730: </xsd:complexType>
731:
732: <xsd:complexType name="_java-change">
733: <xsd:complexContent>
734: <xsd:extension base="_change">
735: <xsd:sequence>
736: <xsd:choice maxOccurs="1">
737: <xsd:element name="change-texts" type="_change-texts"
738: minOccurs="1" maxOccurs="1"/>
739: <xsd:element name="content" type="_content"
740: minOccurs="1" maxOccurs="1"/>
741: </xsd:choice>
742: </xsd:sequence>
743: </xsd:extension>
744: </xsd:complexContent>
745: </xsd:complexType>
746:
747:
748:
749: <!-- ===================================================== -->
750: <!-- ================ Line Region =================== -->
751: <!-- ===================================================== -->
752: <xsd:complexType name="_line-region">
753: <xsd:complexContent>
754: <xsd:extension base="_region">
755: </xsd:extension>
756: </xsd:complexContent>
757: </xsd:complexType>
758:
759: <xsd:complexType name="_line-change">
760: <xsd:complexContent>
761: <xsd:extension base="_change">
762: <xsd:sequence>
763: <xsd:choice maxOccurs="1">
764: <xsd:element name="content" type="_content"
765: minOccurs="1" maxOccurs="1"/>
766: </xsd:choice>
767: </xsd:sequence>
768: </xsd:extension>
769: </xsd:complexContent>
770: </xsd:complexType>
771:
772:
773:
774: <!-- ===================================================== -->
775: <!-- ================Common Region Type=================== -->
776: <!-- ===================================================== -->
777:
778: <xsd:complexType name="_change-texts">
779: <xsd:sequence>
780: <xsd:element name="remove-texts" type="_remove-texts"
781: minOccurs="1" maxOccurs="1"/>
782: <xsd:element name="insert-texts" type="_insert-texts"
783: minOccurs="1" maxOccurs="1"/>
784: </xsd:sequence>
785: </xsd:complexType>
786:
787: <xsd:complexType name="_remove-texts">
788: <xsd:sequence>
789: <xsd:element name="remove-text" type="_remove-text"
790: minOccurs="1" maxOccurs="unbounded"/>
791: </xsd:sequence>
792: </xsd:complexType>
793:
794: <xsd:complexType name="_insert-texts">
795: <xsd:sequence>
796: <xsd:element name="insert-text" type="_insert-text"
797: minOccurs="1" maxOccurs="unbounded"/>
798: </xsd:sequence>
799: </xsd:complexType>
800:
801: <xsd:complexType name="_remove-text">
802: <xsd:sequence>
803: <xsd:element name="offset" type="xsd:integer"
804: minOccurs="1" maxOccurs="1"/>
805: </xsd:sequence>
806: </xsd:complexType>
807:
808: <xsd:complexType name="_insert-text">
809: <xsd:sequence>
810: <xsd:element name="offset" type="xsd:integer"
811: minOccurs="1" maxOccurs="1"/>
812: <xsd:element name="content" type="_content"
813: minOccurs="1" maxOccurs="1"/>
814: </xsd:sequence>
815: </xsd:complexType>
816:
817: </xsd:schema>
818:
819: */
|