Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorpfullbright2012-01-17 21:12:53 +0000
committerpfullbright2012-01-17 21:12:53 +0000
commit748b536d80d33d72c385a788e2551cf37f4b60de (patch)
tree069a5837668576d0309e1f471fd9ebcac837a92c /jaxb/plugins/org.eclipse.jpt.jaxb.core/src/org/eclipse/jpt/jaxb/core/internal
parentab60e0478eccfcaec07a0c002efcd553f362bdf4 (diff)
downloadwebtools.dali-748b536d80d33d72c385a788e2551cf37f4b60de.tar.gz
webtools.dali-748b536d80d33d72c385a788e2551cf37f4b60de.tar.xz
webtools.dali-748b536d80d33d72c385a788e2551cf37f4b60de.zip
validation for XmlPath w/ XmlElements
Diffstat (limited to 'jaxb/plugins/org.eclipse.jpt.jaxb.core/src/org/eclipse/jpt/jaxb/core/internal')
-rw-r--r--jaxb/plugins/org.eclipse.jpt.jaxb.core/src/org/eclipse/jpt/jaxb/core/internal/context/java/GenericJavaXmlElementsMapping.java60
1 files changed, 34 insertions, 26 deletions
diff --git a/jaxb/plugins/org.eclipse.jpt.jaxb.core/src/org/eclipse/jpt/jaxb/core/internal/context/java/GenericJavaXmlElementsMapping.java b/jaxb/plugins/org.eclipse.jpt.jaxb.core/src/org/eclipse/jpt/jaxb/core/internal/context/java/GenericJavaXmlElementsMapping.java
index 3fb0f0d07c..1ea540a818 100644
--- a/jaxb/plugins/org.eclipse.jpt.jaxb.core/src/org/eclipse/jpt/jaxb/core/internal/context/java/GenericJavaXmlElementsMapping.java
+++ b/jaxb/plugins/org.eclipse.jpt.jaxb.core/src/org/eclipse/jpt/jaxb/core/internal/context/java/GenericJavaXmlElementsMapping.java
@@ -336,7 +336,7 @@ public class GenericJavaXmlElementsMapping
protected void validateDuplicateTypesAndQNames(List<IMessage> messages, IReporter reporter, CompilationUnit astRoot) {
Bag<String> xmlElementTypes = new HashBag<String>();
- Bag<QName> xmlElementQnames = new HashBag<QName>();
+ Bag<QName> xmlElementQNames = new HashBag<QName>();
for (XmlElement xmlElement : getXmlElements()) {
String typeName = xmlElement.getFullyQualifiedType();
@@ -345,37 +345,45 @@ public class GenericJavaXmlElementsMapping
}
String elementName = xmlElement.getQName().getName();
if (! StringTools.stringIsEmpty(elementName)) {
- xmlElementQnames.add(new QName(xmlElement.getQName().getNamespace(), elementName));
+ xmlElementQNames.add(new QName(xmlElement.getQName().getNamespace(), elementName));
}
}
for (XmlElement xmlElement : getXmlElements()) {
- String xmlElementType = xmlElement.getFullyQualifiedType();
- if (xmlElementTypes.count(xmlElementType) > 1) {
- messages.add(
- DefaultValidationMessages.buildMessage(
- IMessage.HIGH_SEVERITY,
- JaxbValidationMessages.XML_ELEMENTS__DUPLICATE_XML_ELEMENT_TYPE,
- new String[] { xmlElementType },
- xmlElement,
- xmlElement.getTypeTextRange(astRoot)));
- }
-
- String xmlElementNamespace = xmlElement.getQName().getNamespace();
- String xmlElementName = xmlElement.getQName().getName();
- if (xmlElementQnames.count(new QName(xmlElementNamespace, xmlElementName)) > 1) {
- messages.add(
- DefaultValidationMessages.buildMessage(
- IMessage.HIGH_SEVERITY,
- JaxbValidationMessages.XML_ELEMENTS__DUPLICATE_XML_ELEMENT_QNAME,
- new String[] { xmlElementName },
- xmlElement,
- xmlElement.getQName().getNameTextRange(astRoot)));
- }
- }
+ validateDuplicateType(xmlElement, xmlElementTypes, messages, astRoot);
+ validateDuplicateQName(xmlElement, xmlElementQNames, messages, astRoot);
+ }
+ }
+
+ protected void validateDuplicateType(XmlElement xmlElement, Bag<String> xmlElementTypes,
+ List<IMessage> messages, CompilationUnit astRoot) {
+ String xmlElementType = xmlElement.getFullyQualifiedType();
+ if (xmlElementTypes.count(xmlElementType) > 1) {
+ messages.add(
+ DefaultValidationMessages.buildMessage(
+ IMessage.HIGH_SEVERITY,
+ JaxbValidationMessages.XML_ELEMENTS__DUPLICATE_XML_ELEMENT_TYPE,
+ new String[] { xmlElementType },
+ xmlElement,
+ xmlElement.getTypeTextRange(astRoot)));
+ }
+ }
+
+ protected void validateDuplicateQName(XmlElement xmlElement, Bag<QName> xmlElementQNames,
+ List<IMessage> messages, CompilationUnit astRoot) {
+ String xmlElementNamespace = xmlElement.getQName().getNamespace();
+ String xmlElementName = xmlElement.getQName().getName();
+ if (xmlElementQNames.count(new QName(xmlElementNamespace, xmlElementName)) > 1) {
+ messages.add(
+ DefaultValidationMessages.buildMessage(
+ IMessage.HIGH_SEVERITY,
+ JaxbValidationMessages.XML_ELEMENTS__DUPLICATE_XML_ELEMENT_QNAME,
+ new String[] { xmlElementName },
+ xmlElement,
+ xmlElement.getQName().getNameTextRange(astRoot)));
+ }
}
-
protected class XmlElementContainer
extends ContextListContainer<XmlElement, XmlElementAnnotation> {

Back to the top