Dear Wiki user,

You have subscribed to a wiki page or wiki category on "James Wiki" for change 
notification.

The following page has been changed by SergeyLubinskiy:
http://wiki.apache.org/james/SummerOfCode2005/SergeyLubinskiyFastFail

------------------------------------------------------------------------------
  
  Technically however it is going to be a bit different.
  
- Firstly I intend to allow re-configuration, reordering, addition and removal 
of "protocolLets" via JMX. To facilate this I'm going to find a way map
+ Firstly I intend to allow re-configuration, reordering, addition and removal 
of "protocolLets" via JMX. To facilate this I'm going to find a way to map:
- * "protocolLets" bean-style configuration interface
+  * "protocolLets" bean-style configuration interface
- * JMX allowed CompositeData and TabularData
+  * JMX allowed CompositeData and TabularData
- * xml representation thereof (xstream-style)
+  * xml representation thereof (xstream-style)
- * possibly Phoenix configuration objects
+  * possibly Phoenix configuration objects
  onto each other.
  
  As configuration of "protocolLets" and their order is changed via JMX this 
immediately affects the running block - in fact I imagine that we would take 
down "protocolLets" configured with old values and instantiate "protocolLets" 
with new configuration to avoid concurrency issues. Same applies to the 
protocolLet[] array representing their sequence. Each protocolLet is going to 
be stateless and thus tread-safe. Perhaps we can design JMX configuration 
interface so that all the reordering and reconfiguration will take effect in a 
batch as partially configured "protocolLets" may cause server failures.
@@ -58, +58 @@

  I beleive that this "go from getter/setters via JMX CompositeData to XML will 
let some fresh wind into the old dynamic server reconfiguration problem.
  
  Technical implementation of these features still needs to be explored. In 
essence "protocolLets" are quite similar to blocks but Phoenix machinery most 
likely can not be reused as it is. I see the following opitions to investigate 
and choose from:
- * do so quirks and tricks and make use of existing Phoenix internals as they 
are
+  * do so quirks and tricks and make use of existing Phoenix internals as they 
are
- * create a patched Phoenix (and push for new version being rolled out with 
these patches)
+  * create a patched Phoenix (and push for new version being rolled out with 
these patches)
- * run.. say Fortress inside new smpt block (I'm trying to pick a container 
living iside asf)
+  * run.. say Fortress inside new smpt block (I'm trying to pick a container 
living iside asf)
- * DIY container plumbing pico-container style (shouldn't be too much code) 
closely along the lines of the current 
[http://james.apache.org/javadocs/org/apache/james/transport/JamesSpoolManager.html
 JamesSpoolManager] implementation
+  * DIY container plumbing pico-container style (shouldn't be too much code) 
closely along the lines of the current 
[http://james.apache.org/javadocs/org/apache/james/transport/JamesSpoolManager.html
 JamesSpoolManager] implementation
  
- 

Reply via email to