protected void processCacheIndexes() {
// TODO: This method is adding annotation metadata to XML metadata. This
// is wrong and does not follow the spec ideology. XML metadata should
// override not merge with annotations.
if (isAnnotationPresent(CacheIndex.class)) {
m_cacheIndexes.add(new CacheIndexMetadata(getAnnotation(CacheIndex.class), this));
}
if (isAnnotationPresent(CacheIndexes.class)) {
for (Object index : getAnnotation(CacheIndexes.class).getAttributeArray("value")) {
m_cacheIndexes.add(new CacheIndexMetadata((MetadataAnnotation) index, this));
}
}
for (CacheIndexMetadata indexMetadata : m_cacheIndexes) {
indexMetadata.process(getDescriptor(), null);