deltaspike-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Christian Kaltepoth <christ...@kaltepoth.de>
Subject [DISCUSS] BeanManagerProvider API
Date Mon, 23 Jan 2012 06:19:25 GMT
Hey @all,

yesterday I had a deeper look at the BeanManagerProvider
implementation and found something that could be improved. I created
DELTASPIKE-56 (see [1]) for this but it turned out that we should
discuss this topic on the mailing list.

I saw that getBeanManager() may return null in some rare
circumstances. Unfortunately this forces everyone calling this method
to check the result for null. I think most code calling the method
absolutely requires the BeanManager and cannot proceed without it.

My first idea was to add another method getRequiredBeanManager() that
doesn't return null if the BeanManager is not available but instead
throws a meaningful runtime exception. That's what Solder does per
default. Calling Solder's BeanManagerLocator.getBeanManager() without
a BeanManager being available will result in a
BeanManagerUnavailableException (see [2]).

However Mark suggested that throwing an exception should be the
default behavior. I for myself like Mark's idea.

What do you think?

Christian

[1] https://issues.apache.org/jira/browse/DELTASPIKE-56
[2] https://github.com/seam/solder/blob/master/api/src/main/java/org/jboss/solder/beanManager/BeanManagerLocator.java#L82

-- 
Christian Kaltepoth
Blog: http://chkal.blogspot.com/
Twitter: http://twitter.com/chkal

Mime
View raw message