[
https://issues.jboss.org/browse/JBIDE-19574?page=com.atlassian.jira.plugi...
]
Rob Stryker commented on JBIDE-19574:
-------------------------------------
Good call. I'll work on documenting that today. The short summary is that anyone
implementing an IDownloadRuntimesProvider using the
org.jboss.tools.runtime.core.downloadRuntimeProvider extension point, is tasked with
returning an array of DownloadRuntime objects. The provider is in charge of doing this on
their own (implementation-agnostic), though all current implementations use stacks to do
so. (Even Fuse / Karaf / etc use custom yaml files they bundle with their plugin to
re-use the stacks superclasses).
A new setter on DownloadRuntime allows clients to setInstallationMethod(string). In the
past we had only one method (extract), but now we have two (extract, jar).
"Extract" performs a simple unzip. "Jar" runs "java -jar
(file)" and waits for that process to complete.
So for anyone (like DV) who is trying to expose as a DownloadRuntime a jar file that
cannot be extracted but must be java -jar'd, their IDownloadRuntimesProvider should
set the installation method to "jar" before returning their array of
DownloadRuntime objects.
At this point, it's extremely unlikely anyone would need to actually implement the
runtimeInstaller extension point at all unless they'd like to implement some esoteric
usecase like downloading a java webstart file and launching that, or some type of weird
network install usecase. It might even be smart for me to mark that extension point as
internal currently until such a request is provided.
I'll still go ahead and document it, but, the tl;dr is that a
IDownloadRuntimesProvider will setInstallationMethod("jar") on any runtime that
must be java -jar'd to be installed properly. Extract is still the default case.
Add API so that downloaded runtimes can be installed via java -jar
command
--------------------------------------------------------------------------
Key: JBIDE-19574
URL:
https://issues.jboss.org/browse/JBIDE-19574
Project: Tools (JBoss Tools)
Issue Type: Sub-task
Components: runtime-detection, server
Affects Versions: 4.3.0.Alpha1
Reporter: Rob Stryker
Assignee: Rob Stryker
Fix For: 4.3.0.Alpha2
Runtime detection currently supports only 'extraction' as a method of
installation. It was recently expanded to include not just unzipping of jars, but also
extracting .tar.gz files / .tar files / etc. But there's still no API for completely
alternate methods of installation.
This JIRA should add an extension point for (basically the plumbing) to allow for
alternate installation types in general, as well as add a default java -jar installation
method as well.
It will be up to other runtimes (ie teiid etc) to USE this functionality in their own
products, but it is up to jbt-base to make sure it is feasible at the API level.
--
This message was sent by Atlassian JIRA
(v6.3.11#6341)