Is it possible to call a method from Customfield?

HA February 20, 2014

Hello,

I have created a customfield and I have different methods to get the value. E.g. I have a method getValueWithId(). So the value of the customfield shows the let`s say lastName and the getValueWithId is personId, lastName. I am able to get the customfieldvalue as follows:

final CustomFieldManager customFieldManager = ComponentAccessor.getCustomFieldManager();

    	final CustomField customField = customFieldManager.getCustomFieldObjectByName(CONTACT_CUSTOM_FIELD_NAME);

    	if(customField != null) {
	    	final Object customFieldValue = getIssueObject().getCustomFieldValue(customField);
	
	    	if(customFieldValue != null && customFieldValue instanceof String) {
	    		String newCustomFieldValue = (String)customFieldValue;

Now I want to access the customField value from a class that extends a JiraWebActionSupport. I am able to access the value, but I want to directly call the getValueWithId() method from the customField class.

It`s all working as expected, my only problem is, that I have duplicated code within the customField and the class that extends the JiraWebActionSupport.

Thank you.

2 answers

0 votes
HA February 23, 2014

I tried this by checking the name of the returned customField object.

LOGGER.debug("customField: " + customField.getClass().getName());

writes

customField: com.atlassian.jira.issue.fields.CustomFieldImpl

But thats not my class. My class is EmailNotificationCustomField extends GenericTextCFType. Maybe it`s that easy as you describe, but where do I cast?

0 votes
Timothy
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
February 20, 2014

If you cast your customfield to the right class, you can use the method of that class right?

Suggest an answer

Log in or Sign up to answer