blob: 2cc48047664902585f1d89fe0fe712d8d21635b8 [file] [log] [blame]
package org.apache.abdera2.common.templates;
import org.apache.abdera2.common.anno.Param;
public class AnnotationContext extends MapContext {
private static final long serialVersionUID = 3092158634973274492L;
private void process(org.apache.abdera2.common.anno.Context context) {
for (Param param : context.value())
put(param.name().toLowerCase(),param.value());
}
public AnnotationContext(org.apache.abdera2.common.anno.Context context) {
process(context);
}
public AnnotationContext(Object object) {
org.apache.abdera2.common.anno.Context context = getContext(object);
if (object == null)
throw new IllegalArgumentException();
else process(context);
}
public static org.apache.abdera2.common.anno.Context getContext(Object object) {
if (object == null)
throw new IllegalArgumentException();
Class<?> _class =
object instanceof Class<?> ?
(Class<?>)object : object.getClass();
if (_class.isAnnotationPresent(org.apache.abdera2.common.anno.Context.class)) {
return
_class.getAnnotation(org.apache.abdera2.common.anno.Context.class);
}
return null;
}
}