org.babyfish.jimmer.sql.ast.mutation.AbstractEntitySaveCommand Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of jimmer-sql Show documentation
Show all versions of jimmer-sql Show documentation
A revolutionary ORM framework for both java and kotlin
package org.babyfish.jimmer.sql.ast.mutation;
import org.babyfish.jimmer.lang.NewChain;
import org.babyfish.jimmer.meta.ImmutableProp;
import org.babyfish.jimmer.meta.TypedProp;
import org.babyfish.jimmer.sql.DissociateAction;
import org.babyfish.jimmer.sql.TargetTransferMode;
import org.babyfish.jimmer.sql.runtime.ExceptionTranslator;
import java.util.Collection;
public interface AbstractEntitySaveCommand {
@NewChain
AbstractEntitySaveCommand setMode(SaveMode mode);
@NewChain
AbstractEntitySaveCommand setAssociatedModeAll(AssociatedSaveMode mode);
@NewChain
AbstractEntitySaveCommand setAssociatedMode(ImmutableProp prop, AssociatedSaveMode mode);
@NewChain
AbstractEntitySaveCommand setAssociatedMode(TypedProp.Association, ?> prop, AssociatedSaveMode mode);
@NewChain
AbstractEntitySaveCommand setKeyProps(ImmutableProp ... props);
@NewChain
AbstractEntitySaveCommand setKeyProps(TypedProp, ?> ... props);
@NewChain
AbstractEntitySaveCommand setAutoIdOnlyTargetCheckingAll();
@NewChain
AbstractEntitySaveCommand setAutoIdOnlyTargetChecking(TypedProp.Association, ?> prop);
@NewChain
AbstractEntitySaveCommand setAutoIdOnlyTargetChecking(TypedProp.Association, ?> prop, boolean checking);
@NewChain
AbstractEntitySaveCommand setAutoIdOnlyTargetChecking(ImmutableProp prop);
@NewChain
AbstractEntitySaveCommand setAutoIdOnlyTargetChecking(ImmutableProp prop, boolean checking);
@NewChain
default AbstractEntitySaveCommand setDissociateAction(
TypedProp.Reference, ?> prop,
DissociateAction dissociateAction
) {
return setDissociateAction(prop.unwrap(), dissociateAction);
}
@NewChain
AbstractEntitySaveCommand setDissociateAction(
ImmutableProp prop,
DissociateAction dissociateAction
);
@NewChain
default AbstractEntitySaveCommand setTargetTransferMode(
TypedProp.ReferenceList, ?> prop,
TargetTransferMode mode
) {
return setTargetTransferMode(prop.unwrap(), mode);
}
@NewChain
AbstractEntitySaveCommand setTargetTransferMode(
ImmutableProp prop,
TargetTransferMode mode
);
@NewChain
AbstractEntitySaveCommand setTargetTransferModeAll(TargetTransferMode mode);
@NewChain
AbstractEntitySaveCommand setDeleteMode(DeleteMode mode);
@NewChain
AbstractEntitySaveCommand setLockMode(LockMode lockMode);
@NewChain
AbstractEntitySaveCommand addExceptionTranslator(ExceptionTranslator> translator);
}