Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorkmoore2011-10-10 13:25:45 +0000
committerkmoore2011-10-10 13:25:45 +0000
commit37b4377ce3c963b5b29f9f63dc46c10ff7cbafef (patch)
treed48b5f48b9ec284c236d1af111175ca78395984f /jaxb/plugins/org.eclipse.jpt.jaxb.core/src
parenta0c2f6cf7260afdbf85ababb068885cfb9b1a1b8 (diff)
downloadwebtools.dali-37b4377ce3c963b5b29f9f63dc46c10ff7cbafef.tar.gz
webtools.dali-37b4377ce3c963b5b29f9f63dc46c10ff7cbafef.tar.xz
webtools.dali-37b4377ce3c963b5b29f9f63dc46c10ff7cbafef.zip
changed CollectionContainer to have the client call initialize, virtuals should not to be initialized. this was causing an NPE related to entityMappings tenantDiscriminatorColumns
Diffstat (limited to 'jaxb/plugins/org.eclipse.jpt.jaxb.core/src')
-rw-r--r--jaxb/plugins/org.eclipse.jpt.jaxb.core/src/org/eclipse/jpt/jaxb/core/internal/AbstractJaxbNode.java6
-rw-r--r--jaxb/plugins/org.eclipse.jpt.jaxb.core/src/org/eclipse/jpt/jaxb/core/internal/context/java/AbstractJavaPersistentType.java10
-rw-r--r--jaxb/plugins/org.eclipse.jpt.jaxb.core/src/org/eclipse/jpt/jaxb/core/internal/context/java/GenericJavaPackageInfo.java20
-rw-r--r--jaxb/plugins/org.eclipse.jpt.jaxb.core/src/org/eclipse/jpt/jaxb/core/internal/context/java/GenericJavaPersistentEnum.java12
-rw-r--r--jaxb/plugins/org.eclipse.jpt.jaxb.core/src/org/eclipse/jpt/jaxb/core/internal/context/java/GenericJavaRegistry.java10
-rw-r--r--jaxb/plugins/org.eclipse.jpt.jaxb.core/src/org/eclipse/jpt/jaxb/core/internal/context/java/GenericJavaXmlElementRefs.java14
-rw-r--r--jaxb/plugins/org.eclipse.jpt.jaxb.core/src/org/eclipse/jpt/jaxb/core/internal/context/java/GenericJavaXmlElementsMapping.java14
-rw-r--r--jaxb/plugins/org.eclipse.jpt.jaxb.core/src/org/eclipse/jpt/jaxb/core/internal/context/java/GenericJavaXmlSchema.java12
-rw-r--r--jaxb/plugins/org.eclipse.jpt.jaxb.core/src/org/eclipse/jpt/jaxb/core/internal/context/java/GenericJavaXmlSeeAlso.java10
9 files changed, 78 insertions, 30 deletions
diff --git a/jaxb/plugins/org.eclipse.jpt.jaxb.core/src/org/eclipse/jpt/jaxb/core/internal/AbstractJaxbNode.java b/jaxb/plugins/org.eclipse.jpt.jaxb.core/src/org/eclipse/jpt/jaxb/core/internal/AbstractJaxbNode.java
index 6a60f92856..b1e56f477e 100644
--- a/jaxb/plugins/org.eclipse.jpt.jaxb.core/src/org/eclipse/jpt/jaxb/core/internal/AbstractJaxbNode.java
+++ b/jaxb/plugins/org.eclipse.jpt.jaxb.core/src/org/eclipse/jpt/jaxb/core/internal/AbstractJaxbNode.java
@@ -192,7 +192,6 @@ public abstract class AbstractJaxbNode
protected CollectionContainer() {
super();
- this.initializeContextElements();
}
/**
@@ -217,7 +216,10 @@ public abstract class AbstractJaxbNode
*/
protected abstract String getContextElementsPropertyName();
- protected void initializeContextElements() {
+ /**
+ * clients needs to call initialize if necessary
+ */
+ public void initialize() {
for (R resourceElement : this.getResourceElements()) {
this.contextElements.add(this.buildContextElement(resourceElement));
}
diff --git a/jaxb/plugins/org.eclipse.jpt.jaxb.core/src/org/eclipse/jpt/jaxb/core/internal/context/java/AbstractJavaPersistentType.java b/jaxb/plugins/org.eclipse.jpt.jaxb.core/src/org/eclipse/jpt/jaxb/core/internal/context/java/AbstractJavaPersistentType.java
index 30906192bb..089f9b26ef 100644
--- a/jaxb/plugins/org.eclipse.jpt.jaxb.core/src/org/eclipse/jpt/jaxb/core/internal/context/java/AbstractJavaPersistentType.java
+++ b/jaxb/plugins/org.eclipse.jpt.jaxb.core/src/org/eclipse/jpt/jaxb/core/internal/context/java/AbstractJavaPersistentType.java
@@ -49,7 +49,7 @@ public abstract class AbstractJavaPersistentType
protected String factoryMethod;
- protected final PropOrderContainer propOrderContainer;
+ protected final ListContainer<String, String> propOrderContainer;
protected XmlRootElement rootElement;
@@ -59,7 +59,7 @@ public abstract class AbstractJavaPersistentType
this.qName = buildQName();
this.factoryClass = this.getResourceFactoryClass();
this.factoryMethod = this.getResourceFactoryMethod();
- this.propOrderContainer = new PropOrderContainer();
+ this.propOrderContainer = this.buildPropOrderContainer();
this.rootElement = this.buildRootElement();
}
@@ -192,6 +192,12 @@ public abstract class AbstractJavaPersistentType
protected ListIterable<String> getResourcePropOrder() {
return this.getXmlTypeAnnotation().getPropOrder();
}
+
+ protected ListContainer<String, String> buildPropOrderContainer() {
+ PropOrderContainer container = new PropOrderContainer();
+ container.initialize();
+ return container;
+ }
// *************** root element *********************
diff --git a/jaxb/plugins/org.eclipse.jpt.jaxb.core/src/org/eclipse/jpt/jaxb/core/internal/context/java/GenericJavaPackageInfo.java b/jaxb/plugins/org.eclipse.jpt.jaxb.core/src/org/eclipse/jpt/jaxb/core/internal/context/java/GenericJavaPackageInfo.java
index cfb06f664f..c9cd81bd36 100644
--- a/jaxb/plugins/org.eclipse.jpt.jaxb.core/src/org/eclipse/jpt/jaxb/core/internal/context/java/GenericJavaPackageInfo.java
+++ b/jaxb/plugins/org.eclipse.jpt.jaxb.core/src/org/eclipse/jpt/jaxb/core/internal/context/java/GenericJavaPackageInfo.java
@@ -50,9 +50,9 @@ public class GenericJavaPackageInfo
protected XmlAccessOrder specifiedAccessOrder;
- protected final XmlSchemaTypeContainer xmlSchemaTypeContainer;
+ protected final ContextListContainer<XmlSchemaType, XmlSchemaTypeAnnotation> xmlSchemaTypeContainer;
- protected final XmlJavaTypeAdapterContainer xmlJavaTypeAdapterContainer;
+ protected final ContextListContainer<XmlJavaTypeAdapter, XmlJavaTypeAdapterAnnotation> xmlJavaTypeAdapterContainer;
public GenericJavaPackageInfo(JaxbPackage parent, JavaResourcePackage resourcePackage) {
super(parent);
@@ -60,8 +60,8 @@ public class GenericJavaPackageInfo
this.xmlSchema = getFactory().buildJavaXmlSchema(this);
this.specifiedAccessType = getResourceAccessType();
this.specifiedAccessOrder = getResourceAccessOrder();
- this.xmlSchemaTypeContainer = new XmlSchemaTypeContainer();
- this.xmlJavaTypeAdapterContainer = new XmlJavaTypeAdapterContainer();
+ this.xmlSchemaTypeContainer = this.buildXmlSchemaTypeContainer();
+ this.xmlJavaTypeAdapterContainer = this.buildXmlJavaTypeAdapterContainer();
}
@Override
@@ -229,6 +229,12 @@ public class GenericJavaPackageInfo
this.resourcePackage.getAnnotations(JAXB.XML_SCHEMA_TYPE));
}
+ protected ContextListContainer<XmlSchemaType, XmlSchemaTypeAnnotation> buildXmlSchemaTypeContainer() {
+ XmlSchemaTypeContainer container = new XmlSchemaTypeContainer();
+ container.initialize();
+ return container;
+ }
+
// ********** xml java type adapters **********
@@ -276,6 +282,12 @@ public class GenericJavaPackageInfo
this.resourcePackage.getAnnotations(JAXB.XML_JAVA_TYPE_ADAPTER));
}
+ protected ContextListContainer<XmlJavaTypeAdapter, XmlJavaTypeAdapterAnnotation> buildXmlJavaTypeAdapterContainer() {
+ XmlJavaTypeAdapterContainer container = new XmlJavaTypeAdapterContainer();
+ container.initialize();
+ return container;
+ }
+
// **************** misc **************************************************
diff --git a/jaxb/plugins/org.eclipse.jpt.jaxb.core/src/org/eclipse/jpt/jaxb/core/internal/context/java/GenericJavaPersistentEnum.java b/jaxb/plugins/org.eclipse.jpt.jaxb.core/src/org/eclipse/jpt/jaxb/core/internal/context/java/GenericJavaPersistentEnum.java
index 3148a73222..2579f5b9eb 100644
--- a/jaxb/plugins/org.eclipse.jpt.jaxb.core/src/org/eclipse/jpt/jaxb/core/internal/context/java/GenericJavaPersistentEnum.java
+++ b/jaxb/plugins/org.eclipse.jpt.jaxb.core/src/org/eclipse/jpt/jaxb/core/internal/context/java/GenericJavaPersistentEnum.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2010 Oracle. All rights reserved.
+ * Copyright (c) 2010, 2011 Oracle. All rights reserved.
* This program and the accompanying materials are made available under the
* terms of the Eclipse Public License v1.0, which accompanies this distribution
* and is available at http://www.eclipse.org/legal/epl-v10.html.
@@ -23,12 +23,12 @@ public class GenericJavaPersistentEnum
protected String enumType;
- protected final EnumConstantContainer enumConstantContainer;
+ protected final ContextCollectionContainer<JaxbEnumConstant, JavaResourceEnumConstant> enumConstantContainer;
public GenericJavaPersistentEnum(JaxbContextRoot parent, JavaResourceEnum resourceEnum) {
super(parent, resourceEnum);
this.enumType = this.getResourceEnumType();
- this.enumConstantContainer = new EnumConstantContainer();
+ this.enumConstantContainer = this.buildEnumConstantContainer();
}
@Override
@@ -105,6 +105,12 @@ public class GenericJavaPersistentEnum
return getFactory().buildJavaEnumConstant(this, resourceEnumConstant);
}
+ protected ContextCollectionContainer<JaxbEnumConstant, JavaResourceEnumConstant> buildEnumConstantContainer() {
+ EnumConstantContainer container = new EnumConstantContainer();
+ container.initialize();
+ return container;
+ }
+
/**
* enum constant container adapter
*/
diff --git a/jaxb/plugins/org.eclipse.jpt.jaxb.core/src/org/eclipse/jpt/jaxb/core/internal/context/java/GenericJavaRegistry.java b/jaxb/plugins/org.eclipse.jpt.jaxb.core/src/org/eclipse/jpt/jaxb/core/internal/context/java/GenericJavaRegistry.java
index 2210d0df66..3eb0b2d82d 100644
--- a/jaxb/plugins/org.eclipse.jpt.jaxb.core/src/org/eclipse/jpt/jaxb/core/internal/context/java/GenericJavaRegistry.java
+++ b/jaxb/plugins/org.eclipse.jpt.jaxb.core/src/org/eclipse/jpt/jaxb/core/internal/context/java/GenericJavaRegistry.java
@@ -41,12 +41,12 @@ public class GenericJavaRegistry
extends AbstractJavaType
implements JaxbRegistry {
- protected final ElementFactoryMethodContainer elementFactoryMethodContainer;
+ protected final ContextCollectionContainer<JaxbElementFactoryMethod, JavaResourceMethod> elementFactoryMethodContainer;
public GenericJavaRegistry(JaxbContextRoot parent, JavaResourceType resourceType) {
super(parent, resourceType);
- this.elementFactoryMethodContainer = new ElementFactoryMethodContainer();
+ this.elementFactoryMethodContainer = this.buildElementFactoryMethodContainer();
}
@@ -114,6 +114,12 @@ public class GenericJavaRegistry
protected static boolean methodReturnTypeIsJAXBElement(JavaResourceMethod method) {
return method.typeIsSubTypeOf(JAXB.XML_ELEMENT);
}
+
+ protected ContextCollectionContainer<JaxbElementFactoryMethod, JavaResourceMethod> buildElementFactoryMethodContainer() {
+ ElementFactoryMethodContainer container = new ElementFactoryMethodContainer();
+ container.initialize();
+ return container;
+ }
// ***** content assist *****
diff --git a/jaxb/plugins/org.eclipse.jpt.jaxb.core/src/org/eclipse/jpt/jaxb/core/internal/context/java/GenericJavaXmlElementRefs.java b/jaxb/plugins/org.eclipse.jpt.jaxb.core/src/org/eclipse/jpt/jaxb/core/internal/context/java/GenericJavaXmlElementRefs.java
index 6f939771cb..631a5093ae 100644
--- a/jaxb/plugins/org.eclipse.jpt.jaxb.core/src/org/eclipse/jpt/jaxb/core/internal/context/java/GenericJavaXmlElementRefs.java
+++ b/jaxb/plugins/org.eclipse.jpt.jaxb.core/src/org/eclipse/jpt/jaxb/core/internal/context/java/GenericJavaXmlElementRefs.java
@@ -39,13 +39,13 @@ public class GenericJavaXmlElementRefs
protected final Context context;
- protected final XmlElementRefContainer xmlElementRefContainer;
+ protected final ContextListContainer<XmlElementRef, XmlElementRefAnnotation> xmlElementRefContainer;
public GenericJavaXmlElementRefs(JavaContextNode parent, Context context) {
super(parent);
this.context = context;
- this.xmlElementRefContainer = new XmlElementRefContainer();
+ this.xmlElementRefContainer = this.buildXmlElementRefContainer();
}
@@ -94,15 +94,17 @@ public class GenericJavaXmlElementRefs
}
protected XmlElementRef buildXmlElementRef(XmlElementRefAnnotation xmlElementRefAnnotation) {
- return context.buildXmlElementRef(this, xmlElementRefAnnotation);
+ return this.context.buildXmlElementRef(this, xmlElementRefAnnotation);
}
protected ListIterable<XmlElementRefAnnotation> getXmlElementRefAnnotations() {
return this.context.getXmlElementRefAnnotations();
}
-
- protected XmlElementRefAnnotation getXmlElementRefAnnotation(XmlElementRef xmlElementRef) {
- return this.xmlElementRefContainer.getResourceElement(xmlElementRef);
+
+ protected ContextListContainer<XmlElementRef, XmlElementRefAnnotation> buildXmlElementRefContainer() {
+ XmlElementRefContainer container = new XmlElementRefContainer();
+ container.initialize();
+ return container;
}
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 77edcb25c9..c9b186f6ec 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
@@ -49,7 +49,7 @@ public class GenericJavaXmlElementsMapping
extends AbstractJavaAttributeMapping<XmlElementsAnnotation>
implements XmlElementsMapping {
- protected final XmlElementContainer xmlElementContainer;
+ protected final ContextListContainer<XmlElement, XmlElementAnnotation> xmlElementContainer;
protected final XmlAdaptable xmlAdaptable;
@@ -60,7 +60,7 @@ public class GenericJavaXmlElementsMapping
public GenericJavaXmlElementsMapping(JaxbPersistentAttribute parent) {
super(parent);
- this.xmlElementContainer = new XmlElementContainer();
+ this.xmlElementContainer = this.buildXmlElementContainer();
this.xmlAdaptable = buildXmlAdaptable();
initializeXmlElementWrapper();
initializeXmlIDREF();
@@ -135,10 +135,6 @@ public class GenericJavaXmlElementsMapping
return getAnnotation().getXmlElements();
}
- protected XmlElementAnnotation getXmlElementAnnotation(XmlElement xmlElement) {
- return this.xmlElementContainer.getResourceElement(xmlElement);
- }
-
// ***** XmlJavaTypeAdapter *****
@@ -242,6 +238,12 @@ public class GenericJavaXmlElementsMapping
this.xmlElementWrapper.update();
}
}
+
+ protected ContextListContainer<XmlElement, XmlElementAnnotation> buildXmlElementContainer() {
+ XmlElementContainer container = new XmlElementContainer();
+ container.initialize();
+ return container;
+ }
// ***** XmlIDREF *****
diff --git a/jaxb/plugins/org.eclipse.jpt.jaxb.core/src/org/eclipse/jpt/jaxb/core/internal/context/java/GenericJavaXmlSchema.java b/jaxb/plugins/org.eclipse.jpt.jaxb.core/src/org/eclipse/jpt/jaxb/core/internal/context/java/GenericJavaXmlSchema.java
index 89af2ec802..9499e65b49 100644
--- a/jaxb/plugins/org.eclipse.jpt.jaxb.core/src/org/eclipse/jpt/jaxb/core/internal/context/java/GenericJavaXmlSchema.java
+++ b/jaxb/plugins/org.eclipse.jpt.jaxb.core/src/org/eclipse/jpt/jaxb/core/internal/context/java/GenericJavaXmlSchema.java
@@ -43,7 +43,7 @@ public class GenericJavaXmlSchema
protected XmlNsForm specifiedElementFormDefault;
- protected final XmlNsPrefixContainer xmlNsPrefixContainer;
+ protected final ContextListContainer<XmlNs, XmlNsAnnotation> xmlNsPrefixContainer;
public GenericJavaXmlSchema(JaxbPackageInfo parent) {
@@ -52,7 +52,7 @@ public class GenericJavaXmlSchema
this.location = this.getResourceLocation();
this.specifiedAttributeFormDefault = getResourceAttributeFormDefault();
this.specifiedElementFormDefault = getResourceElementFormDefault();
- this.xmlNsPrefixContainer = new XmlNsPrefixContainer();
+ this.xmlNsPrefixContainer = this.buildXmlNsPrefixContainer();
}
@@ -97,7 +97,7 @@ public class GenericJavaXmlSchema
// ********** namespace **********
public String getNamespace() {
- return (this.specifiedNamespace == null) ? "" : this.specifiedNamespace;
+ return (this.specifiedNamespace == null) ? "" : this.specifiedNamespace; //$NON-NLS-1$
}
public String getSpecifiedNamespace() {
@@ -238,6 +238,12 @@ public class GenericJavaXmlSchema
protected ListIterable<XmlNsAnnotation> getXmlNsAnnotations() {
return getXmlSchemaAnnotation().getXmlns();
}
+
+ protected ContextListContainer<XmlNs, XmlNsAnnotation> buildXmlNsPrefixContainer() {
+ XmlNsPrefixContainer container = new XmlNsPrefixContainer();
+ container.initialize();
+ return container;
+ }
// **************** content assist ****************************************
diff --git a/jaxb/plugins/org.eclipse.jpt.jaxb.core/src/org/eclipse/jpt/jaxb/core/internal/context/java/GenericJavaXmlSeeAlso.java b/jaxb/plugins/org.eclipse.jpt.jaxb.core/src/org/eclipse/jpt/jaxb/core/internal/context/java/GenericJavaXmlSeeAlso.java
index 10bd71e06b..ba3c150501 100644
--- a/jaxb/plugins/org.eclipse.jpt.jaxb.core/src/org/eclipse/jpt/jaxb/core/internal/context/java/GenericJavaXmlSeeAlso.java
+++ b/jaxb/plugins/org.eclipse.jpt.jaxb.core/src/org/eclipse/jpt/jaxb/core/internal/context/java/GenericJavaXmlSeeAlso.java
@@ -22,13 +22,13 @@ public class GenericJavaXmlSeeAlso
protected final XmlSeeAlsoAnnotation annotation;
- protected final ValueContainer valueContainer;
+ protected final ListContainer<String, String> valueContainer;
public GenericJavaXmlSeeAlso(JaxbPersistentClass parent, XmlSeeAlsoAnnotation annotation) {
super(parent);
this.annotation = annotation;
- this.valueContainer = new ValueContainer();
+ this.valueContainer = this.buildValueContainer();
}
@@ -74,6 +74,12 @@ public class GenericJavaXmlSeeAlso
return this.annotation.getTextRange(astRoot);
}
+ protected ListContainer<String, String> buildValueContainer() {
+ ValueContainer container = new ValueContainer();
+ container.initialize();
+ return container;
+ }
+
protected class ValueContainer
extends ListContainer<String, String> {

Back to the top