On Wed, 2006-08-02 at 15:51 +0300, karthikeyan balasubramanian wrote:
>
> Speaking about framework.  Anybody is aware there is a very popular
> framework in Java called Spring which has pretty cool features like
> "Inversion of Control", "Dependency Injection" etc.

Sounds similar to the service system implemented in InterJinn. I
implemented a lookup system allowing retrieval of service objects by
custom names. This allows the mapping to be overriden with userland
re-definitions which may or may not extend the original class. In this
way, a developer can replace components and services without the need to
change the code that makes use of such objects. The only caveat is that
the override must at least support the methods and properties for the
service or component being overriden. I have used this in many projects
to extend the core components in InterJinn to provide customers with
tailored functionality for their own specific needs. A simple example
was overriding the mail service to dupe outgoing emails and store in an
archive. It was as simple as extending the JinnMail class, overriding
the send() method, and overriding the service registration. And voila,
all existing code across the project automatically inherited the
functionality, and the distribution code didn't need to be touched.

Cheers,
Rob.
-- 
.------------------------------------------------------------.
| InterJinn Application Framework - http://www.interjinn.com |
:------------------------------------------------------------:
| An application and templating framework for PHP. Boasting  |
| a powerful, scalable system for accessing system services  |
| such as forms, properties, sessions, and caches. InterJinn |
| also provides an extremely flexible architecture for       |
| creating re-usable components quickly and easily.          |
`------------------------------------------------------------'

-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to