jetbrains.buildServer
Interface ExtensionHolder

All Superinterfaces:
ExtensionsProvider, ServiceLocator
All Known Subinterfaces:
SBuildServer, ServerExtensionHolder

public interface ExtensionHolder
extends ServiceLocator, ExtensionsProvider

In most cases you do need to use ExtensionsProvider, please try avoid using this interface unless you need one of methods declared in it

See Also:
ExtensionsProvider, ServiceLocator

Nested Class Summary
 
Nested classes/interfaces inherited from interface jetbrains.buildServer.ExtensionsProvider
ExtensionsProvider.ExtensionAction<T extends TeamCityExtension>
 
Method Summary
<T extends TeamCityExtension>
void
registerExtension(java.lang.Class<T> extensionClass, java.lang.String sourceId, T extension)
          Register an extension for some extension point.
<T extends TeamCityExtension>
void
unregisterExtension(java.lang.Class<T> extensionClass, java.lang.String sourceId)
          Unregister an extension with given parameters registered for some extension point.
 
Methods inherited from interface jetbrains.buildServer.ServiceLocator
findSingletonService, getServices, getSingletonService
 
Methods inherited from interface jetbrains.buildServer.ExtensionsProvider
foreachExtension, getExtension, getExtensions, getExtensionSources
 

Method Detail

registerExtension

<T extends TeamCityExtension> void registerExtension(@NotNull
                                                     java.lang.Class<T> extensionClass,
                                                     @NonNls@NotNull
                                                     java.lang.String sourceId,
                                                     @NotNull
                                                     T extension)
Register an extension for some extension point.
NOTE. TeamCity checks Spring beans for extensions as well

Parameters:
extensionClass - class of the extension, which defines the extension point type
sourceId - a unique Id for the given extension for given extension point
extension - extension itself, implementation of the interface 'extensionClass'

unregisterExtension

<T extends TeamCityExtension> void unregisterExtension(@NotNull
                                                       java.lang.Class<T> extensionClass,
                                                       @NonNls@NotNull
                                                       java.lang.String sourceId)
Unregister an extension with given parameters registered for some extension point.

Parameters:
extensionClass - class of the extension, which defines the extension point type
sourceId - a unique Id for the given extension for given extension point