001    /*
002     *   Copyright (C) Christian Schulte, 2005-206
003     *   All rights reserved.
004     *
005     *   Redistribution and use in source and binary forms, with or without
006     *   modification, are permitted provided that the following conditions
007     *   are met:
008     *
009     *     o Redistributions of source code must retain the above copyright
010     *       notice, this list of conditions and the following disclaimer.
011     *
012     *     o Redistributions in binary form must reproduce the above copyright
013     *       notice, this list of conditions and the following disclaimer in
014     *       the documentation and/or other materials provided with the
015     *       distribution.
016     *
017     *   THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,
018     *   INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
019     *   AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
020     *   THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY DIRECT, INDIRECT,
021     *   INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
022     *   NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
023     *   DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
024     *   THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
025     *   (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
026     *   THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
027     *
028     *   $JOMC: AntExecutionRequest.java 3849 2011-10-10 16:22:18Z schulte2005 $
029     *
030     */
031    package org.jomc.ant.test.support;
032    
033    import org.apache.tools.ant.Project;
034    
035    /**
036     * Request to execute a target on an Ant project.
037     *
038     * @author <a href="mailto:schulte2005@users.sourceforge.net">Christian Schulte</a>
039     * @version $JOMC: AntExecutionRequest.java 3849 2011-10-10 16:22:18Z schulte2005 $
040     */
041    public class AntExecutionRequest
042    {
043    
044        /** The {@code Project} to execute a target of. */
045        private final Project project;
046    
047        /** The identifier of the target to execute. */
048        private final String target;
049    
050        /**
051         * Creates a new {@code AntExecutionRequest} taking a project and a target.
052         *
053         * @param project The {@code Project} to execute {@code target} of.
054         * @param target The identifier of the target to execute.
055         */
056        public AntExecutionRequest( final Project project, final String target )
057        {
058            super();
059            this.project = project;
060            this.target = target;
061        }
062    
063        /**
064         * Gets the {@code Project} to execute a target of.
065         *
066         * @return The {@code Project} to execute a target of or {@code null}.
067         */
068        public final Project getProject()
069        {
070            return this.project;
071        }
072    
073        /**
074         * Gets the identifier of the target to execute.
075         *
076         * @return The identifier of the target to execute or {@code null}.
077         */
078        public final String getTarget()
079        {
080            return this.target;
081        }
082    
083    }