当前位置: 首页>>代码示例>>Java>>正文


Java StackTraceElementMessage类代码示例

本文整理汇总了Java中org.apache.hadoop.hbase.protobuf.generated.ErrorHandlingProtos.StackTraceElementMessage的典型用法代码示例。如果您正苦于以下问题:Java StackTraceElementMessage类的具体用法?Java StackTraceElementMessage怎么用?Java StackTraceElementMessage使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


StackTraceElementMessage类属于org.apache.hadoop.hbase.protobuf.generated.ErrorHandlingProtos包,在下文中一共展示了StackTraceElementMessage类的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: toStackTraceElementMessages

import org.apache.hadoop.hbase.protobuf.generated.ErrorHandlingProtos.StackTraceElementMessage; //导入依赖的package包/类
/**
 * Convert a stack trace to list of {@link StackTraceElement}.
 * @param trace the stack trace to convert to protobuf message
 * @return <tt>null</tt> if the passed stack is <tt>null</tt>.
 */
private static List<StackTraceElementMessage> toStackTraceElementMessages(
    StackTraceElement[] trace) {
  // if there is no stack trace, ignore it and just return the message
  if (trace == null) return null;
  // build the stack trace for the message
  List<StackTraceElementMessage> pbTrace =
      new ArrayList<StackTraceElementMessage>(trace.length);
  for (StackTraceElement elem : trace) {
    StackTraceElementMessage.Builder stackBuilder = StackTraceElementMessage.newBuilder();
    stackBuilder.setDeclaringClass(elem.getClassName());
    stackBuilder.setFileName(elem.getFileName());
    stackBuilder.setLineNumber(elem.getLineNumber());
    stackBuilder.setMethodName(elem.getMethodName());
    pbTrace.add(stackBuilder.build());
  }
  return pbTrace;
}
 
开发者ID:fengchen8086,项目名称:ditb,代码行数:23,代码来源:ForeignException.java

示例2: serialize

import org.apache.hadoop.hbase.protobuf.generated.ErrorHandlingProtos.StackTraceElementMessage; //导入依赖的package包/类
/**
 * Converts a ForeignException to an array of bytes.
 * @param source the name of the external exception source
 * @param t the "local" external exception (local)
 * @return protobuf serialized version of ForeignException
 */
public static byte[] serialize(String source, Throwable t) {
  GenericExceptionMessage.Builder gemBuilder = GenericExceptionMessage.newBuilder();
  gemBuilder.setClassName(t.getClass().getName());
  if (t.getMessage() != null) {
    gemBuilder.setMessage(t.getMessage());
  }
  // set the stack trace, if there is one
  List<StackTraceElementMessage> stack =
      ForeignException.toStackTraceElementMessages(t.getStackTrace());
  if (stack != null) {
    gemBuilder.addAllTrace(stack);
  }
  GenericExceptionMessage payload = gemBuilder.build();
  ForeignExceptionMessage.Builder exception = ForeignExceptionMessage.newBuilder();
  exception.setGenericException(payload).setSource(source);
  ForeignExceptionMessage eem = exception.build();
  return eem.toByteArray();
}
 
开发者ID:fengchen8086,项目名称:ditb,代码行数:25,代码来源:ForeignException.java

示例3: toProtoForeignException

import org.apache.hadoop.hbase.protobuf.generated.ErrorHandlingProtos.StackTraceElementMessage; //导入依赖的package包/类
public static ForeignExceptionMessage toProtoForeignException(String source, Throwable t) {
  GenericExceptionMessage.Builder gemBuilder = GenericExceptionMessage.newBuilder();
  gemBuilder.setClassName(t.getClass().getName());
  if (t.getMessage() != null) {
    gemBuilder.setMessage(t.getMessage());
  }
  // set the stack trace, if there is one
  List<StackTraceElementMessage> stack = toProtoStackTraceElement(t.getStackTrace());
  if (stack != null) {
    gemBuilder.addAllTrace(stack);
  }
  GenericExceptionMessage payload = gemBuilder.build();
  ForeignExceptionMessage.Builder exception = ForeignExceptionMessage.newBuilder();
  exception.setGenericException(payload).setSource(source);
  return exception.build();
}
 
开发者ID:fengchen8086,项目名称:ditb,代码行数:17,代码来源:ForeignExceptionUtil.java

示例4: toProtoStackTraceElement

import org.apache.hadoop.hbase.protobuf.generated.ErrorHandlingProtos.StackTraceElementMessage; //导入依赖的package包/类
/**
 * Convert a stack trace to list of {@link StackTraceElement}.
 * @param trace the stack trace to convert to protobuf message
 * @return <tt>null</tt> if the passed stack is <tt>null</tt>.
 */
public static List<StackTraceElementMessage> toProtoStackTraceElement(StackTraceElement[] trace) {
  // if there is no stack trace, ignore it and just return the message
  if (trace == null) return null;
  // build the stack trace for the message
  List<StackTraceElementMessage> pbTrace = new ArrayList<StackTraceElementMessage>(trace.length);
  for (StackTraceElement elem : trace) {
    StackTraceElementMessage.Builder stackBuilder = StackTraceElementMessage.newBuilder();
    stackBuilder.setDeclaringClass(elem.getClassName());
    if (elem.getFileName() != null) {
      stackBuilder.setFileName(elem.getFileName());
    }
    stackBuilder.setLineNumber(elem.getLineNumber());
    stackBuilder.setMethodName(elem.getMethodName());
    pbTrace.add(stackBuilder.build());
  }
  return pbTrace;
}
 
开发者ID:fengchen8086,项目名称:ditb,代码行数:23,代码来源:ForeignExceptionUtil.java

示例5: toStackTrace

import org.apache.hadoop.hbase.protobuf.generated.ErrorHandlingProtos.StackTraceElementMessage; //导入依赖的package包/类
/**
 * Unwind a serialized array of {@link StackTraceElementMessage}s to a
 * {@link StackTraceElement}s.
 * @param traceList list that was serialized
 * @return the deserialized list or <tt>null</tt> if it couldn't be unwound (e.g. wasn't set on
 *         the sender).
 */
private static StackTraceElement[] toStackTrace(List<StackTraceElementMessage> traceList) {
  if (traceList == null || traceList.size() == 0) {
    return new StackTraceElement[0]; // empty array
  }
  StackTraceElement[] trace = new StackTraceElement[traceList.size()];
  for (int i = 0; i < traceList.size(); i++) {
    StackTraceElementMessage elem = traceList.get(i);
    trace[i] = new StackTraceElement(
        elem.getDeclaringClass(), elem.getMethodName(), elem.getFileName(), elem.getLineNumber());
  }
  return trace;
}
 
开发者ID:fengchen8086,项目名称:ditb,代码行数:20,代码来源:ForeignException.java

示例6: toStackTrace

import org.apache.hadoop.hbase.protobuf.generated.ErrorHandlingProtos.StackTraceElementMessage; //导入依赖的package包/类
/**
 * Unwind a serialized array of {@link StackTraceElementMessage}s to a
 * {@link StackTraceElement}s.
 * @param traceList list that was serialized
 * @return the deserialized list or <tt>null</tt> if it couldn't be unwound (e.g. wasn't set on
 *         the sender).
 */
public static StackTraceElement[] toStackTrace(List<StackTraceElementMessage> traceList) {
  if (traceList == null || traceList.size() == 0) {
    return new StackTraceElement[0]; // empty array
  }
  StackTraceElement[] trace = new StackTraceElement[traceList.size()];
  for (int i = 0; i < traceList.size(); i++) {
    StackTraceElementMessage elem = traceList.get(i);
    trace[i] = new StackTraceElement(
        elem.getDeclaringClass(), elem.getMethodName(),
        elem.hasFileName() ? elem.getFileName() : null,
        elem.getLineNumber());
  }
  return trace;
}
 
开发者ID:fengchen8086,项目名称:ditb,代码行数:22,代码来源:ForeignExceptionUtil.java


注:本文中的org.apache.hadoop.hbase.protobuf.generated.ErrorHandlingProtos.StackTraceElementMessage类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。