Author: athimel Date: 2012-05-10 12:37:36 +0200 (Thu, 10 May 2012) New Revision: 2471 Url: http://nuiton.org/repositories/revision/topia/2471 Log: Reorganize TopiaContextImpl (re-order methods) Fix HibernateMappingGenerator enum generation Modified: trunk/topia-persistence-hibernate/src/test/java/org/nuiton/topia/tck/TopiaTckItHibernateTest.java trunk/topia-persistence-hibernate/src/test/java/org/nuiton/topia/tck/TopiaTckLegacyHibernateTest.java trunk/topia-persistence-hibernate/src/test/java/org/nuiton/topia/tck/TopiaTckMappingHibernateTest.java trunk/topia-persistence/src/main/java/org/nuiton/topia/framework/TopiaContextImpl.java trunk/topia-persistence/src/main/java/org/nuiton/topia/generator/EntityHibernateMappingGenerator.java trunk/topia-persistence/src/main/resources/i18n/topia-persistence_en_GB.properties trunk/topia-persistence/src/main/resources/i18n/topia-persistence_es_ES.properties trunk/topia-persistence/src/main/resources/i18n/topia-persistence_fr_FR.properties Modified: trunk/topia-persistence/src/main/java/org/nuiton/topia/framework/TopiaContextImpl.java =================================================================== --- trunk/topia-persistence/src/main/java/org/nuiton/topia/framework/TopiaContextImpl.java 2012-05-10 09:49:18 UTC (rev 2470) +++ trunk/topia-persistence/src/main/java/org/nuiton/topia/framework/TopiaContextImpl.java 2012-05-10 10:37:36 UTC (rev 2471) @@ -236,150 +236,10 @@ postInitServices(services); } - /* -------------------- SERVICES MANAGMENT -------------------------------*/ - protected String getProperExceptionMessage(Throwable eee) { - return eee.getClass().getSimpleName() + " : " + - eee.getMessage(); - } + /* -------------------- CONTEXT HIERARCHY MANAGEMENT ----------------------*/ - protected Map<String, TopiaService> loadServices(Properties config) { - Map<String, TopiaService> result = new HashMap<String, TopiaService>(); - // recherche des services present dans la config - for (Enumeration<?> e = config.propertyNames(); e.hasMoreElements();) { - String key = (String) e.nextElement(); - if (key.matches("^topia\\.service\\.\\w+$")) { - String classService = config.getProperty(key); - try { - Class<?> forName = Class.forName(classService); - Object newInstance = forName.getConstructor().newInstance(); - TopiaService service = (TopiaService) newInstance; - if (key.equals("topia.service." + service.getServiceName())) { - result.put(service.getServiceName(), service); - log.info(_("topia.persistence.service.loaded", - key, classService)); - } else { - log.warn(_("topia.persistence.warn.service.not.loaded", - key, service.getServiceName())); - } - } catch (Throwable eee) { - String message = - _("topia.persistence.error.service.unknown", - key, classService); - if (log.isDebugEnabled()) { - log.debug(message, eee); - } else if (log.isErrorEnabled()) { - log.error(message); - } - } - } - } - return result; - } - - protected void preInitServices(Map<String, TopiaService> services) { - for (TopiaService service : services.values()) { - if (!service.preInit(this)) { - log.warn(_("topia.persistence.warn.service.not.preInit", - service.getServiceName())); - } - } - } - - protected void postInitServices(Map<String, TopiaService> services) { - for (TopiaService service : services.values()) { - if (!service.postInit(this)) { - log.warn(_("topia.persistence.warn.service.not.postInit", - service.getServiceName())); - } - } - } - - protected TopiaService getService(String name) { - TopiaService result = getServices().get(name); - return result; - } - - protected boolean serviceEnabled(String name) { - boolean result = getServices().containsKey(name); - return result; - } - /** - * Retrieve service name using SERVICE_NAME static field on service - * interface. - * - * @param interfaceService class of the service - * @param <E> type of the service that extends {@link - * TopiaService} - * @return the service name - * @throws IllegalAccessException if field SERVICE_NAME can't be accessed - * @throws NoSuchFieldException if no field SERVICE_NAME is defined - */ - protected <E extends TopiaService> String getServiceName( - Class<E> interfaceService) - throws IllegalAccessException, NoSuchFieldException { - Field f = interfaceService.getField("SERVICE_NAME"); - String name = (String) f.get(null); - return name; - } - - @Override - public Map<String, TopiaService> getServices() { - TopiaContextImplementor parent = getParentContext(); - - Map<String, TopiaService> result; - if (parent != null) { - result = parent.getServices(); - } else { - result = services; - } - return result; - } - - @Override - public <E extends TopiaService> E getService(Class<E> interfaceService) - throws TopiaNotFoundException { - E result; - try { - String name = getServiceName(interfaceService); - result = (E) getService(name); - } catch (Exception eee) { - throw new TopiaNotFoundException( - _("topia.persistence.error.service.not.retreaved", - interfaceService, getProperExceptionMessage(eee)), - eee); - } - if (result == null) { - throw new TopiaNotFoundException( - _("topia.persistence.error.service.not.found", - interfaceService)); - } - return result; - } - - @Override - public <E extends TopiaService> boolean serviceEnabled( - Class<E> interfaceService) { - boolean result = false; - try { - String name = getServiceName(interfaceService); - result = serviceEnabled(name); - } catch (Exception eee) { - String message = _("topia.persistence.warn.service.not.found", - interfaceService, getProperExceptionMessage(eee)); - if (log.isDebugEnabled()) { - log.debug(message, eee); - } else if (log.isWarnEnabled()) { - log.warn(message); - } - } - return result; - } - - /* -------------------- CONTEXT HIERARCHY MANAGMENT ----------------------*/ - - /** * Constructor used by {@link #beginTransaction()} to instantiate child from * {@code parentContext}. * @@ -435,72 +295,16 @@ return config; } - /** - * Change the value of flag {@link #useFlushMode}. - * - * @param useFlushMode the new value to set - * @see #useFlushMode - * @since 2.5 - */ public void setUseFlushMode(boolean useFlushMode) { this.useFlushMode = useFlushMode; } - /* -------------------- HIBERNATE MANAGMENT -----------------------------*/ - @Override - public void createSchema() throws TopiaException { -// try { -// boolean showSchema = false; -// if (log.isDebugEnabled()) { -// showSchema = true; -// } -// getFiresSupport().firePreCreateSchema(this); -// new SchemaExport(getHibernateConfiguration()).create(showSchema, -// true); -// getFiresSupport().firePostCreateSchema(this); -// } catch (PersistenceException eee) { -// throw new TopiaException( -// _("topia.persistence.error.create.schema", -// eee.getMessage()), eee); -// } - } - - @Override - public void showCreateSchema() throws TopiaException { -// try { -// new SchemaExport(getHibernateConfiguration()). -// execute(true, false, false, true); -// } catch (PersistenceException eee) { -// throw new TopiaException( -// _("topia.persistence.error.create.schema", -// eee.getMessage()), eee); -// } - } - - @Override - public void updateSchema() throws TopiaException { -// try { -// boolean showSchema = false; -// if (log.isDebugEnabled()) { -// showSchema = true; -// } -// getFiresSupport().firePreUpdateSchema(this); -// new SchemaUpdate(getHibernateConfiguration()).execute(showSchema, -// true); -// getFiresSupport().firePostUpdateSchema(this); -// } catch (PersistenceException eee) { -// throw new TopiaException( -// _("topia.persistence.error.update.schema", -// eee.getMessage()), eee); -// } - } - - @Override public EntityManager getEntityManager() throws TopiaException { if (entityManager == null) { throw new TopiaException( - _("topia.persistence.error.no.hibernate.session")); + "No EntityManager found. Please open first a new " + + "transaction using 'beginTransaction()' method."); } return entityManager; } @@ -519,6 +323,14 @@ return entityManagerFactory; } + @Override + public Set<Class<?>> getPersistenceClasses() { + if (getParentContext() != null) { + return getParentContext().getPersistenceClasses(); + } + return persistenceClasses; + } + public Map<String, Object> getJPAConfiguration() throws TopiaNotFoundException { if (jpaConfiguration == null) { if (getParentContext() != null) { @@ -786,7 +598,7 @@ _("topia.persistence.error.rootContext.access")); } Set<EntityType<?>> entities = getEntityManagerFactory().getMetamodel().getEntities(); - boolean found = false; + boolean found; for (EntityType<?> entityType : entities) { String entityName = entityType.getName(); found = @@ -831,18 +643,21 @@ @SuppressWarnings({"unchecked"}) @Override - public <E extends TopiaEntity, D extends TopiaDAO<E>> D getDAO(Class<E> entityClass, - Class<D> daoClass) throws TopiaException { + public <E extends TopiaEntity, D extends TopiaDAO<E>> D getDAO( + Class<E> entityClass, Class<D> daoClass) throws TopiaException { return (D) getDAO(entityClass); } + + /* -------------------- TRANSACTION MANAGEMENT --------------------------*/ + @Override public TopiaContext beginTransaction() throws TopiaException { checkClosed(_("topia.persistence.error.context.is.closed")); TopiaContextImpl result = new TopiaContextImpl(this); EntityManagerFactory factory = getEntityManagerFactory(); - result.entityManager = factory.createEntityManager(); // TODO AThimel 07/05/2012 Maybe provide a Map ? cf Configuration + result.entityManager = factory.createEntityManager(); // new TopiaInterceptor(result)); // on ne synchronise jamais les données avec la base tant que @@ -878,7 +693,7 @@ eee); } - // 20081217 : add child AFTER hibernate session is opened + // 20081217 : add child AFTER EntityManager opening addChildContext(result); // fire event @@ -943,7 +758,7 @@ entityManager.close(); // it's very important to change the session after rollback // otherwize there are many error during next Entity's modification - entityManager = getEntityManagerFactory().createEntityManager(); // TODO AThimel 07/05/2012 Maybe provide a Map ? cf Configuration + entityManager = getEntityManagerFactory().createEntityManager(); entityManager.setFlushMode(FlushModeType.COMMIT); // TODO AThimel 07/05/2012 Was MANUAL // hibernate.beginTransaction(); @@ -1015,25 +830,129 @@ return closed; } - @Override - public void executeSQL(String sqlScript) throws TopiaException { - try { - Query nativeQuery = getEntityManager().createNativeQuery(sqlScript); - nativeQuery.executeUpdate(); - } catch (PersistenceException e) { - throw new TopiaException("Could not execute sql code", e); - } - } - protected void checkClosed(String message) throws TopiaException { if (closed) { throw new TopiaException(message); } } + + /* ------------------------ EVENT FIRING --------------------------*/ + + @Override + public TopiaFiresSupport getFiresSupport() { + return firesSupport; + } + + /* Listeners adders */ + + @Override + public void addTopiaEntityListener(TopiaEntityListener listener) { + getFiresSupport().addTopiaEntityListener(listener); + } + + @Override + public void addTopiaEntityListener( + Class<? extends TopiaEntity> entityClass, + TopiaEntityListener listener) { + getFiresSupport().addTopiaEntityListener(entityClass, listener); + } + + @Override + public void addTopiaEntityVetoable(TopiaEntityVetoable vetoable) { + getFiresSupport().addTopiaEntityVetoable(TopiaEntity.class, vetoable); + } + + @Override + public void addTopiaEntityVetoable( + Class<? extends TopiaEntity> entityClass, + TopiaEntityVetoable vetoable) { + getFiresSupport().addTopiaEntityVetoable(entityClass, vetoable); + } + + @Override + public void addTopiaTransactionListener(TopiaTransactionListener listener) { + getFiresSupport().addTopiaTransactionListener(listener); + } + + @Override + public void addTopiaTransactionVetoable(TopiaTransactionVetoable vetoable) { + getFiresSupport().addTopiaTransactionVetoable(vetoable); + } + + @Override + public void addPropertyChangeListener(PropertyChangeListener listener) { + getFiresSupport().addPropertyChangeListener(listener); + } + + @Override + public void addTopiaContextListener(TopiaContextListener listener) { + getFiresSupport().addTopiaContextListener(listener); + } + + /* Listeners removers */ + + @Override + public void removeTopiaEntityListener(TopiaEntityListener listener) { + getFiresSupport().removeTopiaEntityListener(TopiaEntity.class, + listener); + } + + @Override + public void removeTopiaEntityListener( + Class<? extends TopiaEntity> entityClass, + TopiaEntityListener listener) { + getFiresSupport().removeTopiaEntityListener(entityClass, listener); + } + + @Override + public void removeTopiaEntityVetoable(TopiaEntityVetoable vetoable) { + getFiresSupport().removeTopiaEntityVetoable(TopiaEntity.class, + vetoable); + } + + @Override + public void removeTopiaEntityVetoable( + Class<? extends TopiaEntity> entityClass, + TopiaEntityVetoable vetoable) { + getFiresSupport().removeTopiaEntityVetoable(entityClass, vetoable); + } + + @Override + public void removeTopiaTransactionListener( + TopiaTransactionListener listener) { + getFiresSupport().removeTopiaTransactionListener(listener); + } + + @Override + public void removeTopiaTransactionVetoable( + TopiaTransactionVetoable vetoable) { + getFiresSupport().removeTopiaTransactionVetoable(vetoable); + } + + @Override + public void removePropertyChangeListener(PropertyChangeListener listener) { + getFiresSupport().removePropertyChangeListener(listener); + } + + @Override + public void removeTopiaContextListener(TopiaContextListener listener) { + getFiresSupport().removeTopiaContextListener(listener); + } + + @Override + public void addTopiaEntitiesVetoable(TopiaEntitiesVetoable vetoable) { + getFiresSupport().addTopiaEntitiesVetoable(vetoable); + } + + @Override + public void removeTopiaEntitiesVetoable(TopiaEntitiesVetoable vetoable) { + getFiresSupport().removeTopiaEntitiesVetoable(vetoable); + } + + /* -------------------- GLOBAL OPERATIONS ON SCHEMA ----------------------*/ - @SuppressWarnings({"unchecked"}) @Override public TopiaEntity findByTopiaId(String id) throws TopiaException { @@ -1158,6 +1077,239 @@ } @Override + public void executeSQL(String sqlScript) throws TopiaException { + try { + Query nativeQuery = getEntityManager().createNativeQuery(sqlScript); + nativeQuery.executeUpdate(); + } catch (PersistenceException e) { + throw new TopiaException("Could not execute sql code", e); + } + } + +// public static class SQLWork implements Work { +// private final String script; +// +// public SQLWork(String script) { +// this.script = script; +// } +// +// @Override +// public void execute(Connection connection) throws SQLException { +// PreparedStatement sta = connection.prepareStatement(script); +// try { +// sta.execute(); +// } finally { +// sta.close(); +// } +// } +// } + + + /* -------------------- SCHEMA MANAGMENT -----------------------------*/ + + @Override + public boolean isSchemaExist(Class<?> clazz) + throws TopiaException { + checkClosed(_("topia.persistence.error.unsupported.operation.on.closed.context", + "replicateEntity")); + boolean result = TopiaUtil.isSchemaExist(this, clazz.getName()); + return result; + } + + @Override + public void createSchema() throws TopiaException { +// try { +// boolean showSchema = false; +// if (log.isDebugEnabled()) { +// showSchema = true; +// } +// getFiresSupport().firePreCreateSchema(this); +// new SchemaExport(getHibernateConfiguration()).create(showSchema, +// true); +// getFiresSupport().firePostCreateSchema(this); +// } catch (PersistenceException eee) { +// throw new TopiaException( +// _("topia.persistence.error.create.schema", +// eee.getMessage()), eee); +// } + } + + @Override + public void showCreateSchema() throws TopiaException { +// try { +// new SchemaExport(getHibernateConfiguration()). +// execute(true, false, false, true); +// } catch (PersistenceException eee) { +// throw new TopiaException( +// _("topia.persistence.error.create.schema", +// eee.getMessage()), eee); +// } + } + + @Override + public void updateSchema() throws TopiaException { +// try { +// boolean showSchema = false; +// if (log.isDebugEnabled()) { +// showSchema = true; +// } +// getFiresSupport().firePreUpdateSchema(this); +// new SchemaUpdate(getHibernateConfiguration()).execute(showSchema, +// true); +// getFiresSupport().firePostUpdateSchema(this); +// } catch (PersistenceException eee) { +// throw new TopiaException( +// _("topia.persistence.error.update.schema", +// eee.getMessage()), eee); +// } + } + + + /* -------------------- SERVICES MANAGMENT -------------------------------*/ + + protected String getProperExceptionMessage(Throwable eee) { + return eee.getClass().getSimpleName() + " : " + + eee.getMessage(); + } + + protected Map<String, TopiaService> loadServices(Properties config) { + Map<String, TopiaService> result = new HashMap<String, TopiaService>(); + // recherche des services present dans la config + for (Enumeration<?> e = config.propertyNames(); e.hasMoreElements();) { + String key = (String) e.nextElement(); + if (key.matches("^topia\\.service\\.\\w+$")) { + String classService = config.getProperty(key); + try { + Class<?> forName = Class.forName(classService); + Object newInstance = forName.getConstructor().newInstance(); + TopiaService service = (TopiaService) newInstance; + if (key.equals("topia.service." + service.getServiceName())) { + result.put(service.getServiceName(), service); + log.info(_("topia.persistence.service.loaded", + key, classService)); + } else { + log.warn(_("topia.persistence.warn.service.not.loaded", + key, service.getServiceName())); + } + } catch (Throwable eee) { + String message = + _("topia.persistence.error.service.unknown", + key, classService); + if (log.isDebugEnabled()) { + log.debug(message, eee); + } else if (log.isErrorEnabled()) { + log.error(message); + } + } + } + } + return result; + } + + protected void preInitServices(Map<String, TopiaService> services) { + for (TopiaService service : services.values()) { + if (!service.preInit(this)) { + log.warn(_("topia.persistence.warn.service.not.preInit", + service.getServiceName())); + } + } + } + + protected void postInitServices(Map<String, TopiaService> services) { + for (TopiaService service : services.values()) { + if (!service.postInit(this)) { + log.warn(_("topia.persistence.warn.service.not.postInit", + service.getServiceName())); + } + } + } + + protected TopiaService getService(String name) { + TopiaService result = getServices().get(name); + return result; + } + + protected boolean serviceEnabled(String name) { + boolean result = getServices().containsKey(name); + return result; + } + + /** + * Retrieve service name using SERVICE_NAME static field on service + * interface. + * + * @param interfaceService class of the service + * @param <E> type of the service that extends {@link + * TopiaService} + * @return the service name + * @throws IllegalAccessException if field SERVICE_NAME can't be accessed + * @throws NoSuchFieldException if no field SERVICE_NAME is defined + */ + protected <E extends TopiaService> String getServiceName( + Class<E> interfaceService) + throws IllegalAccessException, NoSuchFieldException { + Field f = interfaceService.getField("SERVICE_NAME"); + String name = (String) f.get(null); + return name; + } + + @Override + public Map<String, TopiaService> getServices() { + TopiaContextImplementor parent = getParentContext(); + + Map<String, TopiaService> result; + if (parent != null) { + result = parent.getServices(); + } else { + result = services; + } + return result; + } + + @Override + public <E extends TopiaService> E getService(Class<E> interfaceService) + throws TopiaNotFoundException { + E result; + try { + String name = getServiceName(interfaceService); + result = (E) getService(name); + } catch (Exception eee) { + throw new TopiaNotFoundException( + _("topia.persistence.error.service.not.retreaved", + interfaceService, getProperExceptionMessage(eee)), + eee); + } + if (result == null) { + throw new TopiaNotFoundException( + _("topia.persistence.error.service.not.found", + interfaceService)); + } + return result; + } + + @Override + public <E extends TopiaService> boolean serviceEnabled( + Class<E> interfaceService) { + boolean result = false; + try { + String name = getServiceName(interfaceService); + result = serviceEnabled(name); + } catch (Exception eee) { + String message = _("topia.persistence.warn.service.not.found", + interfaceService, getProperExceptionMessage(eee)); + if (log.isDebugEnabled()) { + log.debug(message, eee); + } else if (log.isWarnEnabled()) { + log.warn(message); + } + } + return result; + } + + + /* ------------------ IMPORT / EXPORT / REPLICATION ---------------------*/ + + @Override public void importXML(Reader xml) throws TopiaException { // checkClosed(_("topia.persistence.error.unsupported.operation.on.closed.context", // "importXML")); @@ -1337,11 +1489,6 @@ replicate0(dstContextImpl, entities.toArray()); } - @Override - public TopiaFiresSupport getFiresSupport() { - return firesSupport; - } - /** * Backup database in gzip compressed file. * @@ -1447,129 +1594,6 @@ } } - @Override - public Set<Class<?>> getPersistenceClasses() { - if (getParentContext() != null) { - return getParentContext().getPersistenceClasses(); - } - return persistenceClasses; - } - - @Override - public boolean isSchemaExist(Class<?> clazz) - throws TopiaException { - checkClosed(_("topia.persistence.error.unsupported.operation.on.closed.context", - "replicateEntity")); - boolean result = TopiaUtil.isSchemaExist(this, clazz.getName()); - return result; - } - - /* Listeners adders */ - - @Override - public void addTopiaEntityListener(TopiaEntityListener listener) { - getFiresSupport().addTopiaEntityListener(listener); - } - - @Override - public void addTopiaEntityListener( - Class<? extends TopiaEntity> entityClass, - TopiaEntityListener listener) { - getFiresSupport().addTopiaEntityListener(entityClass, listener); - } - - @Override - public void addTopiaEntityVetoable(TopiaEntityVetoable vetoable) { - getFiresSupport().addTopiaEntityVetoable(TopiaEntity.class, vetoable); - } - - @Override - public void addTopiaEntityVetoable( - Class<? extends TopiaEntity> entityClass, - TopiaEntityVetoable vetoable) { - getFiresSupport().addTopiaEntityVetoable(entityClass, vetoable); - } - - @Override - public void addTopiaTransactionListener(TopiaTransactionListener listener) { - getFiresSupport().addTopiaTransactionListener(listener); - } - - @Override - public void addTopiaTransactionVetoable(TopiaTransactionVetoable vetoable) { - getFiresSupport().addTopiaTransactionVetoable(vetoable); - } - - @Override - public void addPropertyChangeListener(PropertyChangeListener listener) { - getFiresSupport().addPropertyChangeListener(listener); - } - - @Override - public void addTopiaContextListener(TopiaContextListener listener) { - getFiresSupport().addTopiaContextListener(listener); - } - - /* Listeners removers */ - - @Override - public void removeTopiaEntityListener(TopiaEntityListener listener) { - getFiresSupport().removeTopiaEntityListener(TopiaEntity.class, - listener); - } - - @Override - public void removeTopiaEntityListener( - Class<? extends TopiaEntity> entityClass, - TopiaEntityListener listener) { - getFiresSupport().removeTopiaEntityListener(entityClass, listener); - } - - @Override - public void removeTopiaEntityVetoable(TopiaEntityVetoable vetoable) { - getFiresSupport().removeTopiaEntityVetoable(TopiaEntity.class, - vetoable); - } - - @Override - public void removeTopiaEntityVetoable( - Class<? extends TopiaEntity> entityClass, - TopiaEntityVetoable vetoable) { - getFiresSupport().removeTopiaEntityVetoable(entityClass, vetoable); - } - - @Override - public void removeTopiaTransactionListener( - TopiaTransactionListener listener) { - getFiresSupport().removeTopiaTransactionListener(listener); - } - - @Override - public void removeTopiaTransactionVetoable( - TopiaTransactionVetoable vetoable) { - getFiresSupport().removeTopiaTransactionVetoable(vetoable); - } - - @Override - public void removePropertyChangeListener(PropertyChangeListener listener) { - getFiresSupport().removePropertyChangeListener(listener); - } - - @Override - public void removeTopiaContextListener(TopiaContextListener listener) { - getFiresSupport().removeTopiaContextListener(listener); - } - - @Override - public void addTopiaEntitiesVetoable(TopiaEntitiesVetoable vetoable) { - getFiresSupport().addTopiaEntitiesVetoable(vetoable); - } - - @Override - public void removeTopiaEntitiesVetoable(TopiaEntitiesVetoable vetoable) { - getFiresSupport().removeTopiaEntitiesVetoable(vetoable); - } - /** * Build the list of queries from the given parameter * <code>entityAndCondition</code>. @@ -1658,23 +1682,5 @@ } } -// public static class SQLWork implements Work { -// private final String script; -// -// public SQLWork(String script) { -// this.script = script; -// } -// -// @Override -// public void execute(Connection connection) throws SQLException { -// PreparedStatement sta = connection.prepareStatement(script); -// try { -// sta.execute(); -// } finally { -// sta.close(); -// } -// } -// } - } //TopiaContextImpl Modified: trunk/topia-persistence/src/main/java/org/nuiton/topia/generator/EntityHibernateMappingGenerator.java =================================================================== --- trunk/topia-persistence/src/main/java/org/nuiton/topia/generator/EntityHibernateMappingGenerator.java 2012-05-10 09:49:18 UTC (rev 2470) +++ trunk/topia-persistence/src/main/java/org/nuiton/topia/generator/EntityHibernateMappingGenerator.java 2012-05-10 10:37:36 UTC (rev 2471) @@ -490,8 +490,8 @@ /*{ column="<%=attrColumn%>" node="<%=attrName%>"<%=optionalAttributes%>}*/ if (attrIsEnumeration) { /*{> -<%=prefix%> <type name="javax.persistence.EnumType"> -<%=prefix%> <param name="<%="javax.persistence.EnumType.ENUM"%>"><%=attrType%></param>}*/ +<%=prefix%> <type name="org.hibernate.type.EnumType"> +<%=prefix%> <param name="enumClass"><%=attrType%></param>}*/ // was: org.hibernate.type.EnumType.ENUM // if the user tuned the model to use name instead of // ordinal to store the values, we must add a clause @@ -500,7 +500,7 @@ String enumSQLType = String.valueOf(Types.VARCHAR); /*{ <%=prefix%> <!-- using name instead of ordinal to store enumeration value --> -<%=prefix%> <param name="<%="javax.persistence.EnumType.TYPE"%>"><%=enumSQLType%></param>}*/ +<%=prefix%> <param name="type"><%=enumSQLType%></param>}*/ // was: org.hibernate.type.EnumType.TYPE } /*{ Modified: trunk/topia-persistence/src/main/resources/i18n/topia-persistence_en_GB.properties =================================================================== --- trunk/topia-persistence/src/main/resources/i18n/topia-persistence_en_GB.properties 2012-05-10 09:49:18 UTC (rev 2470) +++ trunk/topia-persistence/src/main/resources/i18n/topia-persistence_en_GB.properties 2012-05-10 10:37:36 UTC (rev 2471) @@ -2,7 +2,6 @@ topia.persistence.error.context.is.closed=Context is closed, no operation is possible. topia.persistence.error.create.schema=Schema could not be created for following reason \: %1$s topia.persistence.error.empty.doc=Empty document -topia.persistence.error.no.hibernate.session=No hinernate session found, you must at first, open a new transaction via 'beaginTransaction' method. topia.persistence.error.null.param=The method '%1$s' requires a non null parameter '%2$s'. topia.persistence.error.on.clear= topia.persistence.error.on.commit=An error occurs while commit operation \: %1$s Modified: trunk/topia-persistence/src/main/resources/i18n/topia-persistence_es_ES.properties =================================================================== --- trunk/topia-persistence/src/main/resources/i18n/topia-persistence_es_ES.properties 2012-05-10 09:49:18 UTC (rev 2470) +++ trunk/topia-persistence/src/main/resources/i18n/topia-persistence_es_ES.properties 2012-05-10 10:37:36 UTC (rev 2471) @@ -2,7 +2,6 @@ topia.persistence.error.context.is.closed=Este contexto ya ha sido cerrado, no se puede comenzar una transacción topia.persistence.error.create.schema=No se puede crear el esquema debido a la razón siguiente \: %2$s topia.persistence.error.empty.doc=Documento vacío -topia.persistence.error.no.hibernate.session=No se encuentra ninguna sesión hibernada, debe iniciar una transacción con el método 'BeginTransaction' topia.persistence.error.null.param=El método '%1$s' requiere un parámetro '%2$s' no nulo. topia.persistence.error.on.clear= topia.persistence.error.on.commit=Se produjo un error durante el guardado \: %1$s Modified: trunk/topia-persistence/src/main/resources/i18n/topia-persistence_fr_FR.properties =================================================================== --- trunk/topia-persistence/src/main/resources/i18n/topia-persistence_fr_FR.properties 2012-05-10 09:49:18 UTC (rev 2470) +++ trunk/topia-persistence/src/main/resources/i18n/topia-persistence_fr_FR.properties 2012-05-10 10:37:36 UTC (rev 2471) @@ -2,7 +2,6 @@ topia.persistence.error.context.is.closed=Ce contexte a ete ferme, impossible de commencer une transaction topia.persistence.error.create.schema=Le schéma n'a pas pu être crée pour la raison suivante \: %2$s topia.persistence.error.empty.doc=Document vide -topia.persistence.error.no.hibernate.session=Aucune session hibernate trouvée, vous devez démarré une transaction avec la méthode 'beginTransaction' topia.persistence.error.null.param=La méthode '%1$s' requière un paramètre '%2$s' non null. topia.persistence.error.on.clear= topia.persistence.error.on.commit=Une erreur est apparue pendant le commit \: %1$s Modified: trunk/topia-persistence-hibernate/src/test/java/org/nuiton/topia/tck/TopiaTckItHibernateTest.java =================================================================== --- trunk/topia-persistence-hibernate/src/test/java/org/nuiton/topia/tck/TopiaTckItHibernateTest.java 2012-05-10 09:49:18 UTC (rev 2470) +++ trunk/topia-persistence-hibernate/src/test/java/org/nuiton/topia/tck/TopiaTckItHibernateTest.java 2012-05-10 10:37:36 UTC (rev 2471) @@ -1,9 +1,9 @@ package org.nuiton.topia.tck; -import org.junit.Ignore; - /** - * Do not remove event if empty : this class represents the TCK IT tests + * Launch {@link TopiaTckItTestSuite}. + * + * Do not remove even if empty : this class represents the TCK IT tests * for topia-persistence-hibernate module * * @author Arnaud Thimel <thimel@codelutin.com> Modified: trunk/topia-persistence-hibernate/src/test/java/org/nuiton/topia/tck/TopiaTckLegacyHibernateTest.java =================================================================== --- trunk/topia-persistence-hibernate/src/test/java/org/nuiton/topia/tck/TopiaTckLegacyHibernateTest.java 2012-05-10 09:49:18 UTC (rev 2470) +++ trunk/topia-persistence-hibernate/src/test/java/org/nuiton/topia/tck/TopiaTckLegacyHibernateTest.java 2012-05-10 10:37:36 UTC (rev 2471) @@ -1,7 +1,5 @@ package org.nuiton.topia.tck; -import org.junit.Ignore; - /** * Launch {@link TopiaTckLegacyTestSuite}. * Modified: trunk/topia-persistence-hibernate/src/test/java/org/nuiton/topia/tck/TopiaTckMappingHibernateTest.java =================================================================== --- trunk/topia-persistence-hibernate/src/test/java/org/nuiton/topia/tck/TopiaTckMappingHibernateTest.java 2012-05-10 09:49:18 UTC (rev 2470) +++ trunk/topia-persistence-hibernate/src/test/java/org/nuiton/topia/tck/TopiaTckMappingHibernateTest.java 2012-05-10 10:37:36 UTC (rev 2471) @@ -1,7 +1,5 @@ package org.nuiton.topia.tck; -import org.junit.Ignore; - /** * Launch {@link TopiaTckMappingTestSuite}. *