org.eclipse.ecf.discovery.identity

## Class ServiceIDFactory

- java.lang.Object
- - org.eclipse.ecf.discovery.identity.ServiceIDFactory

All Implemented Interfaces:
  IServiceIDFactory

    public class ServiceIDFactory
    extends Object
    implements IServiceIDFactory

ServiceIDFactory implementation.

### Constructor Summary

Constructors
Constructor and Description
`ServiceIDFactory()`

### Method Summary

All Methods Static Methods Instance Methods Concrete Methods
`IServiceTypeID` `createServiceTypeID(Namespace namespace, IServiceTypeID aServiceTypeId)` Create an IServiceTypeID.
`IServiceTypeID` `createServiceTypeID(Namespace namespace, String serviceType)` Create an IServiceTypeID.
`IServiceTypeID` `createServiceTypeID(Namespace namespace, String[] serviceType)` Create an IServiceTypeID.
`IServiceTypeID` `createServiceTypeID(Namespace namespace, String[] serviceType, String[] protocols)` Create an IServiceTypeID.
`IServiceTypeID` `createServiceTypeID(Namespace namespace, String[] serviceType, String[] scopes, String[] protocols, String namingAuthority)` Create an IServiceTypeID.
`static IServiceIDFactory` `getDefault()`

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

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

### Constructor Detail

#### ServiceIDFactory

    public ServiceIDFactory()

### Method Detail

#### getDefault

    public static IServiceIDFactory getDefault()

#### createServiceTypeID

    public IServiceTypeID createServiceTypeID(Namespace namespace,
                                              String serviceType)

Description copied from interface: `IServiceIDFactory`
Create an IServiceTypeID. Creates an immutable IServiceTypeID.

Specified by:
  `createServiceTypeID` in interface `IServiceIDFactory`
Parameters:
  `namespace` - the Namespace instance to create the service ID with. Must not be `null`.
  `serviceType` - The service type. Must not be `null`.
Returns:
  IServiceTypeID created. Will not be `null`.
Since:
  3.0
See Also:
  `IServiceIDFactory.createServiceTypeID(org.eclipse.ecf.core.identity.Namespace, java.lang.String[], java.lang.String[], java.lang.String[], java.lang.String)`

#### createServiceTypeID

    public IServiceTypeID createServiceTypeID(Namespace namespace,
                                              String[] serviceType)

Description copied from interface: `IServiceIDFactory`
Create an IServiceTypeID. Creates an immutable IServiceTypeID.

Specified by:
  `createServiceTypeID` in interface `IServiceIDFactory`
Parameters:
  `namespace` - the Namespace instance to create the service ID with. Must not be `null`.
  `serviceType` - Array containing the ordered naming hierarchy from 0...n. Must not be `null`.
Returns:
  IServiceTypeID created. Will not be `null`.
Since:
  3.0
See Also:
  `IServiceIDFactory.createServiceTypeID(org.eclipse.ecf.core.identity.Namespace, java.lang.String[], java.lang.String[], java.lang.String[], java.lang.String)`

#### createServiceTypeID

    public IServiceTypeID createServiceTypeID(Namespace namespace,
                                              String[] serviceType,
                                              String[] scopes,
                                              String[] protocols,
                                              String namingAuthority)

Description copied from interface: `IServiceIDFactory`
Create an IServiceTypeID. Creates an immutable IServiceTypeID.

Specified by:
  `createServiceTypeID` in interface `IServiceIDFactory`
Parameters:
  `namespace` - the Namespace instance to create the service ID with. Must not be `null`.
  `serviceType` - Array containing the ordered naming hierarchy from 0...n. Must not be `null`.
  `scopes` - Array containing all scopes or `IServiceTypeID.DEFAULT_SCOPE` for default. Must not be `null`.
  `protocols` - Array containing all protocols or `IServiceTypeID.DEFAULT_PROTO` for default. Must not be `null`.
  `namingAuthority` - the NamingAuthority or `IServiceTypeID.DEFAULT_NA` for default. Must not be `null`.
Returns:
  IServiceTypeID created. Will not be `null`.
Since:
  3.0
See Also:
  `IServiceIDFactory.createServiceTypeID(org.eclipse.ecf.core.identity.Namespace, java.lang.String[], java.lang.String[], java.lang.String[], java.lang.String)`

#### createServiceTypeID

    public IServiceTypeID createServiceTypeID(Namespace namespace,
                                              String[] serviceType,
                                              String[] protocols)

Description copied from interface: `IServiceIDFactory`
Create an IServiceTypeID. Creates an immutable IServiceTypeID. NamingAuthority will be set to `IServiceTypeID.DEFAULT_NA`

Specified by:
  `createServiceTypeID` in interface `IServiceIDFactory`
Parameters:
  `namespace` - the Namespace instance to create the service ID with. Must not be `null`.
  `serviceType` - Array containing the ordered naming hierarchy from 0...n. Must not be `null`.
  `protocols` - Array containing the protocols. Must not be `null`.
Returns:
  IServiceTypeID created. Will not be `null`.
Since:
  3.0
See Also:
  `IServiceIDFactory.createServiceTypeID(org.eclipse.ecf.core.identity.Namespace, java.lang.String[], java.lang.String[])`

#### createServiceTypeID

    public IServiceTypeID createServiceTypeID(Namespace namespace,
                                              IServiceTypeID aServiceTypeId)

Description copied from interface: `IServiceIDFactory`
Create an IServiceTypeID. Creates an immutable IServiceTypeID from a non- `null` `IServiceTypeID` with a different `Namespace`.

Specified by:
  `createServiceTypeID` in interface `IServiceIDFactory`
Parameters:
  `namespace` - the Namespace instance to create the service type ID with. Must not be `null`.
  `aServiceTypeId` - service type id. Must not be `null`.
Returns:
  IServiceTypeID created. Will not be `null`.
Since:
  3.0
See Also:
  `IServiceIDFactory.createServiceTypeID(org.eclipse.ecf.core.identity.Namespace, org.eclipse.ecf.discovery.identity.IServiceTypeID)`