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 }