org.jclouds.json.internal
Class NamingStrategies.NameExtractor<A extends Annotation>

java.lang.Object
  extended by org.jclouds.json.internal.NamingStrategies.NameExtractor<A>
All Implemented Interfaces:
com.google.common.base.Function<Annotation,String>, com.google.common.base.Supplier<com.google.common.base.Predicate<Annotation>>
Direct Known Subclasses:
NamingStrategies.ExtractNamed, NamingStrategies.ExtractSerializedName
Enclosing class:
NamingStrategies

public abstract static class NamingStrategies.NameExtractor<A extends Annotation>
extends Object
implements com.google.common.base.Function<Annotation,String>, com.google.common.base.Supplier<com.google.common.base.Predicate<Annotation>>

Specifies how to extract the name from an annotation for use in determining the serialized name.

See Also:
SerializedName, NamingStrategies.ExtractSerializedName

Field Summary
protected  Class<A> annotationType
           
protected  com.google.common.base.Predicate<Annotation> predicate
           
 
Constructor Summary
protected NamingStrategies.NameExtractor(Class<A> annotationType)
           
 
Method Summary
 Class<Annotation> annotationType()
           
 String apply(Annotation in)
           
 boolean equals(Object obj)
           
protected abstract  String extractName(A cast)
           
 com.google.common.base.Predicate<Annotation> get()
           
 int hashCode()
           
 String toString()
           
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

annotationType

protected final Class<A extends Annotation> annotationType

predicate

protected final com.google.common.base.Predicate<Annotation> predicate
Constructor Detail

NamingStrategies.NameExtractor

protected NamingStrategies.NameExtractor(Class<A> annotationType)
Method Detail

annotationType

public Class<Annotation> annotationType()

apply

public String apply(Annotation in)
Specified by:
apply in interface com.google.common.base.Function<Annotation,String>

extractName

protected abstract String extractName(A cast)

get

public com.google.common.base.Predicate<Annotation> get()
Specified by:
get in interface com.google.common.base.Supplier<com.google.common.base.Predicate<Annotation>>

toString

public String toString()
Overrides:
toString in class Object

hashCode

public int hashCode()
Overrides:
hashCode in class Object

equals

public boolean equals(Object obj)
Specified by:
equals in interface com.google.common.base.Function<Annotation,String>
Overrides:
equals in class Object


Copyright © 2009-2013 jclouds. All Rights Reserved.