/** * @see org.kuali.rice.krad.bo.GlobalBusinessObject#isPersistable() returns whether this global * object reversion can be stored in the database, which is really a question of whether it * and all of its details have all of their appropriate primary keys set. */ public boolean isPersistable() { PersistenceStructureService persistenceStructureService = SpringContext.getBean(PersistenceStructureService.class); if (!persistenceStructureService.hasPrimaryKeyFieldValues(this)) { return false; } for (OrganizationReversionGlobalDetail orgRevDetail : this.getOrganizationReversionGlobalDetails()) { if (!persistenceStructureService.hasPrimaryKeyFieldValues(orgRevDetail)) { return false; } } for (OrganizationReversionGlobalOrganization orgRevOrg : this.getOrganizationReversionGlobalOrganizations()) { if (!persistenceStructureService.hasPrimaryKeyFieldValues(orgRevOrg)) { return false; } } // are we still here? really? Then, hey, let's persist! return true; }
@Override public boolean hasPrimaryKeyFieldValues(Object dataObject) { return persistenceStructureService.hasPrimaryKeyFieldValues(dataObject); }