| /* | |
| * $Id: LuaError.java 154 2012-02-01 20:40:01Z andre@naef.com $ | |
| * See LICENSE.txt for license terms. | |
| */ | |
| package com.naef.jnlua; | |
| /** | |
| * Contains information about a Lua error condition. This object is created in | |
| * the native library. | |
| */ | |
| class LuaError { | |
| // -- State | |
| private String message; | |
| private LuaStackTraceElement[] luaStackTrace; | |
| private Throwable cause; | |
| // -- Construction | |
| /** | |
| * Creates a new instance. | |
| */ | |
| public LuaError(String message, Throwable cause) { | |
| this.message = message; | |
| this.cause = cause; | |
| } | |
| // -- Properties | |
| /** | |
| * Returns the message. | |
| */ | |
| public String getMessage() { | |
| return message; | |
| } | |
| /** | |
| * Returns the Lua stack trace. | |
| */ | |
| public LuaStackTraceElement[] getLuaStackTrace() { | |
| return luaStackTrace; | |
| } | |
| /** | |
| * Returns the cause. | |
| */ | |
| public Throwable getCause() { | |
| return cause; | |
| } | |
| // -- Object methods | |
| @Override | |
| public String toString() { | |
| StringBuffer sb = new StringBuffer(); | |
| if (message != null) { | |
| sb.append(message); | |
| } | |
| if (cause != null) { | |
| sb.append(cause); | |
| } | |
| return sb.toString(); | |
| } | |
| // -- Package private methods | |
| /** | |
| * Sets the Lua stack trace. | |
| */ | |
| void setLuaStackTrace(LuaStackTraceElement[] luaStackTrace) { | |
| this.luaStackTrace = luaStackTrace; | |
| } | |
| } |