本文整理汇总了Java中com.intellij.ide.browsers.OpenInBrowserRequest类的典型用法代码示例。如果您正苦于以下问题:Java OpenInBrowserRequest类的具体用法?Java OpenInBrowserRequest怎么用?Java OpenInBrowserRequest使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
OpenInBrowserRequest类属于com.intellij.ide.browsers包,在下文中一共展示了OpenInBrowserRequest类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。
示例1: getUrlsToOpen
import com.intellij.ide.browsers.OpenInBrowserRequest; //导入依赖的package包/类
@NotNull
@Override
public Collection<Url> getUrlsToOpen(@NotNull OpenInBrowserRequest request, boolean preferLocalUrl) throws WebBrowserUrlProvider.BrowserException {
boolean isHtmlOrXml = isHtmlOrXmlFile(request.getFile().getViewProvider().getBaseLanguage());
if (!preferLocalUrl || !isHtmlOrXml) {
DumbService dumbService = DumbService.getInstance(request.getProject());
for (WebBrowserUrlProvider urlProvider : WebBrowserUrlProvider.EP_NAME.getExtensions()) {
if ((!dumbService.isDumb() || DumbService.isDumbAware(urlProvider)) && urlProvider.canHandleElement(request)) {
Collection<Url> urls = getUrls(urlProvider, request);
if (!urls.isEmpty()) {
return urls;
}
}
}
if (!isHtmlOrXml) {
return Collections.emptyList();
}
}
VirtualFile file = request.getVirtualFile();
return file instanceof LightVirtualFile || !request.getFile().getViewProvider().isPhysical()
? Collections.<Url>emptyList()
: Collections.singletonList(Urls.newFromVirtualFile(file));
}
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:26,代码来源:WebBrowserServiceImpl.java
示例2: getUrls
import com.intellij.ide.browsers.OpenInBrowserRequest; //导入依赖的package包/类
@NotNull
private static Collection<Url> getUrls(@Nullable WebBrowserUrlProvider provider, @NotNull OpenInBrowserRequest request) throws WebBrowserUrlProvider.BrowserException {
if (provider != null) {
if (request.getResult() != null) {
return request.getResult();
}
try {
return provider.getUrls(request);
}
catch (WebBrowserUrlProvider.BrowserException e) {
if (!HtmlUtil.isHtmlFile(request.getFile())) {
throw e;
}
}
}
return Collections.emptyList();
}
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:19,代码来源:WebBrowserServiceImpl.java
示例3: previewUrl
import com.intellij.ide.browsers.OpenInBrowserRequest; //导入依赖的package包/类
@Nullable
private Url previewUrl(OpenInBrowserRequest request, VirtualFile virtualFile, GaugeSettingsModel settings) throws IOException, InterruptedException {
ProcessBuilder builder = new ProcessBuilder(settings.getGaugePath(), Constants.DOCS, Spectacle.NAME, virtualFile.getPath());
String projectName = request.getProject().getName();
builder.environment().put("spectacle_out_dir", createOrGetTempDirectory(projectName).getPath() + "/docs");
builder.directory(GaugeUtil.moduleDir(GaugeUtil.moduleForPsiElement(request.getFile())));
GaugeUtil.setGaugeEnvironmentsTo(builder, settings);
Process docsProcess = builder.start();
int exitCode = docsProcess.waitFor();
if (exitCode != 0) {
String docsOutput = String.format("<pre>%s</pre>", GaugeUtil.getOutput(docsProcess.getInputStream(), " ").replace("<", "<").replace(">", ">"));
Notifications.Bus.notify(new Notification("Specification Preview", "Error: Specification Preview", docsOutput, NotificationType.ERROR));
return null;
}
return new UrlImpl(FileUtil.join(createOrGetTempDirectory(projectName).getPath(), "docs/html/specs/" + virtualFile.getNameWithoutExtension() + ".html"));
}
开发者ID:getgauge,项目名称:Intellij-Plugin,代码行数:17,代码来源:GaugeWebBrowserPreview.java
示例4: doUpdate
import com.intellij.ide.browsers.OpenInBrowserRequest; //导入依赖的package包/类
@Nullable
public static Pair<OpenInBrowserRequest, WebBrowserUrlProvider> doUpdate(@NotNull AnActionEvent event)
{
OpenInBrowserRequest request = createRequest(event.getDataContext());
boolean applicable = false;
WebBrowserUrlProvider provider = null;
if(request != null)
{
applicable = HtmlUtil.isHtmlFile(request.getFile()) && !(request.getVirtualFile() instanceof LightVirtualFile);
if(!applicable)
{
provider = WebBrowserServiceImpl.getProvider(request);
applicable = provider != null;
}
}
event.getPresentation().setEnabledAndVisible(applicable);
return applicable ? Pair.create(request, provider) : null;
}
开发者ID:consulo,项目名称:consulo-xml,代码行数:20,代码来源:BaseOpenInBrowserAction.java
示例5: canSelect
import com.intellij.ide.browsers.OpenInBrowserRequest; //导入依赖的package包/类
@Override
public boolean canSelect(SelectInContext context)
{
Object selectorInFile = context.getSelectorInFile();
OpenInBrowserRequest request = selectorInFile instanceof PsiElement ? OpenInBrowserRequest.create((PsiElement) selectorInFile) : null;
if(request == null)
{
return false;
}
WebBrowserUrlProvider urlProvider = WebBrowserServiceImpl.getProvider(request);
if(urlProvider == null)
{
VirtualFile virtualFile = request.getVirtualFile();
return virtualFile instanceof HttpVirtualFile || (HtmlUtil.isHtmlFile(request.getFile()) && !(virtualFile instanceof LightVirtualFile));
}
return true;
}
开发者ID:consulo,项目名称:consulo-xml,代码行数:19,代码来源:SelectInDefaultBrowserTarget.java
示例6: getUrl
import com.intellij.ide.browsers.OpenInBrowserRequest; //导入依赖的package包/类
@Nullable
@Override
protected Url getUrl(@NotNull OpenInBrowserRequest request, @NotNull VirtualFile file) throws BrowserException {
SwaggerFileService swaggerFileService = ServiceManager.getService(SwaggerFileService.class);
Optional<Path> swaggerHTMLFolder = swaggerFileService.convertSwaggerToHtml(request.getFile());
return swaggerHTMLFolder
.map(SwaggerFilesUtils::convertSwaggerLocationToUrl)
.orElse(null);
}
开发者ID:zalando,项目名称:intellij-swagger,代码行数:11,代码来源:SwaggerUiUrlProvider.java
示例7: canHandleElement
import com.intellij.ide.browsers.OpenInBrowserRequest; //导入依赖的package包/类
@Override
public boolean canHandleElement(@NotNull OpenInBrowserRequest request) {
if (request.getVirtualFile() instanceof HttpVirtualFile) {
return true;
}
// we must use base language because we serve file - not part of file, but the whole file
// handlebars, for example, contains HTML and HBS psi trees, so, regardless of context, we should not handle such file
FileViewProvider viewProvider = request.getFile().getViewProvider();
return viewProvider.isPhysical() &&
!(request.getVirtualFile() instanceof LightVirtualFile) &&
isMyLanguage(viewProvider.getBaseLanguage());
}
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:14,代码来源:BuiltInWebBrowserUrlProvider.java
示例8: getUrl
import com.intellij.ide.browsers.OpenInBrowserRequest; //导入依赖的package包/类
@Nullable
@Override
protected Url getUrl(@NotNull OpenInBrowserRequest request, @NotNull VirtualFile file) throws BrowserException {
if (file instanceof HttpVirtualFile) {
return Urls.newFromVirtualFile(file);
}
else {
return ContainerUtil.getFirstItem(getUrls(file, request.getProject(), null));
}
}
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:11,代码来源:BuiltInWebBrowserUrlProvider.java
示例9: canSelect
import com.intellij.ide.browsers.OpenInBrowserRequest; //导入依赖的package包/类
@Override
public boolean canSelect(SelectInContext context) {
Object selectorInFile = context.getSelectorInFile();
OpenInBrowserRequest request = selectorInFile instanceof PsiElement ? OpenInBrowserRequest.create((PsiElement)selectorInFile) : null;
if (request == null) {
return false;
}
WebBrowserUrlProvider urlProvider = WebBrowserServiceImpl.getProvider(request);
if (urlProvider == null) {
VirtualFile virtualFile = request.getVirtualFile();
return virtualFile instanceof HttpVirtualFile || (HtmlUtil.isHtmlFile(request.getFile()) && !(virtualFile instanceof LightVirtualFile));
}
return true;
}
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:16,代码来源:SelectInDefaultBrowserTarget.java
示例10: getProvider
import com.intellij.ide.browsers.OpenInBrowserRequest; //导入依赖的package包/类
@Nullable
public static WebBrowserUrlProvider getProvider(@NotNull OpenInBrowserRequest request) {
DumbService dumbService = DumbService.getInstance(request.getProject());
for (WebBrowserUrlProvider urlProvider : WebBrowserUrlProvider.EP_NAME.getExtensions()) {
if ((!dumbService.isDumb() || DumbService.isDumbAware(urlProvider)) && urlProvider.canHandleElement(request)) {
return urlProvider;
}
}
return null;
}
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:11,代码来源:WebBrowserServiceImpl.java
示例11: getDebuggableUrls
import com.intellij.ide.browsers.OpenInBrowserRequest; //导入依赖的package包/类
@NotNull
public static Collection<Url> getDebuggableUrls(@Nullable PsiElement context) {
try {
OpenInBrowserRequest request = context == null ? null : OpenInBrowserRequest.create(context);
return request == null || request.getFile().getViewProvider().getBaseLanguage() == XMLLanguage.INSTANCE ? Collections.<Url>emptyList() : getUrls(getProvider(request), request);
}
catch (WebBrowserUrlProvider.BrowserException ignored) {
return Collections.emptyList();
}
}
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:11,代码来源:WebBrowserServiceImpl.java
示例12: getUrl
import com.intellij.ide.browsers.OpenInBrowserRequest; //导入依赖的package包/类
@Nullable
@Override
protected Url getUrl(OpenInBrowserRequest request, VirtualFile virtualFile) throws BrowserException {
try {
GaugeSettingsModel settings = getGaugeSettings();
Spectacle spectacle = new Spectacle(request.getProject(), settings);
if (spectacle.isInstalled())
return previewUrl(request, virtualFile, settings);
spectacle.notifyToInstall();
} catch (Exception e) {
Messages.showWarningDialog(String.format("Unable to create html file for %s", virtualFile.getName()), "Error");
}
return null;
}
开发者ID:getgauge,项目名称:Intellij-Plugin,代码行数:15,代码来源:GaugeWebBrowserPreview.java
示例13: canHandleElement
import com.intellij.ide.browsers.OpenInBrowserRequest; //导入依赖的package包/类
@Override
public boolean canHandleElement(OpenInBrowserRequest request) {
if(request.getFile().getFileType() instanceof AsciiDocFileType) {
return true;
}
return super.canHandleElement(request);
}
开发者ID:asciidoctor,项目名称:asciidoctor-intellij-plugin,代码行数:9,代码来源:AsciiDocBrowserUrlProvider.java
示例14: update
import com.intellij.ide.browsers.OpenInBrowserRequest; //导入依赖的package包/类
@Override
public final void update(AnActionEvent e)
{
WebBrowser browser = getBrowser(e);
if(browser == null)
{
e.getPresentation().setEnabledAndVisible(false);
return;
}
Pair<OpenInBrowserRequest, WebBrowserUrlProvider> result = doUpdate(e);
if(result == null)
{
return;
}
String description = getTemplatePresentation().getText();
if(ActionPlaces.CONTEXT_TOOLBAR.equals(e.getPlace()))
{
StringBuilder builder = new StringBuilder(description);
builder.append(" (");
Shortcut[] shortcuts = KeymapManager.getInstance().getActiveKeymap().getShortcuts("WebOpenInAction");
boolean exists = shortcuts.length > 0;
if(exists)
{
builder.append(KeymapUtil.getShortcutText(shortcuts[0]));
}
if(HtmlUtil.isHtmlFile(result.first.getFile()))
{
builder.append(exists ? ", " : "").append("hold Shift to open URL of local file");
}
builder.append(')');
description = builder.toString();
}
e.getPresentation().setText(description);
}
开发者ID:consulo,项目名称:consulo-xml,代码行数:38,代码来源:BaseOpenInBrowserAction.java
示例15: selectIn
import com.intellij.ide.browsers.OpenInBrowserRequest; //导入依赖的package包/类
@Override
public void selectIn(SelectInContext context, boolean requestFocus)
{
PsiElement element = (PsiElement) context.getSelectorInFile();
LOG.assertTrue(element != null);
BaseOpenInBrowserAction.open(OpenInBrowserRequest.create(element), false, null);
}
开发者ID:consulo,项目名称:consulo-xml,代码行数:8,代码来源:SelectInDefaultBrowserTarget.java
示例16: getUrlsToOpen
import com.intellij.ide.browsers.OpenInBrowserRequest; //导入依赖的package包/类
@NotNull
@Override
public Collection<Url> getUrlsToOpen(@NotNull OpenInBrowserRequest request, boolean preferLocalUrl) throws WebBrowserUrlProvider.BrowserException
{
VirtualFile virtualFile = request.getVirtualFile();
if(virtualFile instanceof HttpVirtualFile)
{
return Collections.singleton(Urls.newFromVirtualFile(virtualFile));
}
if(!preferLocalUrl || !HtmlUtil.isHtmlFile(request.getFile()))
{
WebBrowserUrlProvider provider = getProvider(request);
if(provider != null)
{
if(request.getResult() != null)
{
return request.getResult();
}
try
{
Collection<Url> urls = provider.getUrls(request);
if(!urls.isEmpty())
{
return urls;
}
}
catch(WebBrowserUrlProvider.BrowserException e)
{
if(!HtmlUtil.isHtmlFile(request.getFile()))
{
throw e;
}
}
}
}
return virtualFile instanceof LightVirtualFile || !request.getFile().getViewProvider().isPhysical() ? Collections.<Url>emptySet() :
Collections.singleton(Urls.newFromVirtualFile(virtualFile));
}
开发者ID:consulo,项目名称:consulo-xml,代码行数:41,代码来源:WebBrowserServiceImpl.java
示例17: getProvider
import com.intellij.ide.browsers.OpenInBrowserRequest; //导入依赖的package包/类
@Nullable
public static WebBrowserUrlProvider getProvider(@NotNull OpenInBrowserRequest request)
{
DumbService dumbService = DumbService.getInstance(request.getProject());
for(WebBrowserUrlProvider urlProvider : WebBrowserUrlProvider.EP_NAME.getExtensions())
{
if((!dumbService.isDumb() || DumbService.isDumbAware(urlProvider)) && urlProvider.canHandleElement(request))
{
return urlProvider;
}
}
return null;
}
开发者ID:consulo,项目名称:consulo-xml,代码行数:14,代码来源:WebBrowserServiceImpl.java
示例18: canHandleElement
import com.intellij.ide.browsers.OpenInBrowserRequest; //导入依赖的package包/类
@Override
public boolean canHandleElement(@NotNull OpenInBrowserRequest request) {
final PsiFile file = request.getFile();
return fileDetector.isMainSwaggerFile(file) || fileDetector.isMainOpenApiFile(file);
}
开发者ID:zalando,项目名称:intellij-swagger,代码行数:6,代码来源:SwaggerUiUrlProvider.java
示例19: selectIn
import com.intellij.ide.browsers.OpenInBrowserRequest; //导入依赖的package包/类
@Override
public void selectIn(SelectInContext context, boolean requestFocus) {
PsiElement element = (PsiElement)context.getSelectorInFile();
LOG.assertTrue(element != null);
BaseOpenInBrowserAction.open(OpenInBrowserRequest.create(element), false, null);
}
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:7,代码来源:SelectInDefaultBrowserTarget.java
示例20: canHandleElement
import com.intellij.ide.browsers.OpenInBrowserRequest; //导入依赖的package包/类
@Override
public boolean canHandleElement(OpenInBrowserRequest request) {
FileType fileType = request.getFile().getFileType();
return fileType instanceof SpecFileType || fileType instanceof ConceptFileType;
}
开发者ID:getgauge,项目名称:Intellij-Plugin,代码行数:6,代码来源:GaugeWebBrowserPreview.java
注:本文中的com.intellij.ide.browsers.OpenInBrowserRequest类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论