您可以使用源控制管理用户接口适配器扩展点,来定义工件的装饰和属性,确定可用于资产导入的分支,并允许用户创建与相应源控制管理存储库的连接。
要提供与源控制管理系统的完全集成,您还必须使用 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>