* Parses the given annotation to create and cache a
* {@link SQLResultSetMappingMetaData}.
*/
private void parseSQLResultSetMappings(ClassMapping cm,
SqlResultSetMapping... annos) {
MappingRepository repos = (MappingRepository) getRepository();
Log log = getLog();
for (SqlResultSetMapping anno : annos) {
if (log.isTraceEnabled())
log.trace(_loc.get("parse-sqlrsmapping", anno.name()));
QueryResultMapping result = repos.getCachedQueryResultMapping
(null, anno.name());
if (result != null) {
if (log.isWarnEnabled())
log.warn(_loc.get("dup-sqlrsmapping", anno.name(), cm));
continue;
}
result = repos.addQueryResultMapping(null, anno.name());
result.setSource(getSourceFile(), cm.getDescribedType(),
result.SRC_ANNOTATIONS);
for (EntityResult entity : anno.entities()) {
QueryResultMapping.PCResult entityResult = result.addPCResult