mirror of
https://github.com/LBRYFoundation/LBRY-Vault.git
synced 2025-09-11 04:59:51 +00:00
daemon: rm "daemon.wallet" reference
related: #4905 -- when closing a wallet, it can get gc-ed now TODO: PayServer needs to choose wallet somehow
This commit is contained in:
parent
0f6cbfba8e
commit
0ee73378c9
1 changed files with 13 additions and 7 deletions
|
@ -186,9 +186,14 @@ class PayServer(Logger):
|
||||||
self.pending = defaultdict(asyncio.Event)
|
self.pending = defaultdict(asyncio.Event)
|
||||||
util.register_callback(self.on_payment, ['payment_received'])
|
util.register_callback(self.on_payment, ['payment_received'])
|
||||||
|
|
||||||
|
@property
|
||||||
|
def wallet(self):
|
||||||
|
# FIXME specify wallet somehow?
|
||||||
|
return list(self.daemon.get_wallets().values())[0]
|
||||||
|
|
||||||
async def on_payment(self, evt, wallet, key, status):
|
async def on_payment(self, evt, wallet, key, status):
|
||||||
if status == PR_PAID:
|
if status == PR_PAID:
|
||||||
await self.pending[key].set()
|
self.pending[key].set()
|
||||||
|
|
||||||
@ignore_exceptions
|
@ignore_exceptions
|
||||||
@log_exceptions
|
@log_exceptions
|
||||||
|
@ -209,24 +214,26 @@ class PayServer(Logger):
|
||||||
|
|
||||||
async def create_request(self, request):
|
async def create_request(self, request):
|
||||||
params = await request.post()
|
params = await request.post()
|
||||||
wallet = self.daemon.wallet
|
wallet = self.wallet
|
||||||
if 'amount_sat' not in params or not params['amount_sat'].isdigit():
|
if 'amount_sat' not in params or not params['amount_sat'].isdigit():
|
||||||
raise web.HTTPUnsupportedMediaType()
|
raise web.HTTPUnsupportedMediaType()
|
||||||
amount = int(params['amount_sat'])
|
amount = int(params['amount_sat'])
|
||||||
message = params['message'] or "donation"
|
message = params['message'] or "donation"
|
||||||
payment_hash = await wallet.lnworker._add_invoice_coro(amount, message, 3600)
|
payment_hash = wallet.lnworker.add_request(amount_sat=amount,
|
||||||
|
message=message,
|
||||||
|
expiry=3600)
|
||||||
key = payment_hash.hex()
|
key = payment_hash.hex()
|
||||||
raise web.HTTPFound(self.root + '/pay?id=' + key)
|
raise web.HTTPFound(self.root + '/pay?id=' + key)
|
||||||
|
|
||||||
async def get_request(self, r):
|
async def get_request(self, r):
|
||||||
key = r.query_string
|
key = r.query_string
|
||||||
request = self.daemon.wallet.get_request(key)
|
request = self.wallet.get_request(key)
|
||||||
return web.json_response(request)
|
return web.json_response(request)
|
||||||
|
|
||||||
async def get_bip70_request(self, r):
|
async def get_bip70_request(self, r):
|
||||||
from .paymentrequest import make_request
|
from .paymentrequest import make_request
|
||||||
key = r.match_info['key']
|
key = r.match_info['key']
|
||||||
request = self.daemon.wallet.get_request(key)
|
request = self.wallet.get_request(key)
|
||||||
if not request:
|
if not request:
|
||||||
return web.HTTPNotFound()
|
return web.HTTPNotFound()
|
||||||
pr = make_request(self.config, request)
|
pr = make_request(self.config, request)
|
||||||
|
@ -236,7 +243,7 @@ class PayServer(Logger):
|
||||||
ws = web.WebSocketResponse()
|
ws = web.WebSocketResponse()
|
||||||
await ws.prepare(request)
|
await ws.prepare(request)
|
||||||
key = request.query_string
|
key = request.query_string
|
||||||
info = self.daemon.wallet.get_request(key)
|
info = self.wallet.get_request(key)
|
||||||
if not info:
|
if not info:
|
||||||
await ws.send_str('unknown invoice')
|
await ws.send_str('unknown invoice')
|
||||||
await ws.close()
|
await ws.close()
|
||||||
|
@ -427,7 +434,6 @@ class Daemon(Logger):
|
||||||
wallet = Wallet(db, storage, config=self.config)
|
wallet = Wallet(db, storage, config=self.config)
|
||||||
wallet.start_network(self.network)
|
wallet.start_network(self.network)
|
||||||
self._wallets[path] = wallet
|
self._wallets[path] = wallet
|
||||||
self.wallet = wallet
|
|
||||||
return wallet
|
return wallet
|
||||||
|
|
||||||
def add_wallet(self, wallet: Abstract_Wallet) -> None:
|
def add_wallet(self, wallet: Abstract_Wallet) -> None:
|
||||||
|
|
Loading…
Add table
Reference in a new issue