org.eclipse.ecf.discovery.identity

## Interface IServiceTypeID

All Superinterfaces:
  Comparable, org.eclipse.core.runtime.IAdaptable, ID, Principal, Serializable

All Known Implementing Classes:
  BnRDnsSdServiceTypeID, DnsSdServiceTypeID, JSLPServiceTypeID, ServiceTypeID, ZooDiscoveryServiceTypeID

    public interface IServiceTypeID
    extends ID

Service type ID contract.

### Field Summary

Fields
`static String` `DEFAULT_NA` Default ECF naming authority (will be translated into provider specific representation)
`static String[]` `DEFAULT_PROTO` Default ECF protocols (will be translated into provider specific representation)
`static String[]` `DEFAULT_SCOPE` Default ECF scopes (will be translated into provider specific representation)

### Method Summary

All Methods Instance Methods Abstract Methods
`String` `getInternal()` Get the internal name of the service type.
`String` `getNamingAuthority()`
`String[]` `getProtocols()`
`String[]` `getScopes()`
`String[]` `getServices()`

### Methods inherited from interface org.eclipse.ecf.core.identity.ID

`equals, getName, getNamespace, hashCode, toExternalForm`

### Methods inherited from interface java.lang.Comparable

`compareTo`

### Methods inherited from interface java.security.Principal

`implies, toString`

### Methods inherited from interface org.eclipse.core.runtime.IAdaptable

`getAdapter`

### Field Detail

#### DEFAULT_PROTO

    static final String[] DEFAULT_PROTO

Default ECF protocols (will be translated into provider specific representation)

Since:
  3.0

#### DEFAULT_SCOPE

    static final String[] DEFAULT_SCOPE

Default ECF scopes (will be translated into provider specific representation)

Since:
  3.0

#### DEFAULT_NA

    static final String DEFAULT_NA

Default ECF naming authority (will be translated into provider specific representation)

Since:
  3.0
See Also:
  Constant Field Values

### Method Detail

#### getNamingAuthority

    String getNamingAuthority()

Returns:
  String Naming Authority for this ServiceType. Will not be `null`. If this instance has been created with the provider specific default, this will return `DEFAULT_NA` instead.

#### getProtocols

    String[] getProtocols()

Returns:
  String[] of protocols supported. Will not be `null`, but may be empty array. If this instance has been created with the provider specific default, this will return `DEFAULT_PROTO` instead.

#### getScopes

    String[] getScopes()

Returns:
  The scopes in which this Service is registered. Will not be `null`, but may be empty array. If this instance has been created with the provider specific default, this will return `DEFAULT_SCOPE` instead!

#### getServices

    String[] getServices()

Returns:
  The name of the service type. If the underlying discovery mechanism supports naming hierarchies, the hierarchy will be returned flattened as an array. Will not be `null`, but may be empty array.

#### getInternal

    String getInternal()

Get the internal name of the service type. Provider implementations may choose to have this return the same value as `ID.getName()`, or they may return a different, internal value appropriate to the provider.

Returns:
  String internal name for this service type. Will not return `null`.