Added support for resolving augmentations.
[controller.git] / opendaylight / sal / yang-prototype / code-generator / binding-generator-util / src / main / java / org / opendaylight / controller / binding / generator / util / ReferencedTypeImpl.java
1 /*
2  * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.
3  *
4  * This program and the accompanying materials are made available under the
5  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
6  * and is available at http://www.eclipse.org/legal/epl-v10.html
7  */
8 package org.opendaylight.controller.binding.generator.util;
9
10 import org.opendaylight.controller.sal.binding.model.api.Type;
11
12
13 public final class ReferencedTypeImpl implements Type {
14     
15     private final String packageName;
16     private final String name;
17     
18     public ReferencedTypeImpl(String packageName, String name) {
19         super();
20         this.packageName = packageName;
21         this.name = name;
22     }
23
24     /* (non-Javadoc)
25      * @see org.opendaylight.controller.sal.binding.model.api.Type#getPackageName()
26      */
27     @Override
28     public String getPackageName() {
29         return packageName;
30     }
31
32     /* (non-Javadoc)
33      * @see org.opendaylight.controller.sal.binding.model.api.Type#getName()
34      */
35     @Override
36     public String getName() {
37         return name;
38     }
39
40     @Override
41     public int hashCode() {
42         final int prime = 31;
43         int result = 1;
44         result = prime * result + ((name == null) ? 0 : name.hashCode());
45         result = prime * result
46                 + ((packageName == null) ? 0 : packageName.hashCode());
47         return result;
48     }
49
50     @Override
51     public boolean equals(Object obj) {
52         if (this == obj) {
53             return true;
54         }
55         if (obj == null) {
56             return false;
57         }
58         if (getClass() != obj.getClass()) {
59             return false;
60         }
61         ReferencedTypeImpl other = (ReferencedTypeImpl) obj;
62         if (name == null) {
63             if (other.name != null) {
64                 return false;
65             }
66         } else if (!name.equals(other.name)) {
67             return false;
68         }
69         if (packageName == null) {
70             if (other.packageName != null) {
71                 return false;
72             }
73         } else if (!packageName.equals(other.packageName)) {
74             return false;
75         }
76         return true;
77     }
78
79     @Override
80     public String toString() {
81         StringBuilder builder = new StringBuilder();
82         builder.append("ReferencedTypeImpl [packageName=");
83         builder.append(packageName);
84         builder.append(", name=");
85         builder.append(name);
86         builder.append("]");
87         return builder.toString();
88     }
89 }