package net.bitpot.railways.models.routes; import com.intellij.openapi.module.Module; import net.bitpot.railways.gui.RailwaysIcons; import net.bitpot.railways.models.Route; import net.bitpot.railways.models.requestMethods.RequestMethod; import net.bitpot.railways.utils.RailwaysPsiUtils; import net.bitpot.railways.utils.RailwaysUtils; import org.jetbrains.plugins.ruby.ruby.lang.psi.holders.RContainer; import javax.swing.*; /** * @author Basil Gren * on 14.12.2014. */ public class EngineRoute extends Route { private String engineClass; public EngineRoute(Module myModule, RequestMethod requestMethod, String routePath, String routeName, String engineClass) { super(myModule, requestMethod, routePath, routeName); this.engineClass = engineClass; } @Override public String getQualifiedActionTitle() { return engineClass; } @Override public Icon getActionIcon() { return RailwaysIcons.NODE_MOUNTED_ENGINE; } @Override public void navigate(boolean requestFocus) { RContainer container = RailwaysPsiUtils. findClassOrModule(engineClass, getModule().getProject()); if (container != null) container.navigate(requestFocus); } }