001// Copyright 2008, 2010 The Apache Software Foundation
002//
003// Licensed under the Apache License, Version 2.0 (the "License");
004// you may not use this file except in compliance with the License.
005// You may obtain a copy of the License at
006//
007// http://www.apache.org/licenses/LICENSE-2.0
008//
009// Unless required by applicable law or agreed to in writing, software
010// distributed under the License is distributed on an "AS IS" BASIS,
011// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
012// See the License for the specific language governing permissions and
013// limitations under the License.
014
015package org.apache.tapestry5.ioc.internal;
016
017import org.apache.tapestry5.commons.internal.util.TapestryException;
018
019/**
020 * An exception caught and reported by an {@link org.apache.tapestry5.ioc.OperationTracker}; the trace property
021 * identifies what operations were active at the time of the exception.
022 */
023public class OperationException extends TapestryException
024{
025    private static final long serialVersionUID = -7555673473832355909L;
026
027    private final String[] trace;
028
029    public OperationException(Throwable cause, String[] trace)
030    {
031        super(cause.getMessage(), cause);
032
033        this.trace = trace;
034    }
035
036    public String[] getTrace()
037    {
038        return trace;
039    }
040}