Revision 845c573d lib/client/gnt_instance.py
b/lib/client/gnt_instance.py | ||
---|---|---|
1211 | 1211 |
""" |
1212 | 1212 |
result = [] |
1213 | 1213 |
|
1214 |
for (idx, params) in mods:
|
|
1215 |
if idx == constants.DDM_ADD:
|
|
1214 |
for (identifier, params) in mods:
|
|
1215 |
if identifier == constants.DDM_ADD:
|
|
1216 | 1216 |
# Add item as last item (legacy interface) |
1217 | 1217 |
action = constants.DDM_ADD |
1218 |
idxno = -1
|
|
1219 |
elif idx == constants.DDM_REMOVE:
|
|
1218 |
identifier = -1
|
|
1219 |
elif identifier == constants.DDM_REMOVE:
|
|
1220 | 1220 |
# Remove last item (legacy interface) |
1221 | 1221 |
action = constants.DDM_REMOVE |
1222 |
idxno = -1
|
|
1222 |
identifier = -1
|
|
1223 | 1223 |
else: |
1224 | 1224 |
# Modifications and adding/removing at arbitrary indices |
1225 |
try: |
|
1226 |
idxno = int(idx) |
|
1227 |
except (TypeError, ValueError): |
|
1228 |
raise errors.OpPrereqError("Non-numeric index '%s'" % idx, |
|
1229 |
errors.ECODE_INVAL) |
|
1230 |
|
|
1231 | 1225 |
add = params.pop(constants.DDM_ADD, _MISSING) |
1232 | 1226 |
remove = params.pop(constants.DDM_REMOVE, _MISSING) |
1233 | 1227 |
modify = params.pop(constants.DDM_MODIFY, _MISSING) |
... | ... | |
1255 | 1249 |
raise errors.OpPrereqError("Not accepting parameters on removal", |
1256 | 1250 |
errors.ECODE_INVAL) |
1257 | 1251 |
|
1258 |
result.append((action, idxno, params))
|
|
1252 |
result.append((action, identifier, params))
|
|
1259 | 1253 |
|
1260 | 1254 |
return result |
1261 | 1255 |
|
Also available in: Unified diff