diff options
Diffstat (limited to 'framework/src/ant/apache-ant-1.9.6/src/main/org/apache/tools/ant/taskdefs/condition/IsReference.java')
-rw-r--r-- | framework/src/ant/apache-ant-1.9.6/src/main/org/apache/tools/ant/taskdefs/condition/IsReference.java | 89 |
1 files changed, 0 insertions, 89 deletions
diff --git a/framework/src/ant/apache-ant-1.9.6/src/main/org/apache/tools/ant/taskdefs/condition/IsReference.java b/framework/src/ant/apache-ant-1.9.6/src/main/org/apache/tools/ant/taskdefs/condition/IsReference.java deleted file mode 100644 index f172849b..00000000 --- a/framework/src/ant/apache-ant-1.9.6/src/main/org/apache/tools/ant/taskdefs/condition/IsReference.java +++ /dev/null @@ -1,89 +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.taskdefs.condition; - -import org.apache.tools.ant.BuildException; -import org.apache.tools.ant.ProjectComponent; -import org.apache.tools.ant.types.Reference; - -/** - * Condition that tests whether a given reference has been defined. - * - * <p>Optionally tests whether it is of a given type/class.</p> - * - * @since Ant 1.6 - */ -public class IsReference extends ProjectComponent implements Condition { - private Reference ref; - private String type; - - /** - * Set the refid attribute. - * - * @param r a Reference value - */ - public void setRefid(Reference r) { - ref = r; - } - - /** - * Set the type attribute. This is optional attribute. - * - * @param type an ant component type name - */ - public void setType(String type) { - this.type = type; - } - - /** - * @return true if the reference exists and if type is set, if - * the reference is the same type - * @exception BuildException if an error occurs - */ - public boolean eval() throws BuildException { - if (ref == null) { - throw new BuildException("No reference specified for isreference " - + "condition"); - } - - String key = ref.getRefId(); - if (!getProject().hasReference(key)) { - return false; - } else if (type == null) { - return true; - } else { - Object o = getProject().getReference(key); - Class typeClass = - (Class) getProject().getDataTypeDefinitions().get(type); - - if (typeClass == null) { - typeClass = - (Class) getProject().getTaskDefinitions().get(type); - } - - if (typeClass == null) { - // don't know the type, should throw exception instead? - return false; - } - - return typeClass.isAssignableFrom(o.getClass()); - } - } - -} |