| 
01 /*02  * Copyright 2008-2015 the original author or authors.
 03  *
 04  * Licensed under the Apache License, Version 2.0 (the "License");
 05  * you may not use this file except in compliance with the License.
 06  * You may obtain a copy of the License at
 07  *
 08  *     http://www.apache.org/licenses/LICENSE-2.0
 09  *
 10  * Unless required by applicable law or agreed to in writing, software
 11  * distributed under the License is distributed on an "AS IS" BASIS,
 12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 13  * See the License for the specific language governing permissions and
 14  * limitations under the License.
 15  */
 16 package griffon.core.controller;
 17
 18 import griffon.core.artifact.GriffonController;
 19 import griffon.exceptions.GriffonException;
 20
 21 /**
 22  * Exception thrown when {@code ActionManager} can't find an action
 23  * for a particular controller.
 24  *
 25  * @author Andres Almiray
 26  * @since 2.0.0
 27  */
 28 public class MissingControllerActionException extends GriffonException {
 29     private static final long serialVersionUID = -6650690378356878061L;
 30
 31     private final Class<? extends GriffonController> controllerClass;
 32     private final String actionName;
 33
 34     public MissingControllerActionException(Class<? extends GriffonController> controllerClass, String actionName) {
 35         this(null, controllerClass, actionName, null);
 36     }
 37
 38     public MissingControllerActionException(String message, Class<? extends GriffonController> controllerClass, String actionName) {
 39         this(message, controllerClass, actionName, null);
 40     }
 41
 42     public MissingControllerActionException(String message, Class<? extends GriffonController> controllerClass, String actionName, Throwable cause) {
 43         super(message, cause);
 44         this.controllerClass = controllerClass;
 45         this.actionName = actionName;
 46     }
 47
 48     public MissingControllerActionException(Class<? extends GriffonController> controllerClass, String actionName, Throwable cause) {
 49         this("", controllerClass, actionName, cause);
 50     }
 51
 52     public Class<? extends GriffonController> getControllerClass() {
 53         return controllerClass;
 54     }
 55
 56     public String getActionName() {
 57         return actionName;
 58     }
 59 }
 |