|
|
openide.jar
.
Question (deploy-nbm):
Can you deploy an NBM via the Update Center?
Answer:
Whole openide can be deployed via AU center.
Question (deploy-shared):
Do you need to be installed in the shared location only, or in the user directory only,
or can your module be installed anywhere?
Answer:
openide.jar needs to be in the system directory.
Question (deploy-packages):
Are packages of your module made inaccessible by not declaring them
public?
Answer:
No. But that is not necesssary. The only packages lookup uses are
LookupAPI
-
Additional info can be found at
and
LookupSPI
-
Additional info can be found at
and both contain official interfaces, no need to hide packages.
Question (deploy-dependencies):
What do other modules need to do to declare a dependency on this one?
WARNING: Question with id="deploy-dependencies" has not been answered!java.io.File
directly?
Answer:
No.
Question (resources-layer):
Does your module provide own layer? Does it create any files or
folders in it? What it is trying to communicate by that and with which
components?
Answer:
No.
Question (resources-read):
Does your module read any resources from layers? For what purpose?
Answer:
No.
Question (resources-mask):
Does your module mask/hide/override any resources provided by other modules in
their layers?
Answer:
No.
org.openide.util.Lookup
or any similar technology to find any components to communicate with? Which ones?
Answer:
During
initialization
it searches for org.openide.util.Lookup.Provider
.
Question (lookup-register):
Do you register anything into lookup for other code to find?
Answer:
No.
Question (lookup-remove):
Do you remove entries of other modules from lookup?
Answer:
No.
System.getProperty
) property?
Answer:
The initialization of the Lookup checks value of
org.openide.util.Lookup
-
Can contain name of a class that extends org.openide.util.Lookup
and
has public constructor, that should be instantiated and returned from
Lookup.getDefault
the class will be loaded by
Thread.currentThread().getContextClassLoader()
classloader the first time Lookup.getDefault
is invoked.
The property can also contain value "-"
which means to completely
disable the lookup instantiation and return Lookup.EMPTY
from Lookup.getDefault
.
If the property is unspecified, the default MetaInfServicesLookup
is constructed for Thread.currentThread().getContextClassLoader()
that implements the JDK's standard. If, by
a chance an instance of org.openide.util.Lookup.Provider
is found
in there, it is returned as result. Otherwise the MetaInfServicesLookup
is the result of Lookup.getDefault
.
property is used to construct the value to be returned from Lookup.getDefault()
.
Question (exec-component):
Is execution of your code influenced by any (string) property
of any of your components?
Answer:
No.
Question (exec-classloader):
Does your code create its own class loader(s)?
Answer:
No.
Question (exec-reflection):
Does your code use Java Reflection to execute other code?
Answer:
The MetaInfServicesLookup
invokes default constructor for
classes those names it finds in META-INF/services/...
files.
Question (exec-privateaccess):
Are you aware of any other parts of the system calling some of
your methods by reflection?
Answer:
None, I am aware of.
Question (exec-process):
Do you execute an external process from your module? How do you ensure
that the result is the same on different platforms? Do you parse output?
Do you depend on result code?
WARNING: Question with id="exec-process" has not been answered!
Question (exec-introspection):
Does your module use any kind of runtime type information (instanceof
,
work with java.lang.Class
, etc.)?
WARNING: Question with id="exec-introspection" has not been answered!
Question (exec-threading):
What threading models, if any, does your module adhere to?
WARNING: Question with id="exec-threading" has not been answered!
Question (security-policy):
Does your functionality require modifications to the standard policy file?
WARNING: Question with id="security-policy" has not been answered!
Question (security-grant):
Does your code grant additional rights to some other code?
WARNING: Question with id="security-grant" has not been answered!java.awt.datatransfer.Transferable
?
Answer:
None.
Lookup.getDefault()
.
Question (perf-exit):
Does your module run any code on exit?
Answer:
No.
Question (perf-scale):
Which external criteria influence the performance of your
program (size of file in editor, number of files in menu,
in source directory, etc.) and how well your code scales?
Answer:
The code scales linearily.
Question (perf-limit):
Are there any hard-coded or practical limits in the number or size of
elements your code can handle?
Answer:
No.
Question (perf-mem):
How much memory does your component consume? Estimate
with a relation to the number of windows, etc.
Answer:
The default implementation of the MetaInfServicesLookup
just
keeps hashmap between queried classes and their implementations. The amount
of memory is linear to amount of registered classes, but of course we
are not counting the memory occupied by the instances which the lookup
creates, that can be arbitrary.
Question (perf-wakeup):
Does any piece of your code wake up periodically and do something
even when the system is otherwise idle (no user interaction)?
Answer:
No.
Question (perf-progress):
Does your module execute any long-running tasks?
Answer:
The default implementation of lookup just reads the META-INF/services
files provided by classloader - the speed depends on the classloader, but usually
these files are on filesystem and thus should be fast. Also the lookup invokes
default constructors of registered classes, the speed depends on the amount of
work done in their constructors.
Question (perf-huge_dialogs):
Does your module contain any dialogs or wizards with a large number of
GUI controls such as combo boxes, lists, trees, or text areas?
Answer:
No.
Question (perf-menus):
Does your module use dynamically updated context menus, or
context-sensitive actions with complicated enablement logic?
Answer:
Module has no GUI.
Question (perf-spi):
How the performance of the plugged in code will be enforced?
WARNING: Question with id="perf-spi" has not been answered!Built on December 9 2004. | Portions Copyright 1997-2003 Sun Microsystems, Inc. All rights reserved.