package features.domain.builders; import features.domain.ParentD; import features.domain.ParentDChildC; import features.domain.ParentDToChildC; import java.util.List; import joist.domain.builders.AbstractBuilder; import joist.domain.builders.DefaultsContext; import joist.domain.uow.UoW; @SuppressWarnings("all") public abstract class ParentDToChildCBuilderCodegen extends AbstractBuilder<ParentDToChildC> { public ParentDToChildCBuilderCodegen(ParentDToChildC instance) { super(instance); } @Override public ParentDToChildCBuilder defaults() { return (ParentDToChildCBuilder) super.defaults(); } @Override protected void defaults(DefaultsContext c) { super.defaults(c); c.rememberIfSet(parentDChildC()); c.rememberIfSet(parentD()); if (parentDChildC() == null) { parentDChildC(c.getIfAvailable(ParentDChildC.class)); if (parentDChildC() == null) { parentDChildC(defaultParentDChildC()); c.rememberIfSet(parentDChildC()); } } if (parentD() == null) { parentD(c.getIfAvailable(ParentD.class)); if (parentD() == null) { parentD(defaultParentD()); c.rememberIfSet(parentD()); } } } public Long id() { if (UoW.isOpen() && get().getId() == null) { UoW.flush(); } return get().getId(); } public ParentDToChildCBuilder id(Long id) { get().setId(id); return (ParentDToChildCBuilder) this; } public ParentDChildCBuilder parentDChildC() { if (get().getParentDChildC() == null) { return null; } return Builders.existing(get().getParentDChildC()); } public ParentDToChildCBuilder parentDChildC(ParentDChildC parentDChildC) { get().setParentDChildC(parentDChildC); return (ParentDToChildCBuilder) this; } public ParentDToChildCBuilder with(ParentDChildC parentDChildC) { return parentDChildC(parentDChildC); } public ParentDToChildCBuilder parentDChildC(ParentDChildCBuilder parentDChildC) { return parentDChildC(parentDChildC == null ? null : parentDChildC.get()); } public ParentDToChildCBuilder with(ParentDChildCBuilder parentDChildC) { return parentDChildC(parentDChildC); } protected ParentDChildCBuilder defaultParentDChildC() { return Builders.aParentDChildC().defaults(); } public ParentDBuilder parentD() { if (get().getParentD() == null) { return null; } return Builders.existing(get().getParentD()); } public ParentDToChildCBuilder parentD(ParentD parentD) { get().setParentD(parentD); return (ParentDToChildCBuilder) this; } public ParentDToChildCBuilder with(ParentD parentD) { return parentD(parentD); } public ParentDToChildCBuilder parentD(ParentDBuilder parentD) { return parentD(parentD == null ? null : parentD.get()); } public ParentDToChildCBuilder with(ParentDBuilder parentD) { return parentD(parentD); } protected ParentDBuilder defaultParentD() { return Builders.aParentD().defaults(); } public ParentDToChildC get() { return (features.domain.ParentDToChildC) super.get(); } @Override public ParentDToChildCBuilder ensureSaved() { doEnsureSaved(); return (ParentDToChildCBuilder) this; } @Override public ParentDToChildCBuilder use(AbstractBuilder<?> builder) { return (ParentDToChildCBuilder) super.use(builder); } @Override public void delete() { ParentDToChildC.queries.delete(get()); } public static void deleteAll() { List<Long> ids = ParentDToChildC.queries.findAllIds(); for (Long id : ids) { ParentDToChildC.queries.delete(ParentDToChildC.queries.find(id)); } } }