<answer id="arch-overall">
<p>
This module contains general classes needed in NetBeans, extensions to
basic JRE contepts, useful methods and other
<api group="java" name="UtilitiesAPI" category="official"type="export"url="@TOP@/org/openide/util/doc-files/api.html" />
classes.
</p>
</answer>
<answer id="arch-time">
<p>
The module has been around since 1997 and is still improved
from time to time. Support for HiDPI screens and SVG image loading was added in 2019.
</p>
</answer>
<answer id="arch-usecases">
<usecase id="logging" name="How shall I do or influence logging in NetBeans?">
<p>
If you are interested in logging from inside your module, or in writing
your own log handler or in configuring the whole system, then best place
to start is the <a href="@TOP@/org/openide/util/doc-files/logging.html">NetBeans logging guide</a>.
</p>
</usecase>
</answer>
<answer id="arch-what">
<p>
Described in the <a href="@TOP@/architecture-summary.html#answer-arch-overall">overall</a> answer.
</p>
</answer>
<answer id="compat-i18n">
<p>
There is not much things to localize in this module, so it is properly localized.
But it is good to note that the module adds <api name="BrandingSupport" category="official" group="property"type="export"url="@org-openide-util@/org/openide/util/NbBundle.html">
which is similar to localization but also supports changes of resorces
for application build on top of NetBeans. This is handled by our
class <a href="@org-openide-util@/org/openide/util/NbBundle.html">NbBundle</a> which
reimplements the JDK's standard <a href="@JDK@@JDKMODULE_JAVA_BASE@/java/util/ResourceBundle.html">ResourceBundle</a>
to to take branding into the consideration.
</api>.
</p>
</answer>
<answer id="compat-version">
<p>
This module has no settings.
</p>
</answer>
<answer id="dep-jre">
<p>
Currently JRE 1.4 is needed.
</p>
</answer>
<answer id="dep-jrejdk">
<p>
JRE is enough.
</p>
</answer>
<answer id="dep-nb">
<p>
This module is independent of other NetBeans modules and can be used
independently. For better interaction with UI parts of NetBeans it however
indirectly communicates with <a href="@org-openide-awt@/overview-summary.html">UI Utilities</a>
module using <api name="DefaultAWTBridge" category="private" group="java"type="export" url="https://github.com/apache/netbeans/tree/master/platform/openide.awt/src/org/netbeans/modules/openide/awt/DefaultAWTBridge.java">
a class that is looked up in <a href="@org-openide-util-lookup@/org/openide/util/Lookup.html#getDefault()">Lookup.getDefault()</a>
and if registered can provide better UI elements for <a href="@JDK@@JDKMODULE_JAVA_DESKTOP@/javax/swing/Action.html">Action</a>s.
</api>
</p>
<p>Support for SVG image loading can be enabled by including the optional <!-- <a href="@org-openide-util-ui-svg@/overview-summary.html"> --> SVG Loader <!-- </a> --> module.
</p>
</answer>
<answer id="dep-non-nb">
<p>
Reexports XML APIs so needs some XML parser implementation, but as one
is provided in any 1.4 java, it in fact has no dependencies except on JRE.
</p>
</answer>
<answer id="deploy-jar">
<p>
<api category="devel" group="java.io.File" name="FileLocation"type="export" >
the JAR file is located in platform cluster under <code>lib/org-openide-util.jar</code>
</api>.
</p>
</answer>
<answer id="deploy-nbm">
<p>
No reason to not deploy nbm.
</p>
</answer>
<answer id="deploy-packages">
<p>
Yes, public packages declared.
</p>
</answer>
<answer id="deploy-shared">
<p>
Module is on real java classpath and as such it has to be in the shared directory.
</p>
</answer>
<answer id="exec-classloader">
<p>
No, we do not create own classloader.
</p>
</answer>
<!-- <questionid="exec-component"when="impl"> Isexecutionofyourcodeinfluencedbyany(string)property ofanyofyourcomponents? <hint> Often<code>JComponent.getClientProperty</code>,<code>Action.getValue</code> or<code>PropertyDescriptor.getValue</code>,etc.areusedtoinfluence abehaviorofsomecode.Thisofcourseformsaninterfacethatshould bedocumented.Alsoifonedependsonsomeinterfacethatanobject implements(<code>componentinstanceofRunnable</code>)thatformsan APIaswell. </hint> </question>
-->
<answer id="exec-component">
<ul>
<li><api name="HelpID" category="standard" group="property"type="export"url="@TOP@/org/openide/util/HelpCtx.html">
read from <a href="@JDK@@JDKMODULE_JAVA_DESKTOP@/javax/swing/JComponent.html">JComponent</a>.getClientProperty
to simulate the standard javahelp behaviour and extract the help id for given component.
</api>
</li>
<li><api name="iconBase" category="standard" group="property"type="import" >
<a href="@TOP@/org/openide/util/actions/SystemAction.html">SystemAction</a>
reacts to expected requests from <a href="@org-openide-awt@/overview-summary.html">UI Utilities</a>
module for <code>iconBase</code> property by returning value based on its
result of its <code>iconResource()</code> method.
</api>
</li>
<li>
<api name="org.openide.util.SharedClassObject.initialize" category="private" group="property"type="export">
For purposes of
<code>SystemOption</code>
the
<a href="@TOP@/org/openide/util/SharedClassObject.html">SharedClassObject</a>
handles
<code>getProperty ("org.openide.util.SharedClassObject.initialize")</code>
in a special way, by returning
<code>null</code> if initialization is not running and <code>Boolean.TRUE</code> if
it is.
</api>
</li>
<li><api name="OpenIDE-Transmodal-Action" category="devel" group="property"type="export" >
<a href="@TOP@/org/openide/util/actions/CallbackSystemAction.html">CallbackSystemAction</a>
checks whether <code>action.getValue("OpenIDE-Transmodal-Action")</code>
returns <code>Boolean.TRUE</code> to enable it in dialogs, otherwise
the action is disabled when there is an open dialog.
</api>
</li>
</ul>
</answer>
<!-- <questionid="exec-introspection"when="impl"> Doesyourmoduleuseanykindofruntimetypeinformation(<code>instanceof</code>, workwith<code>java.lang.Class</code>,etc.)? <hint> CheckforcaseswhenyouhaveanobjectoftypeAandyoualso expectitto(possibly)beoftypeBanddosomespecialaction.That shouldbedocumented.Thesameappliesonoperationsinmeta-level (Class.isInstance(...),Class.isAssignableFrom(...),etc.). </hint> </question>
-->
<answer id="exec-introspection">
<p>
<a href="@TOP@/org/openide/util/Utilities.html">Utilities</a> provide wrapper
for java beans introspection. <api category="private" group="java" name="ParserFactory"type="import" >
The <a href="@org-openide-util@/org/openide/xml/XMLUtil.html">XMLUtil</a> class is loading
a class from <code>core/core.jar</code> to initialize the correct parser factory.
This is a fix for <a href="https://bz.apache.org/netbeans/show_bug.cgi?id=68942">issue 68942</a>.
</api>
</p>
</answer>
<!-- <questionid="exec-reflection"when="impl"> DoesyourcodeuseJavaReflectiontoexecuteothercode? <hint> ThisusuallyindicatesamissingorinsufficientAPIintheother partofthesystem.Iftheothersideisnotawareofyourdependency thiscontractcanbeeasilybroken. </hint> </question>
-->
<answer id="exec-reflection">
<p>
<api category="devel" group="java" name="SharedClassObject.setAccessible"type="export"url="@TOP@/org/openide/util/SharedClassObject.html">
used to instantiate subclasses.
</api>.
<api category="devel" group="java" name="WeakListener.setAccessible"type="export"url="@org-openide-util@/org/openide/util/WeakListeners.html">
used to call the remove method using reflection
</api>.
<api category="private" group="lookup" name="ActionManagerInvocation"type="export" >
because of the API separation, <a href="@TOP@/org/openide/util/actions/CallableSystemAction.html">CallableSystemAction</a> uses lookup for <code>ActionsBridge</code>
provided by <code>org-openide-actions</code> module
when looking for <a href="@org-openide-actions@/org/openide/actions/ActionManager.html">org.openide.actions.ActionManager</a> implementation.
</api>.
</p>
</answer>
<answer id="format-clipboard">
<p>
<a href="@TOP@/org/openide/util/datatransfer/MultiTransferObject.html">MultiTransferObject</a> can be
used in <a href="@JDK@@JDKMODULE_JAVA_DATATRANSFER@/java/awt/datatransfer/Transferable.html">Transferable</a> to represent content
composed of multiple independent
<a href="@JDK@@JDKMODULE_JAVA_DATATRANSFER@/java/awt/datatransfer/Transferable.html">Transferable</a>s.
</p>
</answer>
<answer id="format-dnd">
<p>
The same as for clipboard.
</p>
</answer>
<answer id="format-types">
<p> <!-- The <a href="http://java.sun.com/j2se/1.3/docs/guide/jar/jar.html#Provider%20Configuration%20File">META-INF/services/...</a> files. <apiname="TranslateNames"category="official"type="export"group="java.io.File" url="@TOP@/org/openide/util/Utilities.html#translate(java.lang.String)"> <ahref="@TOP@/org/openide/util/Utilities.html#translate(java.lang.String)">Utilities.translate</a>
reads <code>META-INF/netbeans/translate.names</code> files from JARs</api>.-->
</p>
</answer>
<answer id="lookup-lookup">
<ul>
<li><api name="LookupSharedClassObject" category="devel" group="lookup"type="export">
singleton subclasses of <a href="@TOP@/org/openide/util/SharedClassObject.html">SharedClassObject</a>
are searched for using Lookup.
</api>.</li>
<li><api name="LookupContextGlobalProvider" category="stable" group="lookup"type="export">
<a href="@TOP@/org/openide/util/Utilities.html#actionsGlobalContext()">actionsGlobalContext</a>
searches for <a href="@TOP@/org/openide/util/ContextGlobalProvider.html">ContextGlobalProvider</a> in
<a href="@org-openide-util-lookup@/org/openide/util/Lookup.html#getDefault()">Lookup.getDefault()</a>.
The provider is usually provided by <a href="@org-openide-windows@/index.html">window
system implementation</a>.
</api>.</li>
<li><api name="LookupErrorManager" category="devel" group="lookup"type="export">
<a href="@TOP@/org/openide/ErrorManager.html">ErrorManager</a>
delegates its methods to all instances of <a href="@TOP@/org/openide/ErrorManager.html">ErrorManager</a>s
found in Lookup
</api>.</li>
<!-- <questionid="perf-mem"when="final"> Howmuchmemorydoesyourcomponentconsume?Estimate witharelationtothenumberofwindows,etc. </question>
-->
<answer id="perf-mem">
<p>
There are no big data structures.
</p>
</answer>
<!-- <questionid="perf-menus"when="final"> Doesyourmoduleusedynamicallyupdatedcontextmenus,or context-sensitiveactionswithcomplicatedandslowenablementlogic? <hint> Ifyoudoalotoftrickswhenaddingactionstoregularorcontextmenus,youcansignificantly slowdowndisplayofthemenu,evenwhentheuserisnotusingyouraction.Payattentionto actionsyouaddtothemainmenubar,andtocontextmenusofforeignnodesorcomponents.If theactionisconditionallyenabled,orchangesitsdisplaydynamically,youneedtocheckthe impactonperformance.Insomecasesitmaybemoreappropriatetomakeasimpleactionthatis alwaysenabledbutdoesmoredetailedchecksinadialogifitisactuallyrun. </hint> </question>
-->
<answer id="perf-menus">
<p>
There are no menus.
</p>
</answer>
<!-- <questionid="perf-progress"when="final"> Doesyourmoduleexecuteanylong-runningtasks? <hint>Longrunningtasksshouldneverblock AWTthreadasitbadlyhurtstheUI <ahref="http://performance.netbeans.org/responsiveness/issues.html"> responsiveness</a>. Taskslikeconnectingover network,computinghugeamountofdata,compilation bedoneasynchronously(forexample using<code>RequestProcessor</code>),definitivelyitshould notblockAWTthread. </hint> </question>
-->
<answer id="perf-progress">
<p>
Actions declared as <a href="@TOP@/org/openide/util/actions/CallableSystemAction.html#asynchronous()">CallableSystemAction.asynchronous()</a>
are executed outside of AWT thread on a dedicated request processor one.
</p>
</answer>
¤ Diese beiden folgenden Angebotsgruppen bietet das Unternehmen0.20Angebot
(Wie Sie bei der Firma Beratungs- und Dienstleistungen beauftragen können 2026-09-29)
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.