-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Ralph,

I'm sorry I haven't responded to this thread earlier, but I'm the guy to
talk to wrt marmalade.

Unfortunately, since we've been trying like hell to get maven 2.0 out
the door for the last several months, I have let marmalade slip a bit.
However, I should mention that despite it's lack of documentation, this
is a stable and (I believe) completely usable set of libraries. I'm not
likely to have time to document the project for awhile to come (since
I'm sure you've noticed, maven 2.0 isn't out yet...and that's my first
priority), but if you have specific questions I'd be happy to answer them.

I'll start by replying inline to your comments below:

Ralph Goers wrote:
<snip/>

|
| As for Marmalade, I am looking for an XML tag framework that I can limit
| to either a fixed set of tags that I implement, or an XML language that
| is easy to understand and can only perform operations on the objects it
| is provided with.

As far as limiting the taglibs that are available, Marmalade uses a
stacked resolution strategy to discover tag libraries. This means it's
pretty simple to add your own strategy class as either the first-line
strategy, or as the only one...your strategy class might only allow
taglibs on an approved list to be discovered, and throw an exception
otherwise...

As for only working with the objects it's given, Marmalade operates on a
Context which is essentially a scope-enabled hierarchy of maps, meaning
that the entire context is visible from any one point, but child
contexts can be added or removed to add/remove the variables associated
with those lower scopes. Anything in this context is available for
reading or manipulation, using a variety of expression languages (or
direct access from the tag implementation itself).

Also, I noticed that you previously mentioned running Marmalade from the
command-line(?) or at least executing it outside of maven. I've created
the MarmaladeLauncher class to aid in this task, although I haven't had
time to write a CLI wrapper library for direct execution from the
command-line. Such a CLI would have to have a pretty sophisticated
parser IMO, in order to support stacking of discovery strategies, etc.
However, for specialized - and somewhat limited - purposes, writing a
simple Main class to launch marmalade by wrapping the MarmaladeLauncher
should be pretty trivial. The only real hurdle is understanding the
concepts of Marmalade, which I'll admit are poorly articulated the what
passes for current documentation. I'd suggest that you look at the
plexus-marmalade-factory or the MarmaladeLauncher unit tests for a crash
course in how that works.

I have a couple of uses for these:
| 1. I'd like to use it to create symantic modules in drools

For this, you'd just need something that would initialize the marmalade
context and launch the script...right? Sounds pretty simple.

| 2. I'd like to create an event based flow controller for Cocoon
| (something like a more limited version of Javaflow - if that means
| anything to you).

I'm not familiar with Javaflow, and this topic is a bit outside my
day-to-day wanderings. However, it seems to me that the event framework
is bound to be outside of Marmalade proper, with event actions being
Marmalade scripts or scriptlets...right? Again, it's just a matter of
initializing the context and launching the script via
MarmaladeLauncher...shouldn't be too difficult.

Again, I want to reiterate that I'm available for specific questions.
That's the best I can offer until I have time to write up more doco on
Marmalade concepts and usage.

Good luck!

- -john


|
| BTW - I'm very familiar with the memory leak in jelly. I had to pretty
| much gut the multiproject plugin so it could build our website. It would
| die before it got half way through.
|
| And thanks for your time and the help.
|
| Ralph
|
<snip/>
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.6 (GNU/Linux)

iD8DBQFDCKBvK3h2CZwO/4URAlRjAJ9TgWQIqapToWwiZg6TlOqOOM21LACfSoOl
u6VfTwsXEWeTdZo7l8LZRRQ=
=4YSF
-----END PGP SIGNATURE-----

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to