git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@3 6f19259b-4bc3-4df7-8a09-765794883524
		
			
				
	
	
		
			244 lines
		
	
	
		
			5.5 KiB
		
	
	
	
		
			Java
		
	
	
	
	
	
			
		
		
	
	
			244 lines
		
	
	
		
			5.5 KiB
		
	
	
	
		
			Java
		
	
	
	
	
	
/*
 | 
						|
 *
 | 
						|
 * Copyright 2004 The Ant-Contrib project
 | 
						|
 *
 | 
						|
 *  Licensed under the Apache License, Version 2.0 (the "License");
 | 
						|
 *  you may not use this file except in compliance with the License.
 | 
						|
 *  You may obtain a copy of the License at
 | 
						|
 *
 | 
						|
 *      http://www.apache.org/licenses/LICENSE-2.0
 | 
						|
 *
 | 
						|
 *  Unless required by applicable law or agreed to in writing, software
 | 
						|
 *  distributed under the License is distributed on an "AS IS" BASIS,
 | 
						|
 *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | 
						|
 *  See the License for the specific language governing permissions and
 | 
						|
 *  limitations under the License.
 | 
						|
 */
 | 
						|
package net.sf.antcontrib.cpptasks;
 | 
						|
 | 
						|
 | 
						|
import org.apache.tools.ant.types.DataType;
 | 
						|
import org.apache.tools.ant.types.Reference;
 | 
						|
import java.util.Vector;
 | 
						|
 | 
						|
/**
 | 
						|
 * Distributed build information (Non-functional prototype).
 | 
						|
 *
 | 
						|
 */
 | 
						|
public final class DistributerDef
 | 
						|
    extends DataType {
 | 
						|
  /**
 | 
						|
   * if property.
 | 
						|
   */
 | 
						|
  private String ifCond;
 | 
						|
 | 
						|
  /**
 | 
						|
   * unless property.
 | 
						|
   */
 | 
						|
  private String unlessCond;
 | 
						|
 | 
						|
  /**
 | 
						|
   * hosts.
 | 
						|
   *
 | 
						|
   */
 | 
						|
  private String hosts;
 | 
						|
 | 
						|
  /**
 | 
						|
   * Protocol.
 | 
						|
   *
 | 
						|
   */
 | 
						|
  private DistributerProtocolEnum protocol;
 | 
						|
 | 
						|
  /**
 | 
						|
   * Not sure what this is.
 | 
						|
   */
 | 
						|
  private int tcpCork;
 | 
						|
 | 
						|
  /**
 | 
						|
   * user name.
 | 
						|
   */
 | 
						|
  private String user;
 | 
						|
 | 
						|
  /**
 | 
						|
   *  local to remote file name maps.
 | 
						|
   */
 | 
						|
  private final Vector maps = new Vector();
 | 
						|
 | 
						|
  /**
 | 
						|
   * Constructor.
 | 
						|
   *
 | 
						|
   */
 | 
						|
  public DistributerDef() {
 | 
						|
  }
 | 
						|
 | 
						|
  /**
 | 
						|
   * Required by documentation generator.
 | 
						|
   */
 | 
						|
  public void execute() {
 | 
						|
    throw new org.apache.tools.ant.BuildException(
 | 
						|
        "Not an actual task, but looks like one for documentation purposes");
 | 
						|
  }
 | 
						|
 | 
						|
  /**
 | 
						|
   * Returns true if the if and unless conditions (if any) are
 | 
						|
   * satisfied.
 | 
						|
   * @return true if definition is active.
 | 
						|
   */
 | 
						|
  public boolean isActive() {
 | 
						|
    return CUtil.isActive(getProject(), ifCond, unlessCond);
 | 
						|
  }
 | 
						|
 | 
						|
  /**
 | 
						|
   * Sets an id that can be used to reference this element.
 | 
						|
   *
 | 
						|
   * @param id
 | 
						|
   *            id
 | 
						|
   */
 | 
						|
  public void setId(final String id) {
 | 
						|
    //
 | 
						|
    //  this is actually accomplished by a different
 | 
						|
    //     mechanism, but we can document it
 | 
						|
    //
 | 
						|
  }
 | 
						|
 | 
						|
  /**
 | 
						|
   * Sets the property name for the 'if' condition.
 | 
						|
   *
 | 
						|
   * The define will be ignored unless the property is defined.
 | 
						|
   *
 | 
						|
   * The value of the property is insignificant, but values that would imply
 | 
						|
   * misinterpretation ("false", "no") will throw an exception when
 | 
						|
   * evaluated.
 | 
						|
   *
 | 
						|
   * @param propName
 | 
						|
   *            property name
 | 
						|
   */
 | 
						|
  public void setIf(final String propName) {
 | 
						|
    ifCond = propName;
 | 
						|
  }
 | 
						|
 | 
						|
  /**
 | 
						|
   * Specifies that this element should behave as if the content of the
 | 
						|
   * element with the matching id attribute was inserted at this location. If
 | 
						|
   * specified, no other attributes should be specified.
 | 
						|
   * @param r reference name
 | 
						|
   */
 | 
						|
  public void setRefid(final Reference r)  {
 | 
						|
    super.setRefid(r);
 | 
						|
  }
 | 
						|
 | 
						|
  /**
 | 
						|
   * Set the property name for the 'unless' condition.
 | 
						|
   *
 | 
						|
   * If named property is set, the define will be ignored.
 | 
						|
   *
 | 
						|
   * The value of the property is insignificant, but values that would imply
 | 
						|
   * misinterpretation ("false", "no") of the behavior will throw an
 | 
						|
   * exception when evaluated.
 | 
						|
   *
 | 
						|
   * @param propName
 | 
						|
   *            name of property
 | 
						|
   */
 | 
						|
  public void setUnless(final String propName) {
 | 
						|
    unlessCond = propName;
 | 
						|
  }
 | 
						|
 | 
						|
  /**
 | 
						|
   * Gets hosts.
 | 
						|
   * @return hosts, may be null.
 | 
						|
   *
 | 
						|
   */
 | 
						|
  public String getHosts() {
 | 
						|
    if (isReference()) {
 | 
						|
      DistributerDef refDistributer = (DistributerDef)
 | 
						|
          getCheckedRef(DistributerDef.class,
 | 
						|
                        "DistributerDef");
 | 
						|
      return refDistributer.getHosts();
 | 
						|
    }
 | 
						|
    return hosts;
 | 
						|
  }
 | 
						|
 | 
						|
  /**
 | 
						|
   * Gets tcp cork.
 | 
						|
   * @return TCP_CORK value.
 | 
						|
   *
 | 
						|
   */
 | 
						|
  public int getTcpcork() {
 | 
						|
    if (isReference()) {
 | 
						|
      DistributerDef refDistributer = (DistributerDef)
 | 
						|
          getCheckedRef(DistributerDef.class,
 | 
						|
                        "DistributerDef");
 | 
						|
      return refDistributer.getTcpcork();
 | 
						|
    }
 | 
						|
    return tcpCork;
 | 
						|
  }
 | 
						|
 | 
						|
  /**
 | 
						|
   * Gets protocol.
 | 
						|
   * @return protocol, may be null.
 | 
						|
   *
 | 
						|
   */
 | 
						|
  public DistributerProtocolEnum getProtocol() {
 | 
						|
    if (isReference()) {
 | 
						|
      DistributerDef refDistributer = (DistributerDef)
 | 
						|
          getCheckedRef(DistributerDef.class,
 | 
						|
                        "DistributerDef");
 | 
						|
      return refDistributer.getProtocol();
 | 
						|
    }
 | 
						|
    return protocol;
 | 
						|
  }
 | 
						|
 | 
						|
  /**
 | 
						|
   * Sets hosts.
 | 
						|
   * @param value new value
 | 
						|
   */
 | 
						|
  public void setHosts(final String value) {
 | 
						|
    if (isReference()) {
 | 
						|
      throw tooManyAttributes();
 | 
						|
    }
 | 
						|
    hosts = value;
 | 
						|
  }
 | 
						|
 | 
						|
  /**
 | 
						|
   * Sets TCP_CORK value.
 | 
						|
   * @param value new value
 | 
						|
   */
 | 
						|
  public void setTcpcork(final int value) {
 | 
						|
    if (isReference()) {
 | 
						|
      throw tooManyAttributes();
 | 
						|
    }
 | 
						|
    tcpCork = value;
 | 
						|
  }
 | 
						|
 | 
						|
  /**
 | 
						|
   * Sets protocol.
 | 
						|
   * @param value new value
 | 
						|
   */
 | 
						|
  public void setProtocol(final DistributerProtocolEnum value) {
 | 
						|
    if (isReference()) {
 | 
						|
      throw tooManyAttributes();
 | 
						|
    }
 | 
						|
    protocol = value;
 | 
						|
  }
 | 
						|
 | 
						|
  /**
 | 
						|
   *  Local to remote filename maps.
 | 
						|
   * @return new map
 | 
						|
   */
 | 
						|
  public DistributerMap createMap() {
 | 
						|
    DistributerMap map = new DistributerMap();
 | 
						|
    map.setProject(getProject());
 | 
						|
    maps.addElement(map);
 | 
						|
    return map;
 | 
						|
  }
 | 
						|
 | 
						|
  /**
 | 
						|
   *  Sets remote user name.
 | 
						|
   * @param value user name
 | 
						|
   */
 | 
						|
  public void setUser(final String value) {
 | 
						|
    user = value;
 | 
						|
  }
 | 
						|
 | 
						|
}
 |