com.atlassian.jira.pageobjects.framework.util
Class GenericByAnnotationPostProcessor<A extends Annotation,P>

java.lang.Object
  extended by com.atlassian.jira.pageobjects.framework.util.GenericByAnnotationPostProcessor<A,P>
All Implemented Interfaces:
com.atlassian.pageobjects.binder.PostInjectionProcessor

public class GenericByAnnotationPostProcessor<A extends Annotation,P>
extends Object
implements com.atlassian.pageobjects.binder.PostInjectionProcessor

A generic post-injection processor that may be used to inject page objects of type P for all fields annotated with annotation A.

Since:
v4.4

Nested Class Summary
static class GenericByAnnotationPostProcessor.InjectionContext<A>
           
 
Constructor Summary
GenericByAnnotationPostProcessor(Class<A> annotationType, com.google.common.base.Function<GenericByAnnotationPostProcessor.InjectionContext<A>,P> valueProvider)
           
GenericByAnnotationPostProcessor(Class<A> annotationType, com.google.common.base.Function<GenericByAnnotationPostProcessor.InjectionContext<A>,P> valueProvider, String locatorMethodName)
           
 
Method Summary
static
<B extends Annotation,Q>
GenericByAnnotationPostProcessor<B,Q>
create(Class<B> annotationType, com.google.common.base.Function<GenericByAnnotationPostProcessor.InjectionContext<B>,Q> valueProvider)
           
static
<B extends Annotation,Q>
GenericByAnnotationPostProcessor<B,Q>
create(Class<B> annotationType, com.google.common.base.Function<GenericByAnnotationPostProcessor.InjectionContext<B>,Q> valueProvider, String locatorMethodName)
           
<T> T
process(T pageObject)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

GenericByAnnotationPostProcessor

public GenericByAnnotationPostProcessor(Class<A> annotationType,
                                        com.google.common.base.Function<GenericByAnnotationPostProcessor.InjectionContext<A>,P> valueProvider)

GenericByAnnotationPostProcessor

public GenericByAnnotationPostProcessor(Class<A> annotationType,
                                        com.google.common.base.Function<GenericByAnnotationPostProcessor.InjectionContext<A>,P> valueProvider,
                                        String locatorMethodName)
Method Detail

create

public static <B extends Annotation,Q> GenericByAnnotationPostProcessor<B,Q> create(Class<B> annotationType,
                                                                                    com.google.common.base.Function<GenericByAnnotationPostProcessor.InjectionContext<B>,Q> valueProvider)

create

public static <B extends Annotation,Q> GenericByAnnotationPostProcessor<B,Q> create(Class<B> annotationType,
                                                                                    com.google.common.base.Function<GenericByAnnotationPostProcessor.InjectionContext<B>,Q> valueProvider,
                                                                                    String locatorMethodName)

process

public <T> T process(T pageObject)
Specified by:
process in interface com.atlassian.pageobjects.binder.PostInjectionProcessor


Copyright © 2002-2014 Atlassian. All Rights Reserved.