001 package org.apache.turbine.modules.actions;
002
003 /*
004 * Licensed to the Apache Software Foundation (ASF) under one
005 * or more contributor license agreements. See the NOTICE file
006 * distributed with this work for additional information
007 * regarding copyright ownership. The ASF licenses this file
008 * to you under the Apache License, Version 2.0 (the
009 * "License"); you may not use this file except in compliance
010 * with the License. You may obtain a copy of the License at
011 *
012 * http://www.apache.org/licenses/LICENSE-2.0
013 *
014 * Unless required by applicable law or agreed to in writing,
015 * software distributed under the License is distributed on an
016 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
017 * KIND, either express or implied. See the License for the
018 * specific language governing permissions and limitations
019 * under the License.
020 */
021
022
023 import org.apache.turbine.pipeline.PipelineData;
024 import org.apache.turbine.util.RunData;
025 import org.apache.velocity.context.Context;
026 import org.apache.commons.logging.Log;
027 import org.apache.commons.logging.LogFactory;
028 /**
029 * This action is used in testing the ActionLoader for Velocity templates. Verifies
030 * that exceptions are properly bubbled out.
031 *
032 * @author <a href="mailto:epugh@upstate.com">Eric Pugh</a>
033 * @author <a href="mailto:peter@courcoux.biz">Peter Courcoux</a>
034 * @created October 11, 2002
035 */
036 public class VelocityActionThrowsException extends VelocityAction
037 {
038 private static Log log = LogFactory.getLog(VelocityActionThrowsException.class);
039 /**
040 * Default action is throw an exception.
041 *
042 * @param data Current RunData information
043 * @param context Context to populate
044 * @exception Exception Thrown on error
045 */
046 public void doPerform(RunData data, Context context) throws Exception
047 {
048 log.debug("Calling doPerform(RunData)");
049 throw new Exception("From VelocityActionThrowsException.doPerform an Exception is always thrown!");
050 }
051
052 /**
053 * Default action is throw an exception.
054 *
055 * @param data Current PipelineData information
056 * @param context Context to populate
057 * @exception Exception Thrown on error
058 */
059 public void doPerform(PipelineData data, Context context) throws Exception
060 {
061 log.debug("Calling doPerform(PipelineData)");
062 throw new Exception("From VelocityActionThrowsException.doPerform an Exception is always thrown!");
063 }
064
065
066
067 /**
068 * This action event also throws an exception.
069 * @param data
070 * @param context
071 * @throws Exception
072 */
073 public void doCauseexception(RunData data, Context context) throws Exception
074 {
075 log.debug("Calling doCauseexception(RunData)");
076 throw new Exception("From Action Event VelocityActionThrowsException.doCauseexception an Exception is always thrown!");
077 }
078
079 /**
080 * This action event also throws an exception.
081 * @param data
082 * @param context
083 * @throws Exception
084 */
085 public void doCauseexception(PipelineData data, Context context) throws Exception
086 {
087 log.debug("Calling doCauseexception(PipelineData)");
088 throw new Exception("From Action Event VelocityActionThrowsException.doCauseexception an Exception is always thrown!");
089 }
090
091
092 }