comparison hgext/mq.py @ 11966:22f1994fb669

mq/qqueue: commonalise the queue deletion code
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
date Wed, 18 Aug 2010 23:34:28 +0200
parents 59ec12093261
children 6e3875a80533
comparison
equal deleted inserted replaced
11964:79bd860b8eb7 11966:22f1994fb669
2693 for n in name: 2693 for n in name:
2694 if n in ':\\/.': 2694 if n in ':\\/.':
2695 return False 2695 return False
2696 return True 2696 return True
2697 2697
2698 def _delete(name):
2699 if name not in existing:
2700 raise util.Abort(_('cannot delete queue that does not exist'))
2701
2702 current = _getcurrent()
2703
2704 if name == current:
2705 raise util.Abort(_('cannot delete currently active queue'))
2706
2707 fh = repo.opener('patches.queues.new', 'w')
2708 for queue in existing:
2709 if queue == name:
2710 continue
2711 fh.write('%s\n' % (queue,))
2712 fh.close()
2713 util.rename(repo.join('patches.queues.new'), repo.join(_allqueues))
2714
2698 if not name or opts.get('list'): 2715 if not name or opts.get('list'):
2699 current = _getcurrent() 2716 current = _getcurrent()
2700 for queue in _getqueues(): 2717 for queue in _getqueues():
2701 ui.write('%s' % (queue,)) 2718 ui.write('%s' % (queue,))
2702 if queue == current and not ui.quiet: 2719 if queue == current and not ui.quiet:
2742 fh.write('%s\n' % (queue,)) 2759 fh.write('%s\n' % (queue,))
2743 fh.close() 2760 fh.close()
2744 util.rename(repo.join('patches.queues.new'), repo.join(_allqueues)) 2761 util.rename(repo.join('patches.queues.new'), repo.join(_allqueues))
2745 _setactivenocheck(name) 2762 _setactivenocheck(name)
2746 elif opts.get('delete'): 2763 elif opts.get('delete'):
2747 if name not in existing: 2764 _delete(name)
2748 raise util.Abort(_('cannot delete queue that does not exist'))
2749
2750 current = _getcurrent()
2751
2752 if name == current:
2753 raise util.Abort(_('cannot delete currently active queue'))
2754
2755 fh = repo.opener('patches.queues.new', 'w')
2756 for queue in existing:
2757 if queue == name:
2758 continue
2759 fh.write('%s\n' % (queue,))
2760 fh.close()
2761 util.rename(repo.join('patches.queues.new'), repo.join(_allqueues))
2762 else: 2765 else:
2763 if name not in existing: 2766 if name not in existing:
2764 raise util.Abort(_('use --create to create a new queue')) 2767 raise util.Abort(_('use --create to create a new queue'))
2765 _setactive(name) 2768 _setactive(name)
2766 2769