mirror of https://github.com/OpenIdentityPlatform/OpenDJ.git

neil_a_wilson
29.44.2007 d0316030152b6eeb737110fee60e0e0d03138835
opends/src/server/org/opends/server/util/StaticUtils.java
@@ -34,6 +34,7 @@
import java.io.FileOutputStream;
import java.io.InputStreamReader;
import java.io.IOException;
import java.lang.reflect.InvocationTargetException;
import java.nio.ByteBuffer;
import java.text.ParseException;
import java.util.ArrayList;
@@ -1462,21 +1463,8 @@
      return;
    }
    buffer.append(t);
    for (StackTraceElement e : t.getStackTrace())
    if (DynamicConstants.DEBUG_BUILD)
    {
      buffer.append(" / ");
      buffer.append(e.getFileName());
      buffer.append(":");
      buffer.append(e.getLineNumber());
    }
    while (t.getCause() != null)
    {
      t = t.getCause();
      buffer.append("; caused by ");
      buffer.append(t);
      for (StackTraceElement e : t.getStackTrace())
@@ -1486,6 +1474,66 @@
        buffer.append(":");
        buffer.append(e.getLineNumber());
      }
      while (t.getCause() != null)
      {
        t = t.getCause();
        buffer.append("; caused by ");
        buffer.append(t);
        for (StackTraceElement e : t.getStackTrace())
        {
          buffer.append(" / ");
          buffer.append(e.getFileName());
          buffer.append(":");
          buffer.append(e.getLineNumber());
        }
      }
    }
    else
    {
      if ((t instanceof InvocationTargetException) && (t.getCause() != null))
      {
        t = t.getCause();
      }
      String message = t.getMessage();
      if ((message == null) || (message.length() == 0))
      {
        String className = t.getClass().getName();
        try
        {
          className = className.substring(className.lastIndexOf('.') + 1);
        } catch (Exception e) {}
        buffer.append(className);
      }
      else
      {
        buffer.append(message);
      }
      int i=0;
      buffer.append("(");
      for (StackTraceElement e : t.getStackTrace())
      {
        if (i > 4)
        {
          buffer.append(" ...");
          break;
        }
        else if (i > 0)
        {
          buffer.append(" ");
        }
        buffer.append(e.getFileName());
        buffer.append(":");
        buffer.append(e.getLineNumber());
        i++;
      }
      buffer.append(")");
    }
  }