Version 12

    THIS DOCUMENT IS NOT CURRENT OR AUTHORITATIVE IN ANY WAY. IT IS RETAINED SOLELY FOR THE HISTORICAL RECORD

     

     

    The intent of this document is to identify the conceptual capabilities that various subsystems or the WF core may make available to other subsystems, and the requirements that subsystem may have on other subsystems or the core.

     

    Core capabilities do not need to be listed unless they are somehow not always present.

     

    My hope is people will just start filling this in and it will evolve wiki-style. So don't worry too much about proper names for stuff etc; put down what you know and count on evolution to drive toward the correct name.

     

    If you change the name of something, please change all occurences of it.

     

    My expected format would be something like:

     

    CORE

     

    Capabilities:

    • FOO -- allows users to have excellent foo

     

    EJB Subsystem

     

    Capabilities:

    • BASE -- basic EJB capabilities
      • Requires: CORE:FOO
    • REMOTE -- remote ejb invocation
      • Requires: EJB:BASE, REMOTING:BASE

     

    So,

     

    CORE

     

    Capabilities:

     

    • ?

    CORE Subsystems

     

    IO

    • Worker
    • Buffer pool

     

    Remoting

    • Remoting capability

     

     

    SUBSYSTEMS

     

    (please keep these alphabetical)

     

    CDI

     

    Capabilities

     

    • BASE -- basic CDI functionality

     

    EJB

     

    Capabilities

     

    • BASE -- basic local EJBs
      • Requires: SECURITY:SECURITY-DOMAIN

     

    INFINISPAN

     

    Capabilities

     

    • BASE -- basic local caching
    • CLUSTERED -- distributed/replicated caching
      • Requires:
        • JGROUPS:BASE
        • JMX:BASE (TODO -- it appears this could be optional)

     

    JACORB

     

    Capabilities

     

    • IIOP -- IIOP support

     

    JCA

     

    Capabilities

     

    • BASE -- basic JCA functionality

     

    JGROUPS

     

    Capabilities

     

    • BASE -- basic JGroups services
      • Requires: JMX:BASE (TODO -- why isn't this optional?)

     

    JMX

     

    Capabilities

     

    • BASE -- JMX integration

    JSR77

     

    Capabilities

     

    • BASE -- JSR77 support
      • Requires: JMX:BASE

    MESSAGING

    Capabilities

     

    • BASE -- core messaging/JMS functionality
      • Requires: SECURITY:SECURITY-DOMAIN, JCA:BASE, CDI:BASE, TRANSACTIONS:TRANSACTION-MANAGER, NAMING:BASE
    • CLUSTERED -- clustered messaging
      • Requires: JGROUPS:BASE (optional)
    • HTTP-UPGRADE -- JMS multiplexing over HTTP
      • Requires: UNDERTOW:HTTP-UPGRADE

    NAMING

     

    Capabilities

     

    • BASE -- basic naming functionality

     

    SAR

     

    Capabilities

     

    • BASE -- JMX service archive support
      • Requires: JMX:BASE

    SECURITY

     

    Capabilities

     

    • SECURITY-DOMAIN -- security domains
      • Requires: TRANSACTIONS:TRANSACTION-MANAGER
    • DISTRIBUTED-CACHE -- infinispan replicated credential cache
      • Requires: SECURITY:SECURITY-DOMAIN, INFINISPAN:CLUSTERED

     

    TRANSACTIONS

     

    Capabilities

     

    • TRANSACTION-MANAGER -- JTA transaction manager
    • JTS -- JTS support
      • Requires: JACORB:IIOP

     

    UNDERTOW

     

    Capabilities

     

    • BASE -- core http functionality
    • SERVLET -- Servlet spec
      • Requires: UNDERTOW:BASE, SECURITY:SECURITY-DOMAIN
    • HTTP-UPGRADE -- HTTP upgrade handler