1
2
3 u"""
4 Сохранение информации о котировках в виде Prepared-XML.
5 """
6
7 from __future__ import with_statement
8
9 __author__ = "Zasimov Alexey"
10 __email__ = "zasimov-a@yandex-team.ru"
11
12 from stocks3.core.factories import savers
13 from stocks3.core.saver import Saver
14 from stocks3.core.config import parseXML
15 import Cheetah, Cheetah.Template
16 from StringIO import StringIO
17 from stocks3.share.xml import minimize, tidylib
18
19
21
22 DEFAULT_TEMPLATE = "tmpl/prepared.xml"
23 PREFIX = "data/prepare/"
24 SUFFIX = ".prepare.data.xml"
25
29
31 u"""
32 Конструирует имя целевого файла, если это имя не указано в параметрах
33 Saver'a.
34 Работает просто: PREFIX + source.id + SUFFIX
35 """
36 return self.PREFIX + self.source.sourceId + self.SUFFIX
37
41
42 - def save(self, price):
43 Saver.save(self, price)
44 self.prices.append(price)
45
47 sl = {}
48 sl["prices"] = self.prices
49 sl["source"] = self.source
50 return [sl]
51
55
57 data = self.get_data()
58 with open(self.output, "wb") as f:
59 f.write(data)
60
61
62 savers.register("stocks3.savers.Prepared", Prepared)
63
64
69
70 if tidylib is None:
71 savers.register("stocks3.savers.PreparedMini", Prepared)
72 else:
73 savers.register("stocks3.savers.PreparedMini", PreparedMini)
74