##### Coverage Report - org.yaml.snakeyaml.extensions.compactnotation.PackageCompactConstructor

Classes in this File | Line Coverage | Branch Coverage | Complexity
PackageCompactConstructor |
100% | 8/8
100% | 2/2
| 2.5;2.5

1 |  |
     /**
2 |  |
      * Copyright (c) 2008-2011, http://www.snakeyaml.org
3 |  |
      *
4 |  |
      * Licensed under the Apache License, Version 2.0 (the "License");
5 |  |
      * you may not use this file except in compliance with the License.
6 |  |
      * You may obtain a copy of the License at
7 |  |
      *
8 |  |
      *     http://www.apache.org/licenses/LICENSE-2.0
9 |  |
      *
10 |  |
      * Unless required by applicable law or agreed to in writing, software
11 |  |
      * distributed under the License is distributed on an "AS IS" BASIS,
12 |  |
      * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 |  |
      * See the License for the specific language governing permissions and
14 |  |
      * limitations under the License.
15 |  |
      */
16 |  |
17 |  |
     package org.yaml.snakeyaml.extensions.compactnotation;
18 |  |
19 |  |
     public class PackageCompactConstructor extends CompactConstructor {
20 |  |
         private String packageName;
21 |  |
22 | 15 |
         public PackageCompactConstructor(String packageName) {
23 | 15 |
             this.packageName = packageName;
24 | 15 |
         }
25 |  |
26 |  |
         @Override
27 |  |
         protected Class<?> getClassForName(String name) throws ClassNotFoundException {
28 | 25 |
             if (name.indexOf('.') < 0) {
29 |  |
                 try {
30 | 22 |
                     Class<?> clazz = Class.forName(packageName + "." + name);
31 | 21 |
                     return clazz;
32 | 1 |
                 } catch (ClassNotFoundException e) {
33 |  |
                     // use super implementation
34 |  |
                 }
35 |  |
             }
36 | 4 |
             return super.getClassForName(name);
37 |  |
         }
38 |  |
     }