try {
if (isPartitioningBehaviorEnabled()) {
SortedMap<String, DataSource> dsMap = lookupDataSourcesByRouter(statementName,
parameterObject);
if (!MapUtils.isEmpty(dsMap)) {
SqlMapClientCallback callback = null;
if (valueProperty != null) {
callback = new SqlMapClientCallback() {
public Object doInSqlMapClient(SqlMapExecutor executor)
throws SQLException {
return executor.queryForMap(statementName, parameterObject,
keyProperty, valueProperty);
}
};
} else {
callback = new SqlMapClientCallback() {
public Object doInSqlMapClient(SqlMapExecutor executor)
throws SQLException {
return executor.queryForMap(statementName, parameterObject,
keyProperty);
}