Java Code Examples for org.apache.tools.ant.taskdefs.Property#setProject()

The following examples show how to use org.apache.tools.ant.taskdefs.Property#setProject() . You can vote up the ones you like or vote down the ones you don't like, and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source File: ModuleListParser.java    From netbeans with Apache License 2.0 6 votes vote down vote up
private static void doScanSuite(Map<String,Entry> entries, File suite, Map<String,Object> properties, Project project) throws IOException {
    Project fakeproj = new Project();
    fakeproj.setBaseDir(suite); // in case ${basedir} is used somewhere
    Property faketask = new Property();
    faketask.setProject(fakeproj);
    faketask.setFile(new File(suite, "nbproject/private/private.properties".replace('/', File.separatorChar)));
    faketask.execute();
    faketask.setFile(new File(suite, "nbproject/project.properties".replace('/', File.separatorChar)));
    faketask.execute();
    String modulesS = fakeproj.getProperty("modules");
    if (modulesS == null) {
        throw new IOException("No definition of modules in " + suite);
    }
    String[] modules = Path.translatePath(fakeproj, modulesS);
    for (int i = 0; i < modules.length; i++) {
        File module = new File(modules[i]);
        if (!module.isDirectory()) {
            throw new IOException("No such module " + module + " referred to from " + suite);
        }
        if (!scanPossibleProject(module, entries, properties, null, ModuleType.SUITE, project, null)) {
            throw new IOException("No valid module found in " + module + " referred to from " + suite);
        }
    }
}
 
Example 2
Source File: IvyAntVariableContainer.java    From ant-ivy with Apache License 2.0 6 votes vote down vote up
/**
 * Updates the Ant Project used in this container with variables set in Ivy.
 *
 * All variables defined in Ivy will be set in the Ant project under two names:
 * <ul>
 * <li>the name of the variable</li>
 * <li>the name of the variable suffixed with a dot + the given id, if the given id is not null
 * </li>
 * </ul>
 *
 * @param id
 *            The identifier of the settings in which the variables have been set, which should
 *            be used as property names suffix
 */
public void updateProject(String id) {
    Map<String, String> r = new HashMap<>(super.getVariables());
    r.putAll(overwrittenProperties);
    for (Map.Entry<String, String> entry : r.entrySet()) {
        setPropertyIfNotSet(entry.getKey(), entry.getValue());
        if (id != null) {
            setPropertyIfNotSet(entry.getKey() + "." + id, entry.getValue());
        }
    }

    if (getEnvironmentPrefix() != null) {
        Property propTask = new Property();
        propTask.setProject(project);
        propTask.setEnvironment(getEnvironmentPrefix());
        propTask.init();
        propTask.execute();
    }
}
 
Example 3
Source File: IvyAntSettings.java    From ant-ivy with Apache License 2.0 4 votes vote down vote up
void createIvyEngine(final ProjectComponent task) {
    Project project = task.getProject();
    Property prop = new Property() {
        public void execute() throws BuildException {
            addProperties(getDefaultProperties(task));
        }
    };
    prop.setProject(project);
    prop.init();
    prop.execute();

    IvyAntVariableContainer ivyAntVariableContainer = new IvyAntVariableContainer(project);
    IvySettings settings = new IvySettings(ivyAntVariableContainer);
    settings.setBaseDir(project.getBaseDir());

    if (file == null && url == null) {
        defineDefaultSettingFile(ivyAntVariableContainer, task);
    }

    if (antWorkspaceResolver != null) {
        settings.addConfigured(antWorkspaceResolver.getResolver());
    }

    Ivy ivy = Ivy.newInstance(settings);
    try {
        ivy.pushContext();
        AntMessageLogger.register(task, ivy);

        Message.showInfo();
        configureURLHandler();
        if (file != null) {
            if (!file.exists()) {
                throw new BuildException("settings file does not exist: " + file);
            }
            ivy.configure(file);
        } else {
            if (url == null) {
                throw new AssertionError(
                        "ivy setting should have either a file, either an url,"
                                + " and if not defineDefaultSettingFile must set it.");
            }
            ivy.configure(url);
        }
        ivyAntVariableContainer.updateProject(id);
        ivyEngine = ivy;
    } catch (ParseException | IOException e) {
        throw new BuildException("impossible to configure ivy:settings with given "
                + (file != null ? "file: " + file : "url: " + url) + " : " + e, e);
    } finally {
        ivy.popContext();
    }
}