+ xapp.Logger.Debug("RELEASE %s", t.String())
+ t.tracker = nil
+ t.mutex.Unlock()
+}
+
+//-----------------------------------------------------------------------------
+//
+//-----------------------------------------------------------------------------
+type TransactionXappKey struct {
+ xapp.RmrEndpoint
+ Xid string // xapp xid in req
+}
+
+func (key *TransactionXappKey) String() string {
+ return "transkey(" + key.RmrEndpoint.String() + "/" + key.Xid + ")"
+}
+
+//-----------------------------------------------------------------------------
+//
+//-----------------------------------------------------------------------------
+type TransactionXapp struct {
+ Transaction
+ XappKey *TransactionXappKey
+ RequestId e2ap.RequestId
+}
+
+func (t *TransactionXapp) String() string {
+ var transkey string = "transkey(N/A)"
+ if t.XappKey != nil {
+ transkey = t.XappKey.String()