[Mailman-Developers] New Feature Request: A Half-Moderator
Dave Klingler
davek@mail.commercedata.com
Tue, 2 Jan 2001 09:50:27 -0700 (MST)
Jeffrey Thompson wrote:
> Chuq Von Rospach wrote:
> > Which, if you then generalize it, allows you to simply define ALL
> > queues in terms of some kind of "owner" (which may be a function, a
> > person or some other operation), and then you can make the mailman
> > logic loop be nothing more than a state machine looking at messages
> > and attaching them to queues based on the state definitions.
>
Just peeping in from the outside, and from what little I've ferreted about
how Mailman works:
This is a neat thread, because at this point (a big pile of queues) the
work needed to throw the whole thing into a database is trivial. Chuq,
Apple's EOF would let you build a Mailman analog in under an hour, btw!
Faster and easier to maintain!
> Cool concept there. I like that idea. And, also you could further define
> a queue
> as containing sub-queues. In the case of a "half-moderator" he would be
> monitoring
> part of a queue, and would in effect moderate a sub-queue. So the larger
> queue would
> contain all of the people subscribed, plus additional sub-queues that are
> moderated seperately.
and then it gets more complicated, but maybe not. Now we have objects,
each containing data (or pointers to a database somewhere) and code. If each
queue object contains a specific function or functions for dealing with it
then things begin to package up nicely and the architecture gets cleaner.
Then you can have
Class Queue {
function insertEntry
function deleteEntry
function processQueue
function mySpecialPurpose
pointerToObject destinationQueue
listpointer queueData
}
so that processQueue looks like
{
while queueData {
mySpecialPurpose;
if destinationQueue {
[destinationQueue processQueue];
}
}
and a cron entry would just call things the way it does now, or in my case,
another little daemon because my crond seems not to do what I tell it to do.
The contents of the qfiles and lists directories merge together, maybe into
a new qfiles directory because queues and lists are the same.
Apologies for wasting your time/email bandwidth if all of this is nonsensical
or irrelevant. I'm just now learning how Mailman works, so I seriously
considered not sending the results of my enthusiasm to the list. I also
tend to think in terms of Objective C, so my pseudorambling mushes everything
together.
*sniff* Hey, I wasn't going to spend time on this.
I'll just get out of the way, then.
Dave Klingler