- java.lang.Object
-
- xyz.cofe.collection.Bijection.Update
-
- All Implemented Interfaces:
Runnable
- Enclosing class:
- Bijection<X extends Comparable,Y extends Comparable>
public class Bijection.Update extends Object implements Runnable
Обновление ассоциаций
-
-
Field Summary
Fields Modifier and Type Field Description protected BiFunction<X,Y,Pair<X,Y>>fnXYФункция ассоциацииprotected booleantrackXDeleteprotected booleantrackXInsertprotected Bijection.ResolveDuplicatexDuplicateПоведение при дублированииprotected Bijection.ResolveNullxNullprotected Bijection.ResolveDuplicateyDuplicateprotected Bijection.ResolveNullyNull
-
Constructor Summary
Constructors Constructor Description Update()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected Errorcheck(TreeMap<X,Y> newXtoY)Bijection.UpdatefnXY(BiFunction<X,Y,Pair<X,Y>> fn)Указывает функцию ассоциацииBiFunction<X,Y,Pair<X,Y>>getFnXY()Возвращает функция ассоциацииBijection.ResolveDuplicategetXDuplicate()Указывает поведение при дублированииBijection.ResolveNullgetXNull()Указывает поведение при null ссылкеBijection.ResolveDuplicategetYDuplicate()Указывает поведение при дублированииBijection.ResolveNullgetYNull()Указывает поведение при null ссылкеvoidrun()Обновление ассоциацийvoidsetFnXY(BiFunction<X,Y,Pair<X,Y>> fnXY)Указывает функцию ассоциацииvoidsetXDuplicate(Bijection.ResolveDuplicate xDuplicate)Указывает поведение при дублированииvoidsetXNull(Bijection.ResolveNull xNull)Указывает поведение при null ссылкеvoidsetYDuplicate(Bijection.ResolveDuplicate xDuplicate)Указывает поведение при дублированииvoidsetYNull(Bijection.ResolveNull yNull)Указывает поведение при null ссылкеBijection.Updatesimple()Слабое поведение:
Для дупликатовBijection.ResolveDuplicate.Merge,
Для null ссылокBijection.ResolveNull.RemoveBijection.Updatestrong()Строгое поведение:
Во всех спорных случая будет генерироваться ошибкаvoidupdateXY()Обновление ассоциацийBijection.UpdatexDuplicate(Bijection.ResolveDuplicate resolv)Указывает поведение при дублированииBijection.UpdatexNull(Bijection.ResolveNull resolv)Указывает поведение при null ссылкеBijection.UpdateyDuplicate(Bijection.ResolveDuplicate resolv)Указывает поведение при дублированииBijection.UpdateyNull(Bijection.ResolveNull resolv)Указывает поведение при null ссылке
-
-
-
Field Detail
-
fnXY
protected BiFunction<X extends Comparable,Y extends Comparable,Pair<X extends Comparable,Y extends Comparable>> fnXY
Функция ассоциации
-
xDuplicate
protected Bijection.ResolveDuplicate xDuplicate
Поведение при дублировании
-
xNull
protected Bijection.ResolveNull xNull
-
yDuplicate
protected Bijection.ResolveDuplicate yDuplicate
-
yNull
protected Bijection.ResolveNull yNull
-
trackXInsert
protected boolean trackXInsert
-
trackXDelete
protected boolean trackXDelete
-
-
Method Detail
-
getFnXY
public BiFunction<X,Y,Pair<X,Y>> getFnXY()
Возвращает функция ассоциации- Returns:
- функция
-
setFnXY
public void setFnXY(BiFunction<X,Y,Pair<X,Y>> fnXY)
Указывает функцию ассоциации- Parameters:
fnXY- функция
-
fnXY
public Bijection.Update fnXY(BiFunction<X,Y,Pair<X,Y>> fn)
Указывает функцию ассоциации- Parameters:
fn- функция- Returns:
- self ссылка
-
getXDuplicate
public Bijection.ResolveDuplicate getXDuplicate()
Указывает поведение при дублировании- Returns:
- поведение
-
setXDuplicate
public void setXDuplicate(Bijection.ResolveDuplicate xDuplicate)
Указывает поведение при дублировании- Parameters:
xDuplicate- поведение
-
xDuplicate
public Bijection.Update xDuplicate(Bijection.ResolveDuplicate resolv)
Указывает поведение при дублировании- Parameters:
resolv- поведение- Returns:
- self ссылка
-
getXNull
public Bijection.ResolveNull getXNull()
Указывает поведение при null ссылке- Returns:
- поведение
-
setXNull
public void setXNull(Bijection.ResolveNull xNull)
Указывает поведение при null ссылке- Parameters:
xNull- поведение
-
xNull
public Bijection.Update xNull(Bijection.ResolveNull resolv)
Указывает поведение при null ссылке- Parameters:
resolv- поведение- Returns:
- self ссылка
-
getYDuplicate
public Bijection.ResolveDuplicate getYDuplicate()
Указывает поведение при дублировании- Returns:
- поведение
-
setYDuplicate
public void setYDuplicate(Bijection.ResolveDuplicate xDuplicate)
Указывает поведение при дублировании- Parameters:
xDuplicate- поведение
-
yDuplicate
public Bijection.Update yDuplicate(Bijection.ResolveDuplicate resolv)
Указывает поведение при дублировании- Parameters:
resolv- поведение- Returns:
- self ссылка
-
getYNull
public Bijection.ResolveNull getYNull()
Указывает поведение при null ссылке- Returns:
- поведение
-
setYNull
public void setYNull(Bijection.ResolveNull yNull)
Указывает поведение при null ссылке- Parameters:
yNull- поведение
-
yNull
public Bijection.Update yNull(Bijection.ResolveNull resolv)
Указывает поведение при null ссылке- Parameters:
resolv- поведение- Returns:
- self ссылка
-
strong
public Bijection.Update strong()
Строгое поведение:
Во всех спорных случая будет генерироваться ошибка- Returns:
- self ссылка
-
simple
public Bijection.Update simple()
Слабое поведение:
Для дупликатовBijection.ResolveDuplicate.Merge,
Для null ссылокBijection.ResolveNull.Remove- Returns:
- self ссылка
-
updateXY
public void updateXY()
Обновление ассоциаций
-
-