/** {@inheritDoc} */
@Override
public Feature mapRow(ResultSet rs, int rowNum) throws SQLException {
String featUid = rs.getString(COL_FEAT_UID);
Feature f = new Feature(featUid, rs.getInt(COL_FEAT_ENABLE) > 0);
f.setDescription(rs.getString(COL_FEAT_DESCRIPTION));
f.setGroup(rs.getString(COL_FEAT_GROUPNAME));
// Build Flipping Strategy From DataBase
String strategy = rs.getString(COL_FEAT_STRATEGY);
if (strategy != null && !"".equals(strategy)) {
try {
FlippingStrategy flipStrategy = (FlippingStrategy) Class.forName(strategy).newInstance();
flipStrategy.init(featUid, ParameterUtils.toMap(rs.getString(COL_FEAT_EXPRESSION)));
f.setFlippingStrategy(flipStrategy);
} catch (InstantiationException ie) {
throw new FeatureAccessException("Cannot instantiate Strategy, no default constructor available", ie);
} catch (IllegalAccessException iae) {
throw new FeatureAccessException("Cannot instantiate Strategy, no visible constructor", iae);
} catch (ClassNotFoundException e) {