The objective of this tutorial is to introduce the concept of a resource respository, to describe the role of local and remote repositories in the Transit system, and to show examples of definition and setup of a private repository.
A repository is a resource server. Examples of repositories include the HTTP based DPML Repository accessible under http://repository.dpml.net/classic. Techically this is simply a web server with content structured in terms of groups and resources named using a particular convention. The mapping between an artifact uri and a repository is handled by a Layout object that is declared as part of a resource host definition. A layout implementation translates the artifact uri to to a url relative to the target host structure. Using this model Transit can provide suport for varying repository access and transport strategies.
Transit's default ResourceHost implementation provides out of the box support for file, http and ftp based respository access. The simplest way to create a new repository is to setup a file based repository. This simply involves the the creation of the repository root directory, adding a group directory under the root, adding a directory named after the content type under the group directory, then adding your resources into the type directories using the naming convention [name]-[version].[type] or [name].[type] in the case of artifacts without a version. You host defintion simply references the root directory using the file: protocol as the repository base directory. Note - the above description is based on the 'classic' layout strategy used across the majority of know repositories and internally within Transit's local cache.
A more typical scenario is the establishment of a company wide repository within a local intranet. For this you need to setup a server (e.g. HTTP) with a file based resource handler then configure Transit by declaring a new remote host and definining the host base url as the http server.