package com.cedricziel.idea.typo3;
import com.cedricziel.idea.typo3.container.IconProvider;
import com.intellij.openapi.application.ApplicationManager;
import com.intellij.openapi.components.ProjectComponent;
import com.intellij.openapi.diagnostic.Logger;
import com.intellij.openapi.project.Project;
import org.jetbrains.annotations.NotNull;
public class TYPO3CMSProjectComponent implements ProjectComponent {
private static final Logger LOG = Logger.getInstance("TYPO3-CMS-Plugin");
private Project project;
public TYPO3CMSProjectComponent(Project project) {
this.project = project;
}
@Override
public void initComponent() {
}
@Override
public void disposeComponent() {
}
@Override
@NotNull
public String getComponentName() {
return "com.cedricziel.idea.typo3.TYPO3CMSProjectComponent";
}
@Override
public void projectOpened() {
Project ref = this.project;
ApplicationManager.getApplication().executeOnPooledThread(() -> ApplicationManager.getApplication().runReadAction(() -> {
IconProvider.getInstance(ref);
}));
}
@Override
public void projectClosed() {
IconProvider.destroyInstance(project);
}
public static Logger getLogger() {
return LOG;
}
}