KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > jboss > reflect > plugins > ParameterInfoImpl


1 /*
2 * JBoss, Home of Professional Open Source
3 * Copyright 2005, JBoss Inc., and individual contributors as indicated
4 * by the @authors tag. See the copyright.txt in the distribution for a
5 * full listing of individual contributors.
6 *
7 * This is free software; you can redistribute it and/or modify it
8 * under the terms of the GNU Lesser General Public License as
9 * published by the Free Software Foundation; either version 2.1 of
10 * the License, or (at your option) any later version.
11 *
12 * This software 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 GNU
15 * Lesser General Public License for more details.
16 *
17 * You should have received a copy of the GNU Lesser General Public
18 * License along with this software; if not, write to the Free
19 * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
20 * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
21 */

22 package org.jboss.reflect.plugins;
23
24 import org.jboss.reflect.spi.AnnotationValue;
25 import org.jboss.reflect.spi.ParameterInfo;
26 import org.jboss.reflect.spi.TypeInfo;
27
28 /**
29  * Parameter info
30  *
31  * @author <a HREF="mailto:adrian@jboss.org">Adrian Brock</a>
32  */

33 public class ParameterInfoImpl extends AnnotationHolder implements ParameterInfo
34 {
35    /** serialVersionUID */
36    private static final long serialVersionUID = 3256725082746664754L;
37
38    /** The parameter name */
39    protected String JavaDoc name;
40    
41    /** The parameter type */
42    protected TypeInfo parameterType;
43
44    /**
45     * Create a new method info
46     */

47    public ParameterInfoImpl()
48    {
49    }
50
51    /**
52     * Create a new MethodInfo.
53     *
54     * @param annotations the annotations
55     * @param name the method name
56     * @param parameterType the parameter type
57     */

58    public ParameterInfoImpl(AnnotationValue[] annotations, String JavaDoc name, TypeInfo parameterType)
59    {
60       super(annotations);
61       this.name = name;
62       this.parameterType = parameterType;
63    }
64
65    public String JavaDoc getName()
66    {
67       return name;
68    }
69
70    public TypeInfo getParameterType()
71    {
72       return parameterType;
73    }
74
75    public boolean equals(Object JavaDoc obj)
76    {
77       if (this == obj)
78          return true;
79       if (obj == null || obj instanceof ParameterInfo == false)
80          return false;
81       
82       ParameterInfo other = (ParameterInfo) obj;
83       return parameterType.equals(other.getParameterType());
84    }
85    
86    public int hashCode()
87    {
88       return parameterType.hashCode();
89    }
90 }
91
Popular Tags