@@ -121,7 +121,7 @@ def __iter__(self):
121121 self .patch_refs (ReportSection , '__iter__' , __iter__ )
122122
123123
124- class OperationItem (object ):
124+ class RepositoryPosition (object ):
125125
126126 def __init__ (self , position = None , title = None , description = None ):
127127 self .position = self .cleanup_position (position )
@@ -159,7 +159,7 @@ def parent_position(self):
159159 return self .position [:- 1 ]
160160
161161 def __repr__ (self ):
162- return u"OperationItem ({}, {}, {})" .format (self .position , self .title , self .description ).encode ('utf-8' )
162+ return u"RepositoryPosition ({}, {}, {})" .format (self .position , self .title , self .description ).encode ('utf-8' )
163163
164164 def __eq__ (self , other ):
165165 return all ((self .position == other .position ,
@@ -284,24 +284,23 @@ def analyse(self):
284284 data_extractor = ExcelDataExtractor (self .diff_xlsx_path )
285285
286286 for row in data_extractor .get_data ():
287- new_item = {}
288287 if row .new_position in ['' , u'l\xf6 schen' , '-' ]:
289288 # Position should be deleted
290- new_item = OperationItem ()
289+ new_repo_pos = RepositoryPosition ()
291290 else :
292- new_item = OperationItem (row .new_position , row .new_title , row .new_description )
291+ new_repo_pos = RepositoryPosition (row .new_position , row .new_title , row .new_description )
293292 if row .old_position == '' :
294293 # Position did not exist
295- old_item = OperationItem ()
294+ old_repo_pos = RepositoryPosition ()
296295 else :
297- old_item = OperationItem (row .old_position , row .old_title , row .old_description )
296+ old_repo_pos = RepositoryPosition (row .old_position , row .old_title , row .old_description )
298297
299298 # Ignore empty rows
300- if not old_item .position and not new_item .position :
299+ if not old_repo_pos .position and not new_repo_pos .position :
301300 continue
302301
303302 # Skip positions that should be deleted
304- if not new_item .position :
303+ if not new_repo_pos .position :
305304 logger .info ("Skipping, we do not support deletion: {}" .format (row ))
306305 continue
307306
@@ -316,32 +315,32 @@ def analyse(self):
316315
317316 permissions = None
318317
319- needs_creation = not bool (old_item .position )
320- need_number_change , need_move , need_merge = self .needs_number_change_move_or_merge (new_item , old_item )
318+ needs_creation = not bool (old_repo_pos .position )
319+ need_number_change , need_move , need_merge = self .needs_number_change_move_or_merge (new_repo_pos , old_repo_pos )
321320
322321 if need_number_change :
323- new_number = self .get_new_number (new_item )
322+ new_number = self .get_new_number (new_repo_pos )
324323 if need_move :
325- new_parent_position , new_parent_uid = self .get_new_parent_position_and_uid (new_item )
324+ new_parent_position , new_parent_uid = self .get_new_parent_position_and_uid (new_repo_pos )
326325 if need_merge :
327- merge_into = self .get_position_and_uid_to_merge_into (new_item )
326+ merge_into = self .get_position_and_uid_to_merge_into (new_repo_pos )
328327 if needs_creation :
329- new_position_parent_position , new_position_parent_guid = self .get_parent_of_new_position (new_item )
328+ new_position_parent_position , new_position_parent_guid = self .get_parent_of_new_position (new_repo_pos )
330329 new_position_guid = uuid4 ().hex [:8 ]
331330 permissions = self .extract_permissions (row )
332331
333332 operation = {
334- 'uid' : self .get_uuid_for_position (old_item .position ),
333+ 'uid' : self .get_uuid_for_position (old_repo_pos .position ),
335334 'new_position_parent_position' : new_position_parent_position ,
336335 'new_position_parent_guid' : new_position_parent_guid ,
337336 'new_position_guid' : new_position_guid ,
338- 'new_title' : self .get_new_title (new_item , old_item ) if not (needs_creation or need_merge ) else None ,
337+ 'new_title' : self .get_new_title (new_repo_pos , old_repo_pos ) if not (needs_creation or need_merge ) else None ,
339338 'new_number' : new_number ,
340339 'new_parent_position' : new_parent_position ,
341340 'new_parent_uid' : new_parent_uid ,
342341 'merge_into' : merge_into ,
343- 'old_item ' : old_item ,
344- 'new_item ' : new_item ,
342+ 'old_repo_pos ' : old_repo_pos ,
343+ 'new_repo_pos ' : new_repo_pos ,
345344 'permissions' : permissions
346345 }
347346 self .validate_operation (operation )
@@ -350,9 +349,9 @@ def analyse(self):
350349 if need_merge :
351350 pass
352351 elif not needs_creation :
353- self .position_uid_mapping [new_item .position ] = operation ['uid' ]
352+ self .position_uid_mapping [new_repo_pos .position ] = operation ['uid' ]
354353 else :
355- self .position_guid_mapping [new_item .position ] = new_position_guid
354+ self .position_guid_mapping [new_repo_pos .position ] = new_position_guid
356355
357356 def validate_operation (self , operation ):
358357 """Make sure that operation satisfies all necessary conditions and add
@@ -373,7 +372,7 @@ def validate_operation(self, operation):
373372 operation ['is_valid' ] = False
374373
375374 # Each operation should have new position
376- if not operation ['new_item ' ].position :
375+ if not operation ['new_repo_pos ' ].position :
377376 logger .warning ("Invalid operation: needs new position. {}" .format (
378377 operation ))
379378 operation ['is_valid' ] = False
@@ -392,7 +391,7 @@ def validate_operation(self, operation):
392391 operation ['is_valid' ] = False
393392
394393 # Make sure that if a position is being created, its parent will be found
395- if not bool (operation ['old_item ' ].position ) and not operation ['new_position_parent_guid' ]:
394+ if not bool (operation ['old_repo_pos ' ].position ) and not operation ['new_position_parent_guid' ]:
396395 parent = self .get_object_for_position (
397396 operation ['new_position_parent_position' ])
398397
@@ -406,7 +405,7 @@ def validate_operation(self, operation):
406405 self .check_leaf_node_principle_violation (operation )
407406
408407 # Each existing position can only have one row in the excel
409- old_position = operation ['old_item ' ].position
408+ old_position = operation ['old_repo_pos ' ].position
410409 if old_position :
411410 if old_position in self .positions :
412411 logger .warning (
@@ -416,7 +415,7 @@ def validate_operation(self, operation):
416415 self .positions .add (old_position )
417416
418417 # Each new position can only have one row in the excel except for merge operations
419- new_position = operation ['new_item ' ].position
418+ new_position = operation ['new_repo_pos ' ].position
420419 if new_position and not operation ['merge_into' ]:
421420 if new_position in self .new_positions :
422421 logger .warning (
@@ -425,23 +424,23 @@ def validate_operation(self, operation):
425424 operation ['is_valid' ] = False
426425 self .new_positions .add (new_position )
427426
428- def get_new_title (self , new_item , old_item ):
427+ def get_new_title (self , new_repo_pos , old_repo_pos ):
429428 """Returns the new title or none if no rename is necessary."""
430- if new_item .title != old_item .title :
431- return new_item .title
429+ if new_repo_pos .title != old_repo_pos .title :
430+ return new_repo_pos .title
432431
433432 return None
434433
435- def get_new_number (self , new_item ):
434+ def get_new_number (self , new_repo_pos ):
436435 """Returns latest part of the position - the new referencenumber
437436 prefix"""
438- return new_item .reference_number_prefix
437+ return new_repo_pos .reference_number_prefix
439438
440- def get_new_parent_position_and_uid (self , new_item ):
439+ def get_new_parent_position_and_uid (self , new_repo_pos ):
441440 """Returns the new parent position and the uid. If the object does not
442441 yet exists it returns the guid."""
443442
444- parent_position = new_item .parent_position
443+ parent_position = new_repo_pos .parent_position
445444 if not parent_position :
446445 # We are moving into the reporoot
447446 return parent_position , self .reporoot .UID ()
@@ -453,11 +452,11 @@ def get_new_parent_position_and_uid(self, new_item):
453452
454453 return parent_position , self .position_uid_mapping [parent_position ]
455454
456- def get_position_and_uid_to_merge_into (self , new_item ):
455+ def get_position_and_uid_to_merge_into (self , new_repo_pos ):
457456 """Returns the position and the uid this should be merged into.
458457 If the object does not yet exists it returns the guid."""
459458
460- position = new_item .position
459+ position = new_repo_pos .position
461460
462461 if position not in self .position_uid_mapping :
463462 # Parent does not exist yet and will be created in the
@@ -466,51 +465,51 @@ def get_position_and_uid_to_merge_into(self, new_item):
466465
467466 return self .position_uid_mapping [position ]
468467
469- def get_parent_of_new_position (self , new_item ):
470- final_parent_position = new_item .parent_position
468+ def get_parent_of_new_position (self , new_repo_pos ):
469+ final_parent_position = new_repo_pos .parent_position
471470 if not final_parent_position :
472471 # We are creating a new position in the reporoot
473472 return final_parent_position , self .reporoot_guid
474473
475474 parent_row = [item for item in self .analysed_rows
476- if item ['new_item ' ].position == final_parent_position ]
475+ if item ['new_repo_pos ' ].position == final_parent_position ]
477476
478477 if not parent_row :
479478 # bundle import (ConstructorSection) will find parent from
480479 # the reference number
481480 return final_parent_position , None
482481
483482 # Two possibilities, the new parent is being created or moved.
484- if parent_row [0 ]['old_item ' ].position :
483+ if parent_row [0 ]['old_repo_pos ' ].position :
485484 # The parent will be moved to the right position so we need to add
486485 # the subrepofolder on the "old position"
487- return parent_row [0 ]['old_item ' ].position , None
486+ return parent_row [0 ]['old_repo_pos ' ].position , None
488487 else :
489488 # The parent is being created, so we will identify it through its guid.
490489 return None , parent_row [0 ]['new_position_guid' ]
491490
492- def needs_number_change_move_or_merge (self , new_item , old_item ):
491+ def needs_number_change_move_or_merge (self , new_repo_pos , old_repo_pos ):
493492 """Check if a number change, a move or a merge is necessary
494493 """
495494 need_number_change = False
496495 need_move = False
497496 need_merge = False
498497
499- if new_item .position and old_item .position and new_item .position != old_item .position :
500- self .number_changes [new_item .position ] = old_item .position
498+ if new_repo_pos .position and old_repo_pos .position and new_repo_pos .position != old_repo_pos .position :
499+ self .number_changes [new_repo_pos .position ] = old_repo_pos .position
501500
502501 # If the new position is already in position_uid_mapping or
503502 # position_guid_mapping, it means that a previous operation will
504503 # move or create a repository_folder to that position. This means
505504 # this operation is a merge into an existing position.
506- if (new_item .position in self .position_uid_mapping or
507- new_item .position in self .position_guid_mapping ):
505+ if (new_repo_pos .position in self .position_uid_mapping or
506+ new_repo_pos .position in self .position_guid_mapping ):
508507 need_merge = True
509508 return need_number_change , need_move , need_merge
510509
511510 # check if move is necessary
512- new_parent = new_item .parent_position
513- old_parent = old_item .parent_position
511+ new_parent = new_repo_pos .parent_position
512+ old_parent = old_repo_pos .parent_position
514513 if new_parent != old_parent :
515514 need_move = True
516515 # check whether the parent is being moved
@@ -524,7 +523,7 @@ def needs_number_change_move_or_merge(self, new_item, old_item):
524523 need_number_change = True
525524
526525 # check if number change is necessary
527- if new_item .reference_number_prefix != old_item .reference_number_prefix :
526+ if new_repo_pos .reference_number_prefix != old_repo_pos .reference_number_prefix :
528527 need_number_change = True
529528
530529 return need_number_change , need_move , need_merge
@@ -533,8 +532,8 @@ def check_repository_depth_violation(self, operation):
533532 max_depth = api .portal .get_registry_record (
534533 interface = IRepositoryFolderRecords , name = 'maximum_repository_depth' )
535534
536- new_item = operation ['new_item ' ]
537- if new_item .position and len (new_item .position ) > max_depth :
535+ new_repo_pos = operation ['new_repo_pos ' ]
536+ if new_repo_pos .position and len (new_repo_pos .position ) > max_depth :
538537 logger .warning (
539538 "Invalid operation: repository depth violated. {}" .format (operation ))
540539 operation ['is_valid' ] = False
@@ -659,12 +658,12 @@ def insert_value_rows(self, sheet, rows):
659658 for row , data in enumerate (rows , 2 ):
660659 values = [
661660 data ['uid' ],
662- data ['new_item ' ].position ,
663- data ['new_item ' ].title ,
664- data ['new_item ' ].description ,
665- data ['old_item ' ].position ,
666- data ['old_item ' ].title ,
667- data ['old_item ' ].description ,
661+ data ['new_repo_pos ' ].position ,
662+ data ['new_repo_pos ' ].title ,
663+ data ['new_repo_pos ' ].description ,
664+ data ['old_repo_pos ' ].position ,
665+ data ['old_repo_pos ' ].title ,
666+ data ['old_repo_pos ' ].description ,
668667 data ['new_position_parent_position' ] or data ['new_position_parent_guid' ],
669668 data ['new_title' ],
670669 data ['new_number' ],
@@ -742,12 +741,12 @@ def create_repository_folders(self, items):
742741
743742 bundle_items .append (
744743 {'guid' : item ['new_position_guid' ],
745- 'description' : item ['new_item ' ].description ,
744+ 'description' : item ['new_repo_pos ' ].description ,
746745 'parent_reference' : parent_reference ,
747746 'parent_guid' : item ['new_position_parent_guid' ],
748- 'reference_number_prefix' : item ['new_item ' ].reference_number_prefix ,
747+ 'reference_number_prefix' : item ['new_repo_pos ' ].reference_number_prefix ,
749748 'review_state' : 'repositoryfolder-state-active' ,
750- 'title_de' : item ['new_item ' ].title ,
749+ 'title_de' : item ['new_repo_pos ' ].title ,
751750 '_permissions' : item ['permissions' ]
752751 })
753752
@@ -858,7 +857,7 @@ def update_description(self, items):
858857 if not repo :
859858 continue
860859
861- new_description = item ['new_item ' ].description
860+ new_description = item ['new_repo_pos ' ].description
862861 if repo .description != new_description :
863862 repo .description = new_description
864863 self .add_to_reindexing_queue (item ['uid' ], ('Description' ,))
@@ -924,7 +923,7 @@ def validate(self):
924923
925924 # Assert reference number, title and description on the object
926925 uid = obj .UID ()
927- new = operation ['new_item ' ]
926+ new = operation ['new_repo_pos ' ]
928927 self .assertEqual (uid , new .position , obj .get_repository_number ().replace ('.' , '' ), 'incorrect number' )
929928 self .assertEqual (uid , new .title , obj .title_de , 'incorrect title' )
930929 self .assertEqual (uid , new .description , obj .description , 'incorrect description' )
@@ -934,12 +933,12 @@ def validate(self):
934933
935934 # Store some migration information on the object
936935 IAnnotations (obj )[MIGRATION_KEY ] = {
937- 'old_position' : operation ['old_item ' ].position ,
938- 'new_position' : operation ['new_item ' ].position ,
939- 'old_title' : operation ['old_item ' ].title ,
940- 'new_title' : operation ['new_item ' ].title ,
941- 'old_description' : operation ['old_item ' ].title ,
942- 'new_description' : operation ['new_item ' ].title ,
936+ 'old_position' : operation ['old_repo_pos ' ].position ,
937+ 'new_position' : operation ['new_repo_pos ' ].position ,
938+ 'old_title' : operation ['old_repo_pos ' ].title ,
939+ 'new_title' : operation ['new_repo_pos ' ].title ,
940+ 'old_description' : operation ['old_repo_pos ' ].title ,
941+ 'new_description' : operation ['new_repo_pos ' ].title ,
943942 'new_parent_uid' : operation ['new_parent_uid' ],
944943 'merge_into' : operation ['merge_into' ],
945944 'new_position_parent_guid' : operation ['new_position_parent_guid' ],
0 commit comments