我可以创建WorkItem类别,但在将其与teamarea关联时出错。在createcategory.getAssociatedTeamAreas()行中获取错误.add(newTAHandle)。我没有得到如何在add方法中返回ITeamAreaHandle的布尔对象。获取编译错误:java.lang.UnsupportedOperationException
请帮忙。以下是相关代码。
IWorkItemClient wservice = (IWorkItemClient) teamRepository.getClientLibrary(IWorkItemClient.class);
ICategory createcategory = wservice.createCategory(area, categoryName, null);
wservice.saveCategory(createcat, null);
if (!teamArea.equals("NULL")){
List teamAreas = area.getTeamAreas();
List <teamareahandle> teamlist = teamAreas;
ITeamAreaHandle newTAHandle = findTeamAreaByName(teamlist,teamAreaName,monitor);
createcategory.getAssociatedTeamAreas().add(newTAHandle);
}
//Method findTeamAreaByName
private static ITeamAreaHandle findTeamAreaByName (List<teamareahandle> teamlist, String teamAreaID, IProgressMonitor monitor) throws TeamRepositoryException {
for (ITeamAreaHandle teamAreaHandle : teamlist) {
ITeamArea teamArea = (ITeamArea)teamRepository.itemManager().fetchCompleteItem(teamAreaHandle,ItemManager.DEFAULT,monitor);
if (teamAreaID.equals(teamArea.getName())) {
return teamAreaHandle;
}
}
return null;
}
答案 0 :(得分:0)
This thread评论:
将类别与团队区域相关联的API是内部的。
如果您仍然需要,请将
ICategory
投射到内部Category
界面并使用例如category.setDefaultTeamArea(...)
。您可以使用以下方式设置相关的:
((Category) category).getTeamAreas().add(teamArea);
答案 1 :(得分:0)
试试这个:
ICategory category = workItemClient.createCategory(projectArea, categoryName, getProgressMonitor());
((Category) category).doSetDefaultTeamArea(teamArea);
((Category) category).setArchived(false); //if it is archived
workItemClient.saveCategory(category, getProgressMonitor());