diff options
Diffstat (limited to 'bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/commands/UpdateStringLengthFacetCommand.java')
-rw-r--r-- | bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/commands/UpdateStringLengthFacetCommand.java | 230 |
1 files changed, 0 insertions, 230 deletions
diff --git a/bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/commands/UpdateStringLengthFacetCommand.java b/bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/commands/UpdateStringLengthFacetCommand.java deleted file mode 100644 index b5e78e9280..0000000000 --- a/bundles/org.eclipse.wst.xsd.ui/src-common/org/eclipse/wst/xsd/ui/internal/common/commands/UpdateStringLengthFacetCommand.java +++ /dev/null @@ -1,230 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2001, 2006 IBM Corporation and others. - * 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: - * IBM Corporation - initial API and implementation - *******************************************************************************/ -package org.eclipse.wst.xsd.ui.internal.common.commands; - -import org.eclipse.xsd.XSDFactory; -import org.eclipse.xsd.XSDLengthFacet; -import org.eclipse.xsd.XSDMaxLengthFacet; -import org.eclipse.xsd.XSDMinLengthFacet; -import org.eclipse.xsd.XSDSimpleTypeDefinition; - -public class UpdateStringLengthFacetCommand extends BaseCommand -{ - XSDSimpleTypeDefinition xsdSimpleType; - String max, min; - private boolean doUpdateMax = false, doUpdateMin = false; - - public UpdateStringLengthFacetCommand(String label, XSDSimpleTypeDefinition xsdSimpleType) - { - super(label); - this.xsdSimpleType = xsdSimpleType; - } - - public void setMin(String min) - { - this.min = min; - doUpdateMin = true; - } - - public void setMax(String max) - { - this.max = max; - doUpdateMax = true; - } - - public void execute() - { - try - { - beginRecording(xsdSimpleType.getElement()); - XSDLengthFacet lengthFacet = xsdSimpleType.getEffectiveLengthFacet(); - XSDMinLengthFacet minLengthFacet = xsdSimpleType.getEffectiveMinLengthFacet(); - XSDMaxLengthFacet maxLengthFacet = xsdSimpleType.getEffectiveMaxLengthFacet(); - - String currentLength = null, currentMin = null, currentMax = null; - if (lengthFacet != null) - { - currentLength = lengthFacet.getLexicalValue(); - } - if (minLengthFacet != null) - { - currentMin = minLengthFacet.getLexicalValue(); - } - if (maxLengthFacet != null) - { - currentMax = maxLengthFacet.getLexicalValue(); - } - - if (doUpdateMax && !doUpdateMin) - { - if (maxLengthFacet != null) - { - if (max != null) - { - if (max.equals(currentMin)) - { - lengthFacet = XSDFactory.eINSTANCE.createXSDLengthFacet(); - lengthFacet.setLexicalValue(max); - xsdSimpleType.getFacetContents().add(lengthFacet); - xsdSimpleType.getFacetContents().remove(maxLengthFacet); - xsdSimpleType.getFacetContents().remove(minLengthFacet); - } - else - { - if (lengthFacet != null) - { - xsdSimpleType.getFacetContents().remove(lengthFacet); - } - if (minLengthFacet == null && currentLength != null) - { - minLengthFacet = XSDFactory.eINSTANCE.createXSDMinLengthFacet(); - minLengthFacet.setLexicalValue(currentLength); - xsdSimpleType.getFacetContents().add(minLengthFacet); - } - maxLengthFacet.setLexicalValue(max); - } - } - else - { - xsdSimpleType.getFacetContents().remove(maxLengthFacet); - } - } - else - { - if (currentMin != null && currentMin.equals(max)) - { - if (lengthFacet == null) - { - lengthFacet = XSDFactory.eINSTANCE.createXSDLengthFacet(); - xsdSimpleType.getFacetContents().add(lengthFacet); - } - lengthFacet.setLexicalValue(max); - xsdSimpleType.getFacetContents().remove(minLengthFacet); - } - else if (currentLength != null && !currentLength.equals(max)) - { - xsdSimpleType.getFacetContents().remove(lengthFacet); - - if (max != null) - { - maxLengthFacet = XSDFactory.eINSTANCE.createXSDMaxLengthFacet(); - maxLengthFacet.setLexicalValue(max); - xsdSimpleType.getFacetContents().add(maxLengthFacet); - } - - minLengthFacet = XSDFactory.eINSTANCE.createXSDMinLengthFacet(); - minLengthFacet.setLexicalValue(currentLength); - xsdSimpleType.getFacetContents().add(minLengthFacet); - } - else - { - if (lengthFacet != null) - { - xsdSimpleType.getFacetContents().remove(lengthFacet); - - minLengthFacet = XSDFactory.eINSTANCE.createXSDMinLengthFacet(); - minLengthFacet.setLexicalValue(currentLength); - xsdSimpleType.getFacetContents().add(minLengthFacet); - - } - maxLengthFacet = XSDFactory.eINSTANCE.createXSDMaxLengthFacet(); - maxLengthFacet.setLexicalValue(max); - xsdSimpleType.getFacetContents().add(maxLengthFacet); - } - } - } - else if (!doUpdateMax && doUpdateMin) - { - if (minLengthFacet != null) - { - if (min != null) - { - if (min.equals(currentMax)) - { - lengthFacet = XSDFactory.eINSTANCE.createXSDLengthFacet(); - lengthFacet.setLexicalValue(min); - xsdSimpleType.getFacetContents().add(lengthFacet); - xsdSimpleType.getFacetContents().remove(maxLengthFacet); - xsdSimpleType.getFacetContents().remove(minLengthFacet); - } - else - { - if (lengthFacet != null) - { - xsdSimpleType.getFacetContents().remove(lengthFacet); - } - if (maxLengthFacet == null && currentLength != null) - { - maxLengthFacet = XSDFactory.eINSTANCE.createXSDMaxLengthFacet(); - maxLengthFacet.setLexicalValue(currentLength); - xsdSimpleType.getFacetContents().add(maxLengthFacet); - } - minLengthFacet.setLexicalValue(min); - } - } - else - { - xsdSimpleType.getFacetContents().remove(minLengthFacet); - } - } - else - { - if (currentMax != null && currentMax.equals(min)) - { - if (lengthFacet == null) - { - lengthFacet = XSDFactory.eINSTANCE.createXSDLengthFacet(); - xsdSimpleType.getFacetContents().add(lengthFacet); - } - lengthFacet.setLexicalValue(min); - xsdSimpleType.getFacetContents().remove(maxLengthFacet); - } - else if (currentLength != null && !currentLength.equals(min)) - { - xsdSimpleType.getFacetContents().remove(lengthFacet); - - if (min != null) - { - minLengthFacet = XSDFactory.eINSTANCE.createXSDMinLengthFacet(); - minLengthFacet.setLexicalValue(min); - xsdSimpleType.getFacetContents().add(minLengthFacet); - } - - maxLengthFacet = XSDFactory.eINSTANCE.createXSDMaxLengthFacet(); - maxLengthFacet.setLexicalValue(currentLength); - xsdSimpleType.getFacetContents().add(maxLengthFacet); - } - else - { - minLengthFacet = XSDFactory.eINSTANCE.createXSDMinLengthFacet(); - minLengthFacet.setLexicalValue(min); - xsdSimpleType.getFacetContents().add(minLengthFacet); - - if (lengthFacet != null) - { - xsdSimpleType.getFacetContents().remove(lengthFacet); - - maxLengthFacet = XSDFactory.eINSTANCE.createXSDMaxLengthFacet(); - maxLengthFacet.setLexicalValue(currentLength); - xsdSimpleType.getFacetContents().add(maxLengthFacet); - } - } - } - } - formatChild(xsdSimpleType.getElement()); - } - finally - { - endRecording(); - } - } - -} |