View Javadoc

    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.transform.inlining;
    9
    10  import org.codehaus.aspectwerkz.definition.AspectDefinition;
    11  import org.codehaus.aspectwerkz.DeploymentModel;
    12  import org.codehaus.aspectwerkz.DeploymentModel;
    13
    14  /***
    15   * TODO docuemnt
    16   *
    17   * @author <a href="mailto:alex@gnilux.com">Alexandre Vasseur</a>
    18   */
    19  public class AspectInfo {
    20      private final AspectDefinition m_aspectDefinition;//FIXME - remove this dependancie
    21      private final String m_aspectQualifiedName;
    22      private final String m_aspectFieldName;
    23      private final String m_aspectClassName;
    24      private final String m_aspectClassSignature;
    25      private final DeploymentModel m_deploymentModel;
    26
    27      public AspectInfo(final AspectDefinition aspectDefinition,
    28                        final String aspectFieldName,
    29                        final String aspectClassName,
    30                        final String aspectClassSignature) {
    31          m_aspectDefinition = aspectDefinition;
    32          m_aspectQualifiedName = aspectDefinition.getQualifiedName();
    33          m_aspectFieldName = aspectFieldName;
    34          m_aspectClassName = aspectClassName;
    35          m_aspectClassSignature = aspectClassSignature;
    36          m_deploymentModel = aspectDefinition.getDeploymentModel();
    37      }
    38
    39      public AspectDefinition getAspectDefinition() {
    40          return m_aspectDefinition;
    41      }
    42
    43      public String getAspectClassName() {
    44          return m_aspectClassName;
    45      }
    46
    47      public String getAspectQualifiedName() {
    48          return m_aspectQualifiedName;
    49      }
    50
    51      public DeploymentModel getDeploymentModel() {
    52          return m_deploymentModel;
    53      }
    54
    55      public String getAspectFieldName() {
    56          return m_aspectFieldName;
    57      }
    58
    59      public String getAspectClassSignature() {
    60          return m_aspectClassSignature;
    61      }
    62
    63
    64      public boolean equals(Object o) {
    65          //TODO should we use AspectDef instead ??
    66          if (this == o) {
    67              return true;
    68          }
    69          if (!(o instanceof AspectInfo)) {
    70              return false;
    71          }
    72
    73          final AspectInfo aspectInfo = (AspectInfo) o;
    74
    75          if (!m_aspectQualifiedName.equals(aspectInfo.m_aspectQualifiedName)) {
    76              return false;
    77          }
    78
    79          return true;
    80      }
    81
    82      public int hashCode() {
    83          return m_aspectQualifiedName.hashCode();
    84      }
    85  }