<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>devylon &#187; atlassian</title>
	<atom:link href="http://blog.devylon.com/tag/atlassian/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.devylon.com</link>
	<description>just call it friend-o</description>
	<lastBuildDate>Mon, 06 Sep 2010 11:11:02 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=</generator>
		<item>
		<title>Get My Daily Jira Worklog</title>
		<link>http://blog.devylon.com/2009/12/get-my-daily-jira-worklog/#utm_source=feed&#038;utm_medium=feed&#038;utm_campaign=feed</link>
		<comments>http://blog.devylon.com/2009/12/get-my-daily-jira-worklog/#comments</comments>
		<pubDate>Wed, 16 Dec 2009 00:00:19 +0000</pubDate>
		<dc:creator>devylon</dc:creator>
				<category><![CDATA[development]]></category>
		<category><![CDATA[atlassian]]></category>
		<category><![CDATA[jira]]></category>
		<category><![CDATA[soap]]></category>
		<category><![CDATA[webservice]]></category>

		<guid isPermaLink="false">http://blog.devylon.com/?p=89</guid>
		<description><![CDATA[At work I&#8217;m currently evaluating Jira as our &#8220;Scrum Tool&#8221;. Currently we work with various tools: Physical Taskboard TestTrack Pro Excel Sheets Timetracking Tool to assist our scrum process. As a java develepors I endeavore to reuse source code and encapsulate responsibilities within components with precisely defined interfaces. In my daily work I have to [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.atlassian.com" target="_blank"><img class="size-thumbnail wp-image-96 alignright" title="Atlassian Jira Logo" src="http://blog.devylon.com/wp-content/uploads/2009/12/LOGO_JIRA-150x150.png" alt="Atlassian Jira Logo" width="150" height="150" /></a>At work I&#8217;m currently evaluating <a href="http://www.atlassian.com/software/jira/" target="_blank">Jira</a> as our &#8220;Scrum Tool&#8221;. Currently we work with various tools:</p>
<ul>
<li>Physical Taskboard</li>
<li>TestTrack Pro</li>
<li>Excel Sheets</li>
<li>Timetracking Tool</li>
</ul>
<p>to assist our scrum process. As a java develepors I endeavore to reuse source code and encapsulate responsibilities within components with precisely defined interfaces. In my daily work I have to manage 4 tools and keep all the information synchronized, so I gave <a href="http://www.atlassian.com/software/jira/" target="_blank">Jira</a> a try to replace some of the current tools.</p>
<p>I am currently evaluating Jira in the running sprint, and so far it seems to manage all our requirements. But there is information I couldn&#8217;t get out of <a href="http://www.atlassian.com/software/jira/" target="_self">Jira</a>: <em>My Daily Worklog</em>. I need the daily worklog to generate productivity reports and to invoice our customer.</p>
<p>I haven&#8217;t found such a report in the <a href="https://plugins.atlassian.com/search/by/jira" target="_blank">Jira Plugin</a> list, so i wrote a small java application to get this done by utilizing the <a href="http://confluence.atlassian.com/display/JIRA/Creating+a+SOAP+Client" target="_blank">Jira SOAP web-service</a>:</p>
<pre> JiraSoapServiceService jiraSoapServiceGetter = new JiraSoapServiceServiceLocator();
 JiraSoapService soap = jiraSoapServiceGetter
     .getJirasoapserviceV2(
          new URL("http://url.to.jira/rpc/soap/jirasoapservice-v2?wsdl"));
 String token = soap.login("myUsername", "mySecret");

 RemoteIssue[] issuesFromTextSearch = soap
     .getIssuesFromJqlSearch(
         token,
         "project = MYPROJECT AND assignee = myUsername AND fixVersion = 'Sprint 46'",
         10000);

 List&lt;WorklogEntry&gt; entries = new ArrayList&lt;WorklogEntry&gt;();

 for (RemoteIssue remoteIssue : issuesFromTextSearch) {
      RemoteWorklog[] worklogs = soap.getWorklogs(token, remoteIssue.getKey());

      for (RemoteWorklog remoteWorklog : worklogs) {
           entries.add(new WorklogEntry(
                remoteWorklog.getCreated().getTime(),
                remoteWorklog.getTimeSpent(),
                remoteIssue.getKey(),
                remoteIssue.getSummary()));
     }
 }

 DateTime today = new DateTime();

 for (WorklogEntry worklogEntry : entries) {
      DateTime worklogDateTime = new DateTime(worklogEntry.getCreated());
      if (worklogDateTime.getDayOfYear() == today.getDayOfYear()
           &amp;&amp; worklogDateTime.getYear() == today.getYear()) {
           System.out.println(
                 worklogEntry.getIssueKey() +" - "
                 + worklogEntry.getIssueDescription()
                 + " - "+ worklogEntry.getTimeSpent());
      }
 }</pre>
<p>This is a quick hack and far away from any clean code. Maybe I&#8217;ll write a cusomt Jira Report in my spare time to get the above data out of Jira in the future.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.devylon.com/2009/12/get-my-daily-jira-worklog/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
	</channel>
</rss>

