mirror of https://github.com/acidanthera/audk.git
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;
|
|
}
|
|
|
|
}
|