Universal Resource Request Design
Architecture and Design
Release Notes
Developing with NetKernel
Module Development Guide
Active Accessor Guide
Data Accessor Guide
Request Guide
Universal Resource Infrastructure Design
Universal Resource Request Design
Representational Aspects
Transreptor Development Guide
Session Guide
Mod DB Guide
Compound URI Guide
License
Change History
NetKernel History
Acknowledgements

Universal Resource Request Design

A technical design summary of com.ten60.netkernel.urrequest

The urrequest package contains the interfaces that implement the design pattern that is the NetKernel. It builds upon the essentially static interfaces of urii package to provide a framework for making requests about URI and receiving results.

UML Diagram

A IURRequestor can make an asynchronous URRequest to an IURRequestee for an action to be performed on a URI. After the action has been attempted a URResult is returned to the IURRequestor. An IURRequestor must pass an IRequestContext with the request to indicate within what context the URI is to be evaluated. An IURRequestor must pass an IRequestSession with the request a session is assigned to a request when it first enters the NetKernel through a transport, all sub-requests must inherit this same session.

The IURSynchRequestor interface provides a mechanism for a client to make a sychronous request. Synchronous requests block until a URResult is available and return it. Failures throw a com.ten60.netkernel.util.NetKernelException .

The NetKernel scheduler acts as a universal IURRequestee that can create and forward requests to IURAccessors that are also reqestees. For more details on the scheduler operation see the process scheduling page. Initial requests are created by transports and sub-requests can be created by accessors which act as IURRequestors. Modules define a unique IRequestContext which gives each module a unique address space.


1060® NetKernelTM Documentation
(C) 2003-2004 1060 Research Limited

Send Feedback

© 2003,2004, 1060® Research Limited
1060 registered trademark, NetKernel trademark of 1060 Research Limited