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 2011/03/07 22:32:42 UTC
svn commit: r1078959 - 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/config/
core/api/src/main/java/org/apache/myfaces/extensions/c...
Author: gpetracek
Date: Mon Mar 7 21:32:40 2011
New Revision: 1078959
URL: http://svn.apache.org/viewvc?rev=1078959&view=rev
Log:
EXTCDI-151 improved javadoc for core-api
Modified:
myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/Advanced.java
myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/Aggregatable.java
myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/CodiInformation.java
myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/CoreModuleBeanNames.java
myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/Enhanced.java
myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/InvocationOrder.java
myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/UnhandledException.java
myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/config/AbstractAttributeAware.java
myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/config/CodiCoreConfig.java
myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/config/ConfiguredValueDescriptor.java
myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/config/ConfiguredValueResolver.java
myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/config/view/View.java
myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/logging/Logger.java
myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/logging/LoggerDetails.java
myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/navigation/ViewNavigationHandler.java
myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/projectstage/ProjectStage.java
myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/projectstage/ProjectStageActivated.java
myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/provider/BeanManagerProvider.java
myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/resolver/qualifier/BeanValidation.java
myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/CloseConversationGroup.java
myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/ConversationGroup.java
myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/ConversationScoped.java
myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/ViewAccessScoped.java
myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/WindowScoped.java
myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/config/ConversationConfig.java
myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/config/WindowContextConfig.java
myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/event/AccessBeanEvent.java
myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/event/BeanEvent.java
myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/event/CloseConversationEvent.java
myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/event/CloseWindowContextEvent.java
myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/event/ConversationEvent.java
myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/event/CreateWindowContextEvent.java
myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/event/RestartConversationEvent.java
myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/event/ScopeBeanEvent.java
myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/event/StartConversationEvent.java
myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/event/UnscopeBeanEvent.java
myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/event/WindowContextEvent.java
myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/security/AccessDecisionVoter.java
myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/security/AccessDeniedException.java
myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/security/Secured.java
myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/startup/event/StartupEvent.java
myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/startup/event/StartupEventBroadcaster.java
myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/tools/DefaultAnnotation.java
myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/tools/InvocationOrderComparator.java
myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/util/ClassUtils.java
myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf/impl/listener/phase/PhaseListenerExtension.java
Modified: myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/Advanced.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/Advanced.java?rev=1078959&r1=1078958&r2=1078959&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/Advanced.java (original)
+++ myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/Advanced.java Mon Mar 7 21:32:40 2011
@@ -37,6 +37,7 @@ import static java.lang.annotation.Eleme
@Retention(RUNTIME)
@Documented
+//cdi annotations
@Qualifier
public @interface Advanced
{
Modified: myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/Aggregatable.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/Aggregatable.java?rev=1078959&r1=1078958&r2=1078959&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/Aggregatable.java (original)
+++ myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/Aggregatable.java Mon Mar 7 21:32:40 2011
@@ -19,11 +19,21 @@
package org.apache.myfaces.extensions.cdi.core.api;
/**
+ * Allows to collect instances and create an aggregated instance for them.
+ *
* @author Gerhard Petracek
*/
public interface Aggregatable<T>
{
+ /**
+ * Add an instance which should be aggregated with the existing instances
+ * @param t instance to add
+ */
void add(T t);
+ /**
+ * Creates an aggregated instance for the added instances
+ * @return instance which aggregates the added instances
+ */
T create();
}
Modified: myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/CodiInformation.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/CodiInformation.java?rev=1078959&r1=1078958&r2=1078959&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/CodiInformation.java (original)
+++ myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/CodiInformation.java Mon Mar 7 21:32:40 2011
@@ -27,7 +27,13 @@ import org.apache.myfaces.extensions.cdi
*/
public interface CodiInformation
{
+ /**
+ * Current version of CODI
+ */
String VERSION = ClassUtils.getJarVersion(CodiInformation.class);
+ /**
+ * VCS revision which is used to build this version (used for snapshots)
+ */
String REVISION = ClassUtils.getRevision(CodiInformation.class);
}
Modified: myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/CoreModuleBeanNames.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/CoreModuleBeanNames.java?rev=1078959&r1=1078958&r2=1078959&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/CoreModuleBeanNames.java (original)
+++ myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/CoreModuleBeanNames.java Mon Mar 7 21:32:40 2011
@@ -35,5 +35,4 @@ public interface CoreModuleBeanNames ext
* Useful for EL-Expressions e.g. to call #useNewId or a property of the current window
*/
String CURRENT_WINDOW_BEAN_NAME = "currentWindow";
-
}
Modified: myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/Enhanced.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/Enhanced.java?rev=1078959&r1=1078958&r2=1078959&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/Enhanced.java (original)
+++ myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/Enhanced.java Mon Mar 7 21:32:40 2011
@@ -34,6 +34,7 @@ import static java.lang.annotation.Eleme
@Retention(RUNTIME)
@Documented
+//cdi annotations
@Qualifier
public @interface Enhanced
{
Modified: myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/InvocationOrder.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/InvocationOrder.java?rev=1078959&r1=1078958&r2=1078959&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/InvocationOrder.java (original)
+++ myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/InvocationOrder.java Mon Mar 7 21:32:40 2011
@@ -35,5 +35,9 @@ import static java.lang.annotation.Eleme
@Documented
public @interface InvocationOrder
{
+ /**
+ * Specifies the slot for the class annotated class
+ * @return the position number
+ */
int value() default 1000;
}
Modified: myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/UnhandledException.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/UnhandledException.java?rev=1078959&r1=1078958&r2=1078959&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/UnhandledException.java (original)
+++ myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/UnhandledException.java Mon Mar 7 21:32:40 2011
@@ -19,6 +19,9 @@
package org.apache.myfaces.extensions.cdi.core.api;
/**
+ * Exception wrapper for checked exception for throwing them as {@link RuntimeException} and processing them
+ * on a different level of the call-stack.
+ *
* @author Gerhard Petracek
*/
public class UnhandledException extends RuntimeException
Modified: myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/config/AbstractAttributeAware.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/config/AbstractAttributeAware.java?rev=1078959&r1=1078958&r2=1078959&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/config/AbstractAttributeAware.java (original)
+++ myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/config/AbstractAttributeAware.java Mon Mar 7 21:32:40 2011
@@ -29,6 +29,8 @@ import java.util.HashMap;
*/
public abstract class AbstractAttributeAware implements AttributeAware
{
+ private static final long serialVersionUID = 7845412079015046108L;
+
private Map<String, Object> configAttributes;
public boolean setAttribute(String name, Object value)
Modified: myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/config/CodiCoreConfig.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/config/CodiCoreConfig.java?rev=1078959&r1=1078958&r2=1078959&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/config/CodiCoreConfig.java (original)
+++ myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/config/CodiCoreConfig.java Mon Mar 7 21:32:40 2011
@@ -21,6 +21,8 @@ package org.apache.myfaces.extensions.cd
import javax.enterprise.context.ApplicationScoped;
/**
+ * Configuration for the core of CODI - it's customizable via the @Alternative or @Specializes mechanism of CDI.
+ *
* @author Gerhard Petracek
*/
@ApplicationScoped
@@ -32,11 +34,22 @@ public class CodiCoreConfig extends Abst
{
}
+ /**
+ * Per default several artifacts which aren't managed by CDI have to be annotated
+ * with {@link org.apache.myfaces.extensions.cdi.core.api.Advanced} as marker for
+ * performing manual dependency injection. It isn't performed per default because the
+ * majority of those artifacts don't require dependency injection.
+ * @return true if the usage of {@link org.apache.myfaces.extensions.cdi.core.api.Advanced}, false otherwise
+ */
public boolean isAdvancedQualifierRequiredForDependencyInjection()
{
return true;
}
+ /**
+ * Allows to disable the logging of the current configuration during the bootstrapping process.
+ * @return true if the configuration should be logged, false otherwise
+ */
public boolean isConfigurationLoggingEnabled()
{
return true;
Modified: myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/config/ConfiguredValueDescriptor.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/config/ConfiguredValueDescriptor.java?rev=1078959&r1=1078958&r2=1078959&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/config/ConfiguredValueDescriptor.java (original)
+++ myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/config/ConfiguredValueDescriptor.java Mon Mar 7 21:32:40 2011
@@ -19,11 +19,24 @@
package org.apache.myfaces.extensions.cdi.core.api.config;
/**
+ * Descriptor for resolving a configured value based on a special key.
+ * Furthermore it specifies the type of the configured value.
+ *
* @author Gerhard Petracek
*/
public interface ConfiguredValueDescriptor<K, T>
{
+ /**
+ * Key for identifying a config entry.
+ *
+ * @return value of the key which identifies a config entry
+ */
K getKey();
+ /**
+ * Expected type of the config entry.
+ *
+ * @return type of the config entry
+ */
Class<T> getTargetType();
}
Modified: myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/config/ConfiguredValueResolver.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/config/ConfiguredValueResolver.java?rev=1078959&r1=1078958&r2=1078959&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/config/ConfiguredValueResolver.java (original)
+++ myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/config/ConfiguredValueResolver.java Mon Mar 7 21:32:40 2011
@@ -30,5 +30,14 @@ import java.util.List;
*/
public interface ConfiguredValueResolver extends Deactivatable
{
+ /**
+ * Resolves 0-n instances configured for the given key of the type which is provided via the
+ * {@link ConfiguredValueDescriptor}.
+ *
+ * @param descriptor given descriptor for the configured-value
+ * @param <K> type of the key
+ * @param <T> type of the configured value
+ * @return all configured values for the given descriptor
+ */
<K, T> List<T> resolveInstances(ConfiguredValueDescriptor<K, T> descriptor);
}
Modified: myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/config/view/View.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/config/view/View.java?rev=1078959&r1=1078958&r2=1078959&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/config/view/View.java (original)
+++ myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/config/view/View.java Mon Mar 7 21:32:40 2011
@@ -31,18 +31,49 @@ import java.lang.annotation.Target;
* Allows to restrict e.g. phase-listener methods to specific views.
* Use an existing view-config OR ManualView.class + the view-id string/s.
*
+ * Furthermore it's possible to use it at the class-level for configuring page-controllers
+ * (as an alternative to specifying the (page-)bean in the view-config).
+ * That means e.g.
+ *
+ * \@View(DemoPages.Page1.class)
+ * //...
+ * public class PageBean1 implements Serializable
+ * {
+ * \@PreRenderView
+ * protected void preRenderView()
+ * {
+ * //...
+ * }
+ *
+ * //...
+ * }
+ *
+ * leads to the invocation of the pre-render-view logic before page1 gets rendered and
+ * it won't be called for other pages.
+ *
* @author Gerhard Petracek
*/
-@InterceptorBinding
@Target({TYPE, METHOD})
@Retention(RUNTIME)
@Documented
+
+//cdi annotations
+@InterceptorBinding
public @interface View
{
+ /**
+ * Specifies the pages via type-safe {@link ViewConfig}.
+ * Use {@link ManualView} if it is required to use strings as view-id.
+ * @return views which should be aware of the bean or observer
+ */
@Nonbinding
Class<? extends ViewConfig>[] value();
+ /**
+ * Alternative to #value in order to use hardcoded strings instead of type-safe view-configs.
+ * @return views which should be aware of the bean or observer
+ */
@Nonbinding
String[] inline() default "";
}
\ No newline at end of file
Modified: myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/logging/Logger.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/logging/Logger.java?rev=1078959&r1=1078958&r2=1078959&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/logging/Logger.java (original)
+++ myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/logging/Logger.java Mon Mar 7 21:32:40 2011
@@ -27,6 +27,7 @@ import java.util.logging.LogRecord;
/**
* Meta-logger for injecting a serializable logger.
+ * Have a look at the java-doc of {@link java.util.logging.Logger}
*
* @author Gerhard Petracek
*/
Modified: myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/logging/LoggerDetails.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?rev=1078959&r1=1078958&r2=1078959&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/logging/LoggerDetails.java (original)
+++ myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/logging/LoggerDetails.java Mon Mar 7 21:32:40 2011
@@ -28,11 +28,15 @@ import static java.lang.annotation.Eleme
import static java.lang.annotation.RetentionPolicy.RUNTIME;
/**
+ * Optional qualifier which allows to control the creation of the {@link java.util.logging.Logger}
+ *
* @author Gerhard Petracek
*/
@Target({PARAMETER, FIELD, METHOD})
@Retention(RUNTIME)
@Documented
+
+//cdi annotations
@Qualifier
public @interface LoggerDetails
{
Modified: myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/navigation/ViewNavigationHandler.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/navigation/ViewNavigationHandler.java?rev=1078959&r1=1078958&r2=1078959&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/navigation/ViewNavigationHandler.java (original)
+++ myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/navigation/ViewNavigationHandler.java Mon Mar 7 21:32:40 2011
@@ -21,9 +21,16 @@ package org.apache.myfaces.extensions.cd
import org.apache.myfaces.extensions.cdi.core.api.config.view.ViewConfig;
/**
+ * Allows to trigger navigation via the type-safe {@link ViewConfig} approach.
+ *
* @author Gerhard Petracek
*/
public interface ViewNavigationHandler
{
+ /**
+ * Triggers navigation to the given view.
+ *
+ * @param targetView the view which is the navigation target
+ */
void navigateTo(Class<? extends ViewConfig> targetView);
}
Modified: myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/projectstage/ProjectStage.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/projectstage/ProjectStage.java?rev=1078959&r1=1078958&r2=1078959&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/projectstage/ProjectStage.java (original)
+++ myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/projectstage/ProjectStage.java Mon Mar 7 21:32:40 2011
@@ -78,7 +78,7 @@ import java.util.logging.Logger;
* </pre>
* which contains the fully qualified class name of custom ProjectStageHolder implementation:
* <pre>
- * # this class now get's picked up by java.util.ServiceLoader
+ * # this class now gets picked up by java.util.ServiceLoader
* org.apache.myfaces.extensions.cdi.core.test.api.projectstage.MyProjectStages
* </pre>
* </p>
Modified: myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/projectstage/ProjectStageActivated.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/projectstage/ProjectStageActivated.java?rev=1078959&r1=1078958&r2=1078959&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/projectstage/ProjectStageActivated.java (original)
+++ myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/projectstage/ProjectStageActivated.java Mon Mar 7 21:32:40 2011
@@ -46,7 +46,7 @@ public @interface ProjectStageActivated
/**
* The {@link ProjectStage}s the which lead to activating this alternative bean.
* If the current ProjectStage is not in this list, the bean will get vetoed.
+ * @return 1-n project-stages which are allowed for the annotated artifact
*/
Class<? extends ProjectStage>[] value();
-
}
Modified: myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/provider/BeanManagerProvider.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/provider/BeanManagerProvider.java?rev=1078959&r1=1078958&r2=1078959&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/provider/BeanManagerProvider.java (original)
+++ myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/provider/BeanManagerProvider.java Mon Mar 7 21:32:40 2011
@@ -80,13 +80,14 @@ public class BeanManagerProvider impleme
/**
- * @return The {@link BeanManager}
+ * The active {@link BeanManager} for the current {@link ClassLoader}
+ * @return the current bean-manager
*/
public BeanManager getBeanManager()
{
- ClassLoader cl = ClassUtils.getClassLoader(null);
+ ClassLoader classLoader = ClassUtils.getClassLoader(null);
- BeanManager result = bms.get(cl);
+ BeanManager result = bms.get(classLoader);
if (result == null)
{
@@ -94,7 +95,7 @@ public class BeanManagerProvider impleme
if(result != null)
{
- bms.put(cl, result);
+ bms.put(classLoader, result);
}
}
return result;
@@ -125,10 +126,10 @@ public class BeanManagerProvider impleme
/**
* It basiscally doesn't matter which of the system events we use,
* but basically we
- * @param abd event which we don't actually use ;)
+ * @param afterBeanDiscovery event which we don't actually use ;)
* @param beanManager the BeanManager we store and make available.
*/
- public void setBeanManager(@Observes AfterBeanDiscovery abd, BeanManager beanManager)
+ public void setBeanManager(@Observes AfterBeanDiscovery afterBeanDiscovery, BeanManager beanManager)
{
BeanManagerProvider bmpFirst = setBeanManagerProvider(this);
@@ -141,13 +142,14 @@ public class BeanManagerProvider impleme
/**
* This function exists to prevent findbugs to complain about
* setting a static member from a non-static function.
- * @return the first BeanManagerProvider
+ * @param beanManagerProvider the bean-manager-provider which should be used if there isn't an existing provider
+ * @return the first BeanManagerProvider
*/
- private static BeanManagerProvider setBeanManagerProvider(BeanManagerProvider bmpIn)
+ private static BeanManagerProvider setBeanManagerProvider(BeanManagerProvider beanManagerProvider)
{
if (bmp == null)
{
- bmp = bmpIn;
+ bmp = beanManagerProvider;
}
return bmp;
Modified: myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/resolver/qualifier/BeanValidation.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/resolver/qualifier/BeanValidation.java?rev=1078959&r1=1078958&r2=1078959&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/resolver/qualifier/BeanValidation.java (original)
+++ myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/resolver/qualifier/BeanValidation.java Mon Mar 7 21:32:40 2011
@@ -39,13 +39,21 @@ import static java.lang.annotation.Eleme
@Retention(RUNTIME)
@Documented
+//cdi annotations
@Qualifier
public @interface BeanValidation
{
+ /**
+ * Enum which specifies the current artifact-type
+ */
public enum ArtifactType
{
ValidatorFactory, Validator, ConstraintValidatorFactory, MessageInterpolator, TraversableResolver
}
+ /**
+ * Details of the qualifier
+ * @return type which allows different qualifiers with one annotation
+ */
ArtifactType value() default ArtifactType.ValidatorFactory;
}
Modified: myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/CloseConversationGroup.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/CloseConversationGroup.java?rev=1078959&r1=1078958&r2=1078959&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/CloseConversationGroup.java (original)
+++ myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/CloseConversationGroup.java Mon Mar 7 21:32:40 2011
@@ -34,18 +34,28 @@ import static java.lang.annotation.Eleme
*
* @author Gerhard Petracek
*/
-@InterceptorBinding
-
@Retention(RUNTIME)
@Target({TYPE, METHOD})
@Inherited
@Documented
+
+//cdi annotations
+@InterceptorBinding
public @interface CloseConversationGroup
{
+ /**
+ * Specifies which exception (type) will trigger the termination of the current conversation.
+ * @return exception which should trigger the termination of the current conversation.
+ */
@Nonbinding
Class<? extends RuntimeException> on() default RuntimeException.class;
+ /**
+ * Specifies the conversation-group (specified implicitly or via {@link ConversationGroup})
+ * which should be terminated.
+ * @return group of the conversation which should be terminated
+ */
@Nonbinding
Class<?> group() default CloseConversationGroup.class;
}
Modified: myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/ConversationGroup.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/ConversationGroup.java?rev=1078959&r1=1078958&r2=1078959&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/ConversationGroup.java (original)
+++ myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/ConversationGroup.java Mon Mar 7 21:32:40 2011
@@ -38,15 +38,20 @@ import static java.lang.annotation.Eleme
* it's possible to use this special qualifier for grouping such beans.
*
* Operations like {@link Conversation#close()} will be performed on the whole group.
- *
+ *
* @author Gerhard Petracek
*/
@Target({PARAMETER, FIELD, METHOD, CONSTRUCTOR, TYPE})
@Retention(RUNTIME)
@Documented
+//cdi annotations
@Qualifier
public @interface ConversationGroup
{
+ /**
+ * Class or interface which should be used as type-safe key for identifying the conversation-group.
+ * @return class or interface which should be used as key
+ */
Class<?> value();
}
\ No newline at end of file
Modified: myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/ConversationScoped.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/ConversationScoped.java?rev=1078959&r1=1078958&r2=1078959&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/ConversationScoped.java (original)
+++ myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/ConversationScoped.java Mon Mar 7 21:32:40 2011
@@ -37,9 +37,11 @@ import static java.lang.annotation.Reten
*/
@Target({METHOD,TYPE,FIELD})
@Retention(RUNTIME)
-@NormalScope(passivating=true)
@Inherited
@Documented
+
+//cdi annotations
+@NormalScope(passivating=true)
public @interface ConversationScoped
{
}
Modified: myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/ViewAccessScoped.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/ViewAccessScoped.java?rev=1078959&r1=1078958&r2=1078959&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/ViewAccessScoped.java (original)
+++ myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/ViewAccessScoped.java Mon Mar 7 21:32:40 2011
@@ -35,9 +35,11 @@ import static java.lang.annotation.Eleme
*/
@Target({METHOD,TYPE,FIELD})
@Retention(RUNTIME)
-@NormalScope(passivating=true)
@Inherited
@Documented
+
+//cdi annotations
+@NormalScope(passivating=true)
public @interface ViewAccessScoped
{
}
\ No newline at end of file
Modified: myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/WindowScoped.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/WindowScoped.java?rev=1078959&r1=1078958&r2=1078959&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/WindowScoped.java (original)
+++ myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/WindowScoped.java Mon Mar 7 21:32:40 2011
@@ -35,9 +35,11 @@ import static java.lang.annotation.Eleme
*/
@Target({METHOD,TYPE,FIELD})
@Retention(RUNTIME)
-@NormalScope(passivating=true)
@Inherited
@Documented
+
+//cdi annotations
+@NormalScope(passivating=true)
public @interface WindowScoped
{
}
\ No newline at end of file
Modified: myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/config/ConversationConfig.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/config/ConversationConfig.java?rev=1078959&r1=1078958&r2=1078959&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/config/ConversationConfig.java (original)
+++ myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/config/ConversationConfig.java Mon Mar 7 21:32:40 2011
@@ -24,6 +24,8 @@ import org.apache.myfaces.extensions.cdi
import javax.enterprise.context.ApplicationScoped;
/**
+ * Configuration for CODI conversations - it's customizable via the @Alternative or @Specializes mechanism of CDI.
+ *
* @author Gerhard Petracek
*/
@ApplicationScoped
@@ -50,31 +52,73 @@ public class ConversationConfig extends
* event config
*/
+ /**
+ * Specifies if the
+ * {@link org.apache.myfaces.extensions.cdi.core.api.scope.conversation.event.ScopeBeanEvent}
+ * will be fired.
+ *
+ * @return true if the event should be fired, false otherwise
+ */
public boolean isScopeBeanEventEnabled()
{
return false;
}
+ /**
+ * Specifies if the
+ * {@link org.apache.myfaces.extensions.cdi.core.api.scope.conversation.event.AccessBeanEvent}
+ * will be fired.
+ *
+ * @return true if the event should be fired, false otherwise
+ */
public boolean isAccessBeanEventEnabled()
{
return false;
}
+ /**
+ * Specifies if the
+ * {@link org.apache.myfaces.extensions.cdi.core.api.scope.conversation.event.UnscopeBeanEvent}
+ * will be fired.
+ *
+ * @return true if the event should be fired, false otherwise
+ */
public boolean isUnscopeBeanEventEnabled()
{
return false;
}
+ /**
+ * Specifies if the
+ * {@link org.apache.myfaces.extensions.cdi.core.api.scope.conversation.event.StartConversationEvent}
+ * will be fired.
+ *
+ * @return true if the event should be fired, false otherwise
+ */
public boolean isStartConversationEventEnabled()
{
return false;
}
+ /**
+ * Specifies if the
+ * {@link org.apache.myfaces.extensions.cdi.core.api.scope.conversation.event.CloseConversationEvent}
+ * will be fired.
+ *
+ * @return true if the event should be fired, false otherwise
+ */
public boolean isCloseConversationEventEnabled()
{
return false;
}
+ /**
+ * Specifies if the
+ * {@link org.apache.myfaces.extensions.cdi.core.api.scope.conversation.event.RestartConversationEvent}
+ * will be fired.
+ *
+ * @return true if the event should be fired, false otherwise
+ */
public boolean isRestartConversationEventEnabled()
{
return false;
Modified: myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/config/WindowContextConfig.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/config/WindowContextConfig.java?rev=1078959&r1=1078958&r2=1078959&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/config/WindowContextConfig.java (original)
+++ myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/config/WindowContextConfig.java Mon Mar 7 21:32:40 2011
@@ -24,6 +24,9 @@ import org.apache.myfaces.extensions.cdi
import javax.enterprise.context.ApplicationScoped;
/**
+ * Configuration for the {@link org.apache.myfaces.extensions.cdi.core.api.scope.conversation.WindowContext}
+ * - it's customizable via the @Alternative or @Specializes mechanism of CDI.
+ *
* @author Gerhard Petracek
*/
@ApplicationScoped
@@ -64,6 +67,7 @@ public class WindowContextConfig extends
/**
* if set to <code>true</code> CODI will add a windowId=xxx parameter
* while encoding each action URL.
+ * @return true if the window-id should be added, false otherwise
*/
@Deprecated
public boolean isAddWindowIdToActionUrlsEnabled()
@@ -117,11 +121,25 @@ public class WindowContextConfig extends
* event config
*/
+ /**
+ * Specifies if the
+ * {@link org.apache.myfaces.extensions.cdi.core.api.scope.conversation.event.CreateWindowContextEvent}
+ * will be fired.
+ *
+ * @return true if the event should be fired, false otherwise
+ */
public boolean isCreateWindowContextEventEnabled()
{
return false;
}
+ /**
+ * Specifies if the
+ * {@link org.apache.myfaces.extensions.cdi.core.api.scope.conversation.event.CloseWindowContextEvent}
+ * will be fired.
+ *
+ * @return true if the event should be fired, false otherwise
+ */
public boolean isCloseWindowContextEventEnabled()
{
return false;
Modified: myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/event/AccessBeanEvent.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/event/AccessBeanEvent.java?rev=1078959&r1=1078958&r2=1078959&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/event/AccessBeanEvent.java (original)
+++ myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/event/AccessBeanEvent.java Mon Mar 7 21:32:40 2011
@@ -21,6 +21,10 @@ package org.apache.myfaces.extensions.cd
import java.io.Serializable;
/**
+ * Event which gets fired as soon as a bean within a CODI scope is accessed.<p/>
+ * Attention:
+ * It's deactivated per default. Since it introduces a significant overhead, just activate it for special cases.
+ *
* @author Gerhard Petracek
*/
public final class AccessBeanEvent extends BeanEvent
Modified: myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/event/BeanEvent.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/event/BeanEvent.java?rev=1078959&r1=1078958&r2=1078959&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/event/BeanEvent.java (original)
+++ myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/event/BeanEvent.java Mon Mar 7 21:32:40 2011
@@ -21,6 +21,8 @@ package org.apache.myfaces.extensions.cd
import java.io.Serializable;
/**
+ * Base class for all events related to beans.
+ *
* @author Gerhard Petracek
*/
public abstract class BeanEvent
@@ -32,6 +34,10 @@ public abstract class BeanEvent
this.bean = bean;
}
+ /**
+ * The current bean instance
+ * @return the current bean instance
+ */
public final Serializable getBeanInstance()
{
return bean;
Modified: myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/event/CloseConversationEvent.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/event/CloseConversationEvent.java?rev=1078959&r1=1078958&r2=1078959&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/event/CloseConversationEvent.java (original)
+++ myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/event/CloseConversationEvent.java Mon Mar 7 21:32:40 2011
@@ -21,6 +21,9 @@ package org.apache.myfaces.extensions.cd
import org.apache.myfaces.extensions.cdi.core.api.scope.conversation.Conversation;
/**
+ * Event which gets fired directly before a conversation gets closed.<p/>
+ * Attention: It's deactivated per default.
+ *
* @author Gerhard Petracek
*/
public final class CloseConversationEvent extends ConversationEvent
Modified: myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/event/CloseWindowContextEvent.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/event/CloseWindowContextEvent.java?rev=1078959&r1=1078958&r2=1078959&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/event/CloseWindowContextEvent.java (original)
+++ myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/event/CloseWindowContextEvent.java Mon Mar 7 21:32:40 2011
@@ -21,6 +21,9 @@ package org.apache.myfaces.extensions.cd
import org.apache.myfaces.extensions.cdi.core.api.scope.conversation.WindowContext;
/**
+ * Event which gets fired directly before the current {@link WindowContext} gets closed.<p/>
+ * Attention: It's deactivated per default.
+ *
* @author Gerhard Petracek
*/
public final class CloseWindowContextEvent extends WindowContextEvent
Modified: myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/event/ConversationEvent.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/event/ConversationEvent.java?rev=1078959&r1=1078958&r2=1078959&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/event/ConversationEvent.java (original)
+++ myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/event/ConversationEvent.java Mon Mar 7 21:32:40 2011
@@ -21,6 +21,8 @@ package org.apache.myfaces.extensions.cd
import org.apache.myfaces.extensions.cdi.core.api.scope.conversation.Conversation;
/**
+ * Base class for all events related to conversations.
+ *
* @author Gerhard Petracek
*/
public abstract class ConversationEvent
@@ -32,6 +34,10 @@ public abstract class ConversationEvent
this.conversation = conversation;
}
+ /**
+ * The current {@link Conversation}
+ * @return the current conversation
+ */
public final Conversation getConversation()
{
return conversation;
Modified: myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/event/CreateWindowContextEvent.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/event/CreateWindowContextEvent.java?rev=1078959&r1=1078958&r2=1078959&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/event/CreateWindowContextEvent.java (original)
+++ myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/event/CreateWindowContextEvent.java Mon Mar 7 21:32:40 2011
@@ -21,6 +21,9 @@ package org.apache.myfaces.extensions.cd
import org.apache.myfaces.extensions.cdi.core.api.scope.conversation.WindowContext;
/**
+ * Event which gets fired as soon as a {@link WindowContext} was created.<p/>
+ * Attention: It's deactivated per default.
+ *
* @author Gerhard Petracek
*/
public final class CreateWindowContextEvent extends WindowContextEvent
Modified: myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/event/RestartConversationEvent.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/event/RestartConversationEvent.java?rev=1078959&r1=1078958&r2=1078959&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/event/RestartConversationEvent.java (original)
+++ myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/event/RestartConversationEvent.java Mon Mar 7 21:32:40 2011
@@ -21,6 +21,9 @@ package org.apache.myfaces.extensions.cd
import org.apache.myfaces.extensions.cdi.core.api.scope.conversation.Conversation;
/**
+ * Event which gets fired directly before a conversation gets restarted.<p/>
+ * Attention: It's deactivated per default.
+ *
* @author Gerhard Petracek
*/
public final class RestartConversationEvent extends ConversationEvent
Modified: myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/event/ScopeBeanEvent.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/event/ScopeBeanEvent.java?rev=1078959&r1=1078958&r2=1078959&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/event/ScopeBeanEvent.java (original)
+++ myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/event/ScopeBeanEvent.java Mon Mar 7 21:32:40 2011
@@ -21,6 +21,10 @@ package org.apache.myfaces.extensions.cd
import java.io.Serializable;
/**
+ * Event which gets fired as soon as a bean gets added to one of the CODI scopes.<p/>
+ * Attention:
+ * It's deactivated per default.
+ *
* @author Gerhard Petracek
*/
public final class ScopeBeanEvent extends BeanEvent
Modified: myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/event/StartConversationEvent.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/event/StartConversationEvent.java?rev=1078959&r1=1078958&r2=1078959&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/event/StartConversationEvent.java (original)
+++ myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/event/StartConversationEvent.java Mon Mar 7 21:32:40 2011
@@ -21,6 +21,9 @@ package org.apache.myfaces.extensions.cd
import org.apache.myfaces.extensions.cdi.core.api.scope.conversation.Conversation;
/**
+ * Event which gets fired directly after a conversation was started.<p/>
+ * Attention: It's deactivated per default.
+ *
* @author Gerhard Petracek
*/
public final class StartConversationEvent extends ConversationEvent
Modified: myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/event/UnscopeBeanEvent.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/event/UnscopeBeanEvent.java?rev=1078959&r1=1078958&r2=1078959&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/event/UnscopeBeanEvent.java (original)
+++ myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/event/UnscopeBeanEvent.java Mon Mar 7 21:32:40 2011
@@ -21,6 +21,10 @@ package org.apache.myfaces.extensions.cd
import java.io.Serializable;
/**
+ * Event which gets fired as soon as a bean gets removed from one of the CODI scopes.<p/>
+ * Attention:
+ * It's deactivated per default.
+ *
* @author Gerhard Petracek
*/
public final class UnscopeBeanEvent extends BeanEvent
Modified: myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/event/WindowContextEvent.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/event/WindowContextEvent.java?rev=1078959&r1=1078958&r2=1078959&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/event/WindowContextEvent.java (original)
+++ myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/event/WindowContextEvent.java Mon Mar 7 21:32:40 2011
@@ -21,6 +21,8 @@ package org.apache.myfaces.extensions.cd
import org.apache.myfaces.extensions.cdi.core.api.scope.conversation.WindowContext;
/**
+ * Base class for all events related to {@link WindowContext}.
+ *
* @author Gerhard Petracek
*/
public abstract class WindowContextEvent
@@ -32,6 +34,10 @@ public abstract class WindowContextEvent
this.windowContext = windowContext;
}
+ /**
+ * The current {@link WindowContext}
+ * @return the current window-context
+ */
public final WindowContext getWindowContext()
{
return windowContext;
Modified: myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/security/AccessDecisionVoter.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/security/AccessDecisionVoter.java?rev=1078959&r1=1078958&r2=1078959&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/security/AccessDecisionVoter.java (original)
+++ myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/security/AccessDecisionVoter.java Mon Mar 7 21:32:40 2011
@@ -26,7 +26,11 @@ import java.util.Set;
* Interface for implementing concrete voters.
* A voter has to add an instance of
* {@link org.apache.myfaces.extensions.cdi.core.api.security.SecurityViolation} to the given result-set,
- * if a restriction is detected.
+ * if a restriction is detected.<p/>
+ * A voter has to be used in combination with {@link Secured}.<p/>
+ * A voter can use every scope which is active. It's recommended to use
+ * {@link javax.enterprise.context.ApplicationScoped} for stateless voters and e.g.
+ * {@link javax.enterprise.context.RequestScoped} otherwise.
*
* @author Gerhard Petracek
*/
Modified: myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/security/AccessDeniedException.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/security/AccessDeniedException.java?rev=1078959&r1=1078958&r2=1078959&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/security/AccessDeniedException.java (original)
+++ myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/security/AccessDeniedException.java Mon Mar 7 21:32:40 2011
@@ -18,6 +18,7 @@
*/
package org.apache.myfaces.extensions.cdi.core.api.security;
+import org.apache.myfaces.extensions.cdi.core.api.config.view.DefaultErrorView;
import org.apache.myfaces.extensions.cdi.core.api.config.view.ViewConfig;
import java.util.Set;
@@ -41,13 +42,23 @@ public class AccessDeniedException exten
this.errorView = errorView;
}
+ /**
+ * All {@link SecurityViolation} which were found by a {@link AccessDecisionVoter}
+ *
+ * @return all security-violations
+ */
public Set<SecurityViolation> getViolations()
{
return violations;
}
+ /**
+ * Optional page which should be used as error-page
+ * @return type-safe view-config which is mapped to an error-view.
+ * Returning null would force the navigation to the default error-view.
+ */
public Class<? extends ViewConfig> getErrorView()
{
- return errorView;
+ return this.errorView != null ? this.errorView : DefaultErrorView.class;
}
}
Modified: myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/security/Secured.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/security/Secured.java?rev=1078959&r1=1078958&r2=1078959&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/security/Secured.java (original)
+++ myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/security/Secured.java Mon Mar 7 21:32:40 2011
@@ -36,15 +36,28 @@ import static java.lang.annotation.Eleme
*
* @author Gerhard Petracek
*/
-@InterceptorBinding
@Target({TYPE, METHOD})
@Retention(RUNTIME)
@Documented
+
+//cdi annotations
+@InterceptorBinding
public @interface Secured
{
+ /**
+ * {@link AccessDecisionVoter}s which will be invoked before accessing the intercepted instance or in case of
+ * view-configs before a view gets used.
+ *
+ * @return the configured access-decision-voters which should be used for the voting process
+ */
@Nonbinding
Class<? extends AccessDecisionVoter>[] value();
+ /**
+ * Optional inline error-view if it is required to show an error-page
+ * which is different from the default error page.
+ * @return type-safe view-config of the page which should be used as error-view
+ */
@Nonbinding
Class<? extends ViewConfig> errorView() default DefaultErrorView.class;
}
Modified: myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/startup/event/StartupEvent.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/startup/event/StartupEvent.java?rev=1078959&r1=1078958&r2=1078959&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/startup/event/StartupEvent.java (original)
+++ myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/startup/event/StartupEvent.java Mon Mar 7 21:32:40 2011
@@ -22,9 +22,15 @@ import java.io.Serializable;
import java.util.Map;
/**
+ * Event which will be fired during the startup-process as soon as the target environment is up and running.
+ *
* @author Gerhard Petracek
*/
public interface StartupEvent
{
+ /**
+ * Configuration parameters of the current application
+ * @return basic configuration of the current application
+ */
Map<String, Serializable> getApplicationParameters();
}
Modified: myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/startup/event/StartupEventBroadcaster.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/startup/event/StartupEventBroadcaster.java?rev=1078959&r1=1078958&r2=1078959&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/startup/event/StartupEventBroadcaster.java (original)
+++ myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/startup/event/StartupEventBroadcaster.java Mon Mar 7 21:32:40 2011
@@ -19,9 +19,18 @@
package org.apache.myfaces.extensions.cdi.core.api.startup.event;
/**
+ * Broadcasters which implement this interface don't use CDI concepts and have to be configured via the
+ * {@link java.util.ServiceLoader} approach for broadcasting the startup of CODI which might happen before the CDI
+ * container is up and running. E.g. add-ons like the controlled bootstrapping add-on can implement this interface
+ * in order to force the bootstrapping of the CDI container before CODI continues with the startup process.
+ * Further details are available at {@link org.apache.myfaces.extensions.cdi.core.api.startup.CodiStartupBroadcaster}
+ *
* @author Gerhard Petracek
*/
public interface StartupEventBroadcaster
{
+ /**
+ * Allows to trigger any custom mechanism during the bootstrapping process.
+ */
void broadcastStartup();
}
Modified: myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/tools/DefaultAnnotation.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/tools/DefaultAnnotation.java?rev=1078959&r1=1078958&r2=1078959&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/tools/DefaultAnnotation.java (original)
+++ myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/tools/DefaultAnnotation.java Mon Mar 7 21:32:40 2011
@@ -50,6 +50,12 @@ public class DefaultAnnotation implement
private static volatile Map<ClassLoader, Map<String, Annotation>> annotationCache
= new WeakHashMap<ClassLoader, Map<String, Annotation>>();
+ /**
+ * Creates an annotation instance for the given annotation class
+ * @param annotationClass type of the target annotation
+ * @param <T> current type
+ * @return annotation instance for the given type
+ */
public static <T extends Annotation> T of(Class<T> annotationClass)
{
String key = annotationClass.getName();
@@ -123,6 +129,9 @@ public class DefaultAnnotation implement
this.annotationClass = annotationClass;
}
+ /**
+ * {@inheritDoc}
+ */
public Object invoke(Object proxy, Method method, Object[] args) throws Exception
{
if ("hashCode".equals(method.getName()))
@@ -145,16 +154,19 @@ public class DefaultAnnotation implement
return method.getDefaultValue();
}
+ /**
+ * {@inheritDoc}
+ */
public Class<? extends Annotation> annotationType()
{
return annotationClass;
}
/**
- * Copied from javax.enterprise.util.AnnotationLiteral#toString()
+ * Copied from Apache OWB (javax.enterprise.util.AnnotationLiteral#toString())
* with minor changes.
*
- * @return
+ * @return the current state of the annotation as string
*/
@Override
public String toString()
Modified: myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/tools/InvocationOrderComparator.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/tools/InvocationOrderComparator.java?rev=1078959&r1=1078958&r2=1078959&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/tools/InvocationOrderComparator.java (original)
+++ myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/tools/InvocationOrderComparator.java Mon Mar 7 21:32:40 2011
@@ -24,12 +24,17 @@ import java.util.Comparator;
import java.io.Serializable;
/**
+ * {@link Comparator} which allows to sort artifacts based on {@link InvocationOrder}
+ *
* @author Gerhard Petracek
*/
public class InvocationOrderComparator<T> implements Comparator<T>, Serializable
{
private static final long serialVersionUID = -7492852803631628400L;
+ /**
+ * {@inheritDoc}
+ */
public int compare(T t1, T t2)
{
if (hasPriority(t1) && hasPriority(t2))
Modified: myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/util/ClassUtils.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/util/ClassUtils.java?rev=1078959&r1=1078958&r2=1078959&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/util/ClassUtils.java (original)
+++ myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/util/ClassUtils.java Mon Mar 7 21:32:40 2011
@@ -26,6 +26,8 @@ import java.util.jar.Attributes;
import java.net.URL;
/**
+ * Util methods for classes, {@link ClassLoader} and {@link Manifest} handling
+ *
* @author Gerhard Petracek
*/
@Typed()
@@ -79,11 +81,23 @@ public abstract class ClassUtils
return loader;
}
+ /**
+ * Tries to load a class based on the given name and interface or abstract class.
+ * @param name name of the concrete class
+ * @param targetType target type (interface or abstract class)
+ * @param <T> current type
+ * @return loaded class or null if it isn't in the classpath
+ */
public static <T> Class<T> tryToLoadClassForName(String name, Class<T> targetType)
{
return (Class<T>) tryToLoadClassForName(name);
}
+ /**
+ * Tries to load a class based on the given name
+ * @param name name of the class
+ * @return loaded class or null if it isn't in the classpath
+ */
public static Class tryToLoadClassForName(String name)
{
try
@@ -97,6 +111,12 @@ public abstract class ClassUtils
}
}
+ /**
+ * Loads class for the given name
+ * @param name name of the class
+ * @return loaded class
+ * @throws ClassNotFoundException if the class can't be loaded
+ */
public static Class loadClassForName(String name) throws ClassNotFoundException
{
try
@@ -113,6 +133,12 @@ public abstract class ClassUtils
}
}
+ /**
+ * Instantiates a given class via the default constructor
+ * @param targetClass class which should be instantiated
+ * @param <T> current type
+ * @return created instance or null if the instantiation failed
+ */
public static <T> T tryToInstantiateClass(Class<T> targetClass)
{
try
@@ -126,19 +152,13 @@ public abstract class ClassUtils
return null;
}
- public static <T> T tryToInstantiateClass(Class targetClass, Class<T> type)
- {
- try
- {
- return (T) targetClass.newInstance();
- }
- catch (Exception e)
- {
- //do nothing - it was just a try
- }
- return null;
- }
-
+ /**
+ * Tries to instantiate a class for the given name and type via the default constructor
+ * @param className name of the class
+ * @param targetType target type
+ * @param <T> current type
+ * @return created instance or null if the instantiation failed
+ */
public static <T> T tryToInstantiateClassForName(String className, Class<T> targetType)
{
Object result = tryToInstantiateClassForName(className);
@@ -147,6 +167,11 @@ public abstract class ClassUtils
return result != null ? (T) result : null;
}
+ /**
+ * Tries to instantiate a class for the given name via the default constructor
+ * @param className name of the class
+ * @return created instance or null if the instantiation failed
+ */
public static Object tryToInstantiateClassForName(String className)
{
try
@@ -160,12 +185,25 @@ public abstract class ClassUtils
return null;
}
+ /**
+ * Creates an instance for the given class-name
+ * @param className name of the class which should be instantiated
+ * @return created instance
+ * @throws ClassNotFoundException if the instantiation failed
+ * @throws IllegalAccessException if the instantiation failed
+ * @throws InstantiationException if the instantiation failed
+ */
public static Object instantiateClassForName(String className)
throws ClassNotFoundException, IllegalAccessException, InstantiationException
{
return loadClassForName(className).newInstance();
}
+ /**
+ * Reads the version of the jar which contains the given class
+ * @param targetClass class within the jar
+ * @return version-string which has been found in the manifest or null if there is no version information available
+ */
public static String getJarVersion(Class targetClass)
{
String manifestFileLocation = getManifestLocation(targetClass);
@@ -181,6 +219,11 @@ public abstract class ClassUtils
}
}
+ /**
+ * Reads the VCS revision which was used for creating the jar
+ * @param targetClass class within the jar
+ * @return revision-string which has been found in the manifest or null if there is no information available
+ */
public static String getRevision(Class targetClass)
{
String manifestFileLocation = getManifestLocation(targetClass);
Modified: myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf/impl/listener/phase/PhaseListenerExtension.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf/impl/listener/phase/PhaseListenerExtension.java?rev=1078959&r1=1078958&r2=1078959&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf/impl/listener/phase/PhaseListenerExtension.java (original)
+++ myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf/impl/listener/phase/PhaseListenerExtension.java Mon Mar 7 21:32:40 2011
@@ -119,7 +119,7 @@ public class PhaseListenerExtension impl
private static PhaseListener createPhaseListenerInstance(Class<? extends PhaseListener> phaseListenerClass)
{
- return ClassUtils.tryToInstantiateClass(phaseListenerClass, PhaseListener.class);
+ return ClassUtils.tryToInstantiateClass(phaseListenerClass);
}
private static ClassLoader getClassLoader()