You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by gp...@apache.org on 2010/12/22 02:30:53 UTC
svn commit: r1051729 - in /myfaces/extensions/cdi/trunk:
core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/
core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/logging/
core/impl/src/main/java/org/apache/myfaces/extensions...
Author: gpetracek
Date: Wed Dec 22 01:30:53 2010
New Revision: 1051729
URL: http://svn.apache.org/viewvc?rev=1051729&view=rev
Log:
EXTCDI-103 @Name renamed to @LoggerDetails
Added:
myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/logging/LoggerDetails.java
- copied, changed from r1051706, myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/Name.java
Removed:
myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/Name.java
Modified:
myfaces/extensions/cdi/trunk/core/impl/src/main/java/org/apache/myfaces/extensions/cdi/core/impl/logging/DefaultLogger.java
myfaces/extensions/cdi/trunk/core/impl/src/main/java/org/apache/myfaces/extensions/cdi/core/impl/logging/InstanceProducer.java
myfaces/extensions/cdi/trunk/examples/jsf-examples/hello_myfaces-codi_jsf12/src/main/java/org/apache/myfaces/examples/codi/jsf12/conversation/grouped/ConversationDemoBean1.java
Copied: myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/logging/LoggerDetails.java (from r1051706, myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/Name.java)
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/logging/LoggerDetails.java?p2=myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/logging/LoggerDetails.java&p1=myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/Name.java&r1=1051706&r2=1051729&rev=1051729&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/Name.java (original)
+++ myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/logging/LoggerDetails.java Wed Dec 22 01:30:53 2010
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.myfaces.extensions.cdi.core.api;
+package org.apache.myfaces.extensions.cdi.core.api.logging;
import javax.enterprise.util.Nonbinding;
import javax.inject.Qualifier;
@@ -35,8 +35,29 @@ import static java.lang.annotation.Reten
@Documented
@Qualifier
-public @interface Name
+public @interface LoggerDetails
{
+ //TODO add support for the i18n module
+
+ /**
+ * name of the logger which will be created
+ *
+ * @return name of the logger
+ */
+ @Nonbinding
+ String name() default "";
+
+ /**
+ * name of the {@link java.util.ResourceBundle} which will be used
+ * @return name of the resource-bundle
+ */
+ @Nonbinding
+ String resourceBundleName() default "";
+
+ /**
+ * indicates if an anonymous logger should be used
+ * @return true if an anonymous logger should be used, false otherwise
+ */
@Nonbinding
- String value();
+ boolean anonymous() default false;
}
Modified: myfaces/extensions/cdi/trunk/core/impl/src/main/java/org/apache/myfaces/extensions/cdi/core/impl/logging/DefaultLogger.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/core/impl/src/main/java/org/apache/myfaces/extensions/cdi/core/impl/logging/DefaultLogger.java?rev=1051729&r1=1051728&r2=1051729&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/core/impl/src/main/java/org/apache/myfaces/extensions/cdi/core/impl/logging/DefaultLogger.java (original)
+++ myfaces/extensions/cdi/trunk/core/impl/src/main/java/org/apache/myfaces/extensions/cdi/core/impl/logging/DefaultLogger.java Wed Dec 22 01:30:53 2010
@@ -33,7 +33,7 @@ import java.util.logging.LogRecord;
* @author Gerhard Petracek
* @author Werner Punz
*/
-@Typed
+@Typed()
public class DefaultLogger implements Logger
{
private static final long serialVersionUID = 6112073723716267680L;
@@ -59,6 +59,21 @@ public class DefaultLogger implements Lo
this.loggerName = loggerName;
this.resourceBundleName = resourceBundleName;
this.anonymous = anonymous;
+
+ if("".equals(this.loggerName))
+ {
+ this.loggerName = null;
+ }
+
+ if("".equals(this.resourceBundleName))
+ {
+ this.resourceBundleName = null;
+ }
+ }
+
+ boolean isValid()
+ {
+ return !(!this.anonymous && this.loggerName == null && this.resourceBundleName == null);
}
public java.util.logging.Logger getWrapped()
Modified: myfaces/extensions/cdi/trunk/core/impl/src/main/java/org/apache/myfaces/extensions/cdi/core/impl/logging/InstanceProducer.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/core/impl/src/main/java/org/apache/myfaces/extensions/cdi/core/impl/logging/InstanceProducer.java?rev=1051729&r1=1051728&r2=1051729&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/core/impl/src/main/java/org/apache/myfaces/extensions/cdi/core/impl/logging/InstanceProducer.java (original)
+++ myfaces/extensions/cdi/trunk/core/impl/src/main/java/org/apache/myfaces/extensions/cdi/core/impl/logging/InstanceProducer.java Wed Dec 22 01:30:53 2010
@@ -18,7 +18,7 @@
*/
package org.apache.myfaces.extensions.cdi.core.impl.logging;
-import org.apache.myfaces.extensions.cdi.core.api.Name;
+import org.apache.myfaces.extensions.cdi.core.api.logging.LoggerDetails;
import org.apache.myfaces.extensions.cdi.core.api.logging.Logger;
import javax.enterprise.inject.Produces;
@@ -30,6 +30,8 @@ import javax.enterprise.inject.spi.Injec
*/
final class InstanceProducer
{
+ private java.util.logging.Logger logger = java.util.logging.Logger.getLogger(InstanceProducer.class.getName());
+
@Produces
public Logger getLogger(InjectionPoint injectionPoint)
{
@@ -37,11 +39,21 @@ final class InstanceProducer
}
@Produces
- @Name("")
- public Logger getLoggerWithName(InjectionPoint injectionPoint)
+ @LoggerDetails
+ public Logger getLoggerForDetails(InjectionPoint injectionPoint)
{
- Name nameQualifier = injectionPoint.getAnnotated().getAnnotation(Name.class);
+ LoggerDetails loggerDetails = injectionPoint.getAnnotated().getAnnotation(LoggerDetails.class);
+
+ DefaultLogger logger = new DefaultLogger(loggerDetails.name(),
+ loggerDetails.resourceBundleName(),
+ loggerDetails.anonymous());
- return new DefaultLogger(nameQualifier.value());
+ if(!logger.isValid())
+ {
+ this.logger.warning("an injection point in " + injectionPoint.getBean().getBeanClass().getName() +
+ " uses an empty qualifier of type " + LoggerDetails.class.getName() +
+ " - please remove it!");
+ }
+ return logger;
}
}
Modified: myfaces/extensions/cdi/trunk/examples/jsf-examples/hello_myfaces-codi_jsf12/src/main/java/org/apache/myfaces/examples/codi/jsf12/conversation/grouped/ConversationDemoBean1.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/examples/jsf-examples/hello_myfaces-codi_jsf12/src/main/java/org/apache/myfaces/examples/codi/jsf12/conversation/grouped/ConversationDemoBean1.java?rev=1051729&r1=1051728&r2=1051729&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/examples/jsf-examples/hello_myfaces-codi_jsf12/src/main/java/org/apache/myfaces/examples/codi/jsf12/conversation/grouped/ConversationDemoBean1.java (original)
+++ myfaces/extensions/cdi/trunk/examples/jsf-examples/hello_myfaces-codi_jsf12/src/main/java/org/apache/myfaces/examples/codi/jsf12/conversation/grouped/ConversationDemoBean1.java Wed Dec 22 01:30:53 2010
@@ -18,7 +18,7 @@
*/
package org.apache.myfaces.examples.codi.jsf12.conversation.grouped;
-import org.apache.myfaces.extensions.cdi.core.api.Name;
+import org.apache.myfaces.extensions.cdi.core.api.logging.LoggerDetails;
import org.apache.myfaces.extensions.cdi.core.api.logging.Logger;
import org.apache.myfaces.extensions.cdi.core.api.scope.conversation.ConversationScoped;
import org.apache.myfaces.extensions.cdi.core.api.scope.conversation.ConversationGroup;
@@ -52,18 +52,18 @@ public class ConversationDemoBean1 imple
private Conversation conversation;
@Inject
- private Logger logger;
+ private Logger logger1;
@Inject
- @Name("l1")
- private Logger l1;
+ @LoggerDetails
+ private Logger logger2;
@PostConstruct
public void init()
{
this.createdAt = new Date();
- this.logger.info(getClass().getName() + " created at " + this.createdAt);
- this.l1.info(getClass().getName() + " created at " + this.createdAt);
+ this.logger1.info(getClass().getName() + " created at " + this.createdAt);
+ this.logger2.info(getClass().getName() + " created at " + this.createdAt);
}
public String next()