On Monday 07 June 2004 02:18, Ceki Gülcü wrote: > Given the lessons learned from past experience, in particular wrt > extreme simplicity and generality, it is expected that UGLI will be > quickly adopted by many developers.
Ceki has previously asked about the so called "No Logging" strategy, which can be found on the Avalon Wiki site; http://wiki.apache.org/avalon/AvalonNoLogging "No Logging" in its core addresses the concern "Logging! For WHO?", and turn the table around, saying 'The component can express itself in this way. Who is interested?" Now, this solves some issues but raises some new ones; 1. Each object that wants to 'express itself', needs to fire events instead of calling the logger methods. Effectively the same thing, except there may be many listeners, and the 'expression' is done from the object's PoV and not the logging system's. 2. The 'Logger' somehow need to be registered as a listener to the object instance. For IoC frameworks that is already in place, but in many POJO scenarios, support for 'discovery' has to be made available. 3. The Logging framework do exist, and has a good purpose, and that means that an adapter is required between the object's so called Monitor and the logging framework. The custom monitor, which defines the 'expression' end's up being responsible to tie this expressiveness into one or more interested parties. It could look something like; | Custom +------------------ | Monitor concern | Logging concern +--------+ | +---------+ +---------+ | +-----------+ | User |-|->| Custom |-->| Log |-|->| Logger | | Object | | | Monitor | | Adapter | | | Framework | +--------+ | +---------+ +---------+ | +-----------+ | | | | | | | +------------------ | | | | | | +---------------- | | | | Performance concern | | | +---------+ | +-------------+ User | | +---->| Perform |-|->| Performance | concern | | | Adapter | | | Monitor | | | +---------+ | +-------------+ | | | | | +---------------- | | | | +---------------- | | | Fault concern | | +---------+ | +---------+ | +--------->| Fault |-|->| Fault | | | Adapter |-|->| Monitor | | +---------+ | +---------+ | | | +------------- The examples of other Monitors are hypothetical, just to show some 'reasonable' use-cases. What I am trying to show is that the "Logging Concern" is somewhat intersected with other monitoring concerns, and that there is a 'space' between the "Logging Concern" and the "User Concern". (We at Avalon are Concern-Separation-fanatics!) The challenge now would be; 1. Convince everyone here (first) that this is a useful pattern. 2. Figure out how the "Monitor Concern" is managed. 3. Create necessary 'ease-of-use' support for the average user. 4. Establish an exchange of re-usable Monitors. 5. Implement it all. Does anything of the above make any sense to anyone ?? Cheers Niclas -- +------//-------------------+ / http://www.bali.ac / / http://niclas.hedhman.org / +------//-------------------+ --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]