blob: 8603ca3af0c5e8a13053ccf43fcfbdd74d8e4a08 [file] [log] [blame]
package common
import (
"fmt"
"strconv"
"strings"
)
type XId struct {
Port int
IpAddress string
}
var XID = &XId{}
func (xId *XId) GenerateXID(tranId int64) string {
return fmt.Sprintf("%s:%d:%d",xId.IpAddress,xId.Port,tranId)
}
func (xId *XId) GetTransactionId(xid string) int64 {
if xid == "" { return -1 }
idx := strings.LastIndex(xid,":")
tranId,_ := strconv.ParseInt(xid[idx:],10,64)
return tranId
}