EMMA Coverage Report (generated Thu Nov 26 15:54:18 CST 2009)
[all classes][org.eclipse.pde.api.tools.internal.search]

COVERAGE SUMMARY FOR SOURCE FILE [ReferenceDescriptor.java]

nameclass, %method, %block, %line, %
ReferenceDescriptor.java100% (1/1)91%  (10/11)57%  (76/133)63%  (19/30)

COVERAGE BREAKDOWN BY CLASS AND METHOD

nameclass, %method, %block, %line, %
     
class ReferenceDescriptor100% (1/1)91%  (10/11)57%  (76/133)63%  (19/30)
equals (Object): boolean 0%   (0/1)0%   (0/51)0%   (0/8)
getReferenceType (): int 100% (1/1)50%  (6/12)40%  (2/5)
ReferenceDescriptor (IComponentDescriptor, IMemberDescriptor, int, IComponent... 100% (1/1)100% (24/24)100% (9/9)
getComponent (): IComponentDescriptor 100% (1/1)100% (3/3)100% (1/1)
getLineNumber (): int 100% (1/1)100% (3/3)100% (1/1)
getMember (): IMemberDescriptor 100% (1/1)100% (3/3)100% (1/1)
getReferenceKind (): int 100% (1/1)100% (3/3)100% (1/1)
getReferencedComponent (): IComponentDescriptor 100% (1/1)100% (3/3)100% (1/1)
getReferencedMember (): IMemberDescriptor 100% (1/1)100% (3/3)100% (1/1)
getVisibility (): int 100% (1/1)100% (3/3)100% (1/1)
hashCode (): int 100% (1/1)100% (25/25)100% (1/1)

1/*******************************************************************************
2 * Copyright (c) 2009 IBM Corporation and others.
3 * All rights reserved. This program and the accompanying materials
4 * are made available under the terms of the Eclipse Public License v1.0
5 * which accompanies this distribution, and is available at
6 * http://www.eclipse.org/legal/epl-v10.html
7 *
8 * Contributors:
9 *     IBM Corporation - initial API and implementation
10 *******************************************************************************/
11package org.eclipse.pde.api.tools.internal.search;
12 
13import org.eclipse.pde.api.tools.internal.provisional.builder.IReference;
14import org.eclipse.pde.api.tools.internal.provisional.descriptors.IComponentDescriptor;
15import org.eclipse.pde.api.tools.internal.provisional.descriptors.IElementDescriptor;
16import org.eclipse.pde.api.tools.internal.provisional.descriptors.IMemberDescriptor;
17 
18/**
19 * Implementation of a reference descriptor
20 */
21public class ReferenceDescriptor implements IReferenceDescriptor {
22        
23        private IMemberDescriptor origin;
24        private IMemberDescriptor target;
25        private IComponentDescriptor from;
26        private IComponentDescriptor to;
27        
28        private int line;
29        private int kind;
30        private int visibility;
31        
32        public ReferenceDescriptor(IComponentDescriptor from, IMemberDescriptor origin, int line, IComponentDescriptor to, IMemberDescriptor target, int kind, int vis) {
33                this.origin = origin;
34                this.target = target;
35                this.from = from;
36                this.to = to;
37                this.line = line;
38                this.kind = kind;
39                this.visibility = vis;
40        }
41        
42        /* (non-Javadoc)
43         * @see java.lang.Object#equals(java.lang.Object)
44         */
45        public boolean equals(Object obj) {
46                if (obj instanceof ReferenceDescriptor) {
47                        ReferenceDescriptor rd = (ReferenceDescriptor) obj;
48                        return origin.equals(rd.origin) &&
49                        target.equals(rd.target) &&
50                        from.equals(rd.from) &&
51                        to.equals(rd.to) &&
52                        line == rd.line && kind == rd.kind && visibility == rd.visibility;
53                }
54                return false;
55        }
56        
57        /* (non-Javadoc)
58         * @see java.lang.Object#hashCode()
59         */
60        public int hashCode() {
61                return origin.hashCode() + target.hashCode() + from.hashCode() + to.hashCode() + line + kind + visibility;
62        }
63        
64        /* (non-Javadoc)
65         * @see org.eclipse.pde.api.tools.internal.search.IReferenceDescriptor#getComponent()
66         */
67        public IComponentDescriptor getComponent() {
68                return from;
69        }
70 
71        /* (non-Javadoc)
72         * @see org.eclipse.pde.api.tools.internal.search.IReferenceDescriptor#getLineNumber()
73         */
74        public int getLineNumber() {
75                return line;
76        }
77 
78        /* (non-Javadoc)
79         * @see org.eclipse.pde.api.tools.internal.search.IReferenceDescriptor#getMember()
80         */
81        public IMemberDescriptor getMember() {
82                return origin;
83        }
84 
85        /* (non-Javadoc)
86         * @see org.eclipse.pde.api.tools.internal.search.IReferenceDescriptor#getReferenceKind()
87         */
88        public int getReferenceKind() {
89                return kind;
90        }
91 
92        /* (non-Javadoc)
93         * @see org.eclipse.pde.api.tools.internal.search.IReferenceDescriptor#getReferenceType()
94         */
95        public int getReferenceType() {
96                switch (getReferencedMember().getElementType()) {
97                case IElementDescriptor.TYPE:
98                        return IReference.T_TYPE_REFERENCE;
99                case IElementDescriptor.METHOD:
100                        return IReference.T_METHOD_REFERENCE;
101                case IElementDescriptor.FIELD:
102                        return IReference.T_FIELD_REFERENCE;
103                default:
104                        return -1;
105                }
106        }
107 
108        /* (non-Javadoc)
109         * @see org.eclipse.pde.api.tools.internal.search.IReferenceDescriptor#getReferencedComponent()
110         */
111        public IComponentDescriptor getReferencedComponent() {
112                return to;
113        }
114 
115        /* (non-Javadoc)
116         * @see org.eclipse.pde.api.tools.internal.search.IReferenceDescriptor#getReferencedMember()
117         */
118        public IMemberDescriptor getReferencedMember() {
119                return target;
120        }
121 
122        /* (non-Javadoc)
123         * @see org.eclipse.pde.api.tools.internal.search.IReferenceDescriptor#getVisibility()
124         */
125        public int getVisibility() {
126                return visibility;
127        }
128 
129}

[all classes][org.eclipse.pde.api.tools.internal.search]
EMMA 2.0.5312 EclEmma Fix 1 (C) Vladimir Roubtsov