Initial version of Arch 1.23. BLD200401151900
authorpkuzel@netbeans.org
Wed, 14 Jan 2004 15:47:25 +0000
changeset 1426a92efb67a7c8
parent 1425 90adc6134e49
child 1427 c71bd7653079
Initial version of Arch 1.23.
tasklist/arch/arch-tasklist-api.xml
tasklist/arch/arch-tasklist-core.xml
tasklist/arch/arch-tasklist-docscan.xml
tasklist/arch/arch-tasklist-suggestions.xml
     1.1 --- a/tasklist/arch/arch-tasklist-api.xml	Wed Jan 14 12:59:54 2004 +0000
     1.2 +++ b/tasklist/arch/arch-tasklist-api.xml	Wed Jan 14 15:47:25 2004 +0000
     1.3 @@ -4,7 +4,7 @@
     1.4  ]>
     1.5  
     1.6  <api-answers
     1.7 -    question-version="1.11"
     1.8 +    question-version="1.23"
     1.9      module="tasklist/api"
    1.10      author="tor@netbeans.org"
    1.11  >
    1.12 @@ -172,4 +172,136 @@
    1.13      <answer id="perf-menus">
    1.14          No.
    1.15      </answer>
    1.16 +    
    1.17 +
    1.18 +
    1.19 +<!--
    1.20 +        <question id="arch-overall" when="init">
    1.21 +            Describe the overall architecture. 
    1.22 +            <hint>
    1.23 +            What will be API for 
    1.24 +            <a href="http://openide.netbeans.org/tutorial/api-design.html#design.apiandspi">
    1.25 +                clients and what support API</a>? 
    1.26 +            What parts will be pluggable?
    1.27 +            How will plug-ins be registered? Please use <code>&lt;api type="export"/&gt;</code>
    1.28 +            to describe your general APIs.
    1.29 +            If possible please provide 
    1.30 +            simple diagrams. 
    1.31 +            </hint>
    1.32 +        </question>
    1.33 +-->
    1.34 +<answer id="arch-overall">
    1.35 +Provider consumer interface.
    1.36 +</answer>
    1.37 +
    1.38 +
    1.39 +
    1.40 +<!--
    1.41 +        <question id="arch-quality" when="init">
    1.42 +            How the <a href="http://www.netbeans.org/community/guidelines/q-evangelism.html">quality</a>
    1.43 +            of your code will be tested and 
    1.44 +            how future regressions are going to be prevented?
    1.45 +            <hint>
    1.46 +            What kind of testing
    1.47 +            you want to use? What/how much area of functionality
    1.48 +            should be covered by the tests? 
    1.49 +            </hint>
    1.50 +        </question>
    1.51 +-->
    1.52 +<answer id="arch-quality">
    1.53 +Friend API.
    1.54 +</answer>
    1.55 +
    1.56 +
    1.57 +
    1.58 +<!--
    1.59 +        <question id="arch-time" when="init">
    1.60 +            What are the time estimates of the work?
    1.61 +            <hint>
    1.62 +            Please express your estimates of how long the design, implementation,
    1.63 +            stabilization are likely to last. How many people will be needed to
    1.64 +            implement this and what is the expected milestone the work should be 
    1.65 +            ready.
    1.66 +            </hint>
    1.67 +        </question>
    1.68 +-->
    1.69 +<answer id="arch-time">
    1.70 +1 month.
    1.71 +</answer>
    1.72 +
    1.73 +
    1.74 +
    1.75 +<!--
    1.76 +        <question id="arch-usecases" when="init">
    1.77 +            Describe the main <a href="http://openide.netbeans.org/tutorial/api-design.html#usecase">
    1.78 +            use cases</a> of the new API. Who will use it at
    1.79 +            what circumstances and what will be the typical code to write
    1.80 +            to use the module.
    1.81 +        </question>
    1.82 +-->
    1.83 +<answer id="arch-usecases">
    1.84 +Suggestion framework asks all registered providers for suggestions
    1.85 +and dispatches results to consumers (views).
    1.86 +</answer>
    1.87 +
    1.88 +
    1.89 +
    1.90 +<!--
    1.91 +        <question id="deploy-dependencies" when="final">
    1.92 +            What do other modules need to do to declare a dependency on this one?
    1.93 +            <hint>
    1.94 +                Provide a sample of the actual lines you would add to a module manifest
    1.95 +                to declare a dependency, for example using OpenIDE-Module-Module-Dependencies
    1.96 +                or OpenIDE-Module-Requires. You may use the magic token @SPECIFICATION-VERSION@
    1.97 +                to represent the current specification version of the module.
    1.98 +            </hint>
    1.99 +        </question>
   1.100 +-->
   1.101 +<answer id="deploy-dependencies">
   1.102 +Use implemenation dependency and contact module owner.
   1.103 +</answer>
   1.104 +
   1.105 +
   1.106 +
   1.107 +<!--
   1.108 +        <question id="exec-threading" when="impl">
   1.109 +            What threading models, if any, does your module adhere to?
   1.110 +            <hint>
   1.111 +                If your module calls foreign APIs which have a specific threading model,
   1.112 +                indicate how you comply with the requirements for multithreaded access
   1.113 +                (synchronization, mutexes, etc.) applicable to those APIs.
   1.114 +                If your module defines any APIs, or has complex internal structures
   1.115 +                that might be used from multiple threads, declare how you protect
   1.116 +                data against concurrent access, race conditions, deadlocks, etc.,
   1.117 +                and whether such rules are enforced by runtime warnings, errors, assertions, etc.
   1.118 +                Examples: a class might be non-thread-safe (like Java Collections); might
   1.119 +                be fully thread-safe (internal locking); might require access through a mutex
   1.120 +                (and may or may not automatically acquire that mutex on behalf of a client method);
   1.121 +                might be able to run only in the event queue; etc.
   1.122 +                Also describe when any events are fired: synchronously, asynchronously, etc.
   1.123 +                Ideas: <a href="http://core.netbeans.org/proposals/threading/index.html#recommendations">Threading Recommendations</a> (in progress)
   1.124 +            </hint>
   1.125 +        </question>
   1.126 +-->
   1.127 +<answer id="exec-threading">
   1.128 +None.
   1.129 +</answer>
   1.130 +
   1.131 +
   1.132 +
   1.133 +<!--
   1.134 +        <question id="perf-spi" when="init">
   1.135 +            How the performance of the plugged in code will be enforced?
   1.136 +            <hint>
   1.137 +            If you allow foreign code to be plugged into your own module, how
   1.138 +            do you enforce, that it will behave correctly and fast and will not
   1.139 +            negatively influence the performance of your own module?
   1.140 +            </hint>
   1.141 +        </question>
   1.142 +-->
   1.143 +<answer id="perf-spi">
   1.144 +None.
   1.145 +</answer>
   1.146 +
   1.147 +    
   1.148  </api-answers>
     2.1 --- a/tasklist/arch/arch-tasklist-core.xml	Wed Jan 14 12:59:54 2004 +0000
     2.2 +++ b/tasklist/arch/arch-tasklist-core.xml	Wed Jan 14 15:47:25 2004 +0000
     2.3 @@ -4,7 +4,7 @@
     2.4  ]>
     2.5  
     2.6  <api-answers
     2.7 -  question-version="1.11"
     2.8 +  question-version="1.23"
     2.9    module="tasklist/core"
    2.10    author="tor@netbeans.org"
    2.11  >
    2.12 @@ -178,8 +178,10 @@
    2.13          </question>
    2.14  -->
    2.15  <answer id="dep-platform">
    2.16 -Has native library for linux, solving backgound threading.
    2.17 -Otherwise it runs on all J2SE platforms.
    2.18 +It has native library for Sun's JVM 1.4.x for linux 2.4 on i386, solving backgound
    2.19 +threading. Otherwise it runs on all J2SE platforms equally. One can delete the
    2.20 +library if want 100% pure Java. In reality threading problems are not manifested
    2.21 +on fast (>2GHz) processors.
    2.22  </answer>
    2.23  
    2.24  
    2.25 @@ -691,4 +693,132 @@
    2.26  No.
    2.27  </answer>
    2.28  
    2.29 +<!--
    2.30 +        <question id="arch-overall" when="init">
    2.31 +            Describe the overall architecture. 
    2.32 +            <hint>
    2.33 +            What will be API for 
    2.34 +            <a href="http://openide.netbeans.org/tutorial/api-design.html#design.apiandspi">
    2.35 +                clients and what support API</a>? 
    2.36 +            What parts will be pluggable?
    2.37 +            How will plug-ins be registered? Please use <code>&lt;api type="export"/&gt;</code>
    2.38 +            to describe your general APIs.
    2.39 +            If possible please provide 
    2.40 +            simple diagrams. 
    2.41 +            </hint>
    2.42 +        </question>
    2.43 +-->
    2.44 +<answer id="arch-overall">
    2.45 +Utility classes.
    2.46 +</answer>
    2.47 +
    2.48 +
    2.49 +
    2.50 +<!--
    2.51 +        <question id="arch-quality" when="init">
    2.52 +            How the <a href="http://www.netbeans.org/community/guidelines/q-evangelism.html">quality</a>
    2.53 +            of your code will be tested and 
    2.54 +            how future regressions are going to be prevented?
    2.55 +            <hint>
    2.56 +            What kind of testing
    2.57 +            you want to use? What/how much area of functionality
    2.58 +            should be covered by the tests? 
    2.59 +            </hint>
    2.60 +        </question>
    2.61 +-->
    2.62 +<answer id="arch-quality">
    2.63 +Friend API.
    2.64 +</answer>
    2.65 +
    2.66 +
    2.67 +
    2.68 +<!--
    2.69 +        <question id="arch-time" when="init">
    2.70 +            What are the time estimates of the work?
    2.71 +            <hint>
    2.72 +            Please express your estimates of how long the design, implementation,
    2.73 +            stabilization are likely to last. How many people will be needed to
    2.74 +            implement this and what is the expected milestone the work should be 
    2.75 +            ready.
    2.76 +            </hint>
    2.77 +        </question>
    2.78 +-->
    2.79 +<answer id="arch-time">
    2.80 +1 month.
    2.81 +</answer>
    2.82 +
    2.83 +
    2.84 +
    2.85 +<!--
    2.86 +        <question id="arch-usecases" when="init">
    2.87 +            Describe the main <a href="http://openide.netbeans.org/tutorial/api-design.html#usecase">
    2.88 +            use cases</a> of the new API. Who will use it at
    2.89 +            what circumstances and what will be the typical code to write
    2.90 +            to use the module.
    2.91 +        </question>
    2.92 +-->
    2.93 +<answer id="arch-usecases">
    2.94 +Task is data layer. Several classes for view layer providing
    2.95 +navigability, filtering, Export/Import and property editors.
    2.96 +</answer>
    2.97 +
    2.98 +
    2.99 +
   2.100 +<!--
   2.101 +        <question id="deploy-dependencies" when="final">
   2.102 +            What do other modules need to do to declare a dependency on this one?
   2.103 +            <hint>
   2.104 +                Provide a sample of the actual lines you would add to a module manifest
   2.105 +                to declare a dependency, for example using OpenIDE-Module-Module-Dependencies
   2.106 +                or OpenIDE-Module-Requires. You may use the magic token @SPECIFICATION-VERSION@
   2.107 +                to represent the current specification version of the module.
   2.108 +            </hint>
   2.109 +        </question>
   2.110 +-->
   2.111 +<answer id="deploy-dependencies">
   2.112 +Use implemenation dependency and contact module owner.
   2.113 +</answer>
   2.114 +
   2.115 +
   2.116 +
   2.117 +<!--
   2.118 +        <question id="exec-threading" when="impl">
   2.119 +            What threading models, if any, does your module adhere to?
   2.120 +            <hint>
   2.121 +                If your module calls foreign APIs which have a specific threading model,
   2.122 +                indicate how you comply with the requirements for multithreaded access
   2.123 +                (synchronization, mutexes, etc.) applicable to those APIs.
   2.124 +                If your module defines any APIs, or has complex internal structures
   2.125 +                that might be used from multiple threads, declare how you protect
   2.126 +                data against concurrent access, race conditions, deadlocks, etc.,
   2.127 +                and whether such rules are enforced by runtime warnings, errors, assertions, etc.
   2.128 +                Examples: a class might be non-thread-safe (like Java Collections); might
   2.129 +                be fully thread-safe (internal locking); might require access through a mutex
   2.130 +                (and may or may not automatically acquire that mutex on behalf of a client method);
   2.131 +                might be able to run only in the event queue; etc.
   2.132 +                Also describe when any events are fired: synchronously, asynchronously, etc.
   2.133 +                Ideas: <a href="http://core.netbeans.org/proposals/threading/index.html#recommendations">Threading Recommendations</a> (in progress)
   2.134 +            </hint>
   2.135 +        </question>
   2.136 +-->
   2.137 +<answer id="exec-threading">
   2.138 +None.
   2.139 +</answer>
   2.140 +
   2.141 +
   2.142 +
   2.143 +<!--
   2.144 +        <question id="perf-spi" when="init">
   2.145 +            How the performance of the plugged in code will be enforced?
   2.146 +            <hint>
   2.147 +            If you allow foreign code to be plugged into your own module, how
   2.148 +            do you enforce, that it will behave correctly and fast and will not
   2.149 +            negatively influence the performance of your own module?
   2.150 +            </hint>
   2.151 +        </question>
   2.152 +-->
   2.153 +<answer id="perf-spi">
   2.154 +None.
   2.155 +</answer>
   2.156 +
   2.157  </api-answers>
     3.1 --- a/tasklist/arch/arch-tasklist-docscan.xml	Wed Jan 14 12:59:54 2004 +0000
     3.2 +++ b/tasklist/arch/arch-tasklist-docscan.xml	Wed Jan 14 15:47:25 2004 +0000
     3.3 @@ -4,7 +4,7 @@
     3.4  ]>
     3.5  
     3.6  <api-answers
     3.7 -  question-version="1.11"
     3.8 +  question-version="1.23"
     3.9    module="tasklist/docscan"
    3.10    author="pkuzel@netbeans.org"
    3.11  >
    3.12 @@ -688,4 +688,134 @@
    3.13  No.
    3.14  </answer>
    3.15  
    3.16 +<!--
    3.17 +        <question id="arch-overall" when="init">
    3.18 +            Describe the overall architecture. 
    3.19 +            <hint>
    3.20 +            What will be API for 
    3.21 +            <a href="http://openide.netbeans.org/tutorial/api-design.html#design.apiandspi">
    3.22 +                clients and what support API</a>? 
    3.23 +            What parts will be pluggable?
    3.24 +            How will plug-ins be registered? Please use <code>&lt;api type="export"/&gt;</code>
    3.25 +            to describe your general APIs.
    3.26 +            If possible please provide 
    3.27 +            simple diagrams. 
    3.28 +            </hint>
    3.29 +        </question>
    3.30 +-->
    3.31 +<answer id="arch-overall">
    3.32 +It defines view and provider for suggestions framework.
    3.33 +</answer>
    3.34 +
    3.35 +
    3.36 +
    3.37 +<!--
    3.38 +        <question id="arch-quality" when="init">
    3.39 +            How the <a href="http://www.netbeans.org/community/guidelines/q-evangelism.html">quality</a>
    3.40 +            of your code will be tested and 
    3.41 +            how future regressions are going to be prevented?
    3.42 +            <hint>
    3.43 +            What kind of testing
    3.44 +            you want to use? What/how much area of functionality
    3.45 +            should be covered by the tests? 
    3.46 +            </hint>
    3.47 +        </question>
    3.48 +-->
    3.49 +<answer id="arch-quality">
    3.50 +Private API.
    3.51 +</answer>
    3.52 +
    3.53 +
    3.54 +
    3.55 +<!--
    3.56 +        <question id="arch-time" when="init">
    3.57 +            What are the time estimates of the work?
    3.58 +            <hint>
    3.59 +            Please express your estimates of how long the design, implementation,
    3.60 +            stabilization are likely to last. How many people will be needed to
    3.61 +            implement this and what is the expected milestone the work should be 
    3.62 +            ready.
    3.63 +            </hint>
    3.64 +        </question>
    3.65 +-->
    3.66 +<answer id="arch-time">
    3.67 +1 month.
    3.68 +</answer>
    3.69 +
    3.70 +
    3.71 +
    3.72 +<!--
    3.73 +        <question id="arch-usecases" when="init">
    3.74 +            Describe the main <a href="http://openide.netbeans.org/tutorial/api-design.html#usecase">
    3.75 +            use cases</a> of the new API. Who will use it at
    3.76 +            what circumstances and what will be the typical code to write
    3.77 +            to use the module.
    3.78 +        </question>
    3.79 +-->
    3.80 +<answer id="arch-usecases">
    3.81 +See <a href="http://tasklist.netbeans.org/proposals/barracuda/concept.html">concept document</a>
    3.82 +</answer>
    3.83 +
    3.84 +
    3.85 +
    3.86 +<!--
    3.87 +        <question id="deploy-dependencies" when="final">
    3.88 +            What do other modules need to do to declare a dependency on this one?
    3.89 +            <hint>
    3.90 +                Provide a sample of the actual lines you would add to a module manifest
    3.91 +                to declare a dependency, for example using OpenIDE-Module-Module-Dependencies
    3.92 +                or OpenIDE-Module-Requires. You may use the magic token @SPECIFICATION-VERSION@
    3.93 +                to represent the current specification version of the module.
    3.94 +            </hint>
    3.95 +        </question>
    3.96 +-->
    3.97 +<answer id="deploy-dependencies">
    3.98 +Use implemenation dependency and contact module owner.
    3.99 +</answer>
   3.100 +
   3.101 +
   3.102 +
   3.103 +<!--
   3.104 +        <question id="exec-threading" when="impl">
   3.105 +            What threading models, if any, does your module adhere to?
   3.106 +            <hint>
   3.107 +                If your module calls foreign APIs which have a specific threading model,
   3.108 +                indicate how you comply with the requirements for multithreaded access
   3.109 +                (synchronization, mutexes, etc.) applicable to those APIs.
   3.110 +                If your module defines any APIs, or has complex internal structures
   3.111 +                that might be used from multiple threads, declare how you protect
   3.112 +                data against concurrent access, race conditions, deadlocks, etc.,
   3.113 +                and whether such rules are enforced by runtime warnings, errors, assertions, etc.
   3.114 +                Examples: a class might be non-thread-safe (like Java Collections); might
   3.115 +                be fully thread-safe (internal locking); might require access through a mutex
   3.116 +                (and may or may not automatically acquire that mutex on behalf of a client method);
   3.117 +                might be able to run only in the event queue; etc.
   3.118 +                Also describe when any events are fired: synchronously, asynchronously, etc.
   3.119 +                Ideas: <a href="http://core.netbeans.org/proposals/threading/index.html#recommendations">Threading Recommendations</a> (in progress)
   3.120 +            </hint>
   3.121 +        </question>
   3.122 +-->
   3.123 +<answer id="exec-threading">
   3.124 +Everything in AWT thread. Some calls to APIs my spawn other
   3.125 +threads. It may cause callback code being evaluated
   3.126 +in these threads. The situation is not handled on
   3.127 +all places.
   3.128 +</answer>
   3.129 +
   3.130 +
   3.131 +
   3.132 +<!--
   3.133 +        <question id="perf-spi" when="init">
   3.134 +            How the performance of the plugged in code will be enforced?
   3.135 +            <hint>
   3.136 +            If you allow foreign code to be plugged into your own module, how
   3.137 +            do you enforce, that it will behave correctly and fast and will not
   3.138 +            negatively influence the performance of your own module?
   3.139 +            </hint>
   3.140 +        </question>
   3.141 +-->
   3.142 +<answer id="perf-spi">
   3.143 +N/A
   3.144 +</answer>
   3.145 +
   3.146  </api-answers>
     4.1 --- a/tasklist/arch/arch-tasklist-suggestions.xml	Wed Jan 14 12:59:54 2004 +0000
     4.2 +++ b/tasklist/arch/arch-tasklist-suggestions.xml	Wed Jan 14 15:47:25 2004 +0000
     4.3 @@ -4,7 +4,7 @@
     4.4  ]>
     4.5  
     4.6  <api-answers
     4.7 -  question-version="1.11"
     4.8 +  question-version="1.23"
     4.9    module="tasklist/suggestions"
    4.10    author="pkuzel@netbeans.org"
    4.11  >
    4.12 @@ -672,4 +672,139 @@
    4.13  No.
    4.14  </answer>
    4.15  
    4.16 +<!--
    4.17 +        <question id="arch-overall" when="init">
    4.18 +            Describe the overall architecture. 
    4.19 +            <hint>
    4.20 +            What will be API for 
    4.21 +            <a href="http://openide.netbeans.org/tutorial/api-design.html#design.apiandspi">
    4.22 +                clients and what support API</a>? 
    4.23 +            What parts will be pluggable?
    4.24 +            How will plug-ins be registered? Please use <code>&lt;api type="export"/&gt;</code>
    4.25 +            to describe your general APIs.
    4.26 +            If possible please provide 
    4.27 +            simple diagrams. 
    4.28 +            </hint>
    4.29 +        </question>
    4.30 +-->
    4.31 +<answer id="arch-overall">
    4.32 +Views use SuggestionsScanner and SuggestionsBroker classes to
    4.33 +retrieve suggestions for some context. Providers and views use
    4.34 +SuggestionManagerImpl class to construct, register and query
    4.35 +suggestions properties.
    4.36 +</answer>
    4.37 +
    4.38 +
    4.39 +
    4.40 +<!--
    4.41 +        <question id="arch-quality" when="init">
    4.42 +            How the <a href="http://www.netbeans.org/community/guidelines/q-evangelism.html">quality</a>
    4.43 +            of your code will be tested and 
    4.44 +            how future regressions are going to be prevented?
    4.45 +            <hint>
    4.46 +            What kind of testing
    4.47 +            you want to use? What/how much area of functionality
    4.48 +            should be covered by the tests? 
    4.49 +            </hint>
    4.50 +        </question>
    4.51 +-->
    4.52 +<answer id="arch-quality">
    4.53 +Friend API.
    4.54 +</answer>
    4.55 +
    4.56 +
    4.57 +
    4.58 +<!--
    4.59 +        <question id="arch-time" when="init">
    4.60 +            What are the time estimates of the work?
    4.61 +            <hint>
    4.62 +            Please express your estimates of how long the design, implementation,
    4.63 +            stabilization are likely to last. How many people will be needed to
    4.64 +            implement this and what is the expected milestone the work should be 
    4.65 +            ready.
    4.66 +            </hint>
    4.67 +        </question>
    4.68 +-->
    4.69 +<answer id="arch-time">
    4.70 +2 months.
    4.71 +</answer>
    4.72 +
    4.73 +
    4.74 +
    4.75 +<!--
    4.76 +        <question id="arch-usecases" when="init">
    4.77 +            Describe the main <a href="http://openide.netbeans.org/tutorial/api-design.html#usecase">
    4.78 +            use cases</a> of the new API. Who will use it at
    4.79 +            what circumstances and what will be the typical code to write
    4.80 +            to use the module.
    4.81 +        </question>
    4.82 +-->
    4.83 +<answer id="arch-usecases">
    4.84 +Views use SuggestionsScanner and SuggestionsBroker classes to
    4.85 +retrieve suggestions for some context. Providers and views use
    4.86 +SuggestionManagerImpl class to construct, register and query
    4.87 +suggestions properties.
    4.88 +</answer>
    4.89 +
    4.90 +
    4.91 +
    4.92 +<!--
    4.93 +        <question id="deploy-dependencies" when="final">
    4.94 +            What do other modules need to do to declare a dependency on this one?
    4.95 +            <hint>
    4.96 +                Provide a sample of the actual lines you would add to a module manifest
    4.97 +                to declare a dependency, for example using OpenIDE-Module-Module-Dependencies
    4.98 +                or OpenIDE-Module-Requires. You may use the magic token @SPECIFICATION-VERSION@
    4.99 +                to represent the current specification version of the module.
   4.100 +            </hint>
   4.101 +        </question>
   4.102 +-->
   4.103 +<answer id="deploy-dependencies">
   4.104 +Use implemenation dependency and contact module owner.
   4.105 +</answer>
   4.106 +
   4.107 +
   4.108 +
   4.109 +<!--
   4.110 +        <question id="exec-threading" when="impl">
   4.111 +            What threading models, if any, does your module adhere to?
   4.112 +            <hint>
   4.113 +                If your module calls foreign APIs which have a specific threading model,
   4.114 +                indicate how you comply with the requirements for multithreaded access
   4.115 +                (synchronization, mutexes, etc.) applicable to those APIs.
   4.116 +                If your module defines any APIs, or has complex internal structures
   4.117 +                that might be used from multiple threads, declare how you protect
   4.118 +                data against concurrent access, race conditions, deadlocks, etc.,
   4.119 +                and whether such rules are enforced by runtime warnings, errors, assertions, etc.
   4.120 +                Examples: a class might be non-thread-safe (like Java Collections); might
   4.121 +                be fully thread-safe (internal locking); might require access through a mutex
   4.122 +                (and may or may not automatically acquire that mutex on behalf of a client method);
   4.123 +                might be able to run only in the event queue; etc.
   4.124 +                Also describe when any events are fired: synchronously, asynchronously, etc.
   4.125 +                Ideas: <a href="http://core.netbeans.org/proposals/threading/index.html#recommendations">Threading Recommendations</a> (in progress)
   4.126 +            </hint>
   4.127 +        </question>
   4.128 +-->
   4.129 +<answer id="exec-threading">
   4.130 +None.
   4.131 +</answer>
   4.132 +
   4.133 +
   4.134 +
   4.135 +<!--
   4.136 +        <question id="perf-spi" when="init">
   4.137 +            How the performance of the plugged in code will be enforced?
   4.138 +            <hint>
   4.139 +            If you allow foreign code to be plugged into your own module, how
   4.140 +            do you enforce, that it will behave correctly and fast and will not
   4.141 +            negatively influence the performance of your own module?
   4.142 +            </hint>
   4.143 +        </question>
   4.144 +-->
   4.145 +<answer id="perf-spi">
   4.146 +Almost none. Low memory conditions are detected.
   4.147 +Time data can be printed to console. Recent results
   4.148 +ca be cached by the framework.
   4.149 +</answer>
   4.150 +
   4.151  </api-answers>