001 package org.apache.camel.spring;
002
003 public class IllegalActionException extends IllegalArgumentException {
004
005 private static final long serialVersionUID = -2166507687211986107L;
006 private final String actionName;
007 private final String previousAction;
008
009 public IllegalActionException(String actionName, String previousAction) {
010 super("Illegal route.");
011 this.actionName = actionName;
012 this.previousAction = previousAction;
013 }
014
015 @Override
016 public String getMessage() {
017 String errorContext = previousAction==null ? "as the starting action." : "after action '"+previousAction+"'.";
018 return super.getMessage() + "The action '"+actionName+"' cannot be used "+errorContext;
019 }
020 }