Skip to content

Commit

Permalink
Potential new exceptions with more clear names.
Browse files Browse the repository at this point in the history
  • Loading branch information
averbraeck committed Nov 1, 2024
1 parent 3abad92 commit 3d131b9
Show file tree
Hide file tree
Showing 3 changed files with 162 additions and 0 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
package org.djutils.draw;

/**
* DegenerateLineException is a special type of DrawRuntimeException, that is thrown if a line or line segment is constructed or
* simplified to less than two points.
* <p>
* Copyright (c) 2020-2024 Delft University of Technology, PO Box 5, 2600 AA, Delft, the Netherlands. All rights reserved. <br>
* BSD-style license. See <a href="https://djutils.org/docs/current/djutils/licenses.html">DJUTILS License</a>.
* </p>
* @author <a href="https://www.tudelft.nl/averbraeck">Alexander Verbraeck</a>
* @author <a href="https://www.tudelft.nl/pknoppers">Peter Knoppers</a>
*/
public class DegenerateLineException extends DrawRuntimeException
{
/** */
private static final long serialVersionUID = 20200828L;

/**
* Create an empty runtime drawing exception.
*/
public DegenerateLineException()
{
super();
}

/**
* Create a runtime drawing exception with a custom message.
* @param message String; the custom message.
*/
public DegenerateLineException(final String message)
{
super(message);
}

/**
* Create a runtime drawing exception with an underlying cause.
* @param cause Throwable; the cause of this exception to be thrown
*/
public DegenerateLineException(final Throwable cause)
{
super(cause);
}

/**
* Create a runtime drawing exception with a custom message and an underlying cause.
* @param message String; the custom message
* @param cause Throwable; the cause of this exception to be thrown
*/
public DegenerateLineException(final String message, final Throwable cause)
{
super(message, cause);
}

}
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
package org.djutils.draw;

/**
* InternalCalculationException is a special type of DrawRuntimeException, that is thrown if a method fails during the
* construction of a drawable object or during the calculation of a property of a drawable object.
* <p>
* Copyright (c) 2020-2024 Delft University of Technology, PO Box 5, 2600 AA, Delft, the Netherlands. All rights reserved. <br>
* BSD-style license. See <a href="https://djutils.org/docs/current/djutils/licenses.html">DJUTILS License</a>.
* </p>
* @author <a href="https://www.tudelft.nl/averbraeck">Alexander Verbraeck</a>
* @author <a href="https://www.tudelft.nl/pknoppers">Peter Knoppers</a>
*/
public class InternalCalculationException extends DrawRuntimeException
{
/** */
private static final long serialVersionUID = 20200828L;

/**
* Create an empty runtime drawing exception.
*/
public InternalCalculationException()
{
super();
}

/**
* Create a runtime drawing exception with a custom message.
* @param message String; the custom message.
*/
public InternalCalculationException(final String message)
{
super(message);
}

/**
* Create a runtime drawing exception with an underlying cause.
* @param cause Throwable; the cause of this exception to be thrown
*/
public InternalCalculationException(final Throwable cause)
{
super(cause);
}

/**
* Create a runtime drawing exception with a custom message and an underlying cause.
* @param message String; the custom message
* @param cause Throwable; the cause of this exception to be thrown
*/
public InternalCalculationException(final String message, final Throwable cause)
{
super(message, cause);
}

}
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
package org.djutils.draw;

/**
* InvalidProjectionException is a special type of DrawRuntimeException, that is thrown if a projection results in an invalid
* object, or if a projection cannot be carried out.
* <p>
* Copyright (c) 2020-2024 Delft University of Technology, PO Box 5, 2600 AA, Delft, the Netherlands. All rights reserved. <br>
* BSD-style license. See <a href="https://djutils.org/docs/current/djutils/licenses.html">DJUTILS License</a>.
* </p>
* @author <a href="https://www.tudelft.nl/averbraeck">Alexander Verbraeck</a>
* @author <a href="https://www.tudelft.nl/pknoppers">Peter Knoppers</a>
*/
public class InvalidProjectionException extends DrawRuntimeException
{
/** */
private static final long serialVersionUID = 20200828L;

/**
* Create an empty runtime drawing exception.
*/
public InvalidProjectionException()
{
super();
}

/**
* Create a runtime drawing exception with a custom message.
* @param message String; the custom message.
*/
public InvalidProjectionException(final String message)
{
super(message);
}

/**
* Create a runtime drawing exception with an underlying cause.
* @param cause Throwable; the cause of this exception to be thrown
*/
public InvalidProjectionException(final Throwable cause)
{
super(cause);
}

/**
* Create a runtime drawing exception with a custom message and an underlying cause.
* @param message String; the custom message
* @param cause Throwable; the cause of this exception to be thrown
*/
public InvalidProjectionException(final String message, final Throwable cause)
{
super(message, cause);
}

}

0 comments on commit 3d131b9

Please sign in to comment.