public <A extends Annotation> A retrieveAnnotation(Class<A> annotationClass, JBossEnterpriseBeanMetaData metaData, ClassLoader classLoader)
{
if(log.isTraceEnabled()) log.trace("retrieve annotation " + annotationClass + " on " + metaData);
if (annotationClass == Clustered.class && isClustered(metaData))
{
ClusteredImpl impl = createAnnotationImpl();
ClusterConfigMetaData ccmd = findClusterConfigMetaData(metaData);
if (ccmd != null)
{
if (ccmd.getPartitionName() != null)
impl.setPartition(ccmd.getPartitionName());
// FIXME Once @Clustered and ClusteredImpl are updated, just use the string values
if (ccmd.getBeanLoadBalancePolicy() != null)
impl.setLoadBalancePolicy(ccmd.getBeanLoadBalancePolicy());
if (ccmd.getHomeLoadBalancePolicy() != null)
impl.setHomeLoadBalancePolicy(ccmd.getHomeLoadBalancePolicy());
}
return annotationClass.cast(impl);
}
return null;
}