Skip to content

Commit

Permalink
config: add ChainRPC config
Browse files Browse the repository at this point in the history
  • Loading branch information
wpaulino committed Jan 12, 2019
1 parent f1ba0c2 commit 2831eab
Show file tree
Hide file tree
Showing 2 changed files with 23 additions and 1 deletion.
5 changes: 4 additions & 1 deletion log.go
Expand Up @@ -10,7 +10,6 @@ import (
"github.com/btcsuite/btclog"
"github.com/jrick/logrotate/rotator"
"github.com/lightninglabs/neutrino"

"github.com/lightningnetwork/lightning-onion"
"github.com/lightningnetwork/lnd/autopilot"
"github.com/lightningnetwork/lnd/build"
Expand All @@ -21,6 +20,7 @@ import (
"github.com/lightningnetwork/lnd/htlcswitch"
"github.com/lightningnetwork/lnd/invoices"
"github.com/lightningnetwork/lnd/lnrpc/autopilotrpc"
"github.com/lightningnetwork/lnd/lnrpc/chainrpc"
"github.com/lightningnetwork/lnd/lnrpc/signrpc"
"github.com/lightningnetwork/lnd/lnrpc/walletrpc"
"github.com/lightningnetwork/lnd/lnwallet"
Expand Down Expand Up @@ -75,6 +75,7 @@ var (
arpcLog = build.NewSubLogger("ARPC", backendLog.Logger)
invcLog = build.NewSubLogger("INVC", backendLog.Logger)
nannLog = build.NewSubLogger("NANN", backendLog.Logger)
ntfrLog = build.NewSubLogger("NTFR", backendLog.Logger)
)

// Initialize package-global logger variables.
Expand All @@ -97,6 +98,7 @@ func init() {
autopilotrpc.UseLogger(arpcLog)
invoices.UseLogger(invcLog)
netann.UseLogger(nannLog)
chainrpc.UseLogger(ntfrLog)
}

// subsystemLoggers maps each subsystem identifier to its associated logger.
Expand Down Expand Up @@ -125,6 +127,7 @@ var subsystemLoggers = map[string]btclog.Logger{
"ARPC": arpcLog,
"INVC": invcLog,
"NANN": nannLog,
"NTFR": ntfnLog,
}

// initLogRotator initializes the logging rotator to write logs to logFile and
Expand Down
19 changes: 19 additions & 0 deletions subrpcserver_config.go
Expand Up @@ -6,6 +6,7 @@ import (

"github.com/lightningnetwork/lnd/autopilot"
"github.com/lightningnetwork/lnd/lnrpc/autopilotrpc"
"github.com/lightningnetwork/lnd/lnrpc/chainrpc"
"github.com/lightningnetwork/lnd/lnrpc/signrpc"
"github.com/lightningnetwork/lnd/lnrpc/walletrpc"
"github.com/lightningnetwork/lnd/macaroons"
Expand All @@ -31,6 +32,11 @@ type subRPCServerConfigs struct {
// AutopilotRPC is a sub-RPC server that exposes methods on the running
// autopilot as a gRPC service.
AutopilotRPC *autopilotrpc.Config `group:"autopilotrpc" namespace:"autopilotrpc"`

// ChainRPC is a sub-RPC server that exposes functionality allowing a
// client to be notified of certain on-chain events (new blocks,
// confirmations, spends).
ChainRPC *chainrpc.Config `group:"chainrpc" namespace:"chainrpc"`
}

// PopulateDependencies attempts to iterate through all the sub-server configs
Expand Down Expand Up @@ -106,6 +112,19 @@ func (s *subRPCServerConfigs) PopulateDependencies(cc *chainControl,
reflect.ValueOf(atpl),
)

case *chainrpc.Config:
subCfgValue := extractReflectValue(cfg)

subCfgValue.FieldByName("NetworkDir").Set(
reflect.ValueOf(networkDir),
)
subCfgValue.FieldByName("MacService").Set(
reflect.ValueOf(macService),
)
subCfgValue.FieldByName("ChainNotifier").Set(
reflect.ValueOf(cc.chainNotifier),
)

default:
return fmt.Errorf("unknown field: %v, %T", fieldName,
cfg)
Expand Down

0 comments on commit 2831eab

Please sign in to comment.