Mercurial > repos > guerler > springsuite
comparison planemo/lib/python3.7/site-packages/boto/ec2/autoscale/activity.py @ 0:d30785e31577 draft
"planemo upload commit 6eee67778febed82ddd413c3ca40b3183a3898f1"
author | guerler |
---|---|
date | Fri, 31 Jul 2020 00:18:57 -0400 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
-1:000000000000 | 0:d30785e31577 |
---|---|
1 # Copyright (c) 2009-2011 Reza Lotun http://reza.lotun.name/ | |
2 # | |
3 # Permission is hereby granted, free of charge, to any person obtaining a | |
4 # copy of this software and associated documentation files (the | |
5 # "Software"), to deal in the Software without restriction, including | |
6 # without limitation the rights to use, copy, modify, merge, publish, dis- | |
7 # tribute, sublicense, and/or sell copies of the Software, and to permit | |
8 # persons to whom the Software is furnished to do so, subject to the fol- | |
9 # lowing conditions: | |
10 # | |
11 # The above copyright notice and this permission notice shall be included | |
12 # in all copies or substantial portions of the Software. | |
13 # | |
14 # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS | |
15 # OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABIL- | |
16 # ITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT | |
17 # SHALL THE AUTHOR BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, | |
18 # WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, | |
19 # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS | |
20 # IN THE SOFTWARE. | |
21 | |
22 from datetime import datetime | |
23 | |
24 | |
25 class Activity(object): | |
26 def __init__(self, connection=None): | |
27 self.connection = connection | |
28 self.start_time = None | |
29 self.end_time = None | |
30 self.activity_id = None | |
31 self.progress = None | |
32 self.status_code = None | |
33 self.cause = None | |
34 self.description = None | |
35 self.status_message = None | |
36 self.group_name = None | |
37 | |
38 def __repr__(self): | |
39 return 'Activity<%s>: For group:%s, progress:%s, cause:%s' % (self.activity_id, | |
40 self.group_name, | |
41 self.status_message, | |
42 self.cause) | |
43 | |
44 def startElement(self, name, attrs, connection): | |
45 return None | |
46 | |
47 def endElement(self, name, value, connection): | |
48 if name == 'ActivityId': | |
49 self.activity_id = value | |
50 elif name == 'AutoScalingGroupName': | |
51 self.group_name = value | |
52 elif name == 'StartTime': | |
53 try: | |
54 self.start_time = datetime.strptime(value, '%Y-%m-%dT%H:%M:%S.%fZ') | |
55 except ValueError: | |
56 self.start_time = datetime.strptime(value, '%Y-%m-%dT%H:%M:%SZ') | |
57 elif name == 'EndTime': | |
58 try: | |
59 self.end_time = datetime.strptime(value, '%Y-%m-%dT%H:%M:%S.%fZ') | |
60 except ValueError: | |
61 self.end_time = datetime.strptime(value, '%Y-%m-%dT%H:%M:%SZ') | |
62 elif name == 'Progress': | |
63 self.progress = value | |
64 elif name == 'Cause': | |
65 self.cause = value | |
66 elif name == 'Description': | |
67 self.description = value | |
68 elif name == 'StatusMessage': | |
69 self.status_message = value | |
70 elif name == 'StatusCode': | |
71 self.status_code = value | |
72 else: | |
73 setattr(self, name, value) |