djencks     2004/10/27 21:56:11

  Modified:    modules/core/src/schema geronimo-naming.xsd openejb-jar.xsd
  Log:

  GERONIMO-371, 393, 372. Refactor jsr-77 naming and restructure specification of ref 
names to parallel jsr-77
  
  Revision  Changes    Path
  1.5       +73 -33    openejb/modules/core/src/schema/geronimo-naming.xsd
  
  Index: geronimo-naming.xsd
  ===================================================================
  RCS file: 
/home/projects/openejb/scm/openejb/modules/core/src/schema/geronimo-naming.xsd,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- geronimo-naming.xsd       12 Oct 2004 03:08:25 -0000      1.4
  +++ geronimo-naming.xsd       28 Oct 2004 01:56:11 -0000      1.5
  @@ -38,16 +38,12 @@
    temporary (I hope) individual elements while xmlbeans group handling is 
straightened out
    -->
   
  -    <xsd:element name="ejb-ref"
  -        type="gernaming:remote-refType"/>
  -    <xsd:element name="ejb-local-ref"
  -        type="gernaming:local-refType"/>
  +    <xsd:element name="ejb-ref" type="gernaming:ejb-refType"/>
  +    <xsd:element name="ejb-local-ref" type="gernaming:ejb-local-refType"/>
       <!-- leave web services out until I know what they do -->
       <!--xsd:group ref="service-refGroup"/-->
  -    <xsd:element name="resource-ref"
  -        type="gernaming:local-refType"/>
  -    <xsd:element name="resource-env-ref"
  -        type="gernaming:local-refType"/>
  +    <xsd:element name="resource-ref" type="gernaming:resource-refType"/>
  +    <xsd:element name="resource-env-ref" type="gernaming:resource-env-refType"/>
       
       <xsd:group name="jndiEnvironmentRefsGroup">
           <xsd:annotation>
  @@ -59,51 +55,95 @@
               </xsd:documentation>
           </xsd:annotation>
           <xsd:sequence>
  -            <xsd:element name="ejb-ref"
  -                type="gernaming:remote-refType"
  -                minOccurs="0" maxOccurs="unbounded"/>
  -            <xsd:element name="ejb-local-ref"
  -                type="gernaming:local-refType"
  -                minOccurs="0" maxOccurs="unbounded"/>
  +            <xsd:element name="ejb-ref" type="gernaming:ejb-refType" minOccurs="0" 
maxOccurs="unbounded"/>
  +            <xsd:element name="ejb-local-ref" type="gernaming:ejb-local-refType" 
minOccurs="0" maxOccurs="unbounded"/>
               <!-- leave web services out until I know what they do -->
               <!--xsd:group ref="service-refGroup"/-->
  -            <xsd:element name="resource-ref"
  -                type="gernaming:local-refType"
  -                minOccurs="0" maxOccurs="unbounded"/>
  -            <xsd:element name="resource-env-ref"
  -                type="gernaming:local-refType"
  -                minOccurs="0" maxOccurs="unbounded"/>
  +            <xsd:element name="resource-ref" type="gernaming:resource-refType" 
minOccurs="0" maxOccurs="unbounded"/>
  +            <xsd:element name="resource-env-ref" 
type="gernaming:resource-env-refType" minOccurs="0" maxOccurs="unbounded"/>
           </xsd:sequence>
       </xsd:group>
   
  -    <xsd:complexType name="remote-refType">
  +    <!--target-name is the entire object name of the gbean to get the bound object 
from by calling $getResource-->
  +    <!--ejb-link acts like ejb-link in spec descriptors-->
  +    <!--resource-link contains the name of the outbound-connectionfactory-instance 
-->
  +    <!--message-destination-link acts like message-destination-link in spec 
descriptors-->
  +    <!--url in resource-ref contains the url for URL typed resource refs-->
  +    <!--Possibly the external-uri element should be revived to connect to other 
naming systems-->
  +    <!--when server to server communication exists we will need an element in 
ejb-ref to specify the geronimo server
  +    we wish to talk to.  It might be possible to use the objectName server element 
for this depending on what we decide it means-->
  +    <!--otherwise you can supply the entire object name using the objectNameGroup-->
  +
  +    <xsd:complexType name="ejb-refType">
           <xsd:sequence>
               <xsd:element name="ref-name" type="xsd:string"/>
               <xsd:choice>
  -                <xsd:sequence>
  -                    <xsd:element name="server" type="xsd:string" minOccurs="0"/>
  -                    <xsd:element name="kernel-name" type="xsd:string" 
minOccurs="0"/>
  -                    <xsd:element name="target-name" type="xsd:string"/>
  -                </xsd:sequence>
  -                <xsd:element name="external-uri" type="xsd:string"/>
  +                <xsd:group ref="gernaming:objectNameGroup"/>
                   <xsd:element name="ejb-link" type="xsd:string"/>
  +                <xsd:element name="target-name" type="xsd:string"/>
               </xsd:choice>
           </xsd:sequence>
       </xsd:complexType>
   
  -    <xsd:complexType name="local-refType">
  +    <xsd:complexType name="ejb-local-refType">
           <xsd:sequence>
               <xsd:element name="ref-name" type="xsd:string"/>
               <xsd:choice>
  -                <xsd:sequence>
  -                    <xsd:element name="kernel-name" type="xsd:string" 
minOccurs="0"/>
  -                    <xsd:element name="target-name" type="xsd:string"/>
  -                </xsd:sequence>
  -                <xsd:element name="external-uri" type="xsd:string"/>
  +                <xsd:group ref="gernaming:objectNameGroup"/>
                   <xsd:element name="ejb-link" type="xsd:string"/>
  +                <xsd:element name="target-name" type="xsd:string"/>
  +            </xsd:choice>
  +        </xsd:sequence>
  +    </xsd:complexType>
  +
  +    <xsd:complexType name="resource-refType">
  +        <xsd:sequence>
  +            <xsd:element name="ref-name" type="xsd:string"/>
  +            <xsd:choice>
  +                <xsd:group ref="gernaming:objectNameGroup"/>
                   <xsd:element name="resource-link" type="xsd:string"/>
  +                <xsd:element name="target-name" type="xsd:string"/>
  +                <xsd:element name="url" type="xsd:string"/>
               </xsd:choice>
           </xsd:sequence>
       </xsd:complexType>
  +
  +    <!--used by openejb cmp datasource specification -->
  +    <xsd:element name="cmp-connection-factory" 
type="gernaming:resource-locatorType"/>
  +    <xsd:complexType name="resource-locatorType">
  +        <xsd:sequence>
  +            <xsd:choice>
  +                <xsd:group ref="gernaming:objectNameGroup"/>
  +                <xsd:element name="resource-link" type="xsd:string"/>
  +                <xsd:element name="target-name" type="xsd:string"/>
  +                <xsd:element name="url" type="xsd:string"/>
  +            </xsd:choice>
  +        </xsd:sequence>
  +    </xsd:complexType>
  +
  +    <xsd:complexType name="resource-env-refType">
  +        <xsd:sequence>
  +            <xsd:element name="ref-name" type="xsd:string"/>
  +            <xsd:choice>
  +                <xsd:group ref="gernaming:objectNameGroup"/>
  +                <xsd:element name="message-destination-link" type="xsd:string"/>
  +                <xsd:element name="target-name" type="xsd:string"/>
  +            </xsd:choice>
  +        </xsd:sequence>
  +    </xsd:complexType>
  +
  +    <xsd:group name="objectNameGroup">
  +         <xsd:annotation>
  +             <xsd:documentation>This group contains the components of a jsr-77 
object name</xsd:documentation>
  +         </xsd:annotation>
  +         <xsd:sequence>
  +             <xsd:element name="domain" type="xsd:string" minOccurs="0"/>
  +             <xsd:element name="server" type="xsd:string" minOccurs="0"/>
  +             <xsd:element name="application" type="xsd:string" minOccurs="0"/>
  +             <xsd:element name="module" type="xsd:string" minOccurs="0"/>
  +             <xsd:element name="type" type="xsd:string" minOccurs="0"/>
  +             <xsd:element name="name" type="xsd:string"/>
  +         </xsd:sequence>
  +     </xsd:group>
   
   </xsd:schema>
  
  
  
  1.13      +22 -18    openejb/modules/core/src/schema/openejb-jar.xsd
  
  Index: openejb-jar.xsd
  ===================================================================
  RCS file: 
/home/projects/openejb/scm/openejb/modules/core/src/schema/openejb-jar.xsd,v
  retrieving revision 1.12
  retrieving revision 1.13
  diff -u -r1.12 -r1.13
  --- openejb-jar.xsd   25 Oct 2004 14:24:33 -0000      1.12
  +++ openejb-jar.xsd   28 Oct 2004 01:56:11 -0000      1.13
  @@ -87,11 +87,12 @@
       <xs:complexType name="openejb-jarType">
           <xs:sequence>
               <xs:element name="dependency" type="openejb:dependencyType" 
minOccurs="0" maxOccurs="unbounded"/>
  -            <xs:element name="cmp-connection-factory" type="xs:string" 
minOccurs="0" maxOccurs="1"/>
  +            <!-- use a ref to put this element in the naming namespace rather than 
openejb namespace-->
  +            <xs:element ref="naming:cmp-connection-factory" minOccurs="0"/>
   
               <xs:element name="enterprise-beans">
                   <xs:complexType>
  -                    <xs:choice maxOccurs="unbounded">
  +                    <xs:choice minOccurs="0" maxOccurs="unbounded">
                           <xs:element name="session" type="openejb:session-beanType"/>
                           <xs:element name="entity" type="openejb:entity-beanType"/>
                           <xs:element name="message-driven" 
type="openejb:message-driven-beanType"/>
  @@ -108,6 +109,8 @@
           <xs:attribute name="parentId" type="xs:string" use="optional"/>
       </xs:complexType>
   
  +
  +    <!-- session bean section-->
       <xs:complexType name="session-beanType">
           <xs:sequence>
               <xs:element name="ejb-name" type="xs:string"/>
  @@ -120,6 +123,7 @@
           <xs:attribute name="id" type="xs:ID"/>
       </xs:complexType>
   
  +    <!--entity bean section -->
       <xs:complexType name="entity-beanType">
           <xs:sequence>
               <xs:element name="ejb-name" type="xs:string"/>
  @@ -178,22 +182,6 @@
           </xs:sequence>
       </xs:complexType>
   
  -    <xs:complexType name="message-driven-beanType">
  -        <xs:sequence>
  -            <xs:element name="ejb-name" type="xs:string"/>
  -
  -            <xs:element name="resource-adapter-name" type="xs:string"/>
  -            <xs:element name="activation-spec-class" type="xs:string"/>
  -            <xs:element name="activation-config"
  -                type="openejb:activation-configType"
  -                minOccurs="0"/>
  -
  -            <!--xs:group ref="naming:jndiEnvironmentRefsGroup"/-->
  -            <xs:group ref="openejb:openejb-jndiEnvironmentRefsGroup"/>
  -        </xs:sequence>
  -        <xs:attribute name="id" type="xs:ID"/>
  -    </xs:complexType>
  -
       <xs:complexType name="relationshipsType">
           <xs:sequence>
               <xs:element name="ejb-relation" type="openejb:ejb-relationType" 
maxOccurs="unbounded"/>
  @@ -241,6 +229,22 @@
                   </xs:complexType>
               </xs:element>
           </xs:sequence>
  +    </xs:complexType>
  +
  +
  +    <!--message driven bean section-->
  +    <xs:complexType name="message-driven-beanType">
  +        <xs:sequence>
  +            <xs:element name="ejb-name" type="xs:string"/>
  +            <xs:element ref="naming:resource-adapter" minOccurs="0"/>
  +            <xs:element name="activation-config"
  +                type="openejb:activation-configType"
  +                minOccurs="0"/>
  +
  +            <!--xs:group ref="naming:jndiEnvironmentRefsGroup"/-->
  +            <xs:group ref="openejb:openejb-jndiEnvironmentRefsGroup"/>
  +        </xs:sequence>
  +        <xs:attribute name="id" type="xs:ID"/>
       </xs:complexType>
   
       <xs:complexType name="activation-configType">
  
  
  

Reply via email to