您可以使用源控制管理用户接口适配器扩展点,来实施以下各种源控制管理系统:CVS、IBM® Rational® ClearCase®(Base 和 UCM ClearCase)以及 IBM Rational Team Concert。
您可以使用源控制管理用户接口适配器扩展点,来定义工件的装饰和属性,确定可用于资产导入的分支,并允许用户创建与相应源控制管理存储库的连接。
要提供与源控制管理系统的完全集成,您还必须使用 com.ibm.ram.rich.core.teamContributor 扩展点。要获取有关使用 com.ibm.ram.rich.core.teamContributor 扩展点的更多信息,请参阅使用源控制管理适配器扩展点。
API 信息:
您可以使用源控制管理用户接口适配器扩展点,来定义多个 teamUIContributor 添加者。每个添加者需要提供用于扩展 com.ibm.ram.rich.ui.scm.TeamUIContributor 的类。每个添加者必须提供一个或多个 artifactReferenceKind 元素。该元素会附加到每个工件,以识别工件原来所在的源控制管理系统。必须使用资产来确定需要用于该资产的工件的 teamUIContributor。添加者需要选择此属性的全局限定唯一名称(如 org.organization.product.ram.myscm)以避免该属性干扰其他添加者。
每个添加者必须提供一个 teamRepositoryProviderID 元素。此元素识别工作空间中该资源的源控制管理系统。可通过 org.eclipse.team.core.RepositoryProvider.getProvider(IProject) 来获取存储库提供者。可通过 org.eclipse.team.core.RepositoryProvider.getID() 来获取每个存储库提供者的标识。必须在 teamRepositoryProviderID 元素的 repositoryProviderID 属性中提供此标识。
配置标记:
<!ELEMENT extension (teamUIContributor+)>
<!ATTLIST extension
point CDATA #REQUIRED
id CDATA #IMPLIED
name CDATA#IMPLIED>
<!ELEMENT teamUIContributor (artifactReferenceKind+ ,teamRepositoryProviderID)>
<!ATTLIST extension
point CDATA#REQUIRED
id CDATA #IMPLIED
name CDATA #REQUIRED>
使用以下扩展点来添加用户界面工件:<!ELEMENT artifactReferenceKindEmpty>
<!ATTLIST artifactReferenceKind
kind CDATA #REQUIRED>
以下属性附加到每个工件,并识别工件原来所在的源控制管理系统。使用资产确定要用于工件的
teamUIContributor 或 teamContributor 时会使用此属性。添加者必须选择此属性的全局限定唯一名称(如
org.organization.product.ram.myscm)以避免该属性干扰其他添加者。<!ELEMENT teamRepositoryProviderID EMPTY>
<!ATTLIST teamRepositoryProviderID
repositoryProviderID CDATA #REQUIRED>
此代码识别工作空间中资源的源控制管理系统。可通过
org.eclipse.team.core.RepositoryProvider.getProvider(IProject) 获取资源的存储库提供者。可通过 org.eclipse.team.core.RepositoryProvider.getID() 来获取每个存储库提供者的标识。必须在
teamRepositoryProviderID 元素的 repositoryProviderID 属性中提供此标识。<extension id="com.ibm.ram.rich.ui.teamUIContributor"
name="Team UI Contributor"
point="com.ibm.ram.rich.ui.extension.teamUIContributor">
<teamUIContributor class="com.ibm.ram.internal.rich.ui.scm.CVSArtifactUIContributorWrapper"
id="com.ibm.ram.rich.core.teamContributor.cvs"
name="Team UI Contributor">
<artifactReferenceKind kind="CVS">
<teamRepositoryProviderID repositoryProviderID="org.eclipse.team.cvs.core.cvsnature">
</teamRepositoryProviderID>
</teamUIContributor>
</extension>