Share via


ServiceDefinition Class

Inheritance Hierarchy

System.Object
  Microsoft.TeamFoundation.Framework.Server.ServiceDefinition

Namespace:  Microsoft.TeamFoundation.Framework.Server
Assembly:  Microsoft.TeamFoundation.Framework.Server (in Microsoft.TeamFoundation.Framework.Server.dll)

Syntax

'Declaration
<CallOnSerializationAttribute("PrepareForWebServiceSerialization")> _
<ClassVisibilityAttribute(ClientVisibility.Public, ClientVisibility.Internal)> _
Public Class ServiceDefinition
[CallOnSerializationAttribute("PrepareForWebServiceSerialization")]
[ClassVisibilityAttribute(ClientVisibility.Public, ClientVisibility.Internal)]
public class ServiceDefinition
[CallOnSerializationAttribute(L"PrepareForWebServiceSerialization")]
[ClassVisibilityAttribute(ClientVisibility::Public, ClientVisibility::Internal)]
public ref class ServiceDefinition
[<CallOnSerializationAttribute("PrepareForWebServiceSerialization")>]
[<ClassVisibilityAttribute(ClientVisibility.Public, ClientVisibility.Internal)>]
type ServiceDefinition =  class end
public class ServiceDefinition

The ServiceDefinition type exposes the following members.

Constructors

  Name Description
Public method ServiceDefinition()
Public method ServiceDefinition(String, Guid, String, String, RelativeToSetting, String, String) Factory method for creating service definitions. Location Mappings can be added by means of the [IServiceDefinition.AddLocationMapping()] function. Note that this method does not register a service definition.

Top

Properties

  Name Description
Public property Description Text that documents or describes what this service is or how it is used.
Public property DisplayName The display name for this service definition.
Public property Identifier The identifier for this instance of this service type.Together a [ServiceType] and an [Identifier] uniquely identify a service definition.
Public property IsSingleton Obsolete. If [true], this is the only service definition with this type. If this service definition is about to be registered and this is [true], no service definitions with this service type can already be registered. If this definition is being updated so that it is a singleton definition, it must be the only definition registered. Once a singleton definition is registered, no other service definitions with the given service type can be registered.
Public property LocationMappings The location mappings that define where this service lives for given access mappings for [FullyQualified] service definitions. For any service definition that is relative, this will always be empty.
Public property RelativePath The relative path for this service definition. If the [RelativeToSetting] is [FullyQualified], this value must be null. Otherwise it must contain the part of the path that is relative to whatever the relative setting is for the service. If the caller changes this value, this definition will contain incorrect values for its [LocationMappings] and will return incorrect locations for calls to [LocationForZone] until it is passed back into the [LocationServiceAPI].
Public property RelativeToSetting The tier of [TeamFoundationServer] that this service is relative to.This, together with the [RelativePath] and the location service definition entry for the access mapping, is used to determine the final location of services that have a setting other than [FullyQualified]. If the caller changes this value, this definition will contain incorrect values for its [LocationMappings] and will return incorrect locations for calls to [LocationForZone] until it is passed back into the [LocationServiceAPI].
Public property RelativeToSettingValue
Public property ServiceType This is the name of the type of the service that is being defined. Note that multiple services can have the same [ServiceType]. Together a [ServiceType] and an [Identifier] uniquely identify a service definition.
Public property ToolId The category of "tools" that this service is a part of. This corresponds to the old registration tool ID.

Top

Methods

  Name Description
Public method AddLocationMapping Adds a location mapping for the provided access mapping and location to the service definition. Note that if a mapping already exists for the provided access mapping, it will be overwritten.
Public method Equals Determines whether the specified object is equal to the current object. (Inherited from Object.)
Protected method Finalize Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.)
Public method GetHashCode Serves as a hash function for a particular type. (Inherited from Object.)
Public method GetLocationMapping Returns the [LocationMapping] for the [AccessMapping] provided or null if this [ServiceDefinition] does not have a [LocationMapping] for the provided [AccessMapping]. This function will always return null if it is called on a non-relative [ServiceDefinition].
Public method GetType Gets the Type of the current instance. (Inherited from Object.)
Protected method MemberwiseClone Creates a shallow copy of the current Object. (Inherited from Object.)
Public method RemoveLocationMapping Removes the location mapping for the access mapping provided. Note that access mappings are determined to be equal based on their moniker.
Public method ToString (Overrides Object.ToString().)

Top

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

See Also

Reference

Microsoft.TeamFoundation.Framework.Server Namespace