diff options
Diffstat (limited to 'jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/context/java/JavaEclipseLinkObjectTypeConverter.java')
-rw-r--r-- | jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/context/java/JavaEclipseLinkObjectTypeConverter.java | 263 |
1 files changed, 0 insertions, 263 deletions
diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/context/java/JavaEclipseLinkObjectTypeConverter.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/context/java/JavaEclipseLinkObjectTypeConverter.java deleted file mode 100644 index ba6e0c8fe1..0000000000 --- a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/context/java/JavaEclipseLinkObjectTypeConverter.java +++ /dev/null @@ -1,263 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2008, 2009 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. - * - * Contributors: - * Oracle - initial API and implementation - ******************************************************************************/ -package org.eclipse.jpt.eclipselink.core.internal.context.java; - -import java.util.ArrayList; -import java.util.Iterator; -import java.util.List; -import java.util.ListIterator; -import org.eclipse.jdt.core.dom.CompilationUnit; -import org.eclipse.jpt.core.context.java.JavaJpaContextNode; -import org.eclipse.jpt.core.resource.java.JavaResourcePersistentMember; -import org.eclipse.jpt.eclipselink.core.context.EclipseLinkConversionValue; -import org.eclipse.jpt.eclipselink.core.context.EclipseLinkConverter; -import org.eclipse.jpt.eclipselink.core.context.EclipseLinkObjectTypeConverter; -import org.eclipse.jpt.eclipselink.core.resource.java.EclipseLinkConversionValueAnnotation; -import org.eclipse.jpt.eclipselink.core.resource.java.EclipseLinkObjectTypeConverterAnnotation; -import org.eclipse.jpt.utility.internal.CollectionTools; -import org.eclipse.jpt.utility.internal.iterators.CloneListIterator; -import org.eclipse.jpt.utility.internal.iterators.TransformationListIterator; -import org.eclipse.wst.validation.internal.provisional.core.IMessage; -import org.eclipse.wst.validation.internal.provisional.core.IReporter; - -public class JavaEclipseLinkObjectTypeConverter extends JavaEclipseLinkConverter - implements EclipseLinkObjectTypeConverter -{ - private String dataType; - - private String objectType; - - private String defaultObjectValue; - - private final List<JavaEclipseLinkConversionValue> conversionValues; - - - public JavaEclipseLinkObjectTypeConverter(JavaJpaContextNode parent) { - super(parent); - this.conversionValues = new ArrayList<JavaEclipseLinkConversionValue>(); - } - - - public String getType() { - return EclipseLinkConverter.OBJECT_TYPE_CONVERTER; - } - - @Override - public String getAnnotationName() { - return EclipseLinkObjectTypeConverterAnnotation.ANNOTATION_NAME; - } - - @Override - protected EclipseLinkObjectTypeConverterAnnotation getAnnotation() { - return (EclipseLinkObjectTypeConverterAnnotation) super.getAnnotation(); - } - - - // **************** data type ********************************************** - - public String getDataType() { - return this.dataType; - } - - public void setDataType(String newDataType) { - String oldDataType = this.dataType; - this.dataType = newDataType; - getAnnotation().setDataType(newDataType); - firePropertyChanged(DATA_TYPE_PROPERTY, oldDataType, newDataType); - } - - protected void setDataType_(String newDataType) { - String oldDataType = this.dataType; - this.dataType = newDataType; - firePropertyChanged(DATA_TYPE_PROPERTY, oldDataType, newDataType); - } - - - // **************** object type ******************************************** - - public String getObjectType() { - return this.objectType; - } - - public void setObjectType(String newObjectType) { - String oldObjectType = this.objectType; - this.objectType = newObjectType; - getAnnotation().setObjectType(newObjectType); - firePropertyChanged(OBJECT_TYPE_PROPERTY, oldObjectType, newObjectType); - } - - protected void setObjectType_(String newObjectType) { - String oldObjectType = this.objectType; - this.objectType = newObjectType; - firePropertyChanged(OBJECT_TYPE_PROPERTY, oldObjectType, newObjectType); - } - - - // **************** conversion values ************************************** - - public ListIterator<JavaEclipseLinkConversionValue> conversionValues() { - return new CloneListIterator<JavaEclipseLinkConversionValue>(this.conversionValues); - } - - public int conversionValuesSize() { - return this.conversionValues.size(); - } - - public JavaEclipseLinkConversionValue addConversionValue(int index) { - JavaEclipseLinkConversionValue conversionValue = new JavaEclipseLinkConversionValue(this); - this.conversionValues.add(index, conversionValue); - EclipseLinkConversionValueAnnotation resourceConversionValue = getAnnotation().addConversionValue(index); - conversionValue.initialize(resourceConversionValue); - fireItemAdded(CONVERSION_VALUES_LIST, index, conversionValue); - return conversionValue; - } - - public JavaEclipseLinkConversionValue addConversionValue() { - return this.addConversionValue(this.conversionValues.size()); - } - - protected void addConversionValue(int index, JavaEclipseLinkConversionValue conversionValue) { - addItemToList(index, conversionValue, this.conversionValues, CONVERSION_VALUES_LIST); - } - - protected void addConversionValue(JavaEclipseLinkConversionValue conversionValue) { - this.addConversionValue(this.conversionValues.size(), conversionValue); - } - - public void removeConversionValue(EclipseLinkConversionValue conversionValue) { - this.removeConversionValue(this.conversionValues.indexOf(conversionValue)); - } - - public void removeConversionValue(int index) { - JavaEclipseLinkConversionValue removedConversionValue = this.conversionValues.remove(index); - getAnnotation().removeConversionValue(index); - fireItemRemoved(CONVERSION_VALUES_LIST, index, removedConversionValue); - } - - protected void removeConversionValue_(JavaEclipseLinkConversionValue conversionValue) { - removeItemFromList(conversionValue, this.conversionValues, CONVERSION_VALUES_LIST); - } - - public void moveConversionValue(int targetIndex, int sourceIndex) { - CollectionTools.move(this.conversionValues, targetIndex, sourceIndex); - getAnnotation().moveConversionValue(targetIndex, sourceIndex); - fireItemMoved(CONVERSION_VALUES_LIST, targetIndex, sourceIndex); - } - - public ListIterator<String> dataValues() { - return new TransformationListIterator<JavaEclipseLinkConversionValue, String>(conversionValues()) { - @Override - protected String transform(JavaEclipseLinkConversionValue next) { - return next.getDataValue(); - } - }; - } - - - // **************** default object value *********************************** - - public String getDefaultObjectValue() { - return this.defaultObjectValue; - } - - public void setDefaultObjectValue(String newDefaultObjectValue) { - String oldDefaultObjectValue = this.defaultObjectValue; - this.defaultObjectValue = newDefaultObjectValue; - getAnnotation().setDefaultObjectValue(newDefaultObjectValue); - firePropertyChanged(DEFAULT_OBJECT_VALUE_PROPERTY, oldDefaultObjectValue, newDefaultObjectValue); - } - - protected void setDefaultObjectValue_(String newDefaultObjectValue) { - String oldDefaultObjectValue = this.defaultObjectValue; - this.defaultObjectValue = newDefaultObjectValue; - firePropertyChanged(DEFAULT_OBJECT_VALUE_PROPERTY, oldDefaultObjectValue, newDefaultObjectValue); - } - - - // **************** resource interaction *********************************** - - @Override - protected void initialize(JavaResourcePersistentMember jrpm) { - super.initialize(jrpm); - EclipseLinkObjectTypeConverterAnnotation resourceConverter = getAnnotation(); - this.dataType = this.dataType(resourceConverter); - this.objectType = this.objectType(resourceConverter); - this.defaultObjectValue = this.defaultObjectValue(resourceConverter); - this.initializeConversionValues(resourceConverter); - } - - protected void initializeConversionValues(EclipseLinkObjectTypeConverterAnnotation resourceConverter) { - if (resourceConverter == null) { - return; - } - ListIterator<EclipseLinkConversionValueAnnotation> resourceConversionValues = resourceConverter.conversionValues(); - - while(resourceConversionValues.hasNext()) { - this.conversionValues.add(buildConversionValue(resourceConversionValues.next())); - } - } - - protected JavaEclipseLinkConversionValue buildConversionValue(EclipseLinkConversionValueAnnotation resourceConversionValue) { - JavaEclipseLinkConversionValue conversionValue = new JavaEclipseLinkConversionValue(this); - conversionValue.initialize(resourceConversionValue); - return conversionValue; - } - - @Override - public void update(JavaResourcePersistentMember jrpm) { - super.update(jrpm); - EclipseLinkObjectTypeConverterAnnotation resourceConverter = getAnnotation(); - this.setDataType_(this.dataType(resourceConverter)); - this.setObjectType_(this.objectType(resourceConverter)); - this.setDefaultObjectValue_(this.defaultObjectValue(resourceConverter)); - this.updateConversionValues(resourceConverter); - } - - protected void updateConversionValues(EclipseLinkObjectTypeConverterAnnotation resourceConverter) { - ListIterator<JavaEclipseLinkConversionValue> contextConversionValues = conversionValues(); - ListIterator<EclipseLinkConversionValueAnnotation> resourceConversionValues = resourceConverter.conversionValues(); - while (contextConversionValues.hasNext()) { - JavaEclipseLinkConversionValue conversionValues = contextConversionValues.next(); - if (resourceConversionValues.hasNext()) { - conversionValues.update(resourceConversionValues.next()); - } - else { - removeConversionValue_(conversionValues); - } - } - - while (resourceConversionValues.hasNext()) { - addConversionValue(buildConversionValue(resourceConversionValues.next())); - } - } - - protected String dataType(EclipseLinkObjectTypeConverterAnnotation resourceConverter) { - return resourceConverter == null ? null : resourceConverter.getDataType(); - } - - protected String objectType(EclipseLinkObjectTypeConverterAnnotation resourceConverter) { - return resourceConverter == null ? null : resourceConverter.getObjectType(); - } - - protected String defaultObjectValue(EclipseLinkObjectTypeConverterAnnotation resourceConverter) { - return resourceConverter == null ? null : resourceConverter.getDefaultObjectValue(); - } - - - // **************** validation ********************************************* - - @Override - public void validate(List<IMessage> messages, IReporter reporter, CompilationUnit astRoot) { - super.validate(messages, reporter, astRoot); - for (Iterator<JavaEclipseLinkConversionValue> stream = conversionValues(); stream.hasNext();) { - stream.next().validate(messages, reporter, astRoot); - } - } -} |