Introduction
This document lists changes made to the Execution API.
Index of APIs
Incompatible changes by date
Fuller descriptions of all changes can be found below (follow links).
Not all deprecations are listed here, assuming that the deprecated APIs continue to essentially work.
For a full deprecation list, please consult the Javadoc.
-
(Jan 20 '12)
NbClassLoader(FileObject[], ...)
does not throwFileStateInvalidException
-
(Mar 16 '04) Execution of
Startup
folder removed -
(Mar 16 '04)
NbClassLoader
constructors deprecated - (Mar 16 '04) Execution API split into deprecated and nondeprecated halves
All changes by date
-
(Jan 20 '12)
NbClassLoader(FileObject[], ...)
does not throwFileStateInvalidException
- (Jul 19 '06) No need to require ExecutionEngine token anymore
-
(Mar 16 '04) Execution of
Startup
folder removed -
(Mar 16 '04)
NbClassLoader
constructors deprecated - (Mar 16 '04) Execution API split into deprecated and nondeprecated halves
Changes by version
These API specification versions may be used to indicate that a module requires a certain API feature in order to function. For example, if you see here a feature you need which is labelled 1.20, your manifest should contain in its main attributes the line:
OpenIDE-Module-Module-Dependencies: org.openide.execution > 1.20
-
(1.26)
NbClassLoader(FileObject[], ...)
does not throwFileStateInvalidException
- (1.10) No need to require ExecutionEngine token anymore
-
(1.2) Execution of
Startup
folder removed -
(1.2)
NbClassLoader
constructors deprecated - (1.2) Execution API split into deprecated and nondeprecated halves
Changes by affected class
org.openide.cookies.ArgumentsCookie
org.openide.cookies.ExecCookie
org.openide.execution.ExecInfo
org.openide.actions.ExecuteAction
org.openide.execution.ExecutionEngine
- (Jul 19 '06) No need to require ExecutionEngine token anymore
org.openide.loaders.ExecutionSupport
org.openide.execution.Executor
org.openide.execution.ExecutorType
org.openide.execution.NbClassLoader
-
(Jan 20 '12)
NbClassLoader(FileObject[], ...)
does not throwFileStateInvalidException
-
(Mar 16 '04)
NbClassLoader
constructors deprecated
org.openide.execution.NbfsStreamHandlerFactory
org.openide.execution.NbfsURLConnection
org.openide.execution.ProcessExecutor
org.openide.execution.ThreadExecutor
Details of all changes by API and date
Execution API
NbClassLoader(FileObject[], ...)
does not throw FileStateInvalidException
Jan 20 '12; API spec. version: 1.26; affected top-level classes: NbClassLoader
; made by: jglick; issues:
#207294
NbClassLoader(FileObject[], ClassLoader, InputOutput)
does not throw FileStateInvalidException
any more.
Compatibility:
No NbClassLoader
constructor throws FileStateInvalidException
any longer,
which can cause some existing source code to not compile.
Binary-compatible
No need to require ExecutionEngine token anymore
Jul 19 '06; API spec. version: 1.10; affected top-level classes:ExecutionEngine
; made by: jtulach; issues:
#34699
If your module depends on org.openide.execution > 1.9
or higher
there is no need to specify that it also requires an implementation of
the API by use of OpenIDE-Module-Requires: org.openide.execution.ExecutionEngine
,
this token will be requested automatically by the org.openide.execution
module itself.
Execution of Startup
folder removed
Mar 16 '04; API spec. version: 1.2; made by: jglick
Previously it was possible to place objects with an
ExecCookie
into the Startup
folder
of the system filesystem, and they would be run during
startup.
In NetBeans 4.0 there is no such cookie any more, and that
old style of execution is no longer supported. Modules may
continue to use ModuleInstall.restored
for
startup hooks, possibly providing special modes for user
customization, but there is no generic infrastructure for
this.
Compatibility:
There is no direct equivalent in NetBeans 4.0.
NbClassLoader
constructors deprecated
Mar 16 '04; API spec. version: 1.2; affected top-level classes: NbClassLoader
; made by: jglick
All of the existing constructors of
NbClassLoader
were deprecated since they used
Filesystems to refer to the classpath; one new classpath-safe
constructor was added instead.
For similar reasons, a number of static methods in the class were deprecated as well.
Compatibility:
Old constructors continue to behave as before but that behavior is unlikely to be useful in NetBeans 4.0.
Execution API split into deprecated and nondeprecated halves
Mar 16 '04; API spec. version: 1.2; affected top-level classes:org.openide.actions.ExecuteAction
org.openide.cookies.ArgumentsCookie
org.openide.cookies.ExecCookie
org.openide.execution.ExecInfo
org.openide.execution.Executor
org.openide.execution.ExecutorType
org.openide.execution.NbfsStreamHandlerFactory
org.openide.execution.NbfsURLConnection
org.openide.execution.ProcessExecutor
org.openide.execution.ThreadExecutor
org.openide.loaders.ExecutionSupport
; made by: jglick
As part of the NetBeans 4.0 build system, the Execution API was split into two halves. The first half continues to be used as before. The second half is now deprecated and lives in a separate module.
Compatibility:
New code must declare which of the two modules (or both) it wishes to compile against and use.
Binary-compatible