You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-commits@lucene.apache.org by si...@apache.org on 2006/12/13 13:40:04 UTC
svn commit: r486627 [6/9] - in
/lucene/java/trunk/contrib/gdata-server/src/gom: java/org/ java/org/apache/
java/org/apache/lucene/ java/org/apache/lucene/gdata/
java/org/apache/lucene/gdata/gom/ java/org/apache/lucene/gdata/gom/core/
java/org/apache/lu...
Added: lucene/java/trunk/contrib/gdata-server/src/gom/java/org/apache/lucene/gdata/gom/core/extension/GOMExtensionFactory.java
URL: http://svn.apache.org/viewvc/lucene/java/trunk/contrib/gdata-server/src/gom/java/org/apache/lucene/gdata/gom/core/extension/GOMExtensionFactory.java?view=auto&rev=486627
==============================================================================
--- lucene/java/trunk/contrib/gdata-server/src/gom/java/org/apache/lucene/gdata/gom/core/extension/GOMExtensionFactory.java (added)
+++ lucene/java/trunk/contrib/gdata-server/src/gom/java/org/apache/lucene/gdata/gom/core/extension/GOMExtensionFactory.java Wed Dec 13 04:39:54 2006
@@ -0,0 +1,35 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.lucene.gdata.gom.core.extension;
+
+import java.util.List;
+
+import javax.xml.namespace.QName;
+
+import org.apache.lucene.gdata.gom.GOMExtension;
+import org.apache.lucene.gdata.gom.GOMNamespace;
+
+/**
+ * @author Simon Willnauer
+ *
+ */
+public interface GOMExtensionFactory {
+
+ public abstract List<GOMNamespace> getNamespaces();
+
+ public abstract GOMExtension canHandleExtensionElement(QName name);
+}
Added: lucene/java/trunk/contrib/gdata-server/src/gom/java/org/apache/lucene/gdata/gom/core/utils/AtomParserUtils.java
URL: http://svn.apache.org/viewvc/lucene/java/trunk/contrib/gdata-server/src/gom/java/org/apache/lucene/gdata/gom/core/utils/AtomParserUtils.java?view=auto&rev=486627
==============================================================================
--- lucene/java/trunk/contrib/gdata-server/src/gom/java/org/apache/lucene/gdata/gom/core/utils/AtomParserUtils.java (added)
+++ lucene/java/trunk/contrib/gdata-server/src/gom/java/org/apache/lucene/gdata/gom/core/utils/AtomParserUtils.java Wed Dec 13 04:39:54 2006
@@ -0,0 +1,174 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.lucene.gdata.gom.core.utils;
+
+import java.net.URI;
+import java.net.URISyntaxException;
+import java.util.regex.Pattern;
+
+import org.apache.lucene.gdata.gom.AtomMediaType;
+import org.apache.lucene.gdata.gom.GOMLink;
+
+/**
+ * @author Simon Willnauer
+ *
+ */
+public class AtomParserUtils {
+ private static final Pattern ATOM_MEDIA_TYPE_PATTERN = Pattern
+ .compile(".+/.+");
+
+ /**
+ * Replaces all xml character with the corresponding entity.
+ *
+ * <ul>
+ * <li><!ENTITY lt "&#38;#60;"></li>
+ * <li><!ENTITY gt "&#62;"></li>
+ * <li><!ENTITY amp "&#38;#38;"></li>
+ * <li><!ENTITY apos "&#39;"></li>
+ * <li><!ENTITY quot "&#34;"></li>
+ * </ul>
+ *
+ * see <a
+ * href="http://www.w3.org/TR/2006/REC-xml-20060816/#intern-replacement">W3C
+ * specification</a>
+ *
+ * @param aString -
+ * a string may container xml characters like '<'
+ * @return the input string with escaped xml characters
+ */
+ public static String escapeXMLCharacter(String aString) {
+ StringBuilder builder = new StringBuilder();
+ char[] cs = aString.toCharArray();
+ for (int i = 0; i < cs.length; i++) {
+ switch (cs[i]) {
+ case '<':
+ builder.append("<");
+ break;
+ case '>':
+ builder.append(">");
+ break;
+ case '"':
+ builder.append(""");
+ break;
+ case '\'':
+ builder.append("'");
+ break;
+ case '&':
+ builder.append("&");
+ break;
+ case '\0':
+ // this breaks some xml serializer like soap serializer -->
+ // remove it
+ break;
+ default:
+ builder.append(cs[i]);
+ }
+ }
+
+ return builder.toString();
+
+ }
+
+ /**
+ * @param aMediaType
+ * @return
+ */
+ public static boolean isAtomMediaType(String aMediaType) {
+ return (aMediaType == null || aMediaType.length() < 3) ? false
+ : ATOM_MEDIA_TYPE_PATTERN.matcher(aMediaType).matches();
+ }
+
+ /**
+ * @param aMediaType
+ * @return
+ */
+ public static AtomMediaType getAtomMediaType(String aMediaType) {
+ if (aMediaType == null || !isAtomMediaType(aMediaType))
+ throw new IllegalArgumentException(
+ "aMediaType must be a media type and not be null ");
+ if (aMediaType.endsWith("+xml") || aMediaType.endsWith("/xml"))
+ return AtomMediaType.XML;
+ if (aMediaType.startsWith("text/"))
+ return AtomMediaType.TEXT;
+ return AtomMediaType.BINARY;
+ }
+
+ /**
+ * @param xmlBase
+ * @param atomUri
+ * @return
+ * @throws URISyntaxException
+ */
+ public static String getAbsolutAtomURI(String xmlBase, String atomUri)
+ throws URISyntaxException {
+ if (atomUri == null)
+ throw new IllegalArgumentException("atomUri must not be null");
+ if (atomUri.startsWith("www."))
+ atomUri = "http://" + atomUri;
+ URI aUri = new URI(atomUri);
+
+ if (xmlBase == null || xmlBase.length() == 0) {
+ if (!aUri.isAbsolute()) {
+ throw new URISyntaxException(atomUri,
+ " -- no xml:base specified atom uri must be an absolute url");
+ }
+ }
+
+ return atomUri;
+ }
+
+ /**
+ * Compares two links with rel attribute "alternate" Checks if href and type
+ * are equal
+ *
+ * @param left -
+ * left link to compare
+ * @param right -
+ * right link to compare
+ * @return <code>true</code> if and only if href and type are equal,
+ * otherwise <code>false</code>
+ */
+ public static boolean compareAlternateLinks(GOMLink left, GOMLink right) {
+ if ((left.getType() == null) ^ right.getType() == null
+ || (left.getType() == null && right.getType() == null)) {
+ return false;
+ } else {
+ if (!left.getType().equalsIgnoreCase(right.getType()))
+ return false;
+ }
+
+ if (((left.getHrefLang() == null) ^ right.getHrefLang() == null)
+ || (left.getHrefLang() == null && right.getHrefLang() == null)) {
+ return false;
+ } else {
+ if (!left.getHrefLang().equalsIgnoreCase(right.getHrefLang()))
+ return false;
+ }
+ return true;
+
+ }
+
+ public static void main(String[] args) {
+ // String s = new String(
+ // "<!ENTITY lt \"&#60;\"><!ENTITY gt \">\"><!ENTITY amp
+ // \"&#38;\"><!ENTITY apos \"'\"><!ENTITY quot \""\">");
+ // System.out.println(escapeXMLCharacter(s));
+ //
+ System.out.println(isAtomMediaType("t/h"));
+ }
+
+}
Added: lucene/java/trunk/contrib/gdata-server/src/gom/java/org/apache/lucene/gdata/gom/core/utils/GOMUtils.java
URL: http://svn.apache.org/viewvc/lucene/java/trunk/contrib/gdata-server/src/gom/java/org/apache/lucene/gdata/gom/core/utils/GOMUtils.java?view=auto&rev=486627
==============================================================================
--- lucene/java/trunk/contrib/gdata-server/src/gom/java/org/apache/lucene/gdata/gom/core/utils/GOMUtils.java (added)
+++ lucene/java/trunk/contrib/gdata-server/src/gom/java/org/apache/lucene/gdata/gom/core/utils/GOMUtils.java Wed Dec 13 04:39:54 2006
@@ -0,0 +1,424 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.lucene.gdata.gom.core.utils;
+
+import java.math.BigDecimal;
+import java.util.Calendar;
+import java.util.List;
+import java.util.TimeZone;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
+
+import org.apache.lucene.gdata.gom.ContentType;
+import org.apache.lucene.gdata.gom.GOMAttribute;
+import org.apache.lucene.gdata.gom.GOMLink;
+import org.apache.lucene.gdata.gom.GOMNamespace;
+import org.apache.lucene.gdata.gom.core.GDataParseException;
+import org.apache.lucene.gdata.gom.core.GOMAttributeImpl;
+
+/**
+ * @author Simon Willnauer
+ *
+ */
+public class GOMUtils {
+
+ /*
+ * Possible values 2003-12-13T18:30:02Z 2003-12-13T18:30:02.25Z
+ * 2003-12-13T18:30:02+01:00 2003-12-13T18:30:02.25+01:00
+ */
+ private static final Pattern RFC3339_DATE_PATTERN = Pattern.compile(
+ "(\\d\\d\\d\\d)" + // #YEAR
+ "\\-(\\d\\d)" + // #MONTH
+ "\\-(\\d\\d)[Tt]" + // #DAY
+ "(\\d\\d)" + // #HOURS
+ ":(\\d\\d)" + // #MINUTES
+ ":(\\d\\d)" + // #SECONDS
+ "(\\.(\\d+))?" + // #MILLISorless
+ "([Zz]|((\\+|\\-)(\\d\\d):(\\d\\d)))?"// #TIMEZONESHIFT
+ , Pattern.COMMENTS);
+
+ static final String ATTRIBUTE_TYPE = "type";
+
+ static final GOMAttribute TEXT_TYPE;
+
+ static final GOMAttribute HTML_TYPE;
+
+ static final GOMAttribute XHTML_TYPE;
+
+ static final GOMAttribute TEXT_TYPE_DEFAULT_NS;
+
+ static final GOMAttribute HTML_TYPE_DEFAULT_NS;
+
+ static final GOMAttribute XHTML_TYPE_DEFAULT_NS;
+
+ static {
+ TEXT_TYPE = new GOMAttributeImpl(GOMNamespace.ATOM_NS_URI,
+ GOMNamespace.ATOM_NS_PREFIX, ATTRIBUTE_TYPE, ContentType.TEXT
+ .name().toLowerCase());
+ HTML_TYPE = new GOMAttributeImpl(GOMNamespace.ATOM_NS_URI,
+ GOMNamespace.ATOM_NS_PREFIX, ATTRIBUTE_TYPE, ContentType.HTML
+ .name().toLowerCase());
+ XHTML_TYPE = new GOMAttributeImpl(GOMNamespace.ATOM_NS_URI,
+ GOMNamespace.ATOM_NS_PREFIX, ATTRIBUTE_TYPE, ContentType.XHTML
+ .name().toLowerCase());
+
+ TEXT_TYPE_DEFAULT_NS = new GOMAttributeImpl(ATTRIBUTE_TYPE,
+ ContentType.TEXT.name().toLowerCase());
+ HTML_TYPE_DEFAULT_NS = new GOMAttributeImpl(ATTRIBUTE_TYPE,
+ ContentType.HTML.name().toLowerCase());
+ XHTML_TYPE_DEFAULT_NS = new GOMAttributeImpl(ATTRIBUTE_TYPE,
+ ContentType.XHTML.name().toLowerCase());
+
+ }
+
+ /**
+ * @param type
+ * @return
+ */
+ public static GOMAttribute getAttributeByContentType(ContentType type) {
+ switch (type) {
+ case HTML:
+ return HTML_TYPE;
+ case XHTML:
+ return XHTML_TYPE;
+
+ default:
+ return TEXT_TYPE;
+ }
+
+ }
+
+ /**
+ * @param type
+ * @return
+ */
+ public static GOMAttribute getAttributeByContentTypeDefaultNs(
+ ContentType type) {
+ if (type == null)
+ return TEXT_TYPE_DEFAULT_NS;
+ switch (type) {
+ case HTML:
+ return HTML_TYPE_DEFAULT_NS;
+ case XHTML:
+ return XHTML_TYPE_DEFAULT_NS;
+
+ default:
+ return TEXT_TYPE_DEFAULT_NS;
+ }
+
+ }
+
+ /**
+ * Builds a atom namespace attribute
+ *
+ * @param aValue
+ * attribute value
+ * @param aName
+ * attribute name
+ * @return a GOMAttribute
+ */
+ public static GOMAttribute buildAtomAttribute(String aValue, String aName) {
+ return new GOMAttributeImpl(GOMNamespace.ATOM_NS_URI,
+ GOMNamespace.ATOM_NS_PREFIX, aName, aValue);
+ }
+
+ /**
+ * @param aValue
+ * @param aName
+ * @return
+ */
+ public static GOMAttribute buildDefaultNamespaceAttribute(String aValue,
+ String aName) {
+ return new GOMAttributeImpl(aName, aValue);
+ }
+
+ /**
+ * @param aValue
+ * @param aName
+ * @return
+ */
+ public static GOMAttribute buildXMLNamespaceAttribute(String aValue,
+ String aName) {
+ return new GOMAttributeImpl(GOMNamespace.XML_NS_URI,
+ GOMNamespace.XML_NS_PREFIX, aName, aValue);
+ }
+
+ /**
+ * @param aString
+ * @return
+ */
+ public static boolean isRfc3339DateFormat(String aString) {
+ Matcher aMatcher = RFC3339_DATE_PATTERN.matcher(aString);
+ return aMatcher.matches();
+ }
+
+ /**
+ * @param aString
+ * @return
+ */
+ public static long parseRfc3339DateFormat(String aString) {
+ if (aString == null)
+ throw new IllegalArgumentException(
+ "Date-Time String must not be null");
+ Matcher aMatcher = RFC3339_DATE_PATTERN.matcher(aString);
+
+ if (!aMatcher.matches()) {
+ throw new GDataParseException(
+ "Invalid RFC3339 date / time pattern -- " + aString);
+ }
+ int grCount = aMatcher.groupCount();
+ if (grCount > 13)
+ throw new GDataParseException(
+ "Invalid RFC3339 date / time pattern -- " + aString);
+
+ Integer timeZoneShift = null;
+ Calendar dateTime = null;
+ try {
+
+ if (aMatcher.group(9) == null) {
+ // skip time zone
+ } else if (aMatcher.group(9).equalsIgnoreCase("Z")) {
+ timeZoneShift = new Integer(0);
+ } else {
+ timeZoneShift = new Integer((Integer
+ .valueOf(aMatcher.group(12)) * 60 + Integer
+ .valueOf(aMatcher.group(13))));
+ if (aMatcher.group(11).equals("-")) {
+ timeZoneShift = new Integer(-timeZoneShift.intValue());
+ }
+ }
+
+ dateTime = Calendar.getInstance(TimeZone.getTimeZone("GMT"));
+ ;
+ dateTime.clear();
+ dateTime.set(Integer.valueOf(aMatcher.group(1)), Integer
+ .valueOf(aMatcher.group(2)) - 1, Integer.valueOf(aMatcher
+ .group(3)), Integer.valueOf(aMatcher.group(4)), Integer
+ .valueOf(aMatcher.group(5)), Integer.valueOf(aMatcher
+ .group(6)));
+ // seconds with milliseconds
+ if (aMatcher.group(8) != null && aMatcher.group(8).length() > 0) {
+
+ dateTime.set(Calendar.MILLISECOND, new BigDecimal("0."/*
+ * use
+ * big
+ * dec
+ * this
+ * could
+ * be
+ * big!!
+ */
+ + aMatcher.group(8)).movePointRight(3).intValue());
+ }
+ } catch (NumberFormatException e) {
+ throw new GDataParseException(
+ "Invalid RFC3339 date / time pattern -- " + aString, e);
+ }
+
+ long retVal = dateTime.getTimeInMillis();
+ if (timeZoneShift != null) {
+ retVal -= timeZoneShift.intValue() * 60000;
+ }
+
+ return retVal;
+ }
+
+ /**
+ * @param aMillisecondLong
+ * @return
+ */
+ public static String buildRfc3339DateFormat(long aMillisecondLong) {
+ Calendar instance = Calendar.getInstance(TimeZone.getTimeZone("GMT"));
+ instance.setTimeInMillis(aMillisecondLong);
+
+ StringBuilder builder = new StringBuilder();
+ // 2003-12-13T18:30:02.25+01:00
+ int time = 0;
+ time = instance.get(Calendar.YEAR);
+ if (time < 1000)
+ builder.append("0");
+ if (time < 100)
+ builder.append("0");
+ if (time < 10)
+ builder.append("0");
+ builder.append(time);
+ builder.append('-');
+ time = instance.get(Calendar.MONTH);
+ if (time < 10)
+ builder.append(0);
+ builder.append(time);
+ builder.append('-');
+ time = instance.get(Calendar.DAY_OF_MONTH);
+ if (time < 10)
+ builder.append(0);
+ builder.append(time);
+ builder.append('T');
+ time = instance.get(Calendar.HOUR_OF_DAY);
+ if (time < 10)
+ builder.append(0);
+ builder.append(time);
+ builder.append(':');
+ time = instance.get(Calendar.MINUTE);
+ if (time < 10)
+ builder.append(0);
+ builder.append(time);
+ builder.append(':');
+ time = instance.get(Calendar.SECOND);
+ if (time < 10)
+ builder.append(0);
+ builder.append(time);
+ builder.append('.');
+ builder.append(instance.get(Calendar.MILLISECOND));
+ // this is always GMT offset -> 0
+ builder.append('Z');
+
+ return builder.toString();
+ }
+
+ /**
+ * @param aMillisecondLong
+ * @return
+ */
+ public static String buildRfc822Date(long aMillisecondLong) {
+ /*
+ * Rather implement it for a special case as use SDF. SDF is very
+ * expensive to create and not thread safe so it should be synchronized
+ * of pooled
+ */
+ Calendar instance = Calendar.getInstance(TimeZone.getTimeZone("GMT"));
+ instance.setTimeInMillis(aMillisecondLong);
+
+ StringBuilder builder = new StringBuilder();
+ // Sun, 06 Aug 2006 00:53:49 +0000
+ // EEE, dd MMM yyyy HH:mm:ss Z
+
+ switch (instance.get(Calendar.DAY_OF_WEEK)) {
+ case Calendar.SUNDAY:
+ builder.append("Sun");
+ break;
+ case Calendar.MONDAY:
+ builder.append("Mon");
+ break;
+ case Calendar.TUESDAY:
+ builder.append("Tue");
+ break;
+ case Calendar.WEDNESDAY:
+ builder.append("Wed");
+ break;
+ case Calendar.THURSDAY:
+ builder.append("Thu");
+ break;
+ case Calendar.FRIDAY:
+ builder.append("Fri");
+ break;
+ case Calendar.SATURDAY:
+ builder.append("Sat");
+ break;
+ default:
+ break;
+ }
+ builder.append(',');
+ builder.append(' ');
+
+ int time = 0;
+ time = instance.get(Calendar.DAY_OF_MONTH);
+ if (time < 10)
+ builder.append(0);
+ builder.append(time);
+ builder.append(' ');
+ switch (instance.get(Calendar.MONTH)) {
+ case Calendar.JANUARY:
+ builder.append("Jan");
+ break;
+ case Calendar.FEBRUARY:
+ builder.append("Feb");
+ break;
+ case Calendar.MARCH:
+ builder.append("Mar");
+ break;
+ case Calendar.APRIL:
+ builder.append("Apr");
+ break;
+ case Calendar.MAY:
+ builder.append("May");
+ break;
+ case Calendar.JUNE:
+ builder.append("Jun");
+ break;
+ case Calendar.JULY:
+ builder.append("Jul");
+ break;
+ case Calendar.AUGUST:
+ builder.append("Aug");
+ break;
+ case Calendar.SEPTEMBER:
+ builder.append("Sep");
+ break;
+ case Calendar.OCTOBER:
+ builder.append("Oct");
+ break;
+ case Calendar.NOVEMBER:
+ builder.append("Nov");
+ break;
+ case Calendar.DECEMBER:
+ builder.append("Dec");
+ break;
+
+ default:
+ break;
+ }
+ builder.append(' ');
+ time = instance.get(Calendar.YEAR);
+ if (time < 1000)
+ builder.append("0");
+ if (time < 100)
+ builder.append("0");
+ if (time < 10)
+ builder.append("0");
+ builder.append(time);
+ builder.append(' ');
+
+ time = instance.get(Calendar.HOUR_OF_DAY);
+ if (time < 10)
+ builder.append(0);
+ builder.append(time);
+ builder.append(':');
+ time = instance.get(Calendar.MINUTE);
+ if (time < 10)
+ builder.append(0);
+ builder.append(time);
+ builder.append(':');
+ time = instance.get(Calendar.SECOND);
+ if (time < 10)
+ builder.append(0);
+ builder.append(time);
+
+ // this is always GMT offset -> 0
+ builder.append(" +0000");
+ return builder.toString();
+ }
+
+ public GOMLink getHtmlLink(List<GOMLink> links) {
+ for (GOMLink link : links) {
+ if ((link.getRel() == null || link.getRel().equals("alternate"))
+ && (link.getType() == null || link.getType()
+ .equalsIgnoreCase("html")))
+ return link;
+ }
+ return null;
+ }
+}
Added: lucene/java/trunk/contrib/gdata-server/src/gom/java/org/apache/lucene/gdata/gom/gom-aid.ucd
URL: http://svn.apache.org/viewvc/lucene/java/trunk/contrib/gdata-server/src/gom/java/org/apache/lucene/gdata/gom/gom-aid.ucd?view=auto&rev=486627
==============================================================================
--- lucene/java/trunk/contrib/gdata-server/src/gom/java/org/apache/lucene/gdata/gom/gom-aid.ucd (added)
+++ lucene/java/trunk/contrib/gdata-server/src/gom/java/org/apache/lucene/gdata/gom/gom-aid.ucd Wed Dec 13 04:39:54 2006
@@ -0,0 +1,182 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<editmodel:ClassDiagramEditModel xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:editmodel="editmodel.xmi" xmlns:options="options.xmi" name="gom-aid" id="org.apache.lucene.gdata.gom" metadata="uml2-1.0" initialized="true" scrolledY="430" tag="1000" key="3230303631303036204764617461556D6C2F73696D6F6E">
+ <children xsi:type="editmodel:InterfaceEditModel" name="GOMDocument" location="830,279" size="227,233" id="org.apache.lucene.gdata.gom/GOMDocument" runTimeClassModel="setCharacterEncoding(Ljava.lang.String;),setVersion(Ljava.lang.String;),writeRssOutput(Ljavax.xml.stream.XMLStreamWriter;),getCharacterEncoding(),getRootElement(),writeAtomOutput(Ljavax.xml.stream.XMLStreamWriter;),getVersion(),setRootElement">
+ <children xsi:type="editmodel:CompartmentEditModel"/>
+ <children xsi:type="editmodel:CompartmentEditModel" size="204,144">
+ <children xsi:type="editmodel:MethodEditModel" name="setCharacterEncoding" id="org.apache.lucene.gdata.gom/GOMDocument#setCharacterEncoding(Ljava.lang.String;)"/>
+ <children xsi:type="editmodel:MethodEditModel" name="getCharacterEncoding" id="org.apache.lucene.gdata.gom/GOMDocument#getCharacterEncoding()"/>
+ <children xsi:type="editmodel:MethodEditModel" name="getVersion" id="org.apache.lucene.gdata.gom/GOMDocument#getVersion()"/>
+ <children xsi:type="editmodel:MethodEditModel" name="setVersion" id="org.apache.lucene.gdata.gom/GOMDocument#setVersion(Ljava.lang.String;)"/>
+ <children xsi:type="editmodel:MethodEditModel" name="writeRssOutput" id="org.apache.lucene.gdata.gom/GOMDocument#writeRssOutput(Ljavax.xml.stream.XMLStreamWriter;)"/>
+ <children xsi:type="editmodel:MethodEditModel" name="setRootElement" id="org.apache.lucene.gdata.gom/GOMDocument#setRootElement"/>
+ <children xsi:type="editmodel:MethodEditModel" name="writeAtomOutput" id="org.apache.lucene.gdata.gom/GOMDocument#writeAtomOutput(Ljavax.xml.stream.XMLStreamWriter;)"/>
+ <children xsi:type="editmodel:MethodEditModel" name="getRootElement" id="org.apache.lucene.gdata.gom/GOMDocument#getRootElement()"/>
+ </children>
+ <children xsi:type="editmodel:CompartmentEditModel"/>
+ <sourceConnections xsi:type="editmodel:DependencyEditModel" autoLocated="true" id="org.apache.lucene.gdata.gom/GOMDocument->org.apache.lucene.gdata.gom/GOMElement" source="//@children.0" target="//@children.7" targetEnd="//@children.0/@sourceConnections.0/@children.2" label="//@children.0/@sourceConnections.0/@children.0" sourceEnd="//@children.0/@sourceConnections.0/@children.1" connectionRouterKind="Manhattan">
+ <children xsi:type="editmodel:WireLabelEditModel" name="«import»" size="29,10" fontInfo="Arial-8-0" anchorKind="MiddlePart"/>
+ <children xsi:type="editmodel:AssociationEndEditModel" location="0,116" attachSource="true"/>
+ <children xsi:type="editmodel:AssociationEndEditModel" location="227,134"/>
+ </sourceConnections>
+ <classifierPreferences xsi:type="editmodel:UMLClassDiagramClassifierPreference" showStereotype="true" showMethodsParameterTypes="true" showMethodsReturnType="true" showMethodsParameterNames="true" showMethodsParameterKinds="true" attributeSorter="Natural" methodSorter="Natural" innerClassSorter="Natural" showPrivateAttributes="true" showProtectedAttributes="true" showPublicAttributes="true" showPackageAttributes="true" showStaticAttributes="true" showProtectedMethods="true" showPublicMethods="true" showPackageMethods="true" showPrivateMethods="true" showStaticMethods="true" showProtectedInnerClasses="true" showPublicInnerClasses="true" showPackageInnerClasses="true" showPrivateInnerClasses="true" showStaticInnerClasses="true" showAssociationMember="true" showMethods="true" showLiterals="true"/>
+ </children>
+ <children xsi:type="editmodel:InterfaceEditModel" name="GOMExtension" location="92,580" size="116,107" id="org.apache.lucene.gdata.gom/GOMExtension" runTimeClassModel="">
+ <children xsi:type="editmodel:CompartmentEditModel"/>
+ <children xsi:type="editmodel:CompartmentEditModel"/>
+ <children xsi:type="editmodel:CompartmentEditModel"/>
+ <sourceConnections xsi:type="editmodel:GeneralizationEditModel" autoLocated="true" id="org.apache.lucene.gdata.gom/GOMElement<-org.apache.lucene.gdata.gom/GOMExtension" source="//@children.1" target="//@children.5/@sourceConnections.0" targetEnd="//@children.1/@sourceConnections.0/@children.1" sourceEnd="//@children.1/@sourceConnections.0/@children.0" connectionRouterKind="GeneralizationManhattan">
+ <children xsi:type="editmodel:AssociationEndEditModel" location="58,0" anchorKind="FixedAtEdge" attachSource="true"/>
+ <children xsi:type="editmodel:AssociationEndEditModel" location="203,224"/>
+ </sourceConnections>
+ <sourceConnections xsi:type="editmodel:GeneralizationEditModel" autoLocated="true" id="org.apache.lucene.gdata.gom/GOMXmlEntity<-org.apache.lucene.gdata.gom/GOMExtension" source="//@children.1" target="//@children.4/@sourceConnections.0" targetEnd="//@children.1/@sourceConnections.1/@children.1" sourceEnd="//@children.1/@sourceConnections.1/@children.0" connectionRouterKind="GeneralizationManhattan">
+ <children xsi:type="editmodel:AssociationEndEditModel" location="45,0" attachSource="true"/>
+ <children xsi:type="editmodel:AssociationEndEditModel" location="0,1"/>
+ <bendpoints location="553,525" secondRelativeDimension="-148,344" firstRelativeDimension="16,-24"/>
+ <bendpoints location="553,206" secondRelativeDimension="-100,58" firstRelativeDimension="47,-342"/>
+ <bendpoints location="686,206" secondRelativeDimension="-11,25" firstRelativeDimension="161,-341"/>
+ </sourceConnections>
+ <classifierPreferences xsi:type="editmodel:UMLClassDiagramClassifierPreference" showStereotype="true" showMethodsParameterTypes="true" showMethodsReturnType="true" showMethodsParameterNames="true" showMethodsParameterKinds="true" attributeSorter="Natural" methodSorter="Natural" innerClassSorter="Natural" showPrivateAttributes="true" showProtectedAttributes="true" showPublicAttributes="true" showPackageAttributes="true" showStaticAttributes="true" showProtectedMethods="true" showPublicMethods="true" showPackageMethods="true" showPrivateMethods="true" showStaticMethods="true" showProtectedInnerClasses="true" showPublicInnerClasses="true" showPackageInnerClasses="true" showPrivateInnerClasses="true" showStaticInnerClasses="true" showAssociationMember="true" showMethods="true" showAttributes="true" showLiterals="true"/>
+ </children>
+ <children xsi:type="editmodel:InterfaceEditModel" targetConnections="//@children.3/@sourceConnections.3" name="GOMAuthor" location="300,580" size="99,69" id="org.apache.lucene.gdata.gom/GOMAuthor" runTimeClassModel="">
+ <children xsi:type="editmodel:CompartmentEditModel"/>
+ <children xsi:type="editmodel:CompartmentEditModel"/>
+ <children xsi:type="editmodel:CompartmentEditModel"/>
+ <sourceConnections xsi:type="editmodel:GeneralizationEditModel" autoLocated="true" id="org.apache.lucene.gdata.gom/GOMElement<-org.apache.lucene.gdata.gom/GOMAuthor" source="//@children.2" target="//@children.5/@sourceConnections.0" targetEnd="//@children.2/@sourceConnections.0/@children.1" sourceEnd="//@children.2/@sourceConnections.0/@children.0" connectionRouterKind="GeneralizationManhattan">
+ <children xsi:type="editmodel:AssociationEndEditModel" location="49,0" anchorKind="FixedAtEdge" attachSource="true"/>
+ <children xsi:type="editmodel:AssociationEndEditModel" location="0,234"/>
+ </sourceConnections>
+ <classifierPreferences xsi:type="editmodel:UMLClassDiagramClassifierPreference" showStereotype="true" showMethodsParameterTypes="true" showMethodsReturnType="true" showMethodsParameterNames="true" showMethodsParameterKinds="true" attributeSorter="Natural" methodSorter="Natural" innerClassSorter="Natural" showPrivateAttributes="true" showProtectedAttributes="true" showPublicAttributes="true" showPackageAttributes="true" showStaticAttributes="true" showProtectedMethods="true" showPublicMethods="true" showPackageMethods="true" showPrivateMethods="true" showStaticMethods="true" showProtectedInnerClasses="true" showPublicInnerClasses="true" showPackageInnerClasses="true" showPrivateInnerClasses="true" showStaticInnerClasses="true" showAssociationMember="true" showMethods="true"/>
+ </children>
+ <children xsi:type="editmodel:InterfaceEditModel" name="GOMFeed" location="429,580" size="217,647" id="org.apache.lucene.gdata.gom/GOMFeed" runTimeClassModel="oPENSEARCH_NS_PREFIX,getId(),addAuthor(Lorg.apache.lucene.gdata.gom.GOMAuthor;),addEntry(Lorg.apache.lucene.gdata.gom.GOMEntry;),getLogo(),getTitle(),getRights(),setId(Lorg.apache.lucene.gdata.gom.GOMId;),getIcon(),setIcon(Lorg.apache.lucene.gdata.gom.GOMIcon;),setTitle(Lorg.apache.lucene.gdata.gom.GOMTitle;),getNamespaces(),setGenerator(Lorg.apache.lucene.gdata.gom.GOMGenerator;),lOCALNAME_RSS,getAuthors(),getLinks(),setRights(Lorg.apache.lucene.gdata.gom.GOMRights;),addContributor(Lorg.apache.lucene.gdata.gom.GOMContributor;),addNamespace(Lorg.apache.lucene.gdata.gom.core.GOMNamespace;),setSubtitle(Lorg.apache.lucene.gdata.gom.GOMSubtitle;),lOCALNAME,getUpdated(),setLogo(Lorg.apache.lucene.gdata.gom.GOMLogo;),getSubtitle(),getGenerator(),addCategory(Lorg.apache.lucene.gdata.gom.GOMCategory;),setUpdated(Lorg.apache.
lucene.gdata.gom.GOMTime;),oPENSEARCH_NS_URI,getCategories(),getEntries(),getContributor()">
+ <children xsi:type="editmodel:CompartmentEditModel" size="146,72">
+ <children xsi:type="editmodel:AttributeEditModel" name="oPENSEARCH_NS_PREFIX" id="org.apache.lucene.gdata.gom/GOMFeed#oPENSEARCH_NS_PREFIX"/>
+ <children xsi:type="editmodel:AttributeEditModel" name="lOCALNAME_RSS" id="org.apache.lucene.gdata.gom/GOMFeed#lOCALNAME_RSS"/>
+ <children xsi:type="editmodel:AttributeEditModel" name="oPENSEARCH_NS_URI" id="org.apache.lucene.gdata.gom/GOMFeed#oPENSEARCH_NS_URI"/>
+ <children xsi:type="editmodel:AttributeEditModel" name="lOCALNAME" id="org.apache.lucene.gdata.gom/GOMFeed#lOCALNAME"/>
+ </children>
+ <children xsi:type="editmodel:CompartmentEditModel" size="194,486">
+ <children xsi:type="editmodel:MethodEditModel" name="addEntry" id="org.apache.lucene.gdata.gom/GOMFeed#addEntry(Lorg.apache.lucene.gdata.gom.GOMEntry;)"/>
+ <children xsi:type="editmodel:MethodEditModel" name="getEntries" id="org.apache.lucene.gdata.gom/GOMFeed#getEntries()"/>
+ <children xsi:type="editmodel:MethodEditModel" name="addAuthor" id="org.apache.lucene.gdata.gom/GOMFeed#addAuthor(Lorg.apache.lucene.gdata.gom.GOMAuthor;)"/>
+ <children xsi:type="editmodel:MethodEditModel" name="getAuthors" id="org.apache.lucene.gdata.gom/GOMFeed#getAuthors()"/>
+ <children xsi:type="editmodel:MethodEditModel" name="setId" id="org.apache.lucene.gdata.gom/GOMFeed#setId(Lorg.apache.lucene.gdata.gom.GOMId;)"/>
+ <children xsi:type="editmodel:MethodEditModel" name="getId" id="org.apache.lucene.gdata.gom/GOMFeed#getId()"/>
+ <children xsi:type="editmodel:MethodEditModel" name="getCategories" id="org.apache.lucene.gdata.gom/GOMFeed#getCategories()"/>
+ <children xsi:type="editmodel:MethodEditModel" name="addContributor" id="org.apache.lucene.gdata.gom/GOMFeed#addContributor(Lorg.apache.lucene.gdata.gom.GOMContributor;)"/>
+ <children xsi:type="editmodel:MethodEditModel" name="addCategory" id="org.apache.lucene.gdata.gom/GOMFeed#addCategory(Lorg.apache.lucene.gdata.gom.GOMCategory;)"/>
+ <children xsi:type="editmodel:MethodEditModel" name="getContributor" id="org.apache.lucene.gdata.gom/GOMFeed#getContributor()"/>
+ <children xsi:type="editmodel:MethodEditModel" name="getGenerator" id="org.apache.lucene.gdata.gom/GOMFeed#getGenerator()"/>
+ <children xsi:type="editmodel:MethodEditModel" name="setGenerator" id="org.apache.lucene.gdata.gom/GOMFeed#setGenerator(Lorg.apache.lucene.gdata.gom.GOMGenerator;)"/>
+ <children xsi:type="editmodel:MethodEditModel" name="setLogo" id="org.apache.lucene.gdata.gom/GOMFeed#setLogo(Lorg.apache.lucene.gdata.gom.GOMLogo;)"/>
+ <children xsi:type="editmodel:MethodEditModel" name="getLogo" id="org.apache.lucene.gdata.gom/GOMFeed#getLogo()"/>
+ <children xsi:type="editmodel:MethodEditModel" name="getRights" id="org.apache.lucene.gdata.gom/GOMFeed#getRights()"/>
+ <children xsi:type="editmodel:MethodEditModel" name="getLinks" id="org.apache.lucene.gdata.gom/GOMFeed#getLinks()"/>
+ <children xsi:type="editmodel:MethodEditModel" name="setSubtitle" id="org.apache.lucene.gdata.gom/GOMFeed#setSubtitle(Lorg.apache.lucene.gdata.gom.GOMSubtitle;)"/>
+ <children xsi:type="editmodel:MethodEditModel" name="setIcon" id="org.apache.lucene.gdata.gom/GOMFeed#setIcon(Lorg.apache.lucene.gdata.gom.GOMIcon;)"/>
+ <children xsi:type="editmodel:MethodEditModel" name="getSubtitle" id="org.apache.lucene.gdata.gom/GOMFeed#getSubtitle()"/>
+ <children xsi:type="editmodel:MethodEditModel" name="setRights" id="org.apache.lucene.gdata.gom/GOMFeed#setRights(Lorg.apache.lucene.gdata.gom.GOMRights;)"/>
+ <children xsi:type="editmodel:MethodEditModel" name="getUpdated" id="org.apache.lucene.gdata.gom/GOMFeed#getUpdated()"/>
+ <children xsi:type="editmodel:MethodEditModel" name="setUpdated" id="org.apache.lucene.gdata.gom/GOMFeed#setUpdated(Lorg.apache.lucene.gdata.gom.GOMTime;)"/>
+ <children xsi:type="editmodel:MethodEditModel" name="getTitle" id="org.apache.lucene.gdata.gom/GOMFeed#getTitle()"/>
+ <children xsi:type="editmodel:MethodEditModel" name="getNamespaces" id="org.apache.lucene.gdata.gom/GOMFeed#getNamespaces()"/>
+ <children xsi:type="editmodel:MethodEditModel" name="getIcon" id="org.apache.lucene.gdata.gom/GOMFeed#getIcon()"/>
+ <children xsi:type="editmodel:MethodEditModel" name="setTitle" id="org.apache.lucene.gdata.gom/GOMFeed#setTitle(Lorg.apache.lucene.gdata.gom.GOMTitle;)"/>
+ <children xsi:type="editmodel:MethodEditModel" name="addNamespace" id="org.apache.lucene.gdata.gom/GOMFeed#addNamespace(Lorg.apache.lucene.gdata.gom.core.GOMNamespace;)"/>
+ </children>
+ <children xsi:type="editmodel:CompartmentEditModel"/>
+ <sourceConnections xsi:type="editmodel:GeneralizationEditModel" autoLocated="true" id="org.apache.lucene.gdata.gom/GOMElement<-org.apache.lucene.gdata.gom/GOMFeed" source="//@children.3" target="//@children.5/@sourceConnections.0" targetEnd="//@children.3/@sourceConnections.0/@children.1" sourceEnd="//@children.3/@sourceConnections.0/@children.0" connectionRouterKind="GeneralizationManhattan">
+ <children xsi:type="editmodel:AssociationEndEditModel" location="106,0" anchorKind="FixedAtEdge" attachSource="true"/>
+ <children xsi:type="editmodel:AssociationEndEditModel" location="58,269"/>
+ </sourceConnections>
+ <sourceConnections xsi:type="editmodel:DependencyEditModel" autoLocated="true" id="org.apache.lucene.gdata.gom/GOMFeed->org.apache.lucene.gdata.gom/GOMEntry" source="//@children.3" target="//@children.5" targetEnd="//@children.3/@sourceConnections.1/@children.2" label="//@children.3/@sourceConnections.1/@children.0" sourceEnd="//@children.3/@sourceConnections.1/@children.1" connectionRouterKind="Manhattan">
+ <children xsi:type="editmodel:WireLabelEditModel" name="«import»" size="29,10" fontInfo="Arial-8-0" anchorKind="MiddlePart"/>
+ <children xsi:type="editmodel:AssociationEndEditModel" location="214,89" attachSource="true"/>
+ <children xsi:type="editmodel:AssociationEndEditModel" location="0,34"/>
+ </sourceConnections>
+ <sourceConnections xsi:type="editmodel:GeneralizationEditModel" autoLocated="true" id="org.apache.lucene.gdata.gom/GOMXmlEntity<-org.apache.lucene.gdata.gom/GOMFeed" source="//@children.3" target="//@children.4/@sourceConnections.0" targetEnd="//@children.3/@sourceConnections.2/@children.1" sourceEnd="//@children.3/@sourceConnections.2/@children.0" connectionRouterKind="GeneralizationManhattan">
+ <children xsi:type="editmodel:AssociationEndEditModel" location="0,16" attachSource="true"/>
+ <children xsi:type="editmodel:AssociationEndEditModel" location="1,1"/>
+ <bendpoints location="910,525" secondRelativeDimension="141,344" firstRelativeDimension="14,-24"/>
+ <bendpoints location="910,206" secondRelativeDimension="92,56" firstRelativeDimension="48,-342"/>
+ <bendpoints location="879,206" secondRelativeDimension="61,45" firstRelativeDimension="23,-341"/>
+ </sourceConnections>
+ <sourceConnections xsi:type="editmodel:DependencyEditModel" autoLocated="true" id="org.apache.lucene.gdata.gom/GOMFeed->org.apache.lucene.gdata.gom/GOMAuthor" source="//@children.3" target="//@children.2" targetEnd="//@children.3/@sourceConnections.3/@children.2" label="//@children.3/@sourceConnections.3/@children.0" sourceEnd="//@children.3/@sourceConnections.3/@children.1" connectionRouterKind="Manhattan">
+ <children xsi:type="editmodel:WireLabelEditModel" name="«import»" size="29,10" fontInfo="Arial-8-0" anchorKind="MiddlePart"/>
+ <children xsi:type="editmodel:AssociationEndEditModel" location="0,34" attachSource="true"/>
+ <children xsi:type="editmodel:AssociationEndEditModel" location="72,34"/>
+ </sourceConnections>
+ <classifierPreferences xsi:type="editmodel:UMLClassDiagramClassifierPreference" showStereotype="true" showMethodsParameterTypes="true" showMethodsReturnType="true" showMethodsParameterNames="true" showMethodsParameterKinds="true" attributeSorter="Natural" methodSorter="Natural" innerClassSorter="Natural" showPrivateAttributes="true" showProtectedAttributes="true" showPublicAttributes="true" showPackageAttributes="true" showStaticAttributes="true" showProtectedMethods="true" showPublicMethods="true" showPackageMethods="true" showPrivateMethods="true" showStaticMethods="true" showProtectedInnerClasses="true" showPublicInnerClasses="true" showPackageInnerClasses="true" showPrivateInnerClasses="true" showStaticInnerClasses="true" showAssociationMember="true" showMethods="true" showAttributes="true" showLiterals="true"/>
+ </children>
+ <children xsi:type="editmodel:InterfaceEditModel" targetConnections="//@children.7/@sourceConnections.1" name="GOMAttribute" location="50,261" size="108,69" id="org.apache.lucene.gdata.gom/GOMAttribute" runTimeClassModel="">
+ <children xsi:type="editmodel:CompartmentEditModel"/>
+ <children xsi:type="editmodel:CompartmentEditModel"/>
+ <children xsi:type="editmodel:CompartmentEditModel"/>
+ <sourceConnections xsi:type="editmodel:GeneralizationEditModel" targetConnections="//@children.7/@sourceConnections.0 //@children.1/@sourceConnections.1 //@children.3/@sourceConnections.2 //@children.5/@sourceConnections.1" autoLocated="true" id="org.apache.lucene.gdata.gom/GOMXmlEntity<-org.apache.lucene.gdata.gom/GOMAttribute" source="//@children.4" target="//@children.6" targetEnd="//@children.4/@sourceConnections.0/@children.1" sourceEnd="//@children.4/@sourceConnections.0/@children.0" connectionRouterKind="GeneralizationManhattan">
+ <children xsi:type="editmodel:AssociationEndEditModel" location="54,0" anchorKind="FixedAtEdge" attachSource="true"/>
+ <children xsi:type="editmodel:AssociationEndEditModel" location="85,197" anchorKind="FixedAtEdge"/>
+ </sourceConnections>
+ <classifierPreferences xsi:type="editmodel:UMLClassDiagramClassifierPreference" showStereotype="true" showMethodsParameterTypes="true" showMethodsReturnType="true" showMethodsParameterNames="true" showMethodsParameterKinds="true" attributeSorter="Natural" methodSorter="Natural" innerClassSorter="Natural" showPrivateAttributes="true" showProtectedAttributes="true" showPublicAttributes="true" showPackageAttributes="true" showStaticAttributes="true" showProtectedMethods="true" showPublicMethods="true" showPackageMethods="true" showPrivateMethods="true" showStaticMethods="true" showProtectedInnerClasses="true" showPublicInnerClasses="true" showPackageInnerClasses="true" showPrivateInnerClasses="true" showStaticInnerClasses="true" showAssociationMember="true" showMethods="true" showAttributes="true" showLiterals="true"/>
+ </children>
+ <children xsi:type="editmodel:InterfaceEditModel" targetConnections="//@children.3/@sourceConnections.1" name="GOMEntry" location="607,580" size="92,69" id="org.apache.lucene.gdata.gom/GOMEntry" runTimeClassModel="">
+ <children xsi:type="editmodel:CompartmentEditModel"/>
+ <children xsi:type="editmodel:CompartmentEditModel"/>
+ <children xsi:type="editmodel:CompartmentEditModel"/>
+ <sourceConnections xsi:type="editmodel:GeneralizationEditModel" targetConnections="//@children.3/@sourceConnections.0 //@children.1/@sourceConnections.0 //@children.2/@sourceConnections.0" autoLocated="true" id="org.apache.lucene.gdata.gom/GOMElement<-org.apache.lucene.gdata.gom/GOMEntry" source="//@children.5" target="//@children.7" targetEnd="//@children.5/@sourceConnections.0/@children.1" sourceEnd="//@children.5/@sourceConnections.0/@children.0" connectionRouterKind="GeneralizationManhattan">
+ <children xsi:type="editmodel:AssociationEndEditModel" location="46,0" anchorKind="FixedAtEdge" attachSource="true"/>
+ <children xsi:type="editmodel:AssociationEndEditModel" location="112,269" anchorKind="FixedAtEdge"/>
+ </sourceConnections>
+ <sourceConnections xsi:type="editmodel:GeneralizationEditModel" autoLocated="true" id="org.apache.lucene.gdata.gom/GOMXmlEntity<-org.apache.lucene.gdata.gom/GOMEntry" source="//@children.5" target="//@children.4/@sourceConnections.0" targetEnd="//@children.5/@sourceConnections.1/@children.1" sourceEnd="//@children.5/@sourceConnections.1/@children.0" connectionRouterKind="Manual">
+ <children xsi:type="editmodel:AssociationEndEditModel" location="10,0" attachSource="true"/>
+ <children xsi:type="editmodel:AssociationEndEditModel" location="1,1"/>
+ <bendpoints location="1003,525" secondRelativeDimension="216,344" firstRelativeDimension="0,-24"/>
+ <bendpoints location="1003,206" secondRelativeDimension="185,74" firstRelativeDimension="1,-342"/>
+ <bendpoints location="879,206" secondRelativeDimension="61,45" firstRelativeDimension="-111,-341"/>
+ </sourceConnections>
+ <classifierPreferences xsi:type="editmodel:UMLClassDiagramClassifierPreference" showStereotype="true" showMethodsParameterTypes="true" showMethodsReturnType="true" showMethodsParameterNames="true" showMethodsParameterKinds="true" attributeSorter="Natural" methodSorter="Natural" innerClassSorter="Natural" showPrivateAttributes="true" showProtectedAttributes="true" showPublicAttributes="true" showPackageAttributes="true" showStaticAttributes="true" showProtectedMethods="true" showPublicMethods="true" showPackageMethods="true" showPrivateMethods="true" showStaticMethods="true" showProtectedInnerClasses="true" showPublicInnerClasses="true" showPackageInnerClasses="true" showPrivateInnerClasses="true" showStaticInnerClasses="true" showAssociationMember="true" showMethods="true" showAttributes="true" showLiterals="true"/>
+ </children>
+ <children xsi:type="editmodel:InterfaceEditModel" targetConnections="//@children.4/@sourceConnections.0" name="GOMXmlEntity" location="510,0" size="173,197" id="org.apache.lucene.gdata.gom/GOMXmlEntity" runTimeClassModel="setLocalName(Ljava.lang.String;),setTextValue(Ljava.lang.String;),setQName(Ljavax.xml.namespace.QName;),getQname(),getTextValue(),getLocalName()">
+ <children xsi:type="editmodel:CompartmentEditModel"/>
+ <children xsi:type="editmodel:CompartmentEditModel" size="150,108">
+ <children xsi:type="editmodel:MethodEditModel" name="getQname" id="org.apache.lucene.gdata.gom/GOMXmlEntity#getQname()"/>
+ <children xsi:type="editmodel:MethodEditModel" name="getTextValue" id="org.apache.lucene.gdata.gom/GOMXmlEntity#getTextValue()"/>
+ <children xsi:type="editmodel:MethodEditModel" name="setQName" id="org.apache.lucene.gdata.gom/GOMXmlEntity#setQName(Ljavax.xml.namespace.QName;)"/>
+ <children xsi:type="editmodel:MethodEditModel" name="setTextValue" id="org.apache.lucene.gdata.gom/GOMXmlEntity#setTextValue(Ljava.lang.String;)"/>
+ <children xsi:type="editmodel:MethodEditModel" name="getLocalName" id="org.apache.lucene.gdata.gom/GOMXmlEntity#getLocalName()"/>
+ <children xsi:type="editmodel:MethodEditModel" name="setLocalName" id="org.apache.lucene.gdata.gom/GOMXmlEntity#setLocalName(Ljava.lang.String;)"/>
+ </children>
+ <children xsi:type="editmodel:CompartmentEditModel"/>
+ <classifierPreferences xsi:type="editmodel:UMLClassDiagramClassifierPreference" showStereotype="true" showMethodsParameterTypes="true" showMethodsReturnType="true" showMethodsParameterNames="true" showMethodsParameterKinds="true" attributeSorter="Natural" methodSorter="Natural" innerClassSorter="Natural" showPrivateAttributes="true" showProtectedAttributes="true" showPublicAttributes="true" showPackageAttributes="true" showStaticAttributes="true" showProtectedMethods="true" showPublicMethods="true" showPackageMethods="true" showPrivateMethods="true" showStaticMethods="true" showProtectedInnerClasses="true" showPublicInnerClasses="true" showPackageInnerClasses="true" showPrivateInnerClasses="true" showStaticInnerClasses="true" showAssociationMember="true" showMethods="true" showLiterals="true"/>
+ </children>
+ <children xsi:type="editmodel:InterfaceEditModel" targetConnections="//@children.0/@sourceConnections.0 //@children.5/@sourceConnections.0" name="GOMElement" location="312,261" size="227,269" id="org.apache.lucene.gdata.gom/GOMElement" runTimeClassModel="getAttributes(),aTOM_NS_URI,addChild(Lorg.apache.lucene.gdata.gom.GOMElement;),aTOM_NS_PREFIX,writeRssOutput(Ljavax.xml.stream.XMLStreamWriter;),getParent(),addAttribute(Lorg.apache.lucene.gdata.gom.GOMAttribute;),getChildren(),writeAtomOutput(Ljavax.xml.stream.XMLStreamWriter;)">
+ <children xsi:type="editmodel:CompartmentEditModel" size="114,36">
+ <children xsi:type="editmodel:AttributeEditModel" name="aTOM_NS_URI" id="org.apache.lucene.gdata.gom/GOMElement#aTOM_NS_URI"/>
+ <children xsi:type="editmodel:AttributeEditModel" name="aTOM_NS_PREFIX" id="org.apache.lucene.gdata.gom/GOMElement#aTOM_NS_PREFIX"/>
+ </children>
+ <children xsi:type="editmodel:CompartmentEditModel" size="204,180">
+ <children xsi:type="editmodel:MethodEditModel" name="addAttribute" id="org.apache.lucene.gdata.gom/GOMElement#addAttribute(Lorg.apache.lucene.gdata.gom.GOMAttribute;)"/>
+ <children xsi:type="editmodel:MethodEditModel" name="addChild" id="org.apache.lucene.gdata.gom/GOMElement#addChild(Lorg.apache.lucene.gdata.gom.GOMElement;)"/>
+ <children xsi:type="editmodel:MethodEditModel" name="getAttributes" id="org.apache.lucene.gdata.gom/GOMElement#getAttributes()"/>
+ <children xsi:type="editmodel:MethodEditModel" name="getChildren" id="org.apache.lucene.gdata.gom/GOMElement#getChildren()"/>
+ <children xsi:type="editmodel:MethodEditModel" name="getParent" id="org.apache.lucene.gdata.gom/GOMElement#getParent()"/>
+ <children xsi:type="editmodel:MethodEditModel" name="writeAtomOutput" id="org.apache.lucene.gdata.gom/GOMElement#writeAtomOutput(Ljavax.xml.stream.XMLStreamWriter;)"/>
+ <children xsi:type="editmodel:MethodEditModel" name="writeRssOutput" id="org.apache.lucene.gdata.gom/GOMElement#writeRssOutput(Ljavax.xml.stream.XMLStreamWriter;)"/>
+ </children>
+ <children xsi:type="editmodel:CompartmentEditModel"/>
+ <sourceConnections xsi:type="editmodel:GeneralizationEditModel" autoLocated="true" id="org.apache.lucene.gdata.gom/GOMXmlEntity<-org.apache.lucene.gdata.gom/GOMElement" source="//@children.7" target="//@children.4/@sourceConnections.0" targetEnd="//@children.7/@sourceConnections.0/@children.1" sourceEnd="//@children.7/@sourceConnections.0/@children.0" connectionRouterKind="GeneralizationManhattan">
+ <children xsi:type="editmodel:AssociationEndEditModel" location="112,0" anchorKind="FixedAtEdge" attachSource="true"/>
+ <children xsi:type="editmodel:AssociationEndEditModel" location="91,161"/>
+ </sourceConnections>
+ <sourceConnections xsi:type="editmodel:DependencyEditModel" autoLocated="true" id="org.apache.lucene.gdata.gom/GOMElement->org.apache.lucene.gdata.gom/GOMAttribute" source="//@children.7" target="//@children.4" targetEnd="//@children.7/@sourceConnections.1/@children.2" label="//@children.7/@sourceConnections.1/@children.0" sourceEnd="//@children.7/@sourceConnections.1/@children.1" connectionRouterKind="Manhattan">
+ <children xsi:type="editmodel:WireLabelEditModel" name="«import»" size="29,10" fontInfo="Arial-8-0" anchorKind="MiddlePart"/>
+ <children xsi:type="editmodel:AssociationEndEditModel" location="0,34" attachSource="true"/>
+ <children xsi:type="editmodel:AssociationEndEditModel" location="108,34"/>
+ </sourceConnections>
+ <classifierPreferences xsi:type="editmodel:UMLClassDiagramClassifierPreference" showStereotype="true" showMethodsParameterTypes="true" showMethodsReturnType="true" showMethodsParameterNames="true" showMethodsParameterKinds="true" attributeSorter="Natural" methodSorter="Natural" innerClassSorter="Natural" showPrivateAttributes="true" showProtectedAttributes="true" showPublicAttributes="true" showPackageAttributes="true" showStaticAttributes="true" showProtectedMethods="true" showPublicMethods="true" showPackageMethods="true" showPrivateMethods="true" showStaticMethods="true" showProtectedInnerClasses="true" showPublicInnerClasses="true" showPackageInnerClasses="true" showPrivateInnerClasses="true" showStaticInnerClasses="true" showAssociationMember="true" showMethods="true" showAttributes="true" showLiterals="true"/>
+ </children>
+ <diagramOptions xsi:type="options:ClassDiagramOptions" showScope="All" properties="wireOptions=7"/>
+ <boardSetting snapToGeometry="true" gridEnabled="true" gridSpacing="10,10" gridOrigin="0,0" rulerUnit="pixel">
+ <leftRuler/>
+ <topRuler/>
+ </boardSetting>
+ <classDiagramPreferences xsi:type="editmodel:UMLClassDiagramPreference" showMethodsParameterTypes="true" showMethodsReturnType="true" showMethodsParameterNames="true" showMethodsParameterKinds="true" attributeSorter="Natural" methodSorter="Natural" showClassStereotype="true" showPackageStereotype="true" innerClassSorter="Natural" showPrivateAttributes="true" showProtectedAttributes="true" showPublicAttributes="true" showPackageAttributes="true" showStaticAttributes="true" showProtectedMethods="true" showPublicMethods="true" showPackageMethods="true" showPrivateMethods="true" showStaticMethods="true" showProtectedInnerClasses="true" showPublicInnerClasses="true" showPackageInnerClasses="true" showPrivateInnerClasses="true" showStaticInnerClasses="true" showInterfaceStereotype="true" showAssociationMember="true" showMethods="true" showAttributes="true" showLiterlas="true"/>
+</editmodel:ClassDiagramEditModel>