Javadoc Tags

Service Tag

The service tag when used within a class declares the ability of the compoent type to export one or more work interfaces. Under class scope a component may declare 0..n service export declarations. When used within an interface, the tag declares the interface as a managable service. A service tag may appear once in a interface defintion.

Attributes

Attribute Required Description
type required in class scope

The service interface classname. This attribute is automatically assigned the interface classname when declared in an interface.

version no

The service version. If not declared the service export is assumed to be version 1.0.

Example

package org.apache.avalon.playground;

/**
 * Example of a component declaring export of a set of services.  
 *
 * @avalon.component version="5.1" name="vault"
 * @avalon.service type="somwhere.Vault;
 * @avalon.service type="somwhere.KeystoreHandler" version="2.1.1;
 */
public class DefaultVault implements Vault, KeystoreHandler
{
  ...
}

Generated meta-info type descriptor:

<type>
  <info>
    <version>5.1.0</version>
    <name>vault</name>
  </info>
  <services>
    <service type="somwhere.Vault" version="1.0.0"/>
    <service type="somwhere.KeystoreHandler" version="2.1.1"/>
  </services>
</type>