1 /* 2 * This file is a part of CAST project. 3 * (c) Copyright 2007, AGH University of Science & Technology 4 * https://caribou.iisg.agh.edu.pl/trac/cast 5 * 6 * Licensed under the Eclipse Public License, Version 1.0 (the "License"). 7 * You may not use this file except in compliance with the License. 8 * You may obtain a copy of the License at 9 * http://www.eclipse.org/legal/epl-v10.html 10 */ 11 /* 12 * File: AttributeEntry.java 13 * Created: 2008-01-04 14 * Author: apohllo 15 * $Id: AttributeEntry.java 2335 2009-01-13 16:40:16Z entrop $ 16 */ 17 18 package pl.edu.agh.cast.model.mapper.internal; 19 20 import java.lang.reflect.Method; 21 22 import pl.edu.agh.cast.model.mapper.annotation.MapAttribute; 23 24 /** 25 * The attribute entry class is used to map methods to 26 * their mapping annotations. 27 * 28 * @author AGH CAST Team 29 */ 30 class AttributeEntry { 31 32 private Method key; 33 34 private MapAttribute value; 35 36 /** 37 * The constructor. 38 * @param method The method. 39 * @param annotation The annotation bound to the method. 40 */ 41 public AttributeEntry(Method method, MapAttribute annotation) { 42 key = method; 43 value = annotation; 44 } 45 46 /** 47 * Method getter. 48 * @return The method. 49 */ 50 public Method getMethod() { 51 return key; 52 } 53 54 /** 55 * Annotation getter. 56 * @return The annotation. 57 */ 58 public MapAttribute getAnnotation() { 59 return value; 60 } 61 62 /** 63 * Annotation setter. 64 * @param newValue The new annotation. 65 * @return The old value of the annotation. 66 */ 67 public MapAttribute setValue(MapAttribute newValue) { 68 MapAttribute oldValue = value; 69 value = newValue; 70 return oldValue; 71 } 72 73 }