summaryrefslogtreecommitdiff
path: root/Tools/Java/Source/GenBuild/org/tianocore/build/global/VariableTask.java
blob: 021b8d5b00628e804eaaf217cbbd6c80b2f9b8e4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
/** @file
 * This file is ANT task VariableTask. 
 *
 * VariableTask task implements part of ANT property task. The difference is
 * this task will override variable with same name, but ANT property task do not.
 *
 * Copyright (c) 2006, Intel Corporation
 * All rights reserved. This program and the accompanying materials
 * are licensed and made available under the terms and conditions of the BSD License
 * which accompanies this distribution.  The full text of the license may be found at
 * http://opensource.org/licenses/bsd-license.php
 *
 * THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
 * WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
 */
package org.tianocore.build.global;

import org.apache.tools.ant.BuildException;
import org.apache.tools.ant.Task;

/**
 * VariableTask task implements part of ANT property task. The difference is
 * this task will override variable with same name, but ANT property task do not.
 * 
 * @since GenBuild 1.0
 */
public class VariableTask extends Task {

   /**
    * property value
    */
   private String value;
   
   /**
    * property name
    */
   private String name;

   /**
    * Set property name.
    *
    * @param name property name
    */
   public void setName( String name ) {
      this.name = name;
   }


   /**
    * Set property value.
    *
    * @param value  property value
    */
   public void setValue( String value ) {
      this.value = value;
   }

   /**
    * ANT task's entry point, will be called after init(). 
    *
    * @exception BuildException
    *            If name or value is null
    */
   public void execute() throws BuildException {
       if (name == null || value == null) {
           throw new BuildException("Name or value cannot be null.");
       }
       getProject().setProperty(name, value);
   }
}