Package org.jcsp.net

# Class ServiceSettings

java.lang.Object
org.jcsp.net.ServiceSettings

public class ServiceSettings extends Object

This class is used to hold settings that can be passed to services when they are initialized. Two types of settings can be held. The basic type of settings that can be held are `String` name,value pairs. Only one setting can exist per name. The other type of settings that can be held are address settings. Each address settings can hold a list of `NodeAddressID` objects against a `String` name.

The class also has a field for storing the name of the Service. This can be obtained by calling the `getServiceName()` method.

Author:
  Quickstone Technologies Limited

## Constructor Summary

Constructors
Constructor
Description
`ServiceSettings(String name)`
Constructor which takes the name of the serive for which this object holds settings.

## Method Summary

Modifier and Type
Method
Description
`void`
`addAddress(String name, NodeAddressID address)`
Adds a named address setting.
`void`
`addSetting(String name, String value)`
Adds a `String` name, value setting to this object.
`NodeAddressID[]`
`getAddresses(String name)`
Gets the addresses held in a setting of a specified name.
`String[]`
`getAddressNames()`
Returns an array of `String` objects containing the names of all address settings held in this object.
`String`
`getServiceName()`
An accessor for obtaining the name of the service for which this object holds settings.
`String`
`getSetting(String name)`
Gets the `String` value held in named `String` name, value pair setting.
`String[]`
`getSettingNames()`
Returns an array of `String` objects containing the names of all `String` name, value settings held in this object.

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Constructor Details

### ServiceSettings

public ServiceSettings(String name)
Constructor which takes the name of the serive for which this object holds settings.

Parameters:
  `name` - the name of the service.

## Method Details

### getServiceName

public String getServiceName()
An accessor for obtaining the name of the service for which this object holds settings.

Returns:
  the `String` name of the service.

### addAddress

public void addAddress(String name, NodeAddressID address)
Adds a named address setting.

Parameters:
  `name` - the name of the setting to add.
  `address` - the address to add to the setting.

### getAddresses

public NodeAddressID[] getAddresses(String name)
Gets the addresses held in a setting of a specified name.

Parameters:
  `name` - the name of the setting
Returns:
  an array of `NodeAddressID` objects held in the setting.

### getAddressNames

public String[] getAddressNames()
Returns an array of `String` objects containing the names of all address settings held in this object.

Returns:
  a `String` array of all the address setting names.

### getSettingNames

public String[] getSettingNames()
Returns an array of `String` objects containing the names of all `String` name, value settings held in this object.

Returns:
  a `String` array of all the `String` name, value setting names.

### addSetting

public void addSetting(String name, String value)
Adds a `String` name, value setting to this object.

Parameters:
  `name` - the name of the setting to add.
  `value` - the value of the setting.

### getSetting

public String getSetting(String name)
Gets the `String` value held in named `String` name, value pair setting.

Parameters:
  `name` - the name of the setting of which to obtain the value.
Returns:
  the value of the setting.