01: /*
02: * All content copyright (c) 2003-2006 Terracotta, Inc., except as may otherwise be noted in a separate copyright notice. All rights reserved.
03: */
04: package com.tc.aspectwerkz.transform.inlining.compiler;
05:
06: import com.tc.aspectwerkz.expression.ExpressionContext;
07:
08: /**
09: * Holds info sufficient for picking out the join points we are interested in advising.
10: *
11: * @author <a href="mailto:jboner@codehaus.org">Jonas BonŽr </a>
12: */
13: final public class MatchingJoinPointInfo {
14: private final Class m_joinPointClass;
15: private final CompilationInfo m_compilationInfo;
16: private final ExpressionContext m_expressionContext;
17:
18: public MatchingJoinPointInfo(final Class joinPointClass,
19: final CompilationInfo compilationInfo,
20: final ExpressionContext expressionContext) {
21: m_joinPointClass = joinPointClass;
22: m_compilationInfo = compilationInfo;
23: m_expressionContext = expressionContext;
24: }
25:
26: public Class getJoinPointClass() {
27: return m_joinPointClass;
28: }
29:
30: public CompilationInfo getCompilationInfo() {
31: return m_compilationInfo;
32: }
33:
34: public ExpressionContext getExpressionContext() {
35: return m_expressionContext;
36: }
37:
38: public int hashCode() {
39: return m_compilationInfo.hashCode();
40: }
41:
42: public boolean equals(Object o) {
43: return ((MatchingJoinPointInfo) o).m_compilationInfo == m_compilationInfo;
44: }
45: }
|