How to fectch value of custom attribute of type contributor with java api?
I am able to do it if the custom attribute is of type Small String:
But I need to know how to do so if the custom attribute is of type Contributor list..
Thank you so much in advance
2 answers
Comments
Hi Sam thanks for quick reply.
I am writing custom advisor. I have tried with IworkItemServer method. I am getting attribute first(Using IworkItemServer.findAtribute () method). When I used workitem.getValue(custom_Contributor_attribute_filed) it is giving meĀ IContributorHandle of default user(i.e Unassigned) even though I have selected particular user(This field is like "Owned by" field). I am not able to get currently selected user in the custom_Contributor_attribute_filed. I tried with IworkItemServer enumeration mehtod but getting assertionFailed error(Also tried with EnumerationManager.internalresolve(...) method). Please let me know if anyone have idea to how to get value custom attribute of type contributor?
Funny, I just realized I have no example for the server, where I resolve the contributor handle to a contributor. Hang in there, I am trying to create one.
Please be aware of http://rsjazz.wordpress.com/2012/12/14/do-not-modify-the-triggering-element-in-an-operationadvisor/ should you try to modify your work item in the advisor.
Comments
The code to get an arbitrary IContributor Handle resolved to an IContributor I found is:
IContributorHandle creator = resolved.getOwner(); fRepositoryItemService=getService(IRepositoryItemService.class);You need to add the IRepositoryItemService to the prerequisitesIContributor user = (IContributor) fRepositoryItemService.fetchItem(creator, IRepositoryItemService.COMPLETE);
<prerequisites> <requiredservice interface="com.ibm.team.workitem.service.IWorkItemServer"/> <requiredservice interface="com.ibm.team.workitem.common.IWorkItemCommon"/> <requiredservice interface="com.ibm.team.repository.service.IRepositoryItemService"/> </prerequisites>
This assumes you try to write an advisor for the server. On the client the API is different and you can find code in my blog for that. It also resolves the IContributorHandle.