blob: b1470acb4e698f74202a3fa54d8c16bf9a1fa3b7 [file] [log] [blame]
/*******************************************************************************
* Copyright (c) 2000, 2007 IBM Corporation and others.
* This program and the accompanying materials are made available under the
* terms of the Eclipse Public License v. 2.0 which is available at
* http://www.eclipse.org/legal/epl-2.0.
*
* SPDX-License-Identifier: EPL-2.0
*
*******************************************************************************/
package org.eclipse.dltk.internal.core;
import org.eclipse.core.resources.IResource;
import org.eclipse.core.resources.ResourcesPlugin;
import org.eclipse.dltk.core.DLTKCore;
import org.eclipse.dltk.core.IBuildpathEntry;
import org.eclipse.dltk.core.IModelElement;
import org.eclipse.dltk.core.ModelException;
public class ExternalScriptProject extends ScriptProject {
/*
* Note this name can be surfaced in the UI (see https://bugs.eclipse.org/bugs/show_bug.cgi?id=128258)
*/
public static final String EXTERNAL_PROJECT_NAME = " "; //$NON-NLS-1$
public ExternalScriptProject(IBuildpathEntry[] rawBuildpath) {
super(ResourcesPlugin.getWorkspace().getRoot().getProject(EXTERNAL_PROJECT_NAME), ModelManager.getModelManager().getModel());
try {
getPerProjectInfo().rawBuildpath = rawBuildpath;
} catch (ModelException e) {
// getPerProjectInfo() never throws ModelException for an ExternalScriptProject
}
}
@Override
public boolean equals(Object o) {
return this == o;
}
@Override
public boolean exists() {
// external project never exists
return false;
}
@Override
public String getOption(String optionName, boolean inheritDLTKCoreOptions) {
if(DLTKCore.DEBUG) {
System.err.println("ExternalScriptProject getOption should be corrected..."); //$NON-NLS-1$
}
// if (DLTKCore.COMPILER_PB_FORBIDDEN_REFERENCE.equals(optionName)
// || DLTKCore.COMPILER_PB_DISCOURAGED_REFERENCE.equals(optionName))
// return DLTKCore.IGNORE;
return super.getOption(optionName, inheritDLTKCoreOptions);
}
@Override
public boolean isOnBuildpath(IModelElement element) {
// since project is external, no element is on buildpath (see https://bugs.eclipse.org/bugs/show_bug.cgi?id=61013#c16)
return false;
}
@Override
public boolean isOnBuildpath(IResource resource) {
// since project is external, no resource is on buildpath (see https://bugs.eclipse.org/bugs/show_bug.cgi?id=61013#c16)
return false;
}
}