001 /*
002 * JBoss DNA (http://www.jboss.org/dna)
003 * See the COPYRIGHT.txt file distributed with this work for information
004 * regarding copyright ownership. Some portions may be licensed
005 * to Red Hat, Inc. under one or more contributor license agreements.
006 * See the AUTHORS.txt file in the distribution for a full listing of
007 * individual contributors.
008 *
009 * JBoss DNA is free software. Unless otherwise indicated, all code in JBoss DNA
010 * is licensed to you under the terms of the GNU Lesser General Public License as
011 * published by the Free Software Foundation; either version 2.1 of
012 * the License, or (at your option) any later version.
013 *
014 * JBoss DNA is distributed in the hope that it will be useful,
015 * but WITHOUT ANY WARRANTY; without even the implied warranty of
016 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
017 * Lesser General Public License for more details.
018 *
019 * You should have received a copy of the GNU Lesser General Public
020 * License along with this software; if not, write to the Free
021 * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
022 * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
023 */
024 package org.jboss.dna.sequencer.java.metadata;
025
026 import java.util.ArrayList;
027 import java.util.List;
028
029 /**
030 * Represent the {@link MethodMetadata}
031 */
032 public abstract class MethodMetadata {
033
034 private String name;
035
036 private FieldMetadata returnType;
037
038 public abstract boolean isContructor();
039
040 private List<ModifierMetadata> modifiers = new ArrayList<ModifierMetadata>();
041
042 private List<FieldMetadata> parameters = new ArrayList<FieldMetadata>();
043
044 /**
045 * @return name
046 */
047 public String getName() {
048 return name;
049 }
050
051 /**
052 * @param name Sets name to the specified value.
053 */
054 public void setName( String name ) {
055 this.name = name;
056 }
057
058 /**
059 * @return modifiers
060 */
061 public List<ModifierMetadata> getModifiers() {
062 return modifiers;
063 }
064
065 /**
066 * @param modifiers Sets modifiers to the specified value.
067 */
068 public void setModifiers( List<ModifierMetadata> modifiers ) {
069 this.modifiers = modifiers;
070 }
071
072 /**
073 * @return parameters
074 */
075 public List<FieldMetadata> getParameters() {
076 return parameters;
077 }
078
079 /**
080 * @param parameters Sets parameters to the specified value.
081 */
082 public void setParameters( List<FieldMetadata> parameters ) {
083 this.parameters = parameters;
084 }
085
086 /**
087 * @return returnType
088 */
089 public FieldMetadata getReturnType() {
090 return returnType;
091 }
092
093 /**
094 * @param returnType Sets returnType to the specified value.
095 */
096 public void setReturnType( FieldMetadata returnType ) {
097 this.returnType = returnType;
098 }
099 }