mirror of
https://github.com/XRPLF/rippled.git
synced 2025-11-05 11:45:51 +00:00
* Fix RIPD-509, RIPD-514, RIPD-519, RIPD-525, RIPD-527, RIPD-529, RIPD-530 and RIPD-531. * Protect people from ledger-spew and remove cruft. * Better error messages and handling. * Cache command lists or clears ledger cache. * Better ledger summaries. * Offline mode.
35 lines
1.1 KiB
Python
35 lines
1.1 KiB
Python
from __future__ import absolute_import, division, print_function, unicode_literals
|
|
|
|
from ripple.ledger.Args import ARGS
|
|
from ripple.ledger.PrettyPrint import pretty_print
|
|
from ripple.util import Log
|
|
from ripple.util import Range
|
|
|
|
SAFE = True
|
|
|
|
HELP = """cache
|
|
return server_info"""
|
|
|
|
def cache(server, clear=False):
|
|
cache = server.cache(ARGS.full)
|
|
name = ['summary', 'full'][ARGS.full]
|
|
files = cache.file_count()
|
|
if not files:
|
|
Log.error('No files in %s cache.' % name)
|
|
|
|
elif clear:
|
|
if not clear.strip() == 'clear':
|
|
raise Exception("Don't understand 'clear %s'." % clear)
|
|
if not ARGS.yes:
|
|
yes = raw_input('OK to clear %s cache? (y/N) ' % name)
|
|
if not yes.lower().startswith('y'):
|
|
Log.out('Cancelled.')
|
|
return
|
|
cache.clear(ARGS.full)
|
|
Log.out('%s cache cleared - %d file%s deleted.' %
|
|
(name.capitalize(), files, '' if files == 1 else 's'))
|
|
|
|
else:
|
|
caches = (int(c) for c in cache.cache_list())
|
|
Log.out(Range.to_string(caches))
|