[dev] [commits] Horde branch master updated. 062155700ae928aa4ce65a7b01aaf1930b0cfaed

Chuck Hagenbuch chuck at horde.org
Thu Oct 21 05:50:10 UTC 2010


Quoting Gunnar Wrobel <p at rdus.de>:

> Quoting Chuck Hagenbuch <chuck at horde.org>:
>
>> Quoting "Michael J.Rubinsky" <mrubinsk at horde.org>:
>>
>>>> I'd like to see every factory and singleton removed from the  
>>>> framework packages, unless they are actual factories that provide  
>>>> a default set of configured objects all specific to the package.
>>>
>>> Wouldn't keeping some of the factories in the framework packages  
>>> be beneficial for other projects using our libraries? They won't  
>>> have nice factory binders, so providing some sort of factory  
>>> method would seem to make sense, or am I missing something else  
>>> here?
>>
>> I was trying to get at this with my comment about actual factories.  
>> The more I think about it the more I think that there's not a lot  
>> of code here that isn't config or setup specific, and that sort of  
>> code belongs in core, or in the codebase of other projects using  
>> the libs.
>>
>> I'm definitely open to counter-examples, but if there are, I'd like  
>> to see them become actual Package_Factory classes, not ::factory()  
>> or ::singleton() methods.
>
> I'm definitely going to have some package internal factories. But as  
> you already mentioned they are only about creating the package  
> internal class structures. They may not create additional  
> dependencies to other packages (and definitely no to the  
> Horde_Injector).
>
> I'm not certain this will always be Package_Factory (but could also  
> be Package_Subsystem_Factory).
>
> And I'm also not certain that I'll always leave configuration out of  
> the game. There might be Package_Configuration which is in turn used  
> by Package_Factory or something like that. But of course in these  
> cases I'm usually not relying on the standard Horde  
> configuration/setup.
>
> I'm especially thinking of packages like Kolab_FreeBusy or  
> Kolab_Filter which are small applications in their own regard. So  
> they certainly don't represent the "standard" Horde_* framework  
> package.

Yeah, I think this is all fine. Mainly I want all  
Package_Name::singleton() and Package_Name::factory() methods to go  
away.

-chuck


More information about the dev mailing list