(!getPlatformInfo().isIdentityOverrideAllowed() || (bean.get(prop.getName()) == null));
(!isIdentityOverrideOn() || !getPlatformInfo().isIdentityOverrideAllowed() || (bean.get(prop.getName()) == null));
    private Column[] getRelevantIdentityColumns(Database model, SqlDynaClass dynaClass, final DynaBean bean)    {        SqlDynaProperty[] properties = dynaClass.getSqlDynaProperties();        Collection relevantProperties = CollectionUtils.select(Arrays.asList(properties), new Predicate() {            public boolean evaluate(Object input) {                SqlDynaProperty prop = (SqlDynaProperty)input;                // we only want those identity columns that were really specified by the DB                // if the platform allows specification of values for identity columns                // in INSERT/UPDATE statements, then we need to filter the corresponding                // columns out                return prop.getColumn().isAutoIncrement() &&                       (!getPlatformInfo().isIdentityOverrideAllowed() || (bean.get(prop.getName()) == null));            }        });        Column[] columns = new Column[relevantProperties.size()];        int      idx     = 0;        for (Iterator propIt = relevantProperties.iterator(); propIt.hasNext(); idx++)        {            columns[idx] = ((SqlDynaProperty)propIt.next()).getColumn();        }        return columns;    }