@Override protected void doChanged( java.sql.Connection connection, java.util.List<org.phoenixbioinformatics.api.db.api.ISubscriptionDescriptionItem> dtos) throws java.sql.SQLException, com.poesys.db.BatchException, com.poesys.db.ConstraintViolationException, com.poesys.db.dto.DtoStatusException { // items source: AddToManyChildCollectionProperties // Immutable: false com.poesys.db.dao.IDaoManager manager = com.poesys.db.dao.DaoManagerFactory.getManager(subsystem); com.poesys.db.dao.IDaoFactory< org.phoenixbioinformatics.api.db.api.ISubscriptionDescriptionItem> factory = manager.getFactory( org.phoenixbioinformatics.api.db.api.SubscriptionDescriptionItem.class.getName(), subsystem, 2147483647); com.poesys.db.dao.update.IUpdateBatch< org.phoenixbioinformatics.api.db.api.ISubscriptionDescriptionItem> updater = factory.getUpdateBatch( new org.phoenixbioinformatics.api.db.api.sql.UpdateSubscriptionDescriptionItem()); // Update the object of the leaf class. updater.setLeaf(true); updater.update(connection, dtos, dtos.size() / 2); // Complete the update by setting the DTOs to EXISTING status. for (com.poesys.db.dto.IDbDto dto : dtos) { if (dto.getStatus() == Status.CHANGED) { dto.setExisting(); } } }
@Override protected void doNew( java.sql.Connection connection, java.util.List<org.phoenixbioinformatics.api.db.api.ISubscriptionDescriptionItem> dtos) throws java.sql.SQLException, com.poesys.db.BatchException, com.poesys.db.ConstraintViolationException, com.poesys.db.dto.DtoStatusException { com.poesys.db.dao.IDaoManager manager = com.poesys.db.dao.DaoManagerFactory.getManager(subsystem); com.poesys.db.dao.IDaoFactory< org.phoenixbioinformatics.api.db.api.ISubscriptionDescriptionItem> factory = manager.getFactory( org.phoenixbioinformatics.api.db.api.SubscriptionDescriptionItem.class.getName(), subsystem, 2147483647); com.poesys.db.dao.insert.IInsertBatch< org.phoenixbioinformatics.api.db.api.ISubscriptionDescriptionItem> inserter = factory.getInsertBatch( new org.phoenixbioinformatics.api.db.api.sql.InsertSubscriptionDescriptionItem()); // Insert the object of the current class after enabling nested inserts, // which will allow connecting up linked objects to any of the inserted // classes. for (com.poesys.db.dto.IDbDto dto : dtos) { dto.setSuppressNestedInserts(false); } inserter.setLeaf(true); inserter.insert(connection, dtos, dtos.size() / 2); }
@Override public void markChildrenDeleted() throws DtoStatusException { // Only process deletes if child exists. if (items != null) { for (com.poesys.db.dto.IDbDto dto : items) { dto.cascadeDelete(); } } }
@Override protected void set( java.util.List<org.phoenixbioinformatics.api.db.api.ISubscriptionDescriptionItem> list) { // No status change; this is just filling in the object data. items = list; // Add the primary keys to the serialized key list if there are any. if (items != null) { for (com.poesys.db.dto.IDbDto object : items) { itemsKeys.add(object.getPrimaryKey()); } } }
/** * Set the items. * * <ul> * <li>Read/Write DTO: true * <li>Immutable DTO: false * <li>Read/Write property: true * <li>Immutable property: false * <li>Lazy property: false (if true, proxy calls this method) * </ul> * * <p>the set of items within the description * * @param items the value with which to set the property * @throws com.poesys.db.InvalidParametersException when the input items is null */ public void setItems( java.util.List<org.phoenixbioinformatics.api.db.api.ISubscriptionDescriptionItem> items) throws com.poesys.db.InvalidParametersException { if (items == null) { throw new com.poesys.db.InvalidParametersException("items is required"); } this.items = items; // Add the primary keys of the new collection to the serialized key list. itemsKeys.clear(); if (items != null) { for (com.poesys.db.dto.IDbDto object : items) { itemsKeys.add(object.getPrimaryKey()); } } setChanged(); }