add forward policy

pull/1/head
Edouard Paris 5 years ago
parent 429cc8c329
commit 1ff207cacf

@ -235,6 +235,8 @@ func (l Backend) GetChannelInfo(ctx context.Context, channel *models.Channel) er
t := time.Unix(int64(uint64(resp.LastUpdate)), 0)
channel.LastUpdate = &t
channel.Policy1 = protoToRoutingPolicy(resp.Node1Policy)
channel.Policy2 = protoToRoutingPolicy(resp.Node2Policy)
return nil
}

@ -185,3 +185,16 @@ func nodeProtoToNode(resp *lnrpc.NodeInfo) *models.Node {
Addresses: addresses,
}
}
func protoToRoutingPolicy(resp *lnrpc.RoutingPolicy) *models.RoutingPolicy {
if resp == nil {
return nil
}
return &models.RoutingPolicy{
TimeLockDelta: resp.TimeLockDelta,
MinHtlc: resp.MinHtlc,
FeeBaseMsat: resp.FeeBaseMsat,
FeeRateMilliMsat: resp.FeeRateMilliMsat,
Disabled: resp.Disabled,
}
}

@ -38,6 +38,8 @@ type Channel struct {
PendingHTLC []*HTLC
LastUpdate *time.Time
Node *Node
Policy1 *RoutingPolicy
Policy2 *RoutingPolicy
}
func (m Channel) MarshalLogObject(enc logging.ObjectEncoder) error {
@ -61,3 +63,11 @@ func (m Channel) MarshalLogObject(enc logging.ObjectEncoder) error {
type ChannelUpdate struct {
}
type RoutingPolicy struct {
TimeLockDelta uint32
MinHtlc int64
FeeBaseMsat int64
FeeRateMilliMsat int64
Disabled bool
}

@ -59,6 +59,14 @@ func (c *Channels) Update(newChannel *models.Channel) {
if newChannel.LastUpdate != nil {
oldChannel.LastUpdate = newChannel.LastUpdate
}
if newChannel.Policy1 != nil {
oldChannel.Policy1 = newChannel.Policy1
}
if newChannel.Policy2 != nil {
oldChannel.Policy2 = newChannel.Policy2
}
}
func NewChannels() *Channels {

@ -247,6 +247,38 @@ func (c *Channel) display(v *gocui.View) {
fmt.Fprintln(v, p.Sprintf("%s %d",
color.Cyan(" Total Channels:"), channel.Node.NumChannels))
}
if channel.Policy1 != nil {
fmt.Fprintln(v, "")
fmt.Fprintln(v, color.Green(" [ Forward Policy Node1 ]"))
if channel.Policy1.Disabled {
fmt.Fprintln(v, color.Red("disabled"))
}
fmt.Fprintln(v, p.Sprintf("%s %d",
color.Cyan(" Time lock delta:"), channel.Policy1.TimeLockDelta))
fmt.Fprintln(v, p.Sprintf("%s %d",
color.Cyan(" Min htlc:"), channel.Policy1.MinHtlc))
fmt.Fprintln(v, p.Sprintf("%s %d",
color.Cyan(" Fee base msat:"), channel.Policy1.FeeBaseMsat))
fmt.Fprintln(v, p.Sprintf("%s %d",
color.Cyan("Fee rate milli msat:"), channel.Policy1.FeeRateMilliMsat))
}
if channel.Policy2 != nil {
fmt.Fprintln(v, "")
fmt.Fprintln(v, color.Green(" [ Forward Policy Node 2 ]"))
if channel.Policy2.Disabled {
fmt.Fprintln(v, color.Red("disabled"))
}
fmt.Fprintln(v, p.Sprintf("%s %d",
color.Cyan(" Time lock delta:"), channel.Policy2.TimeLockDelta))
fmt.Fprintln(v, p.Sprintf("%s %d",
color.Cyan(" Min htlc:"), channel.Policy2.MinHtlc))
fmt.Fprintln(v, p.Sprintf("%s %d",
color.Cyan(" Fee base msat:"), channel.Policy2.FeeBaseMsat))
fmt.Fprintln(v, p.Sprintf("%s %d",
color.Cyan("Fee rate milli msat:"), channel.Policy2.FeeRateMilliMsat))
}
}
func NewChannel(channel *models.Channel) *Channel {

Loading…
Cancel
Save