easy-18in/src/main/java/de/marhali/easyi18n/model/TranslationUpdate.java
2021-11-04 17:59:54 +01:00

49 lines
1.2 KiB
Java

package de.marhali.easyi18n.model;
import org.jetbrains.annotations.Nullable;
/**
* Represents an update for a translated i18n key.
* Supports translation creation, manipulation and deletion.
*
* @author marhali
*/
public class TranslationUpdate {
private final @Nullable KeyedTranslation origin;
private final @Nullable KeyedTranslation change;
public TranslationUpdate(@Nullable KeyedTranslation origin, @Nullable KeyedTranslation change) {
this.origin = origin;
this.change = change;
}
public @Nullable KeyedTranslation getOrigin() {
return origin;
}
public @Nullable KeyedTranslation getChange() {
return change;
}
public boolean isCreation() {
return this.origin == null;
}
public boolean isDeletion() {
return this.change == null;
}
public boolean isKeyChange() {
return this.origin != null && this.change != null && !this.origin.getKey().equals(this.change.getKey());
}
@Override
public String toString() {
return "TranslationUpdate{" +
"origin=" + origin +
", change=" + change +
'}';
}
}