Package com.dubture.composer.core.util

Source Code of com.dubture.composer.core.util.BuildpathUtil

package com.dubture.composer.core.util;

import java.util.ArrayList;
import java.util.List;

import org.eclipse.core.resources.IProject;
import org.eclipse.core.runtime.IPath;
import org.eclipse.core.runtime.IProgressMonitor;
import org.eclipse.core.runtime.Path;
import org.eclipse.dltk.core.DLTKCore;
import org.eclipse.dltk.core.IAccessRule;
import org.eclipse.dltk.core.IBuildpathAttribute;
import org.eclipse.dltk.core.IBuildpathEntry;
import org.eclipse.dltk.core.IScriptProject;
import org.eclipse.dltk.core.ModelException;
import org.eclipse.php.internal.core.buildpath.BuildPathUtils;

@SuppressWarnings("restriction")
public class BuildpathUtil
{
   
    public static void setupVendorBuildpath(IScriptProject scriptProject, IProgressMonitor progress) throws ModelException
    {
        IProject project = scriptProject.getProject();
        IPath composerPath = project.getFullPath().append("vendor");
        IBuildpathEntry[] rawBuildpath = scriptProject.getRawBuildpath();
        progress.setTaskName("Setting vendor buildpath...");

        for (IBuildpathEntry entry : rawBuildpath) {
            if (entry.getPath().equals(composerPath)) {
                BuildPathUtils.removeEntryFromBuildPath(scriptProject, entry);
            }
        }
       
        BuildPathUtils.addEntriesToBuildPath(scriptProject, getVendorEntries(composerPath));
        progress.worked(1);
    }
   
    protected static List<IBuildpathEntry> getVendorEntries(IPath composerPath)
    {
       
        IPath[] include = new IPath[]{new Path("composer/*")};
        IBuildpathAttribute[] attributes = new IBuildpathAttribute[0];
        IPath[] exclude = new IPath[0];
        IBuildpathEntry vendorEntry = DLTKCore.newBuiltinEntry(
                composerPath, new IAccessRule[0], attributes,
                include, exclude, false, false);
        List<IBuildpathEntry> vendorEntries = new ArrayList<IBuildpathEntry>();
        vendorEntries.add(vendorEntry);
       
        return vendorEntries;
       
    }
}
TOP

Related Classes of com.dubture.composer.core.util.BuildpathUtil

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.