Clover Coverage Report - Kuali Student 1.1-SNAPSHOT (Aggregated)
Coverage timestamp: Thu Mar 3 2011 04:02:59 EST
../../../../../../img/srcFileCovDistChart9.png 28% of files have more coverage
16   72   7   5.33
4   44   0.44   3
3     2.33  
1    
 
  DaoPostProcessor       Line # 26 16 0% 7 4 82.6% 0.82608694
 
No Tests
 
1    /**
2    * Copyright 2010 The Kuali Foundation Licensed under the
3    * Educational Community License, Version 2.0 (the "License"); you may
4    * not use this file except in compliance with the License. You may
5    * obtain a copy of the License at
6    *
7    * http://www.osedu.org/licenses/ECL-2.0
8    *
9    * Unless required by applicable law or agreed to in writing,
10    * software distributed under the License is distributed on an "AS IS"
11    * BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
12    * or implied. See the License for the specific language governing
13    * permissions and limitations under the License.
14    */
15   
16    package org.kuali.student.common.test.spring;
17   
18    import org.springframework.beans.BeansException;
19    import org.springframework.beans.factory.config.BeanDefinition;
20    import org.springframework.beans.factory.config.BeanFactoryPostProcessor;
21    import org.springframework.beans.factory.config.ConfigurableListableBeanFactory;
22    import org.springframework.beans.factory.support.BeanDefinitionRegistry;
23    import org.springframework.beans.factory.support.RootBeanDefinition;
24    import org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProcessor;
25   
 
26    public class DaoPostProcessor implements BeanFactoryPostProcessor {
27    private String daoImplClasses;
28   
29    /**
30    * @return the daoImplClasses
31    */
 
32  0 toggle public String getDaoImplClasses() {
33  0 return daoImplClasses;
34    }
35   
36    /**
37    * @param daoImplClasses
38    * the daoImplClasses to set
39    */
 
40  15 toggle public void setDaoImplClasses(String daoImplClasses) {
41  15 this.daoImplClasses = daoImplClasses;
42    }
43   
 
44  15 toggle @Override
45    public void postProcessBeanFactory(
46    ConfigurableListableBeanFactory beanFactory) throws BeansException {
47  15 String[] classes = daoImplClasses.split(",");
48  15 BeanDefinitionRegistry registry = ((BeanDefinitionRegistry) beanFactory);
49  15 PersistenceAnnotationBeanPostProcessor pabpp = new PersistenceAnnotationBeanPostProcessor();
50  15 if (classes != null && classes.length > 0) {
51  15 for (String line : classes) {
52  17 if (!"".equals(line)) {
53  14 try {
54  14 String[] split = line.split("\\|");
55  14 String className = split[0];
56  14 Class<?> clazz = Class.forName(className);
57  14 BeanDefinition definition = new RootBeanDefinition(
58    clazz);
59  14 registry.registerBeanDefinition(clazz.getSimpleName(),
60    definition);
61  14 pabpp.postProcessMergedBeanDefinition(
62    (RootBeanDefinition) definition, clazz, clazz
63    .getSimpleName());
64   
65    } catch (Exception e) {
66  0 throw new RuntimeException(e);
67    }
68    }
69    }
70    }
71    }
72    }