private Property makeCollectionProperty( String propertyName, boolean mutable, Table table, ForeignKey fk, Collection value, boolean inverseProperty) { AssociationInfo fkei = inverseProperty ? revengStrategy.foreignKeyToInverseAssociationInfo(fk) : revengStrategy.foreignKeyToAssociationInfo(fk); String fetchMode = null; String cascade = null; boolean update = mutable; boolean insert = mutable; if (fkei != null) { cascade = fkei.getCascade(); if (cascade == null) cascade = "all"; // To ensure collections cascade to be compatible with Seam-gen and previous // behavior. if (fkei.getUpdate() != null) { update = fkei.getUpdate().booleanValue(); } if (fkei.getInsert() != null) { insert = fkei.getInsert().booleanValue(); } fetchMode = fkei.getFetch(); } if (FetchMode.JOIN.toString().equalsIgnoreCase(fetchMode)) { value.setFetchMode(FetchMode.JOIN); } else if (FetchMode.SELECT.toString().equalsIgnoreCase(fetchMode)) { value.setFetchMode(FetchMode.SELECT); } else { value.setFetchMode(FetchMode.SELECT); } return makeProperty( TableIdentifier.create(table), propertyName, value, insert, update, value.getFetchMode() != FetchMode.JOIN, cascade, null); }
private Property makeEntityProperty( String propertyName, boolean mutable, Table table, ForeignKey fk, ToOne value, boolean inverseProperty) { AssociationInfo fkei = inverseProperty ? revengStrategy.foreignKeyToInverseAssociationInfo(fk) : revengStrategy.foreignKeyToAssociationInfo(fk); String fetchMode = null; String cascade = null; boolean update = mutable; boolean insert = mutable; if (fkei != null) { cascade = fkei.getCascade(); if (fkei.getUpdate() != null) { update = fkei.getUpdate().booleanValue(); } if (fkei.getInsert() != null) { insert = fkei.getInsert().booleanValue(); } fetchMode = fkei.getFetch(); } if (FetchMode.JOIN.toString().equalsIgnoreCase(fetchMode)) { value.setFetchMode(FetchMode.JOIN); } else if (FetchMode.SELECT.toString().equalsIgnoreCase(fetchMode)) { value.setFetchMode(FetchMode.SELECT); } else { value.setFetchMode(FetchMode.SELECT); } return makeProperty( TableIdentifier.create(table), propertyName, value, insert, update, value.getFetchMode() != FetchMode.JOIN, cascade, null); }