/* * $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; } }