- /*
- * Copyright 2001-2004 The Apache Software Foundation
- *
- * Licensed 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.optional.jsp.compilers;
-
- import java.io.File;
- import java.util.Enumeration;
- import java.util.Vector;
- import org.apache.tools.ant.Project;
- import org.apache.tools.ant.taskdefs.optional.jsp.JspC;
- import org.apache.tools.ant.types.CommandlineJava;
-
- /**
- * This is the default implementation for the JspCompilerAdapter interface.
- * This is currently very light on the ground since only one compiler type is
- * supported.
- *
- */
- public abstract class DefaultJspCompilerAdapter
- implements JspCompilerAdapter {
-
- private static String lSep = System.getProperty("line.separator");
-
- /**
- * Logs the compilation parameters, adds the files to compile and logs the
- * "niceSourceList"
- */
- protected void logAndAddFilesToCompile(JspC jspc,
- Vector compileList,
- CommandlineJava cmd) {
- jspc.log("Compilation " + cmd.describeJavaCommand(),
- Project.MSG_VERBOSE);
-
- StringBuffer niceSourceList = new StringBuffer("File");
- if (compileList.size() != 1) {
- niceSourceList.append("s");
- }
- niceSourceList.append(" to be compiled:");
-
- niceSourceList.append(lSep);
-
- Enumeration e = compileList.elements();
- while (e.hasMoreElements()) {
- String arg = (String) e.nextElement();
- cmd.createArgument().setValue(arg);
- niceSourceList.append(" " + arg + lSep);
- }
-
- jspc.log(niceSourceList.toString(), Project.MSG_VERBOSE);
- }
-
- /**
- * our owner
- */
- protected JspC owner;
-
- /**
- * set the owner
- */
- public void setJspc(JspC owner) {
- this.owner = owner;
- }
-
- /** get the owner
- * @return the owner; should never be null
- */
- public JspC getJspc() {
- return owner;
- }
-
-
- /**
- * add an argument oneple to the argument list, if the value aint null
- *
- * @param argument The argument
- */
- protected void addArg(CommandlineJava cmd, String argument) {
- if (argument != null && argument.length() != 0) {
- cmd.createArgument().setValue(argument);
- }
- }
-
-
- /**
- * add an argument tuple to the argument list, if the value aint null
- *
- * @param argument The argument
- * @param value the parameter
- */
- protected void addArg(CommandlineJava cmd, String argument, String value) {
- if (value != null) {
- cmd.createArgument().setValue(argument);
- cmd.createArgument().setValue(value);
- }
- }
-
- /**
- * add an argument tuple to the arg list, if the file parameter aint null
- *
- * @param argument The argument
- * @param file the parameter
- */
- protected void addArg(CommandlineJava cmd, String argument, File file) {
- if (file != null) {
- cmd.createArgument().setValue(argument);
- cmd.createArgument().setFile(file);
- }
- }
-
- /**
- * ask if compiler can sort out its own dependencies
- * @return true if the compiler wants to do its own
- * depends
- */
- public boolean implementsOwnDependencyChecking() {
- return false;
- }
-
- /**
- * get our project
- * @return owner project data
- */
- public Project getProject() {
- return getJspc().getProject();
- }
- }
-