SCB-1696 Refactoring duplicate code
diff --git a/omega/omega-transaction/src/main/java/org/apache/servicecomb/pack/omega/transaction/SagaAbortedEvent.java b/omega/omega-transaction/src/main/java/org/apache/servicecomb/pack/omega/transaction/SagaAbortedEvent.java
index d73f4bb..343cb67 100644
--- a/omega/omega-transaction/src/main/java/org/apache/servicecomb/pack/omega/transaction/SagaAbortedEvent.java
+++ b/omega/omega-transaction/src/main/java/org/apache/servicecomb/pack/omega/transaction/SagaAbortedEvent.java
@@ -17,26 +17,12 @@
package org.apache.servicecomb.pack.omega.transaction;
-import java.io.PrintWriter;
-import java.io.StringWriter;
import org.apache.servicecomb.pack.common.EventType;
public class SagaAbortedEvent extends TxEvent {
- private static final int PAYLOADS_MAX_LENGTH = 10240;
-
public SagaAbortedEvent(String globalTxId, String localTxId, String parentTxId, String compensationMethod, Throwable throwable) {
super(EventType.SagaAbortedEvent, globalTxId, localTxId, parentTxId, compensationMethod, 0, "", 0,
0, 0, 0, 0, stackTrace(throwable));
}
-
- private static String stackTrace(Throwable e) {
- StringWriter writer = new StringWriter();
- e.printStackTrace(new PrintWriter(writer));
- String stackTrace = writer.toString();
- if (stackTrace.length() > PAYLOADS_MAX_LENGTH) {
- stackTrace = stackTrace.substring(0, PAYLOADS_MAX_LENGTH);
- }
- return stackTrace;
- }
}
\ No newline at end of file
diff --git a/omega/omega-transaction/src/main/java/org/apache/servicecomb/pack/omega/transaction/TxAbortedEvent.java b/omega/omega-transaction/src/main/java/org/apache/servicecomb/pack/omega/transaction/TxAbortedEvent.java
index 9a3d555..fe0818d 100644
--- a/omega/omega-transaction/src/main/java/org/apache/servicecomb/pack/omega/transaction/TxAbortedEvent.java
+++ b/omega/omega-transaction/src/main/java/org/apache/servicecomb/pack/omega/transaction/TxAbortedEvent.java
@@ -17,27 +17,12 @@
package org.apache.servicecomb.pack.omega.transaction;
-import java.io.PrintWriter;
-import java.io.StringWriter;
-
import org.apache.servicecomb.pack.common.EventType;
public class TxAbortedEvent extends TxEvent {
- private static final int PAYLOADS_MAX_LENGTH = 10240;
-
public TxAbortedEvent(String globalTxId, String localTxId, String parentTxId, String compensationMethod, Throwable throwable) {
super(EventType.TxAbortedEvent, globalTxId, localTxId, parentTxId, compensationMethod, 0, "", 0,
0, 0, 0, 0, stackTrace(throwable));
}
-
- private static String stackTrace(Throwable e) {
- StringWriter writer = new StringWriter();
- e.printStackTrace(new PrintWriter(writer));
- String stackTrace = writer.toString();
- if (stackTrace.length() > PAYLOADS_MAX_LENGTH) {
- stackTrace = stackTrace.substring(0, PAYLOADS_MAX_LENGTH);
- }
- return stackTrace;
- }
}
diff --git a/omega/omega-transaction/src/main/java/org/apache/servicecomb/pack/omega/transaction/TxEvent.java b/omega/omega-transaction/src/main/java/org/apache/servicecomb/pack/omega/transaction/TxEvent.java
index b7dabaa..4cab583 100644
--- a/omega/omega-transaction/src/main/java/org/apache/servicecomb/pack/omega/transaction/TxEvent.java
+++ b/omega/omega-transaction/src/main/java/org/apache/servicecomb/pack/omega/transaction/TxEvent.java
@@ -17,12 +17,14 @@
package org.apache.servicecomb.pack.omega.transaction;
+import java.io.PrintWriter;
+import java.io.StringWriter;
import java.util.Arrays;
import org.apache.servicecomb.pack.common.EventType;
public class TxEvent {
-
+ protected static final int PAYLOADS_MAX_LENGTH = 10240;
private final long timestamp;
private final EventType type;
private final String globalTxId;
@@ -131,4 +133,14 @@
", payloads=" + Arrays.toString(payloads) +
'}';
}
+
+ protected static String stackTrace(Throwable e) {
+ StringWriter writer = new StringWriter();
+ e.printStackTrace(new PrintWriter(writer));
+ String stackTrace = writer.toString();
+ if (stackTrace.length() > PAYLOADS_MAX_LENGTH) {
+ stackTrace = stackTrace.substring(0, PAYLOADS_MAX_LENGTH);
+ }
+ return stackTrace;
+ }
}