Skip to content

Commit a649063

Browse files
committed
move dcr related capability to the package
1 parent c6b8672 commit a649063

42 files changed

Lines changed: 4075 additions & 1934 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

dcr.go

Lines changed: 58 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,58 @@
1+
package dcrlibwallet
2+
3+
import (
4+
// "context"
5+
// "fmt"
6+
"os"
7+
"path/filepath"
8+
9+
"decred.org/dcrwallet/v2/errors"
10+
11+
"github.com/asdine/storm"
12+
// "github.com/asdine/storm/q"
13+
14+
bolt "go.etcd.io/bbolt"
15+
16+
"github.com/planetdecred/dcrlibwallet/wallets/dcr"
17+
)
18+
19+
func initializeDCRWallet(rootDir, dbDriver, netType string) (*storm.DB, string, error) {
20+
var mwDB *storm.DB
21+
22+
rootDir = filepath.Join(rootDir, netType, "dcr")
23+
err := os.MkdirAll(rootDir, os.ModePerm)
24+
if err != nil {
25+
return mwDB, "", errors.Errorf("failed to create dcr rootDir: %v", err)
26+
}
27+
28+
err = initLogRotator(filepath.Join(rootDir, logFileName))
29+
if err != nil {
30+
return mwDB, "", errors.Errorf("failed to init dcr logRotator: %v", err.Error())
31+
}
32+
33+
mwDB, err = storm.Open(filepath.Join(rootDir, walletsDbName))
34+
if err != nil {
35+
log.Errorf("Error opening dcr wallets database: %s", err.Error())
36+
if err == bolt.ErrTimeout {
37+
// timeout error occurs if storm fails to acquire a lock on the database file
38+
return mwDB, "", errors.E(ErrWalletDatabaseInUse)
39+
}
40+
return mwDB, "", errors.Errorf("error opening dcr wallets database: %s", err.Error())
41+
}
42+
43+
// init database for saving/reading wallet objects
44+
err = mwDB.Init(&dcr.Wallet{})
45+
if err != nil {
46+
log.Errorf("Error initializing wallets database: %s", err.Error())
47+
return mwDB, "", err
48+
}
49+
50+
// init database for saving/reading proposal objects
51+
err = mwDB.Init(&dcr.Proposal{})
52+
if err != nil {
53+
log.Errorf("Error initializing wallets database: %s", err.Error())
54+
return mwDB, "", err
55+
}
56+
57+
return mwDB, rootDir, nil
58+
}

dexclient.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -105,7 +105,7 @@ func (mw *MultiWallet) prepareDexSupportForDcrWalletLibrary() error {
105105
return nil, fmt.Errorf("account error: %v", err)
106106
}
107107

108-
walletDesc := fmt.Sprintf("%q in %s", wallet.Name, wallet.dataDir)
108+
walletDesc := fmt.Sprintf("%q in %s", wallet.Name, wallet.DataDir)
109109
return dexdcr.NewSpvWallet(wallet.Internal(), walletDesc, chainParams, logger.SubLogger("DLWL")), nil
110110
}
111111

go.mod

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,12 @@ require (
55
decred.org/dcrwallet/v2 v2.0.2-0.20220505152146-ece5da349895
66
github.com/DataDog/zstd v1.4.8 // indirect
77
github.com/asdine/storm v0.0.0-20190216191021-fe89819f6282
8+
github.com/btcsuite/btcd v0.22.0-beta.0.20211026140004-31791ba4dc6e // indirect
9+
github.com/btcsuite/btclog v0.0.0-20170628155309-84c8d2346e9f // indirect
10+
github.com/btcsuite/btcutil v1.0.3-0.20210527170813-e2ba6805a890 // indirect
11+
github.com/btcsuite/btcwallet v0.12.0 // indirect
12+
github.com/btcsuite/btcwallet/walletdb v1.4.0 // indirect
13+
github.com/btcsuite/btcwallet/wtxmgr v1.3.0 // indirect
814
github.com/companyzero/sntrup4591761 v0.0.0-20220309191932-9e0f3af2f07a // indirect
915
github.com/dchest/siphash v1.2.3 // indirect
1016
github.com/decred/base58 v1.0.4 // indirect
@@ -16,6 +22,7 @@ require (
1622
github.com/decred/dcrd/dcrutil/v4 v4.0.0
1723
github.com/decred/dcrd/gcs/v3 v3.0.0
1824
github.com/decred/dcrd/hdkeychain/v3 v3.1.0
25+
github.com/decred/dcrd/rpc/jsonrpc/types/v3 v3.0.0
1926
github.com/decred/dcrd/txscript/v4 v4.0.0
2027
github.com/decred/dcrd/wire v1.5.0
2128
github.com/decred/dcrdata/v7 v7.0.0-20211216152310-365c9dc820eb
@@ -26,6 +33,7 @@ require (
2633
github.com/jessevdk/go-flags v1.5.0 // indirect
2734
github.com/jrick/logrotate v1.0.0
2835
github.com/kevinburke/nacl v0.0.0-20190829012316-f3ed23dbd7f8
36+
github.com/lightninglabs/neutrino v0.13.1-0.20211214231330-53b628ce1756 // indirect
2937
github.com/onsi/ginkgo v1.14.0
3038
github.com/onsi/gomega v1.10.1
3139
github.com/planetdecred/dcrlibwallet/dexdcr v0.0.0-20220223161805-c736f970653d

0 commit comments

Comments
 (0)