On Thursday 14 September 2006 16:14, Marc wrote:
> Does anyone else here have a similar situation, or has worked on a similar
> situaiton in the past?

What you are aiming to build is a 'service layer'. Which I really must draw 
and blog about more, but:

Service layer
|
V
Business methods ('managers')
|
V
Data service Layer (Reactor)

Our services pull managers out of an application-wide ColdSpring factory. 
Managers may call on other managers which are injected by ColdSpring, along 
with a Reactor Factory.

Services are independent of each other. Services return simple (no methods) 
transfer objects and are the only parts with access='remote' methods.
Services marshal internal (CFC) objects into a normalised form and exposed a 
more or less obvious/static API, made up of simple types and transfer 
objects, and a client should only have to make one call to a service to 
archive one task.

Business methods hold all your logic about how to actually do the things the 
client asked the service to do i.e. update the database via the Data service 
layer, send a notification and then update something else.

Data services abstract the underlying storage method (Reactor) for the main 
application.

Each layer should be separate and isolated for the one below - ColdSpring 
again.

Weather it is Flex via CFC remoting, Apollo via web services or a CFML page 
via cfcomponent, everything talks to the service to get stuff done.
-- 
Tom Chiverton, I hope the attachment comes through and helps
Helping to carefully disintermediate transparent clusters


****************************************************

This email is sent for and on behalf of Halliwells LLP.

Halliwells LLP is a limited liability partnership registered in England and 
Wales under registered number OC307980 whose registered office address is at St 
James's Court Brown Street Manchester M2 2JF.  A list of members is available 
for inspection at the registered office. Any reference to a partner in relation 
to Halliwells LLP means a member of Halliwells LLP. Regulated by the Law 
Society.

CONFIDENTIALITY

This email is intended only for the use of the addressee named above and may be 
confidential or legally privileged.  If you are not the addressee you must not 
read it and must not use any information contained in nor copy it nor inform 
any person other than Halliwells LLP or the addressee of its existence or 
contents.  If you have received this email in error please delete it and notify 
Halliwells LLP IT Department on 0870 365 8008.

For more information about Halliwells LLP visit www.halliwells.com.


-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
Reactor for ColdFusion Mailing List
[email protected]
Archives at: http://www.mail-archive.com/reactor%40doughughes.net/
-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --

Attachment: structure.pdf
Description: Adobe PDF document

Reply via email to