001/* -*- mode: Java; c-basic-offset: 2; indent-tabs-mode: nil; coding: utf-8-unix -*-
002 *
003 * Copyright © 2023 microBean™.
004 *
005 * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with
006 * the License.  You may obtain a copy of the License at
007 *
008 *     http://www.apache.org/licenses/LICENSE-2.0
009 *
010 * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on
011 * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  See the License for the
012 * specific language governing permissions and limitations under the License.
013 */
014package org.microbean.scopelet;
015
016/**
017 * A {@link ScopeletException} indicating that there were too many {@linkplain Scopelet#active() active} {@link
018 * Scopelet}s when zero or one was expected.
019 *
020 * @author <a href="https://about.me/lairdnelson" target="_top">Laird Nelson</a>
021 */
022public class TooManyActiveScopeletsException extends ScopeletException {
023
024  private static final long serialVersionUID = 1L;
025
026  /**
027   * Creates a new {@link TooManyActiveScopeletsException}.
028   */
029  public TooManyActiveScopeletsException() {
030    super();
031  }
032
033  /**
034   * Creates a new {@link TooManyActiveScopeletsException}.
035   *
036   * @param message a detail message; may be {@code null}
037   */
038  public TooManyActiveScopeletsException(final String message) {
039    super(message);
040  }
041
042  /**
043   * Creates a new {@link TooManyActiveScopeletsException}.
044   *
045   * @param cause a {@link Throwable} that caused this {@link TooManyActiveScopeletsException} to be created; may be
046   * {@code null}
047   */
048  public TooManyActiveScopeletsException(final Throwable cause) {
049    super(cause);
050  }
051
052  /**
053   * Creates a new {@link TooManyActiveScopeletsException}.
054   *
055   * @param message a detail message; may be {@code null}
056   *
057   * @param cause a {@link Throwable} that caused this {@link TooManyActiveScopeletsException} to be created; may be
058   * {@code null}
059   */
060  public TooManyActiveScopeletsException(final String message, final Throwable cause) {
061    super(message, cause);
062  }
063
064}