TransferSelection.java
package com.taxonomy.dto;
import java.util.Set;
/**
* Selection of elements and relations to transfer between contexts.
*
* @param sourceContextId the context to copy from
* @param targetContextId the context to copy into
* @param selectedElementIds which elements to transfer
* @param selectedRelationIds which relations to transfer
* @param mode how to perform the transfer
*/
public record TransferSelection(
String sourceContextId,
String targetContextId,
Set<String> selectedElementIds,
Set<String> selectedRelationIds,
TransferMode mode
) {
/**
* How the selective transfer is performed.
*/
public enum TransferMode {
/** Copy selected items into the target, overwriting any conflicts. */
COPY,
/** Cherry-pick the commit containing the selected items. */
CHERRY_PICK,
/** Merge only the selected items from the source. */
MERGE_SELECTED
}
}