View Javadoc

    1   /*
    2    * $Id: ModuleException.java 471754 2006-11-06 14:55:09Z husted $
    3    *
    4    * Licensed to the Apache Software Foundation (ASF) under one
    5    * or more contributor license agreements.  See the NOTICE file
    6    * distributed with this work for additional information
    7    * regarding copyright ownership.  The ASF licenses this file
    8    * to you under the Apache License, Version 2.0 (the
    9    * "License"); you may not use this file except in compliance
    10   * with the License.  You may obtain a copy of the License at
    11   *
    12   *  http://www.apache.org/licenses/LICENSE-2.0
    13   *
    14   * Unless required by applicable law or agreed to in writing,
    15   * software distributed under the License is distributed on an
    16   * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
    17   * KIND, either express or implied.  See the License for the
    18   * specific language governing permissions and limitations
    19   * under the License.
    20   */
    21  package org.apache.struts.util;
    22
    23  import org.apache.struts.action.ActionMessage;
    24
    25  /**
    26   * Used for specialized exception handling.
    27   */
    28  public class ModuleException extends Exception {
    29      protected String property = null;
    30
    31      /**
    32       * The ActionMessage associated with this exception.
    33       *
    34       * @since Struts 1.2
    35       */
    36      protected ActionMessage message = null;
    37
    38      /**
    39       * Construct an module exception with no replacement values.
    40       *
    41       * @param key Message key for this error message
    42       */
    43      public ModuleException(String key) {
    44          super(key);
    45          message = new ActionMessage(key);
    46      }
    47
    48      /**
    49       * Construct an module exception with the specified replacement values.
    50       *
    51       * @param key   Message key for this error message
    52       * @param value First replacement value
    53       */
    54      public ModuleException(String key, Object value) {
    55          super(key);
    56          message = new ActionMessage(key, value);
    57      }
    58
    59      /**
    60       * Construct an module exception with the specified replacement values.
    61       *
    62       * @param key    Message key for this error message
    63       * @param value0 First replacement value
    64       * @param value1 Second replacement value
    65       */
    66      public ModuleException(String key, Object value0, Object value1) {
    67          super(key);
    68          message = new ActionMessage(key, value0, value1);
    69      }
    70
    71      /**
    72       * Construct an module exception with the specified replacement values.
    73       *
    74       * @param key    Message key for this error message
    75       * @param value0 First replacement value
    76       * @param value1 Second replacement value
    77       * @param value2 Third replacement value
    78       */
    79      public ModuleException(String key, Object value0, Object value1,
    80          Object value2) {
    81          super(key);
    82          message = new ActionMessage(key, value0, value1, value2);
    83      }
    84
    85      /**
    86       * Construct an module exception with the specified replacement values.
    87       *
    88       * @param key    Message key for this error message
    89       * @param value0 First replacement value
    90       * @param value1 Second replacement value
    91       * @param value2 Third replacement value
    92       * @param value3 Fourth replacement value
    93       */
    94      public ModuleException(String key, Object value0, Object value1,
    95          Object value2, Object value3) {
    96          super(key);
    97          message = new ActionMessage(key, value0, value1, value2, value3);
    98      }
    99
    100     /**
    101      * Construct an error with the specified replacement values.
    102      *
    103      * @param key    Message key for this message
    104      * @param values Array of replacement values
    105      */
    106     public ModuleException(String key, Object[] values) {
    107         super(key);
    108         message = new ActionMessage(key, values);
    109     }
    110
    111     /**
    112      * Returns the property associated with the exception.
    113      *
    114      * @return Value of property.
    115      */
    116     public String getProperty() {
    117         return (property != null) ? property : message.getKey();
    118     }
    119
    120     /**
    121      * Set the property associated with the exception. It can be a name of the
    122      * edit field, which 'caused' the exception.
    123      */
    124     public void setProperty(String property) {
    125         this.property = property;
    126     }
    127
    128     /**
    129      * Returns the error associated with the exception.
    130      *
    131      * @return Value of property error.
    132      * @since Struts 1.2
    133      */
    134     public ActionMessage getActionMessage() {
    135         return this.message;
    136     }
    137 }