Clover Coverage Report - perfectjpattern(Aggregated)
Coverage timestamp: Sat Feb 28 2009 14:35:07 CET
../../../../../img/srcFileCovDistChart10.png 0% of files have more coverage
5   59   1   5
0   20   0.2   1
1     1  
1    
25% of code in this file is excluded from these metrics.
 
  SimpleFinderNamingStrategy       Line # 35 5 25% 1 0 100% 1.0
 
  (3)
 
1    //----------------------------------------------------------------------
2    //
3    // PerfectJPattern: "Design patterns are good but components are better!"
4    // SimpleFinderNamingStrategy.java Copyright (c) 2009 Giovanni Azua Garcia
5    // bravegag@hotmail.com
6    //
7    // This program is free software; you can redistribute it and/or
8    // modify it under the terms of the GNU General Public License
9    // as published by the Free Software Foundation; either version 3
10    // of the License, or (at your option) any later version.
11    //
12    // This program is distributed in the hope that it will be useful,
13    // but WITHOUT ANY WARRANTY; without even the implied warranty of
14    // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15    // GNU General Public License for more details.
16    //
17    // You should have received a copy of the GNU General Public License
18    // along with this program; if not, see <http://www.gnu.org/licenses/>.
19    //
20    //----------------------------------------------------------------------
21    package org.perfectjpattern.jee.integration.dao;
22   
23    import java.lang.reflect.Method;
24   
25    import org.apache.commons.lang.Validate;
26    import org.perfectjpattern.jee.api.integration.dao.*;
27   
28   
29    /**
30    * Concrete basic implementation of {@link IFinderNamingStrategy}
31    *
32    * @author <a href="mailto:bravegag@hotmail.com">Giovanni Azua</a>
33    * @version $ $Date: Nov 6, 2008 1:32:07 PM $
34    */
 
35    class SimpleFinderNamingStrategy
36    implements IFinderNamingStrategy
37    {
38    //------------------------------------------------------------------------
39    // public
40    //------------------------------------------------------------------------
41    /**
42    * {@inheritDoc}
43    */
 
44  3 toggle public String
45    getQueryName(Class<?> aClass, Method aMethod)
46    throws IllegalArgumentException
47    {
48  3 Validate.notNull(aClass, "'aClass' must not be null");
49  3 Validate.notNull(aMethod, "'aMethod' must not be null");
50   
51  3 String myMethodName = aMethod.getName();
52  3 String myMethodPart = myMethodName;
53   
54    assert myMethodName.startsWith("findBy") : "Finder methods must " +
55    "comply with 'findBy' naming convention";
56   
57  3 return aClass.getSimpleName() + "." + myMethodPart;
58    }
59    }