From b476f3ea3c2292fca055117968ed9623f184f45f Mon Sep 17 00:00:00 2001 From: Cleverson Sacramento Date: Mon, 23 Jul 2012 08:18:41 -0300 Subject: [PATCH] Ajustes relacionados à serialização de objetos --- impl/core/src/main/java/br/gov/frameworkdemoiselle/template/DelegateCrud.java | 30 ++++++++++++++++-------------- impl/extension/jpa/src/main/java/br/gov/frameworkdemoiselle/template/JPACrud.java | 7 +++++-- parent/jsf/pom.xml | 18 +++++++++++------- 3 files changed, 32 insertions(+), 23 deletions(-) diff --git a/impl/core/src/main/java/br/gov/frameworkdemoiselle/template/DelegateCrud.java b/impl/core/src/main/java/br/gov/frameworkdemoiselle/template/DelegateCrud.java index d2ea407..0ba64a7 100644 --- a/impl/core/src/main/java/br/gov/frameworkdemoiselle/template/DelegateCrud.java +++ b/impl/core/src/main/java/br/gov/frameworkdemoiselle/template/DelegateCrud.java @@ -51,28 +51,28 @@ public class DelegateCrud> implements Crud { private Class delegateClass; - private C delegate; - + private transient C delegate; + @Override public void delete(final I id) { - if(isRunningTransactionalOperations()) { + if (isRunningTransactionalOperations()) { transactionalDelete(id); } else { nonTransactionalDelete(id); } } - + @Transactional private void transactionalDelete(final I id) { nonTransactionalDelete(id); } - + private void nonTransactionalDelete(final I id) { getDelegate().delete(id); } public void delete(final List ids) { - if(isRunningTransactionalOperations()) { + if (isRunningTransactionalOperations()) { transactionalDelete(ids); } else { nonTransactionalDelete(ids); @@ -83,14 +83,14 @@ public class DelegateCrud> implements Crud { private void transactionalDelete(final List ids) { nonTransactionalDelete(ids); } - + private void nonTransactionalDelete(final List ids) { ListIterator iter = ids.listIterator(); while (iter.hasNext()) { this.delete(iter.next()); } } - + @Override public List findAll() { return getDelegate().findAll(); @@ -100,6 +100,7 @@ public class DelegateCrud> implements Crud { if (this.delegate == null) { this.delegate = Beans.getReference(getDelegateClass()); } + return this.delegate; } @@ -107,23 +108,24 @@ public class DelegateCrud> implements Crud { if (this.delegateClass == null) { this.delegateClass = Reflections.getGenericTypeArgument(this.getClass(), 2); } + return this.delegateClass; } @Override public void insert(final T bean) { - if(isRunningTransactionalOperations()) { + if (isRunningTransactionalOperations()) { transactionalInsert(bean); } else { nonTransactionalInsert(bean); } } - + @Transactional private void transactionalInsert(final T bean) { nonTransactionalInsert(bean); } - + private void nonTransactionalInsert(final T bean) { getDelegate().insert(bean); } @@ -135,7 +137,7 @@ public class DelegateCrud> implements Crud { @Override public void update(final T bean) { - if(isRunningTransactionalOperations()) { + if (isRunningTransactionalOperations()) { transactionalUpdate(bean); } else { nonTransactionalUpdate(bean); @@ -146,11 +148,11 @@ public class DelegateCrud> implements Crud { private void transactionalUpdate(final T bean) { nonTransactionalUpdate(bean); } - + private void nonTransactionalUpdate(final T bean) { getDelegate().update(bean); } - + private boolean isRunningTransactionalOperations() { return !(Beans.getReference(Transaction.class) instanceof DefaultTransaction); } diff --git a/impl/extension/jpa/src/main/java/br/gov/frameworkdemoiselle/template/JPACrud.java b/impl/extension/jpa/src/main/java/br/gov/frameworkdemoiselle/template/JPACrud.java index 50536b1..8ea7361 100644 --- a/impl/extension/jpa/src/main/java/br/gov/frameworkdemoiselle/template/JPACrud.java +++ b/impl/extension/jpa/src/main/java/br/gov/frameworkdemoiselle/template/JPACrud.java @@ -59,6 +59,7 @@ import br.gov.frameworkdemoiselle.configuration.Configuration; import br.gov.frameworkdemoiselle.pagination.Pagination; import br.gov.frameworkdemoiselle.pagination.PaginationContext; import br.gov.frameworkdemoiselle.transaction.Transactional; +import br.gov.frameworkdemoiselle.util.Beans; import br.gov.frameworkdemoiselle.util.Reflections; import br.gov.frameworkdemoiselle.util.ResourceBundle; @@ -76,7 +77,6 @@ public class JPACrud implements Crud { private static final long serialVersionUID = 1L; - @Inject private EntityManager entityManager; @Inject @@ -91,7 +91,6 @@ public class JPACrud implements Crud { private Class beanClass; protected Class getBeanClass() { - if (this.beanClass == null) { this.beanClass = Reflections.getGenericTypeArgument(this.getClass(), 0); } @@ -104,6 +103,10 @@ public class JPACrud implements Crud { } protected EntityManager getEntityManager() { + if(this.entityManager == null) { + this.entityManager = Beans.getReference(EntityManager.class); + } + return this.entityManager; } diff --git a/parent/jsf/pom.xml b/parent/jsf/pom.xml index 1692bed..307c30e 100755 --- a/parent/jsf/pom.xml +++ b/parent/jsf/pom.xml @@ -79,13 +79,6 @@ demoiselle-jsf compile - @@ -238,6 +231,11 @@ runtime + org.glassfish.web + el-impl + runtime + + org.hibernate hibernate-validator runtime @@ -253,6 +251,12 @@ ${gae.version} + + + objectify-appengine + http://objectify-appengine.googlecode.com/svn/maven + + 1.7.0 0.9.4 -- libgit2 0.21.2