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.deployer;
    9
    10  import java.util.Set;
    11  import java.util.HashSet;
    12
    13  import org.codehaus.aspectwerkz.transform.inlining.compiler.CompilationInfo;
    14  import org.codehaus.aspectwerkz.transform.inlining.compiler.MatchingJoinPointInfo;
    15
    16  /***
    17   * Represents a change set of changes to be made to the class graph.
    18   *
    19   * @author <a href="mailto:jboner@codehaus.org">Jonas BonŽr </a>
    20   */
    21  public final class ChangeSet {
    22      private final Set m_set = new HashSet();
    23
    24      /***
    25       * Adds a change set element.
    26       *
    27       * @param element
    28       */
    29      public void addElement(final Element element) {
    30          m_set.add(element);
    31      }
    32
    33      /***
    34       * Returns all elements in the change set.
    35       *
    36       * @return all elements in the change set
    37       */
    38      public Set getElements() {
    39          return m_set;
    40      }
    41
    42      /***
    43       * Represents a change to be made to the class graph.
    44       *
    45       * @author <a href="mailto:jboner@codehaus.org">Jonas BonŽr </a>
    46       */
    47      public static class Element {
    48          private final CompilationInfo m_compilationInfo;
    49          private final MatchingJoinPointInfo m_joinPointInfo;
    50
    51          public Element(final CompilationInfo compilationInfo, final MatchingJoinPointInfo joinPointInfo) {
    52              m_compilationInfo = compilationInfo;
    53              m_joinPointInfo = joinPointInfo;
    54          }
    55
    56          public CompilationInfo getCompilationInfo() {
    57              return m_compilationInfo;
    58          }
    59
    60          public MatchingJoinPointInfo getJoinPointInfo() {
    61              return m_joinPointInfo;
    62          }
    63      }
    64  }