aboutsummaryrefslogtreecommitdiffstats
path: root/framework/src/ant/apache-ant-1.9.6/src/main/org/apache/tools/ant/types/EnumeratedAttribute.java
diff options
context:
space:
mode:
Diffstat (limited to 'framework/src/ant/apache-ant-1.9.6/src/main/org/apache/tools/ant/types/EnumeratedAttribute.java')
-rw-r--r--framework/src/ant/apache-ant-1.9.6/src/main/org/apache/tools/ant/types/EnumeratedAttribute.java153
1 files changed, 0 insertions, 153 deletions
diff --git a/framework/src/ant/apache-ant-1.9.6/src/main/org/apache/tools/ant/types/EnumeratedAttribute.java b/framework/src/ant/apache-ant-1.9.6/src/main/org/apache/tools/ant/types/EnumeratedAttribute.java
deleted file mode 100644
index bc893d8d..00000000
--- a/framework/src/ant/apache-ant-1.9.6/src/main/org/apache/tools/ant/types/EnumeratedAttribute.java
+++ /dev/null
@@ -1,153 +0,0 @@
-/*
- * 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.tools.ant.types;
-
-import org.apache.tools.ant.BuildException;
-
-/**
- * Helper class for attributes that can only take one of a fixed list
- * of values.
- *
- * <p>See {@link org.apache.tools.ant.taskdefs.FixCRLF FixCRLF} for an
- * example.
- *
- */
-public abstract class EnumeratedAttribute {
- // CheckStyle:VisibilityModifier OFF - bc
- /**
- * The selected value in this enumeration.
- */
- protected String value;
-
- // CheckStyle:VisibilityModifier ON
-
- /**
- * the index of the selected value in the array.
- */
- private int index = -1;
-
- /**
- * This is the only method a subclass needs to implement.
- *
- * @return an array holding all possible values of the enumeration.
- * The order of elements must be fixed so that <tt>indexOfValue(String)</tt>
- * always return the same index for the same value.
- */
- public abstract String[] getValues();
-
- /** bean constructor */
- protected EnumeratedAttribute() {
- }
-
- /**
- * Factory method for instantiating EAs via API in a more
- * developer friendly way.
- * @param clazz Class, extending EA, which to instantiate
- * @param value The value to set on that EA
- * @return Configured EA
- * @throws BuildException If the class could not be found or the value
- * is not valid for the given EA-class.
- * @see <a href="http://issues.apache.org/bugzilla/show_bug.cgi?id=14831">
- * http://issues.apache.org/bugzilla/show_bug.cgi?id=14831</a>
- */
- public static EnumeratedAttribute getInstance(
- Class<? extends EnumeratedAttribute> clazz,
- String value) throws BuildException {
- if (!EnumeratedAttribute.class.isAssignableFrom(clazz)) {
- throw new BuildException(
- "You have to provide a subclass from EnumeratedAttribut as clazz-parameter.");
- }
- EnumeratedAttribute ea = null;
- try {
- ea = clazz.newInstance();
- } catch (Exception e) {
- throw new BuildException(e);
- }
- ea.setValue(value);
- return ea;
- }
-
- /**
- * Invoked by {@link org.apache.tools.ant.IntrospectionHelper IntrospectionHelper}.
- * @param value the <code>String</code> value of the attribute
- * @throws BuildException if the value is not valid for the attribute
- */
- public final void setValue(String value) throws BuildException {
- int idx = indexOfValue(value);
- if (idx == -1) {
- throw new BuildException(value + " is not a legal value for this attribute");
- }
- this.index = idx;
- this.value = value;
- }
-
- /**
- * Is this value included in the enumeration?
- * @param value the <code>String</code> value to look up
- * @return true if the value is valid
- */
- public final boolean containsValue(String value) {
- return (indexOfValue(value) != -1);
- }
-
- /**
- * get the index of a value in this enumeration.
- * @param value the string value to look for.
- * @return the index of the value in the array of strings
- * or -1 if it cannot be found.
- * @see #getValues()
- */
- public final int indexOfValue(String value) {
- String[] values = getValues();
- if (values == null || value == null) {
- return -1;
- }
- for (int i = 0; i < values.length; i++) {
- if (value.equals(values[i])) {
- return i;
- }
- }
- return -1;
- }
-
- /**
- * @return the selected value.
- */
- public final String getValue() {
- return value;
- }
-
- /**
- * @return the index of the selected value in the array.
- * @see #getValues()
- */
- public final int getIndex() {
- return index;
- }
-
- /**
- * Convert the value to its string form.
- *
- * @return the string form of the value.
- */
- public String toString() {
- return getValue();
- }
-
-}