com.atlassian.greenhopper.service.lexorank
Class LexoRankHealOperation

java.lang.Object
  extended by com.atlassian.greenhopper.service.lexorank.LexoRankHealOperation

public class LexoRankHealOperation
extends java.lang.Object

Encapsulates a single rank heal operation in a command pattern.

A Heal operation is where two or more rows have the same rank and need to be made distinct without doing a balance operation.

First the rows to be healed are checked if they indeed contain duplicate rank values. If they don't, the operation completes without changing any rows. If there are duplicate rank values detected, the duplicating row's rank value will be changed.

This operation does not attempt to acquire a lock on the rows it is modifying.


Nested Class Summary
static interface LexoRankHealOperation.CompleteHealOperation
           
static interface LexoRankHealOperation.ForRankField
           
static interface LexoRankHealOperation.RowsToHeal
           
 
Method Summary
static LexoRankHealOperation.ForRankField builder(LexoRankDao lexoRankDao, LexoRankDaoContext lexoRankDaoContext, LexoRankStatisticsAgent lexoRankStatisticsAgent)
           
 LexoRankOperationOutcome<java.lang.Boolean> execute()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

builder

public static LexoRankHealOperation.ForRankField builder(LexoRankDao lexoRankDao,
                                                         LexoRankDaoContext lexoRankDaoContext,
                                                         LexoRankStatisticsAgent lexoRankStatisticsAgent)

execute

public LexoRankOperationOutcome<java.lang.Boolean> execute()


Copyright © 2007-2014 Atlassian. All Rights Reserved.