本文整理汇总了Java中com.intellij.openapi.application.JetBrainsProtocolHandler类的典型用法代码示例。如果您正苦于以下问题:Java JetBrainsProtocolHandler类的具体用法?Java JetBrainsProtocolHandler怎么用?Java JetBrainsProtocolHandler使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
JetBrainsProtocolHandler类属于com.intellij.openapi.application包,在下文中一共展示了JetBrainsProtocolHandler类的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: execute
import com.intellij.openapi.application.JetBrainsProtocolHandler; //导入依赖的package包/类
@Nullable
@Override
public String execute(@NotNull QueryStringDecoder urlDecoder, @NotNull FullHttpRequest request, @NotNull ChannelHandlerContext context) throws IOException {
final JsonReader reader = createJsonReader(request);
reader.beginObject();
final String name = reader.nextName();
final String url = reader.nextString();
reader.endObject();
if (URL_PARAM_NAME.equals(name) && url != null && url.startsWith(JetBrainsProtocolHandler.PROTOCOL)) {
JetBrainsProtocolHandler.processJetBrainsLauncherParameters(url);
ApplicationManager.getApplication().invokeLater(new Runnable() {
@Override
public void run() {
JBProtocolCommand.handleCurrentCommand();
}
}, ModalityState.any());
}
sendOk(request, context);
return null;
}
示例2: checkForJetBrainsProtocolCommand
import com.intellij.openapi.application.JetBrainsProtocolHandler; //导入依赖的package包/类
private static String[] checkForJetBrainsProtocolCommand(String[] args) {
final String jbUrl = System.getProperty(JetBrainsProtocolHandler.class.getName());
if (jbUrl != null) {
return new String[]{jbUrl};
}
return args;
}
示例3: getState
import com.intellij.openapi.application.JetBrainsProtocolHandler; //导入依赖的package包/类
/**
* Plugin jar has been previously created via blaze build. This method: - copies jar to sandbox
* environment - cracks open jar and finds plugin.xml (with ID, etc., needed for JVM args) - sets
* up the SDK, etc. (use project SDK?) - sets up the JVM, and returns a JavaCommandLineState
*/
@Nullable
@Override
public RunProfileState getState(Executor executor, ExecutionEnvironment env)
throws ExecutionException {
final Sdk ideaJdk = pluginSdk;
if (!IdeaJdkHelper.isIdeaJdk(ideaJdk)) {
throw new ExecutionException("Choose an IntelliJ Platform Plugin SDK");
}
String sandboxHome = IdeaJdkHelper.getSandboxHome(ideaJdk);
if (sandboxHome == null) {
throw new ExecutionException("No sandbox specified for IntelliJ Platform Plugin SDK");
}
try {
sandboxHome = new File(sandboxHome).getCanonicalPath();
} catch (IOException e) {
throw new ExecutionException("No sandbox specified for IntelliJ Platform Plugin SDK");
}
String buildNumber = IdeaJdkHelper.getBuildNumber(ideaJdk);
final BlazeIntellijPluginDeployer deployer =
new BlazeIntellijPluginDeployer(sandboxHome, buildNumber, getTarget());
env.putUserData(BlazeIntellijPluginDeployer.USER_DATA_KEY, deployer);
// copy license from running instance of idea
IdeaJdkHelper.copyIDEALicense(sandboxHome);
return new JavaCommandLineState(env) {
@Override
protected JavaParameters createJavaParameters() throws ExecutionException {
List<String> pluginIds = deployer.deployNonBlocking();
final JavaParameters params = new JavaParameters();
ParametersList vm = params.getVMParametersList();
fillParameterList(vm, vmParameters);
fillParameterList(params.getProgramParametersList(), programParameters);
IntellijWithPluginClasspathHelper.addRequiredVmParams(params, ideaJdk);
vm.defineProperty(
JetBrainsProtocolHandler.REQUIRED_PLUGINS_KEY, Joiner.on(',').join(pluginIds));
if (!vm.hasProperty(PlatformUtils.PLATFORM_PREFIX_KEY) && buildNumber != null) {
String prefix = IdeaJdkHelper.getPlatformPrefix(buildNumber);
if (prefix != null) {
vm.defineProperty(PlatformUtils.PLATFORM_PREFIX_KEY, prefix);
}
}
return params;
}
@Override
protected OSProcessHandler startProcess() throws ExecutionException {
deployer.blockUntilDeployComplete();
final OSProcessHandler handler = super.startProcess();
handler.addProcessListener(
new ProcessAdapter() {
@Override
public void processTerminated(ProcessEvent event) {
deployer.deleteDeployment();
}
});
return handler;
}
};
}
示例4: isShutdownCommand
import com.intellij.openapi.application.JetBrainsProtocolHandler; //导入依赖的package包/类
private static boolean isShutdownCommand() {
return "shutdown".equals(JetBrainsProtocolHandler.getCommand());
}