It's all about the answers!

Ask a question

How to retrieve the project area of a java file?

yaoben lu (56181) | asked Aug 31 '09, 3:14 a.m.
Hi all!

I have implemented it with Jazz 1.x version. But in 2.0 version some of the interfaces have been changed, my former code doesn't work now.

Here is my former code.

IProjectAreaHandle prjArea = null;
ISharingDescriptor shareDesc = shareable.getShare().getSharingDescriptor();

ITeamRepository repos = getTeamRepository(shareDesc);
IItemManager im = repos.itemManager();
IComponentHandle compRef = shareDesc.getComponent();
IComponent comp = (IComponent) im.fetchCompleteItem(compRef, IItemManager.DEFAULT, null);

// get owning team area & project area
IAuditableHandle compOwner = comp.getOwner();

if (compOwner instanceof ITeamAreaHandle) {
ITeamArea teamArea = (ITeamArea) im.fetchCompleteItem((ITeamAreaHandle)compOwner, IItemManager.DEFAULT, null);
prjArea = teamArea.getProjectArea();

IAuditableHandle compOwner = comp.getOwner();

In RTC 2.0, there is no getOwner() method. So, my plugin couldn't find out the project area of a java file.
Could anyone tell me how to modify the code to get the project area in RTC 2.0.

11 answers

permanent link
SEC Servizi (97123257) | answered Aug 29 '12, 6:31 a.m.
edited Aug 29 '12, 6:32 a.m.
Ok, we got it:
IScmService scmService = (IScmService) ((IClientLibraryContext) repo).getServiceInterface(IScmService.class);
IComponentHandle componentH = cs.getComponent();
ComponentOwnerHandle componentOwnerH = scmService.getComponentOwnerRecord((ComponentHandle) componentH);
ComponentOwner componentOwner = (ComponentOwner) repo.itemManager().fetchCompleteItem(componentOwnerH, IItemManager.DEFAULT, null);

Your answer

Register or to post your answer.