forked from camptocamp/tilecloud
/
tb-delete
executable file
·41 lines (35 loc) · 1.33 KB
/
tb-delete
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
#!/usr/bin/env python
from itertools import imap
import logging
from optparse import OptionParser
import os.path
import sys
from tilebox import BoundingPyramid, TileStore, consume
from tilebox.filter.logger import Logger
from tilebox.store.boundingpyramid import BoundingPyramidTileStore
def main(argv):
logger = logging.getLogger(os.path.basename(argv[0]))
option_parser = OptionParser()
option_parser.add_option('-b', '--bounding-pyramid',
metavar='BOUNDING-PYRAMID')
option_parser.add_option('-v', '--verbose', action='store_true')
options, args = option_parser.parse_args(argv[1:])
if options.verbose:
logging.basicConfig(level=logging.INFO)
if options.bounding_pyramid:
bounding_pyramid = \
BoundingPyramid.from_string(options.bounding_pyramid)
else:
bounding_pyramid = None
for arg in args:
tilestore = TileStore.load(arg)
if bounding_pyramid:
tilestream = BoundingPyramidTileStore(bounding_pyramid).list()
else:
tilestream = tilestore.list()
tilestream = tilestore.delete(tilestream)
if options.verbose:
tilestream = imap(Logger(logger, logging.INFO, '%(tilecoord)s'), tilestream)
consume(tilestream, None)
if __name__ == '__main__':
sys.exit(main(sys.argv))