jetbrains.vcs.api
Interface VcsServiceProvider

All Known Subinterfaces:
VcsManager, VcsServiceFactory

public interface VcsServiceProvider

Base interface to contain commonly used methods to access Vcs services.

Since:
TC 8.0
Author:
Eugene Petrenko (eugene.petrenko@jetbrains.com)

Method Summary
<T extends VcsGenericService>
T
getGenericService(java.lang.String vcsName, java.lang.Class<T> serviceClass)
          Fetches a global vcs-related service for a given Vcs plugins
<T extends VcsService>
T
getVcsService(VcsSettings settings, java.lang.Class<T> serviceClass)
          Fetches a repository layout service of given type by given settings.
 

Method Detail

getVcsService

@Nullable
<T extends VcsService> T getVcsService(@NotNull
                                                VcsSettings settings,
                                                @NotNull
                                                java.lang.Class<T> serviceClass)
Fetches a repository layout service of given type by given settings. Null will be returned if service is not implemented

Type Parameters:
T - type of service
Parameters:
settings - RepositoryLayout settings description
serviceClass - type of service
Returns:
RepositoryLayout service for a given settings and service class
Since:
TC 8.0

getGenericService

@Nullable
<T extends VcsGenericService> T getGenericService(@NotNull
                                                           java.lang.String vcsName,
                                                           @NotNull
                                                           java.lang.Class<T> serviceClass)
Fetches a global vcs-related service for a given Vcs plugins

Parameters:
serviceClass - type of service to fetch
Returns:
service or null if service not supported
Since:
TC 8.0