NAME

JIRA::Client - An extended interface to JIRA's SOAP API.

VERSION

Version 0.03

SYNOPSIS

use JIRA::Client;

my $jira = JIRA::Client->new('http://jira.example.com/jira', 'user', 'passwd');

my $issue = $jira->getIssue('PRJ-123');

$jira->set_filter_iterator('my-filter');
while (my $issue = $jira->next_issue()) {
    # ...
}

DESCRIPTION

JIRA is a proprietary bug tracking system from Atlassian (http://www.atlassian.com/software/jira/).

This module implements an Object Oriented wrapper around JIRA's SOAP API, which is specified in http://docs.atlassian.com/software/jira/docs/api/rpc-jira-plugin/latest/com/atlassian/jira/rpc/soap/JiraSoapService.html.

Moreover, it implements some other methods to make it easier to do some common operations.

METHODS

With the exception of the API login and logout methods, which aren't needed, all other methods are available through the JIRA::Client object interface. You must call them with the same name as documented in the specification but you should not pass the token argument, because it is supplied transparently by the JIRA::Client object.

The extra methods implemented by this module are described below.

new JIRAURL, USER, PASSWD

The JIRA::Client constructor needs three arguments. JIRAURL is JIRA's base URL from which will be constructed it's WSDL descriptor as $JIRAURL/rpc/soap/jirasoapservice-v2?wsdl. USER and PASSWD are the credentials that will be used to authenticate into JIRA.

set_filter_iterator FILTER_NAME

This method sets up an interator for the filter identified by FILTER_NAME. It must be called before calls to next_issue.

next_issue

This method must be called after a call to set_filter_iterator. Each call returns a reference to the next issue from the filter. When there are no more issues it returns undef.

custom_field_map [MAP]

This method returns a hash mapping JIRA's custom field names to their identifiers. It's useful since when you get a RemoteIssue object from this API it doesn't contain the custom field's names, but just their identifiers.

You can set the mapping passing a hash as argument. This can be useful if you don't have administrative priviledges to the JIRA instance, since only administrators can call the getCustomFields API method.

issue_custom_field ISSUE, FIELD_NAME

This method receives a reference to a RemoteIssue object and a custom field name. It returns a reference to the RemoteField object inside the issue or undef, if there's no custom field by that name in the issue.

get_versions PROJECT_KEY

This method returns a hash mapping a project's version names to the RemoteVersion objects describing them.

AUTHOR

Gustavo Chaves, <gnustavo@cpan.org>

BUGS

Please report any bugs or feature requests to bug-jira-client at rt.cpan.org, or through the web interface at http://rt.cpan.org/NoAuth/ReportBug.html?Queue=JIRA-Client. I will be notified, and then you'll automatically be notified of progress on your bug as I make changes.

SUPPORT

You can find documentation for this module with the perldoc command.

perldoc JIRA::Client

You can also look for information at:

COPYRIGHT & LICENSE

Copyright 2009 CPqD, all rights reserved.

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.