root / snf-common / synnefo / lib / quotaholder / api / quotaholder.py @ 4ec8c043
History | View | Annotate | Download (12.1 kB)
1 | 4350ac98 | Georgios D. Tsoukalas | # -*- coding: utf-8 -*-
|
---|---|---|---|
2 | 4350ac98 | Georgios D. Tsoukalas | #
|
3 | 3e5941c1 | Giorgos Korfiatis | # Copyright 2012 GRNET S.A. All rights reserved.
|
4 | 3e5941c1 | Giorgos Korfiatis | #
|
5 | 3e5941c1 | Giorgos Korfiatis | # Redistribution and use in source and binary forms, with or
|
6 | 3e5941c1 | Giorgos Korfiatis | # without modification, are permitted provided that the following
|
7 | 3e5941c1 | Giorgos Korfiatis | # conditions are met:
|
8 | 3e5941c1 | Giorgos Korfiatis | #
|
9 | 3e5941c1 | Giorgos Korfiatis | # 1. Redistributions of source code must retain the above
|
10 | 3e5941c1 | Giorgos Korfiatis | # copyright notice, this list of conditions and the following
|
11 | 3e5941c1 | Giorgos Korfiatis | # disclaimer.
|
12 | 3e5941c1 | Giorgos Korfiatis | #
|
13 | 3e5941c1 | Giorgos Korfiatis | # 2. Redistributions in binary form must reproduce the above
|
14 | 3e5941c1 | Giorgos Korfiatis | # copyright notice, this list of conditions and the following
|
15 | 3e5941c1 | Giorgos Korfiatis | # disclaimer in the documentation and/or other materials
|
16 | 3e5941c1 | Giorgos Korfiatis | # provided with the distribution.
|
17 | 3e5941c1 | Giorgos Korfiatis | #
|
18 | 3e5941c1 | Giorgos Korfiatis | # THIS SOFTWARE IS PROVIDED BY GRNET S.A. ``AS IS'' AND ANY EXPRESS
|
19 | 3e5941c1 | Giorgos Korfiatis | # OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
20 | 3e5941c1 | Giorgos Korfiatis | # WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
21 | 3e5941c1 | Giorgos Korfiatis | # PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL GRNET S.A OR
|
22 | 3e5941c1 | Giorgos Korfiatis | # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
23 | 3e5941c1 | Giorgos Korfiatis | # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
24 | 3e5941c1 | Giorgos Korfiatis | # LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
|
25 | 3e5941c1 | Giorgos Korfiatis | # USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
|
26 | 3e5941c1 | Giorgos Korfiatis | # AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
27 | 3e5941c1 | Giorgos Korfiatis | # LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
|
28 | 3e5941c1 | Giorgos Korfiatis | # ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
29 | 3e5941c1 | Giorgos Korfiatis | # POSSIBILITY OF SUCH DAMAGE.
|
30 | 3e5941c1 | Giorgos Korfiatis | #
|
31 | 3e5941c1 | Giorgos Korfiatis | # The views and conclusions contained in the software and
|
32 | 3e5941c1 | Giorgos Korfiatis | # documentation are those of the authors and should not be
|
33 | 3e5941c1 | Giorgos Korfiatis | # interpreted as representing official policies, either expressed
|
34 | 3e5941c1 | Giorgos Korfiatis | # or implied, of GRNET S.A.
|
35 | 3e5941c1 | Giorgos Korfiatis | |
36 | 9f1a1bd0 | Georgios D. Tsoukalas | |
37 | f54beeea | Giorgos Korfiatis | from synnefo.lib.commissioning import (CanonifyException, SpecifyException, |
38 | f54beeea | Giorgos Korfiatis | Specificator, Null, Integer, Text, |
39 | f54beeea | Giorgos Korfiatis | Tuple, ListOf, Dict, Args) |
40 | 4350ac98 | Georgios D. Tsoukalas | from random import choice, randint |
41 | 9f1a1bd0 | Georgios D. Tsoukalas | |
42 | f3327431 | Giorgos Korfiatis | Context = Dict(classname='Context', null=True, show=False) |
43 | 9f1a1bd0 | Georgios D. Tsoukalas | |
44 | d4eaff2f | Georgios D. Tsoukalas | class Name(Text): |
45 | 9f1a1bd0 | Georgios D. Tsoukalas | def init(self): |
46 | c294cb93 | Georgios D. Tsoukalas | self.opts.update({'regex': "[\w.:@+/-]+", 'maxlen':512}) |
47 | 5b006999 | Giorgos Korfiatis | Text.init(self)
|
48 | 9f1a1bd0 | Georgios D. Tsoukalas | |
49 | 4350ac98 | Georgios D. Tsoukalas | def _random_choice(self, kw): |
50 | 4350ac98 | Georgios D. Tsoukalas | alphabet = u'abcdef_1233490.:@/-αβγδεζ'
|
51 | ccdb658a | Giorgos Korfiatis | length = randint(1, 48) |
52 | 4350ac98 | Georgios D. Tsoukalas | return ''.join(choice(alphabet) for _ in xrange(length)) |
53 | 4350ac98 | Georgios D. Tsoukalas | |
54 | 9f1a1bd0 | Georgios D. Tsoukalas | class Nonnegative(Integer): |
55 | 9f1a1bd0 | Georgios D. Tsoukalas | def init(self): |
56 | 9f1a1bd0 | Georgios D. Tsoukalas | self.opts.update({'minimum': 0}) |
57 | 9f1a1bd0 | Georgios D. Tsoukalas | |
58 | 9f1a1bd0 | Georgios D. Tsoukalas | class Positive(Integer): |
59 | 9f1a1bd0 | Georgios D. Tsoukalas | def init(self): |
60 | 9f1a1bd0 | Georgios D. Tsoukalas | self.opts.update({'minimum': 1}) |
61 | 9f1a1bd0 | Georgios D. Tsoukalas | |
62 | 9f1a1bd0 | Georgios D. Tsoukalas | Serial = Positive(classname='Serial')
|
63 | 9f1a1bd0 | Georgios D. Tsoukalas | |
64 | 9f1a1bd0 | Georgios D. Tsoukalas | ClientKey = Name(classname='ClientKey')
|
65 | 9f1a1bd0 | Georgios D. Tsoukalas | Nothing = Null(classname='Nothing')
|
66 | 9f1a1bd0 | Georgios D. Tsoukalas | |
67 | 9f1a1bd0 | Georgios D. Tsoukalas | Entity = Name(classname='Entity')
|
68 | 9f1a1bd0 | Georgios D. Tsoukalas | Owner = Name(classname='Owner')
|
69 | 3cd8d059 | Giorgos Korfiatis | Key = Text(classname='Key')
|
70 | 3cd8d059 | Giorgos Korfiatis | NewKey = Text(classname='Newkey')
|
71 | 3cd8d059 | Giorgos Korfiatis | OwnerKey = Text(classname='OwnerKey')
|
72 | 9f1a1bd0 | Georgios D. Tsoukalas | Resource = Name(classname='Resource')
|
73 | 9f1a1bd0 | Georgios D. Tsoukalas | Policy = Name(classname='Policy')
|
74 | 9f1a1bd0 | Georgios D. Tsoukalas | |
75 | bf96fd80 | Sofia Papagiannaki | Quantity = Integer(classname='Quantity', null=True) |
76 | a2db0eb5 | root | Capacity = Nonnegative(classname='Capacity', null=True) |
77 | a2db0eb5 | root | ImportLimit = Nonnegative(classname='ImportLimit', null=True) |
78 | a2db0eb5 | root | ExportLimit = Nonnegative(classname='ExportLimit', null=True) |
79 | 4ec8c043 | Giorgos Korfiatis | QuantityDelta = Integer(classname='QuantityDelta', null=True) |
80 | 4ec8c043 | Giorgos Korfiatis | CapacityDelta = Integer(classname='CapacityDelta', null=True) |
81 | 4ec8c043 | Giorgos Korfiatis | ImportLimitDelta = Integer(classname='ImportLimitDelta', null=True) |
82 | 4ec8c043 | Giorgos Korfiatis | ExportLimitDelta = Integer(classname='ExportLimitDelta', null=True) |
83 | 9f1a1bd0 | Georgios D. Tsoukalas | Imported = Nonnegative(classname='Imported')
|
84 | 9f1a1bd0 | Georgios D. Tsoukalas | Exported = Nonnegative(classname='Exported')
|
85 | d6662f65 | root | Returned = Nonnegative(classname='Returned')
|
86 | f590f930 | Georgios D. Tsoukalas | Released = Nonnegative(classname='Released')
|
87 | 9f1a1bd0 | Georgios D. Tsoukalas | Flags = Nonnegative(classname='Flags')
|
88 | d793e5c4 | Giorgos Korfiatis | Index = Nonnegative(classname='Index')
|
89 | 9f1a1bd0 | Georgios D. Tsoukalas | |
90 | f590f930 | Georgios D. Tsoukalas | Timepoint = Text(classname='Timepoint', maxlen=24) |
91 | f590f930 | Georgios D. Tsoukalas | Reason = Text( classname = 'Reason',
|
92 | f590f930 | Georgios D. Tsoukalas | regex = '(ACCEPT|REJECT):.*',
|
93 | f590f930 | Georgios D. Tsoukalas | maxlen = 128 )
|
94 | 9f1a1bd0 | Georgios D. Tsoukalas | |
95 | 9f1a1bd0 | Georgios D. Tsoukalas | class QuotaholderAPI(Specificator): |
96 | 9f1a1bd0 | Georgios D. Tsoukalas | |
97 | 9f1a1bd0 | Georgios D. Tsoukalas | def create_entity ( |
98 | 9f1a1bd0 | Georgios D. Tsoukalas | self,
|
99 | 9f1a1bd0 | Georgios D. Tsoukalas | context = Context, |
100 | 9f1a1bd0 | Georgios D. Tsoukalas | create_entity = ListOf(Entity, Owner, Key, OwnerKey, nonempty=1)
|
101 | 9f1a1bd0 | Georgios D. Tsoukalas | ): |
102 | d793e5c4 | Giorgos Korfiatis | rejected = ListOf(Index) |
103 | 9f1a1bd0 | Georgios D. Tsoukalas | return rejected
|
104 | 9f1a1bd0 | Georgios D. Tsoukalas | |
105 | d6662f65 | root | def set_entity_key ( |
106 | 1dedc367 | Georgios D. Tsoukalas | self,
|
107 | 1dedc367 | Georgios D. Tsoukalas | context = Context, |
108 | 1dedc367 | Georgios D. Tsoukalas | set_entity_key = ListOf(Entity, Key, NewKey) |
109 | 1dedc367 | Georgios D. Tsoukalas | ): |
110 | 1dedc367 | Georgios D. Tsoukalas | rejected = ListOf(Entity) |
111 | 1dedc367 | Georgios D. Tsoukalas | return rejected
|
112 | 1dedc367 | Georgios D. Tsoukalas | |
113 | 9f1a1bd0 | Georgios D. Tsoukalas | def list_entities ( |
114 | 9f1a1bd0 | Georgios D. Tsoukalas | self,
|
115 | 9f1a1bd0 | Georgios D. Tsoukalas | context = Context, |
116 | 9f1a1bd0 | Georgios D. Tsoukalas | entity = Entity, |
117 | 9f1a1bd0 | Georgios D. Tsoukalas | key = Key |
118 | 9f1a1bd0 | Georgios D. Tsoukalas | ): |
119 | 9f1a1bd0 | Georgios D. Tsoukalas | entities = ListOf(Entity) |
120 | 9f1a1bd0 | Georgios D. Tsoukalas | return entities
|
121 | 9f1a1bd0 | Georgios D. Tsoukalas | |
122 | 9f1a1bd0 | Georgios D. Tsoukalas | def get_entity ( |
123 | 9f1a1bd0 | Georgios D. Tsoukalas | self,
|
124 | 9f1a1bd0 | Georgios D. Tsoukalas | context = Context, |
125 | 9f1a1bd0 | Georgios D. Tsoukalas | get_entity = ListOf(Entity, Key, nonempty=1)
|
126 | 9f1a1bd0 | Georgios D. Tsoukalas | ): |
127 | 9f1a1bd0 | Georgios D. Tsoukalas | entities = ListOf(Entity, Owner) |
128 | 9f1a1bd0 | Georgios D. Tsoukalas | return entities
|
129 | 9f1a1bd0 | Georgios D. Tsoukalas | |
130 | 9f1a1bd0 | Georgios D. Tsoukalas | def get_limits ( |
131 | 9f1a1bd0 | Georgios D. Tsoukalas | self,
|
132 | 9f1a1bd0 | Georgios D. Tsoukalas | context = Context, |
133 | 72c4abd2 | root | get_limits = ListOf(Policy, nonempty=1)
|
134 | 9f1a1bd0 | Georgios D. Tsoukalas | ): |
135 | 72c4abd2 | root | limits = ListOf(Policy, Quantity, Capacity, |
136 | 72c4abd2 | root | ImportLimit, ExportLimit) |
137 | 9f1a1bd0 | Georgios D. Tsoukalas | return limits
|
138 | 9f1a1bd0 | Georgios D. Tsoukalas | |
139 | 9f1a1bd0 | Georgios D. Tsoukalas | def set_limits ( |
140 | 9f1a1bd0 | Georgios D. Tsoukalas | self,
|
141 | 9f1a1bd0 | Georgios D. Tsoukalas | context = Context, |
142 | 72c4abd2 | root | set_limits = ListOf( Policy, Quantity, Capacity, |
143 | 72c4abd2 | root | ImportLimit, ExportLimit, |
144 | 9f1a1bd0 | Georgios D. Tsoukalas | nonempty=1 )
|
145 | 9f1a1bd0 | Georgios D. Tsoukalas | ): |
146 | 72c4abd2 | root | rejected = ListOf(Policy) |
147 | 9f1a1bd0 | Georgios D. Tsoukalas | return rejected
|
148 | 9f1a1bd0 | Georgios D. Tsoukalas | |
149 | 9f1a1bd0 | Georgios D. Tsoukalas | def get_holding ( |
150 | 9f1a1bd0 | Georgios D. Tsoukalas | self,
|
151 | 9f1a1bd0 | Georgios D. Tsoukalas | context = Context, |
152 | 9f1a1bd0 | Georgios D. Tsoukalas | get_holding = ListOf(Entity, Resource, Key) |
153 | 9f1a1bd0 | Georgios D. Tsoukalas | ): |
154 | 9f1a1bd0 | Georgios D. Tsoukalas | holdings = ListOf( Entity, Resource, Policy, |
155 | d6662f65 | root | Imported, Exported, Returned, Released, Flags ) |
156 | 9f1a1bd0 | Georgios D. Tsoukalas | return holdings
|
157 | 9f1a1bd0 | Georgios D. Tsoukalas | |
158 | 9f1a1bd0 | Georgios D. Tsoukalas | def set_holding ( |
159 | 9f1a1bd0 | Georgios D. Tsoukalas | self,
|
160 | 9f1a1bd0 | Georgios D. Tsoukalas | context = Context, |
161 | 9f1a1bd0 | Georgios D. Tsoukalas | set_holding = ListOf(Entity, Resource, Key, Policy, Flags) |
162 | 9f1a1bd0 | Georgios D. Tsoukalas | ): |
163 | 9f1a1bd0 | Georgios D. Tsoukalas | rejected = ListOf(Entity, Resource, Policy) |
164 | 9f1a1bd0 | Georgios D. Tsoukalas | return rejected
|
165 | 9f1a1bd0 | Georgios D. Tsoukalas | |
166 | a7cdc223 | Giorgos Korfiatis | def init_holding ( |
167 | 5b522bc3 | Giorgos Korfiatis | self,
|
168 | 4c00b904 | Giorgos Korfiatis | context = Context, |
169 | a7cdc223 | Giorgos Korfiatis | init_holding = ListOf(Entity, Resource, Key, Policy, |
170 | a7cdc223 | Giorgos Korfiatis | Imported, Exported, Returned, Released, |
171 | a7cdc223 | Giorgos Korfiatis | Flags) |
172 | 5b522bc3 | Giorgos Korfiatis | ): |
173 | 5b522bc3 | Giorgos Korfiatis | rejected = ListOf(Index) |
174 | 5b522bc3 | Giorgos Korfiatis | return rejected
|
175 | 5b522bc3 | Giorgos Korfiatis | |
176 | 4c00b904 | Giorgos Korfiatis | def reset_holding ( |
177 | 4c00b904 | Giorgos Korfiatis | self,
|
178 | 4c00b904 | Giorgos Korfiatis | context = Context, |
179 | 4c00b904 | Giorgos Korfiatis | reset_holding = ListOf(Entity, Resource, Key, |
180 | 4c00b904 | Giorgos Korfiatis | Imported, Exported, Returned, Released) |
181 | 4c00b904 | Giorgos Korfiatis | ): |
182 | 4c00b904 | Giorgos Korfiatis | rejected = ListOf(Index) |
183 | 4c00b904 | Giorgos Korfiatis | return rejected
|
184 | 4c00b904 | Giorgos Korfiatis | |
185 | 8dc7c13b | Giorgos Korfiatis | def release_holding ( |
186 | 8dc7c13b | Giorgos Korfiatis | self,
|
187 | 8dc7c13b | Giorgos Korfiatis | context = Context, |
188 | 8dc7c13b | Giorgos Korfiatis | release_holding = ListOf(Entity, Resource, Key) |
189 | 8dc7c13b | Giorgos Korfiatis | ): |
190 | 8dc7c13b | Giorgos Korfiatis | rejected = ListOf(Index) |
191 | 8dc7c13b | Giorgos Korfiatis | return rejected
|
192 | 8dc7c13b | Giorgos Korfiatis | |
193 | 9f1a1bd0 | Georgios D. Tsoukalas | def list_resources ( |
194 | 9f1a1bd0 | Georgios D. Tsoukalas | self,
|
195 | 9f1a1bd0 | Georgios D. Tsoukalas | context = Context, |
196 | 9f1a1bd0 | Georgios D. Tsoukalas | entity = Entity, |
197 | 9f1a1bd0 | Georgios D. Tsoukalas | key = Key |
198 | 9f1a1bd0 | Georgios D. Tsoukalas | ): |
199 | 9f1a1bd0 | Georgios D. Tsoukalas | resources = ListOf(Resource) |
200 | 9f1a1bd0 | Georgios D. Tsoukalas | return resources
|
201 | 9f1a1bd0 | Georgios D. Tsoukalas | |
202 | 65f214a2 | Georgios D. Tsoukalas | def list_holdings ( |
203 | 65f214a2 | Georgios D. Tsoukalas | self,
|
204 | 65f214a2 | Georgios D. Tsoukalas | context = Context, |
205 | 65f214a2 | Georgios D. Tsoukalas | list_holdings = ListOf(Entity, Key) |
206 | 65f214a2 | Georgios D. Tsoukalas | ): |
207 | 65f214a2 | Georgios D. Tsoukalas | |
208 | 65f214a2 | Georgios D. Tsoukalas | rejected = ListOf(Entity) |
209 | 65f214a2 | Georgios D. Tsoukalas | holdings_list = ListOf(ListOf(Entity, Resource, |
210 | 65f214a2 | Georgios D. Tsoukalas | Imported, Exported, |
211 | 65f214a2 | Georgios D. Tsoukalas | Returned, Released)) |
212 | 65f214a2 | Georgios D. Tsoukalas | return Tuple(holdings_list, rejected)
|
213 | 65f214a2 | Georgios D. Tsoukalas | |
214 | 9f1a1bd0 | Georgios D. Tsoukalas | def get_quota ( |
215 | 9f1a1bd0 | Georgios D. Tsoukalas | self,
|
216 | 9f1a1bd0 | Georgios D. Tsoukalas | context = Context, |
217 | 9f1a1bd0 | Georgios D. Tsoukalas | get_quota = ListOf(Entity, Resource, Key) |
218 | 9f1a1bd0 | Georgios D. Tsoukalas | ): |
219 | 9f1a1bd0 | Georgios D. Tsoukalas | quotas = ListOf(Entity, Resource, |
220 | 9f1a1bd0 | Georgios D. Tsoukalas | Quantity, Capacity, |
221 | 9f1a1bd0 | Georgios D. Tsoukalas | ImportLimit, ExportLimit, |
222 | 9f1a1bd0 | Georgios D. Tsoukalas | Imported, Exported, |
223 | d6662f65 | root | Returned, Released, |
224 | 9f1a1bd0 | Georgios D. Tsoukalas | Flags) |
225 | 9f1a1bd0 | Georgios D. Tsoukalas | return quotas
|
226 | 9f1a1bd0 | Georgios D. Tsoukalas | |
227 | 9f1a1bd0 | Georgios D. Tsoukalas | def set_quota ( |
228 | 9f1a1bd0 | Georgios D. Tsoukalas | self,
|
229 | 9f1a1bd0 | Georgios D. Tsoukalas | context = Context, |
230 | 9f1a1bd0 | Georgios D. Tsoukalas | set_quota = ListOf( Entity, Resource, Key, |
231 | 9f1a1bd0 | Georgios D. Tsoukalas | Quantity, Capacity, |
232 | 9f1a1bd0 | Georgios D. Tsoukalas | ImportLimit, ExportLimit, Flags ) |
233 | 9f1a1bd0 | Georgios D. Tsoukalas | ): |
234 | 9f1a1bd0 | Georgios D. Tsoukalas | rejected = ListOf(Entity, Resource) |
235 | 9f1a1bd0 | Georgios D. Tsoukalas | return rejected
|
236 | 9f1a1bd0 | Georgios D. Tsoukalas | |
237 | 4ec8c043 | Giorgos Korfiatis | def add_quota ( |
238 | 4ec8c043 | Giorgos Korfiatis | self,
|
239 | 4ec8c043 | Giorgos Korfiatis | context = Context, |
240 | 4ec8c043 | Giorgos Korfiatis | add_quota = ListOf( Entity, Resource, Key, |
241 | 4ec8c043 | Giorgos Korfiatis | QuantityDelta, CapacityDelta, |
242 | 4ec8c043 | Giorgos Korfiatis | ImportLimitDelta, ExportLimitDelta ) |
243 | 4ec8c043 | Giorgos Korfiatis | ): |
244 | 4ec8c043 | Giorgos Korfiatis | rejected = ListOf(Entity, Resource) |
245 | 4ec8c043 | Giorgos Korfiatis | return rejected
|
246 | 4ec8c043 | Giorgos Korfiatis | |
247 | 9f1a1bd0 | Georgios D. Tsoukalas | def issue_commission ( |
248 | 9f1a1bd0 | Georgios D. Tsoukalas | self,
|
249 | 9f1a1bd0 | Georgios D. Tsoukalas | context = Context, |
250 | c3a709ad | root | target = Entity, |
251 | 9f1a1bd0 | Georgios D. Tsoukalas | key = Key, |
252 | 9f1a1bd0 | Georgios D. Tsoukalas | clientkey = ClientKey, |
253 | d6662f65 | root | name = Text(default=''),
|
254 | 9f1a1bd0 | Georgios D. Tsoukalas | provisions = ListOf(Entity, Resource, Quantity) |
255 | 9f1a1bd0 | Georgios D. Tsoukalas | ): |
256 | 9f1a1bd0 | Georgios D. Tsoukalas | return Serial
|
257 | 9f1a1bd0 | Georgios D. Tsoukalas | |
258 | 9f1a1bd0 | Georgios D. Tsoukalas | def accept_commission ( |
259 | 9f1a1bd0 | Georgios D. Tsoukalas | self,
|
260 | 9f1a1bd0 | Georgios D. Tsoukalas | context = Context, |
261 | 9f1a1bd0 | Georgios D. Tsoukalas | clientkey = ClientKey, |
262 | d6662f65 | root | serials = ListOf(Serial), |
263 | d6662f65 | root | reason = Text(default='ACCEPT')
|
264 | 9f1a1bd0 | Georgios D. Tsoukalas | ): |
265 | 9f1a1bd0 | Georgios D. Tsoukalas | return Nothing
|
266 | 9f1a1bd0 | Georgios D. Tsoukalas | |
267 | 9f1a1bd0 | Georgios D. Tsoukalas | def reject_commission ( |
268 | 9f1a1bd0 | Georgios D. Tsoukalas | self,
|
269 | 9f1a1bd0 | Georgios D. Tsoukalas | context = Context, |
270 | 9f1a1bd0 | Georgios D. Tsoukalas | clientkey = ClientKey, |
271 | d6662f65 | root | serials = ListOf(Serial), |
272 | d6662f65 | root | reason = Text(default='REJECT')
|
273 | 9f1a1bd0 | Georgios D. Tsoukalas | ): |
274 | 9f1a1bd0 | Georgios D. Tsoukalas | return Nothing
|
275 | 9f1a1bd0 | Georgios D. Tsoukalas | |
276 | 9f1a1bd0 | Georgios D. Tsoukalas | def get_pending_commissions ( |
277 | 9f1a1bd0 | Georgios D. Tsoukalas | self,
|
278 | 9f1a1bd0 | Georgios D. Tsoukalas | context = Context, |
279 | 9f1a1bd0 | Georgios D. Tsoukalas | clientkey = ClientKey |
280 | 9f1a1bd0 | Georgios D. Tsoukalas | ): |
281 | 9f1a1bd0 | Georgios D. Tsoukalas | pending = ListOf(Serial) |
282 | 9f1a1bd0 | Georgios D. Tsoukalas | return pending
|
283 | 9f1a1bd0 | Georgios D. Tsoukalas | |
284 | 9f1a1bd0 | Georgios D. Tsoukalas | def resolve_pending_commissions ( |
285 | 9f1a1bd0 | Georgios D. Tsoukalas | self,
|
286 | 9f1a1bd0 | Georgios D. Tsoukalas | context = Context, |
287 | 9f1a1bd0 | Georgios D. Tsoukalas | clientkey = ClientKey, |
288 | 9f1a1bd0 | Georgios D. Tsoukalas | max_serial = Serial, |
289 | 9f1a1bd0 | Georgios D. Tsoukalas | accept_set = ListOf(Serial) |
290 | 9f1a1bd0 | Georgios D. Tsoukalas | ): |
291 | 9f1a1bd0 | Georgios D. Tsoukalas | return Nothing
|
292 | 9f1a1bd0 | Georgios D. Tsoukalas | |
293 | 9f1a1bd0 | Georgios D. Tsoukalas | def release_entity ( |
294 | 9f1a1bd0 | Georgios D. Tsoukalas | self,
|
295 | 9f1a1bd0 | Georgios D. Tsoukalas | context = Context, |
296 | 9f1a1bd0 | Georgios D. Tsoukalas | release_entity = ListOf(Entity, Key, nonempty=1)
|
297 | 9f1a1bd0 | Georgios D. Tsoukalas | ): |
298 | 9f1a1bd0 | Georgios D. Tsoukalas | rejected = ListOf(Entity) |
299 | 9f1a1bd0 | Georgios D. Tsoukalas | return rejected
|
300 | 9f1a1bd0 | Georgios D. Tsoukalas | |
301 | f590f930 | Georgios D. Tsoukalas | def get_timeline ( |
302 | f590f930 | Georgios D. Tsoukalas | self,
|
303 | f590f930 | Georgios D. Tsoukalas | context = Context, |
304 | f590f930 | Georgios D. Tsoukalas | after = Timepoint, |
305 | f590f930 | Georgios D. Tsoukalas | before = Timepoint, |
306 | 0360f54b | root | get_timeline = ListOf(Entity, Resource, Key) |
307 | f590f930 | Georgios D. Tsoukalas | ): |
308 | d6662f65 | root | timeline = ListOf(Dict( |
309 | d6662f65 | root | serial = Serial, |
310 | d6662f65 | root | source = Entity, |
311 | d6662f65 | root | target = Entity, |
312 | d6662f65 | root | resource = Resource, |
313 | d6662f65 | root | name = Name(), |
314 | d6662f65 | root | quantity = Quantity, |
315 | 92cb0768 | root | source_allocated = Quantity, |
316 | 92cb0768 | root | source_allocated_through = Quantity, |
317 | 92cb0768 | root | source_inbound = Quantity, |
318 | 92cb0768 | root | source_inbound_through = Quantity, |
319 | 92cb0768 | root | source_outbound = Quantity, |
320 | 92cb0768 | root | source_outbound_through = Quantity, |
321 | 92cb0768 | root | target_allocated = Quantity, |
322 | 92cb0768 | root | target_allocated_through = Quantity, |
323 | 92cb0768 | root | target_inbound = Quantity, |
324 | 92cb0768 | root | target_inbound_through = Quantity, |
325 | 92cb0768 | root | target_outbound = Quantity, |
326 | 92cb0768 | root | target_outbound_through = Quantity, |
327 | d6662f65 | root | issue_time = Timepoint, |
328 | d6662f65 | root | log_time = Timepoint, |
329 | 8a3dae55 | Georgios D. Tsoukalas | reason = Reason, |
330 | 8a3dae55 | Georgios D. Tsoukalas | |
331 | 0360f54b | root | strict = True))
|
332 | f590f930 | Georgios D. Tsoukalas | return timeline
|