TeamFoundationDatabaseManagementService Class

Inheritance Hierarchy

System.Object
  Microsoft.TeamFoundation.Framework.Server.TeamFoundationDatabaseManagementService

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

Syntax

'Declaration
<TeamFoundationServiceDependency(GetType(TeamFoundationJobService))> _
<TeamFoundationServiceDependency(GetType(TeamFoundationLockingService))> _
<TeamFoundationServiceDependency(GetType(TeamFoundationRegistryService))> _
<TeamFoundationServiceDependency(GetType(TeamFoundationServicingService))> _
<TeamFoundationServiceDependency(GetType(TeamFoundationHostManagementService))> _
<TeamFoundationServiceDependency(GetType(TeamFoundationCollationService))> _
<TeamFoundationServiceDependency(GetType(IdentityService))> _
Public NotInheritable Class TeamFoundationDatabaseManagementService _
    Implements ITeamFoundationService
[TeamFoundationServiceDependency(typeof(TeamFoundationJobService))]
[TeamFoundationServiceDependency(typeof(TeamFoundationLockingService))]
[TeamFoundationServiceDependency(typeof(TeamFoundationRegistryService))]
[TeamFoundationServiceDependency(typeof(TeamFoundationServicingService))]
[TeamFoundationServiceDependency(typeof(TeamFoundationHostManagementService))]
[TeamFoundationServiceDependency(typeof(TeamFoundationCollationService))]
[TeamFoundationServiceDependency(typeof(IdentityService))]
public sealed class TeamFoundationDatabaseManagementService : ITeamFoundationService
[TeamFoundationServiceDependency(typeof(TeamFoundationJobService))]
[TeamFoundationServiceDependency(typeof(TeamFoundationLockingService))]
[TeamFoundationServiceDependency(typeof(TeamFoundationRegistryService))]
[TeamFoundationServiceDependency(typeof(TeamFoundationServicingService))]
[TeamFoundationServiceDependency(typeof(TeamFoundationHostManagementService))]
[TeamFoundationServiceDependency(typeof(TeamFoundationCollationService))]
[TeamFoundationServiceDependency(typeof(IdentityService))]
public ref class TeamFoundationDatabaseManagementService sealed : ITeamFoundationService
[<Sealed>]
[<TeamFoundationServiceDependency(typeof(TeamFoundationJobService))>]
[<TeamFoundationServiceDependency(typeof(TeamFoundationLockingService))>]
[<TeamFoundationServiceDependency(typeof(TeamFoundationRegistryService))>]
[<TeamFoundationServiceDependency(typeof(TeamFoundationServicingService))>]
[<TeamFoundationServiceDependency(typeof(TeamFoundationHostManagementService))>]
[<TeamFoundationServiceDependency(typeof(TeamFoundationCollationService))>]
[<TeamFoundationServiceDependency(typeof(IdentityService))>]
type TeamFoundationDatabaseManagementService =  
    class 
        interface ITeamFoundationService 
    end
public final class TeamFoundationDatabaseManagementService implements ITeamFoundationService

The TeamFoundationDatabaseManagementService type exposes the following members.

Methods

  Name Description
Public method AcquireDatabasePartition Acquire an available database partition. If an existing database partition is unavailable, new database will be created on demand.
Public method CopyDatabase(TeamFoundationRequestContext, Int32, String)
Public method CopyDatabase(TeamFoundationRequestContext, Int32, String, TimeSpan)
Public method CreateDatabase Creates a physical database on the specified data tier with specified collation. If collation is null or emptry string, server's default collation will be used.
Public method CreateDatabasePool Create a new database pool definition.
Public method CreateDatabaseUsersForServiceAccounts
Public method DeleteDatabasePool
Public method Equals Determines whether the specified object is equal to the current object. (Inherited from Object.)
Public method GenerateDatabaseName
Public method GetDatabase
Public method GetDatabasePool Gets specified database pool. DatabasePoolNotFoundException exception is thrown when the specified database pool not found.
Public method GetDatabasePoolsToGrow Returns all the databases that are under their CreateThreshold.
Public method GetDatabaseSizeProperties
Public method GetHashCode Serves as the default hash function. (Inherited from Object.)
Public method GetNumberOfDatabases Get the number of databases that are registered to a pool.
Public method GetSplitDatabaseIssues Call before split to provide interactive feedback on potential issues earlier and avoid queueing a job which will fail Ultimately, SplitDatabase will also call this method when the job runs. If there are input issues (null etc...) it will throw. If there are environmental issues that are being checked, it will successfully return a list of the issues. It should not throw.
Public method GetType Gets the Type of the current instance. (Inherited from Object.)
Public method IncrementTenantsPendingDelete Indicate that current tenants registered to this database are pending deletion. The number of tenants pending delete will be incremented by the provieded tenantCount. The tenant count will be decremented when the delete is actually processed.
Public method PerformDatabaseSplitAnalysis Analyze the tenant usage of the given database and return a list of the tenant hostIds which should be split out based on the given method
Public method QueryDatabasePools Query the database pools.
Public method QueryDatabases(TeamFoundationRequestContext) Query all the databases managed by this service.
Public method QueryDatabases(TeamFoundationRequestContext, TeamFoundationDatabaseType) Query databases with specified database type
Public method QueryDatabases(TeamFoundationRequestContext, String) Query databases from the specified database pool.
Public method QueryDatabaseUsage
Public method RegisterDatabase Register a new database with the DatabaseManagementService.
Public method ReleaseDatabasePartition Decrement the current tenant count on a database. This call should be made if AcquireDatabase was succefully called previously, but the caller either failed or no longer needs the database.
Public method RemoveDatabase Unregister a database from database management. Delete and Detach operations must call this method to remove a database from tbl_Database.
Public method SplitDatabase Splits a list of collection hosts out of a database into a new database and returns the desitination database id. Issues should be checked by GetSplitDatabaseIssues ahead of this call. In the event that there are issues when this is called, it will throw AdminValidationException with the detailed list of issues. Only the hosts that were started before the split will be started after the split. On issues, this method throws AdminValidationException or TeamFoundationDatabaseSplitException
Public method ToString Returns a string that represents the current object. (Inherited from Object.)
Public method TryGetDatabasePool Gets specified database pool. A return value indicates whether specified database pool exists.
Public method TryGetDatabaseProperties Get the database properties from a connection string.
Public method UpdateDatabasePool Update a pool definition.
Public method UpdateDatabaseProperties Update the service level of a database.

Top

Explicit Interface Implementations

  Name Description
Explicit interface implemetationPrivate method ITeamFoundationService.ServiceEnd End the service.
Explicit interface implemetationPrivate method ITeamFoundationService.ServiceStart Start the TeamFoundationDatabaseManagementService. This service can only be started at the deployment level service host.

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