URA Development Guide
System Development Guides
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 Accessor Development Guide

An introduction to developing URAs

This guide covers the concepts and information needed to sucessfully understand and create Universal Resource Accessors.

What is a URA?

A URA is a component that may receive requests about resources from the NetKernel. It only receives requests about URIs which it has been registered to handle. In processing a request, a URA may also issue further requests for resources to the NetKernel. A URA may be thought of as a destination endpoint for a given set of URI resources.

A URA is invoked based upon a mapping from a URI request. The module guide explains how the URI mapping is evaluated by the NetKernel Module Manager. URAs will usually provide a means of sourcing data for a URI but may also support sinking data to a URI and a number of other operations. See technical design for more details. An overview of the interaction between the NetKernel and URA's is given here.

URA's have two general forms Data Accessors and Active Accessors, though this distinction is abitrary and sometimes grey it aids understanding.

Data Accessors are analogous to device drivers, they typically handle an entire URI scheme such as file: or http:.

Active Accessors provide processing or transformation of resources. Active URA's provide a safe encapsulated environment for procedural code to obtain and interact with kernel services.

What do I need to create URAs?

So far you probably didn't need to know that the NetKernel was written using the Java programming language. However by virtue of this fact all accessors must be written using Java. You will need

  • Java Development Kit version 1.4.1 or higher to compile new accessors.
  • You will need to compile against the 1060netkernel.jar supplied in <install>/lib with a standard distribution.
  • You may optionally want to use standard resources from system modules. The ext_layer1 and ext_xml modules are generally used by application URAs. Note: Modules should be placed in your classpath for building but not for execution or debug since modules must be auto-discovered and loaded using the Module Manager Classloader.

Development of a URA

The following documents provide guides to developing the two types of Accessor:

Idoc Accessors

It is possible to write a URA as a DPML idoc. The following guide explains how this can be done and the steps needed to make have an idoc function as a URA.


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