-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathinstance.py
49 lines (35 loc) · 1.18 KB
/
instance.py
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
42
43
44
45
46
47
48
import os
from sugar import profile
from sugar import util
from sugar.activity import activity
import shutil
from color import Color
import record
class Instance:
key = profile.get_pubkey()
if hasattr(util, '_sha_data'):
# sugar-0.82 and previous
keyHash = util._sha_data(key)
else:
keyHash = util.sha_data(key)
keyHashPrintable = util.printable_hash(keyHash)
nickName = profile.get_nick_name()
colorFill = Color()
colorFill.init_hex( profile.get_color().get_fill_color() )
colorStroke = Color()
colorStroke.init_hex( profile.get_color().get_stroke_color() )
instanceId = None
instancePath = None
dataPath = None
def __init__(self, ca):
self.__class__.instanceId = ca._activity_id
self.__class__.instancePath = os.path.join(ca.get_activity_root(), "instance")
recreateTmp()
self.__class__.dataPath = os.path.join(ca.get_activity_root(), "data")
recreateData()
def recreateTmp():
if (not os.path.exists(Instance.instancePath)):
os.makedirs(Instance.instancePath)
def recreateData():
if (not os.path.exists(Instance.dataPath)):
os.makedirs(Instance.dataPath)