1 /***************************************************************************************
2 * Copyright (c) Jonas BonŽr, Alexandre Vasseur. All rights reserved. *
3 * http://aspectwerkz.codehaus.org *
4 * ---------------------------------------------------------------------------------- *
5 * The software in this package is published under the terms of the LGPL license *
6 * a copy of which has been included with this distribution in the license.txt file. *
7 **************************************************************************************/
8 package org.codehaus.aspectwerkz.reflect;
9
10 import java.util.Collections;
11 import java.util.List;
12
13 import org.codehaus.aspectwerkz.transform.TransformationConstants;
14 import org.objectweb.asm.Constants;
15
16
17 /***
18 * Sole implementation of <CODE>StaticInitializationInfo</CODE>.
19 *
20 * @author <a href="mailto:the_mindstorm@evolva.ro">Alex Popescu</a>
21 */
22 public class StaticInitializationInfoImpl implements StaticInitializationInfo {
23 protected ClassInfo m_declaringType;
24
25 public StaticInitializationInfoImpl(final ClassInfo classInfo) {
26 m_declaringType = classInfo;
27 }
28
29 /***
30 * @see org.codehaus.aspectwerkz.reflect.MemberInfo#getDeclaringType()
31 */
32 public ClassInfo getDeclaringType() {
33 return m_declaringType;
34 }
35
36 /***
37 * @see org.codehaus.aspectwerkz.reflect.ReflectionInfo#getName()
38 */
39 public String getName() {
40 return TransformationConstants.CLINIT_METHOD_NAME;
41 }
42
43 /***
44 * @see org.codehaus.aspectwerkz.reflect.ReflectionInfo#getSignature()
45 */
46 public String getSignature() {
47 return TransformationConstants.CLINIT_METHOD_SIGNATURE;
48 }
49
50 /***
51 * @see org.codehaus.aspectwerkz.reflect.ReflectionInfo#getModifiers()
52 */
53 public int getModifiers() {
54 return Constants.ACC_STATIC;
55 }
56
57 /***
58 * @see org.codehaus.aspectwerkz.reflect.ReflectionInfo#getAnnotations()
59 */
60 public List getAnnotations() {
61 return Collections.EMPTY_LIST;
62 }
63
64 }