David Blevins wrote:
On Sep 29, 2006, at 9:43 AM, Rick McGuire wrote:
David Blevins wrote:
On Sep 29, 2006, at 3:01 AM, Rick McGuire wrote:
Since I need to redo the packaging for the Yoko ORB support I've
been working on, this is a good time to ask the question. In the
process of creating the Yoko support, I copied what was done with
the sunorb and created a subpackage of org.openejb.corba to contain
the yoko adapters. This gave the tree packages of
org.openejb.corba.yoko and org.openejb.corba.sunorb.
I like this. FYI, though s/org.openejb/org.apache.openejb/
Well, I was talking in the past tense :-) That change was this
morning's task.
Then, when I split these two out into separate modules so they were
built as separate units, I maintained those package names. Is it
legitimate to still use the org.openejb.corba parent package (which
is "owned" by the openejb-core module), or should I create a new
package structure for this? I was originally thinking
org.apache.openejb.orb.yoko and org.apache.openejb.orb.sunorb, but
having two different modules share the same packaging is making me
a little uneasy. Perhaps org.apache.openejb.yoko.orb and
org.apache.openejb.sun.orb would be better choices. Anybody have
any preferences, or should I just keep what I was using originally?
Couple questions. Is there any shared code between
o.a.openejb.corba.yoko and o.a.openejb.corba.sunorb that would/could
go into o.a.openejb.corba? Is it possible to split
o.a.openejb.corba out into two (maybe three) modules?
There is no code sharing between the yoko code and the sunorb code.
This is essentially just bridge code that connects the ORB
independent code in org.apache.openejb.corba to the specific ORB.
The org.apache.openejb.corba package has a number of subpackages that
are also independent of the choice of ORBs.
modules/openejb-corba (if there's shared code)
modules/openejb-yoko
modules/openejb-sunorb
Right now, I have the yoko package and the sun package as separate
top-level repositories because of the build issues involved. The
Yoko package will build with any JVM (I've tested with Sun 1.4.2, Sun
5.0, IBM 1.4.2, and IBM 5.0). The sunorb package can ONLY be built
with Sun 1.4.2, so I wanted it to be a separate checkout/build. And
because of these changes, the openejb2 tree can be built with all of
these JVMs too. If desired, the yoko code can easily be merged into
the openejb2 tree as a sub-module since it will compile cleanly
everywhere. The sunorb code needs to be kept to one side because of
the build conflicts.
Great. We could do
modules/openejb-corba
modules/openejb-yoko
modules/openejb-sunorb
.. and have openejb-sunorb disabled by default, enableable with a -D
flag of our choosing. I.e.
---pom.xml---
<modules>
<module>openejb-pkgen-builder</module>
<module>openejb-core</module>
<module>openejb-builder</module>
</modules>
<profiles>
<profile>
<id>sunorb</id>
<activation>
<property>
<name>sunorb</name>
</property>
</activation>
<modules>
<module>openejb-sunrob</module>
</modules>
</profile>
</profiles>
-------------
mvn clean install
(no sunorb built)
mvn clean install -Dsunorb=true
(includes the openejb-sunorb module)
I'm sure Jason Dillon can think of a way where it's enabled magically
based on what JDK you're using. He did it in geronimo specs. But
something like this at least meets the requirements.
That works for me. I'll need some pointers on how to do this in m2, but
sounds manageable.
Now, given that, what package name should I use for each module? From
this, it sounds like org.apache.openejb.yoko and
org.apache.openejb.sunorb would be fine.
-David
Rick
Thoughts?
-David