diff --git a/wizard-server/src/main/java/org/cobbzilla/wizard/dao/AbstractDAO.java b/wizard-server/src/main/java/org/cobbzilla/wizard/dao/AbstractDAO.java index b22fb61..1f51085 100644 --- a/wizard-server/src/main/java/org/cobbzilla/wizard/dao/AbstractDAO.java +++ b/wizard-server/src/main/java/org/cobbzilla/wizard/dao/AbstractDAO.java @@ -9,7 +9,6 @@ import lombok.Getter; import lombok.Setter; import lombok.extern.slf4j.Slf4j; import org.cobbzilla.util.collection.NameAndValue; -import org.cobbzilla.util.reflect.ReflectionUtil; import org.cobbzilla.util.string.StringUtil; import org.cobbzilla.wizard.model.Identifiable; import org.cobbzilla.wizard.model.IdentifiableBase; @@ -34,7 +33,9 @@ import java.util.List; import static com.google.common.base.Preconditions.checkNotNull; import static org.cobbzilla.util.daemon.ZillaRuntime.*; +import static org.cobbzilla.util.reflect.ReflectionUtil.getTypeParameter; import static org.cobbzilla.util.reflect.ReflectionUtil.instantiate; +import static org.cobbzilla.util.string.StringUtil.camelCaseToSnakeCase; /** * An abstract base class for Hibernate DAO classes. @@ -53,7 +54,9 @@ public abstract class AbstractDAO implements DAO { /** * Creates a new DAO with a given session provider. */ - public AbstractDAO() { this.entityClass = ReflectionUtil.getTypeParameter(getClass()); } + public AbstractDAO() { this.entityClass = getTypeParameter(getClass()); } + + public String tableName() { return camelCaseToSnakeCase(getEntityClass().getSimpleName()); } /** * Creates a new {@link Criteria} query for {@code }. @@ -105,9 +108,7 @@ public abstract class AbstractDAO implements DAO { return (E) DAOUtil.uniqueResult(getHibernateTemplate().findByCriteria(criteria)); } - protected E uniqueResult(Criterion expression) { - return uniqueResult(criteria().add(expression)); - } + protected E uniqueResult(Criterion expression) { return uniqueResult(criteria().add(expression)); } /** * Get the results of a {@link Criteria} query. @@ -235,9 +236,7 @@ public abstract class AbstractDAO implements DAO { return proxy; } - public void delete(Collection entities) { - for (E entity : entities) delete(entity.getUuid()); - } + public void delete(Collection entities) { for (E entity : entities) delete(entity.getUuid()); } public static final String entityAlias = "x"; public static final String FILTER_PARAM = "filter";