• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

lightningnetwork / lnd / 14358372723

09 Apr 2025 01:26PM UTC coverage: 56.696% (-12.3%) from 69.037%
14358372723

Pull #9696

github

web-flow
Merge e2837e400 into 867d27d68
Pull Request #9696: Add `development_guidelines.md` for both human and machine

107055 of 188823 relevant lines covered (56.7%)

22721.56 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

16.13
/lnrpc/routerrpc/driver.go
1
package routerrpc
2

3
import (
4
        "fmt"
5

6
        "github.com/lightningnetwork/lnd/lnrpc"
7
)
8

9
// createNewSubServer is a helper method that will create the new router sub
10
// server given the main config dispatcher method. If we're unable to find the
11
// config that is meant for us in the config dispatcher, then we'll exit with
12
// an error.
13
func createNewSubServer(configRegistry lnrpc.SubServerConfigDispatcher) (
14
        *Server, lnrpc.MacaroonPerms, error) {
×
15

×
16
        // We'll attempt to look up the config that we expect, according to our
×
17
        // subServerName name. If we can't find this, then we'll exit with an
×
18
        // error, as we're unable to properly initialize ourselves without this
×
19
        // config.
×
20
        routeServerConf, ok := configRegistry.FetchConfig(subServerName)
×
21
        if !ok {
×
22
                return nil, nil, fmt.Errorf("unable to find config for "+
×
23
                        "subserver type %s", subServerName)
×
24
        }
×
25

26
        // Now that we've found an object mapping to our service name, we'll
27
        // ensure that it's the type we need.
28
        config, ok := routeServerConf.(*Config)
×
29
        if !ok {
×
30
                return nil, nil, fmt.Errorf("wrong type of config for "+
×
31
                        "subserver %s, expected %T got %T", subServerName,
×
32
                        &Config{}, routeServerConf)
×
33
        }
×
34

35
        // Before we try to make the new router service instance, we'll perform
36
        // some sanity checks on the arguments to ensure that they're usable.
37
        switch {
×
38
        case config.Router == nil:
×
39
                return nil, nil, fmt.Errorf("Router must be set to create " +
×
40
                        "Routerpc")
×
41
        }
42

43
        return New(config)
×
44
}
45

46
func init() {
4✔
47
        subServer := &lnrpc.SubServerDriver{
4✔
48
                SubServerName: subServerName,
4✔
49
                NewGrpcHandler: func() lnrpc.GrpcHandler {
4✔
50
                        return &ServerShell{}
×
51
                },
×
52
        }
53

54
        // If the build tag is active, then we'll register ourselves as a
55
        // sub-RPC server within the global lnrpc package namespace.
56
        if err := lnrpc.RegisterSubServer(subServer); err != nil {
4✔
57
                panic(fmt.Sprintf("failed to register sub server driver '%s': %v",
×
58
                        subServerName, err))
×
59
        }
60
}
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2025 Coveralls, Inc