/*
* Copyright 2013 Guidewire Software, Inc.
*/
package gw.plugin.ij.core;
import com.intellij.openapi.application.ApplicationManager;
import com.intellij.openapi.project.Project;
import com.intellij.openapi.util.Key;
import gw.lang.reflect.module.IProject;
import org.jetbrains.annotations.NotNull;
/**
*/
public class IjProject implements IProject {
public static final Key<String> GW_SHADOW_MODE = Key.create("gw.shadowMode");
private final Project _project;
public IjProject( Project project ) {
_project = project;
}
@NotNull
@Override
public String getName() {
return _project.getName();
}
@Override
public Object getNativeProject() {
return _project;
}
@Override
public boolean isDisposed() {
return _project.isDisposed();
}
@Override
public boolean isHeadless() {
return ApplicationManager.getApplication().isHeadlessEnvironment();
}
@Override
public String toString() {
return _project.toString();
}
@Override
public boolean isShadowMode() {
return Boolean.valueOf(_project.getUserData(GW_SHADOW_MODE));
}
}