Subject: Developers of Sympa
List archive
- From: David Verdin <address@concealed>
- To: address@concealed
- Subject: Re: [sympa-developpers] Merge is over, what now?
- Date: Tue, 01 Oct 2013 17:25:13 +0200
Hi, Le 30/09/13 17:51, Guillaume Rousse a
écrit :
Le 24/09/2013 10:50, David Verdin a écrit :I'm not confusing them. I just find useful to ignore the classical inheritance semantics to reduce code size. Anyway, see below. A mailing list is not a specific kind of virtual host, even if they share some traits (not *all*). In particular, you can not pass a mailing list object to a code expecting a virtual host object.OK, let's roll with this. We'll see how to maintain a correct level of facorization. Actually, the exact relationship between these elements is not inheritance. It's composition. A sympa server is a set of virtual hosts. Hosts themselves are a set of families and lists, and families are a set of lists. Lists are a set of users. All these elements have their own configuration parameters and, in addition, get their defaults from their containing element. I don't think that qualifies for a composite pattern, but if you know of a general development pattern that fits this description, I'll be more than happy to discover it! Anyway, let's say this discussion is over and we stick to your proposal. We need to write actual code to see if this view correctly handles Sympa needs. All virtual hosts are not actually virtual. We consider it good practive, to create a robot (old denomination) even if you have only one list domain. this way, when you have to add a second list domain, you have no concurrency between your first domain configuration and the new one (specific host vlaues are held in the specific host configuration file, robot.conf). So "virtualhost" is probably not the best choice. Why not: ConfigurableElement |_ Server |_ Host |_ Family |_ List Server contains the defaults applicable to all list domains, and Host the defaults applicable to any List created inside the Host. This naming pattern has the added value to usee very different terms, making the lack of inheritance more obvious, if needed. :-P
|
Attachment:
smime.p7s
Description: Signature cryptographique S/MIME
-
Re: [sympa-developpers] Merge is over, what now?,
David Verdin, 10/01/2013
-
Re: [sympa-developpers] Merge is over, what now?,
IKEDA Soji, 10/02/2013
- Re: [sympa-developpers] Merge is over, what now?, Guillaume Rousse, 10/03/2013
- <Possible follow-up(s)>
-
Re: [sympa-developpers] Merge is over, what now?,
IKEDA Soji, 10/02/2013
-
Re: [sympa-developpers] Merge is over, what now?,
David Verdin, 10/02/2013
-
Re: [sympa-developpers] Merge is over, what now?,
IKEDA Soji, 10/03/2013
-
Re: [sympa-developpers] Merge is over, what now?,
Guillaume Rousse, 10/03/2013
-
[sympa-developpers] Using exception,
IKEDA Soji, 10/04/2013
-
Re: [sympa-developpers] Using exception,
Guillaume Rousse, 10/07/2013
- Re: [sympa-developpers] Using exception, Guillaume Rousse, 10/07/2013
- Re: [sympa-developpers] Using exception, IKEDA Soji, 10/21/2013
-
Re: [sympa-developpers] Using exception,
Guillaume Rousse, 10/07/2013
-
[sympa-developpers] Using exception,
IKEDA Soji, 10/04/2013
-
Re: [sympa-developpers] Merge is over, what now?,
Guillaume Rousse, 10/03/2013
-
Re: [sympa-developpers] Merge is over, what now?,
IKEDA Soji, 10/03/2013
-
Re: [sympa-developpers] Merge is over, what now?,
David Verdin, 10/02/2013
-
Re: [sympa-developpers] Merge is over, what now?,
IKEDA Soji, 10/02/2013
Archive powered by MHonArc 2.6.19+.