summaryrefslogtreecommitdiffstats
path: root/sandbox/kgoodson/jagg
diff options
context:
space:
mode:
authorkelvingoodson <kelvingoodson@13f79535-47bb-0310-9956-ffa450edef68>2010-01-29 14:02:16 +0000
committerkelvingoodson <kelvingoodson@13f79535-47bb-0310-9956-ffa450edef68>2010-01-29 14:02:16 +0000
commit34ca7df798da5031aa91b0d04039983cb077ba42 (patch)
tree173eb1b20e542ac487d69db181f68a0fbb2afdeb /sandbox/kgoodson/jagg
parentb8e7a0344f363bf360bc3ad99e6a0c44e4ba4731 (diff)
checkpoint - almost got example RSS feed of JIRA being consumed - some issues over Item
git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@904500 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'sandbox/kgoodson/jagg')
-rw-r--r--sandbox/kgoodson/jagg/.settings/org.eclipse.jdt.core.prefs5
-rw-r--r--sandbox/kgoodson/jagg/pom.xml1
-rw-r--r--sandbox/kgoodson/jagg/src/main/java/services/PlanViewImpl.java53
-rw-r--r--sandbox/kgoodson/jagg/src/main/resources/JiraRSS.xsd92
-rw-r--r--sandbox/kgoodson/jagg/src/main/resources/JiraSideband.xml2
-rw-r--r--sandbox/kgoodson/jagg/src/main/resources/exampleJira.xml52
6 files changed, 181 insertions, 24 deletions
diff --git a/sandbox/kgoodson/jagg/.settings/org.eclipse.jdt.core.prefs b/sandbox/kgoodson/jagg/.settings/org.eclipse.jdt.core.prefs
deleted file mode 100644
index d61e19a23f..0000000000
--- a/sandbox/kgoodson/jagg/.settings/org.eclipse.jdt.core.prefs
+++ /dev/null
@@ -1,5 +0,0 @@
-#Thu Jan 21 10:52:25 GMT 2010
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
-eclipse.preferences.version=1
-org.eclipse.jdt.core.compiler.source=1.5
-org.eclipse.jdt.core.compiler.compliance=1.5
diff --git a/sandbox/kgoodson/jagg/pom.xml b/sandbox/kgoodson/jagg/pom.xml
index b4d14055c6..55ec04f610 100644
--- a/sandbox/kgoodson/jagg/pom.xml
+++ b/sandbox/kgoodson/jagg/pom.xml
@@ -122,6 +122,7 @@
<schemaIncludes>
<!-- <include>ipo.xsd</include>-->
<include>JiraSideband.xsd</include>
+ <include>JiraRSS.xsd</include>
</schemaIncludes>
</configuration>
</plugin>
diff --git a/sandbox/kgoodson/jagg/src/main/java/services/PlanViewImpl.java b/sandbox/kgoodson/jagg/src/main/java/services/PlanViewImpl.java
index b432522917..13edacaaea 100644
--- a/sandbox/kgoodson/jagg/src/main/java/services/PlanViewImpl.java
+++ b/sandbox/kgoodson/jagg/src/main/java/services/PlanViewImpl.java
@@ -33,7 +33,9 @@ import org.oasisopen.sca.annotation.Init;
import com.example.ipo.jaxb.Milestone;
import com.example.ipo.jaxb.Plan;
+import com.example.ipo.jaxb.RSS;
import com.example.ipo.jaxb.WorkItem;
+import com.example.ipo.jaxb.JiraRSS;
import com.sun.syndication.feed.synd.SyndEntry;
import com.sun.syndication.feed.synd.SyndFeed;
import com.sun.syndication.io.FeedException;
@@ -82,25 +84,40 @@ public class PlanViewImpl implements PlanView {
String jira = wi.getJira();
String feed = rssPrefix += jira + "/" + jira + ".xml";
- SyndFeedInput input = new SyndFeedInput();
- try {
- SyndFeed sfeed = input.build(new XmlReader(new URL(feed)));
- List<SyndEntry> entries = sfeed.getEntries();
- SyndEntry jiraEntry = (SyndEntry)entries.toArray()[0];
- String title = jiraEntry.getTitle();
- System.out.println(sfeed.toString());
- } catch (IllegalArgumentException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- } catch (MalformedURLException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- } catch (FeedException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- } catch (IOException e) {
- // TODO Auto-generated catch block
+// SyndFeedInput input = new SyndFeedInput();
+// try {
+// SyndFeed sfeed = input.build(new XmlReader(new URL(feed)));
+// List<SyndEntry> entries = sfeed.getEntries();
+// SyndEntry jiraEntry = (SyndEntry)entries.toArray()[0];
+// String title = jiraEntry.getTitle();
+// System.out.println(sfeed.toString());
+// } catch (IllegalArgumentException e) {
+// // TODO Auto-generated catch block
+// e.printStackTrace();
+// } catch (MalformedURLException e) {
+// // TODO Auto-generated catch block
+// e.printStackTrace();
+// } catch (FeedException e) {
+// // TODO Auto-generated catch block
+// e.printStackTrace();
+// } catch (IOException e) {
+// // TODO Auto-generated catch block
+// e.printStackTrace();
+// }
+
+ try {
+ JAXBContext jaxbContext = JAXBContext
+ .newInstance("com.example.ipo.jaxb");
+ Unmarshaller m2 = jaxbContext.createUnmarshaller();
+ File inputFile = new File("src/main/resources/exampleJira.xml")
+ .getAbsoluteFile();
+
+ RSS j = ((JAXBElement<RSS>) m2.unmarshal(inputFile)).getValue();
+ augment_plan(_p);
+ } catch (Exception e) {
e.printStackTrace();
+ } finally {
+
}
diff --git a/sandbox/kgoodson/jagg/src/main/resources/JiraRSS.xsd b/sandbox/kgoodson/jagg/src/main/resources/JiraRSS.xsd
new file mode 100644
index 0000000000..8cd89b6c2c
--- /dev/null
+++ b/sandbox/kgoodson/jagg/src/main/resources/JiraRSS.xsd
@@ -0,0 +1,92 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
+
+ <xsd:include schemaLocation=""></xsd:include>
+ <xsd:element name="rss" type="RSS"></xsd:element>
+
+ <xsd:complexType name="JiraRSS">
+ <xsd:sequence>
+ <xsd:element name="channel" type="xsd:string"></xsd:element>
+ </xsd:sequence>
+ </xsd:complexType>
+
+ <xsd:complexType name="Channel">
+ <xsd:sequence>
+ <xsd:element name="title" type="xsd:string"></xsd:element>
+ <xsd:element name="link" type="xsd:string"></xsd:element>
+ <xsd:element name="description" type="xsd:string"></xsd:element>
+ <xsd:element name="language" type="xsd:string"></xsd:element>
+
+ <xsd:any processContents="lax"></xsd:any>
+ <xsd:element name="item" type="Item"></xsd:element>
+ </xsd:sequence>
+ </xsd:complexType>
+
+
+
+ <xsd:complexType name="Item">
+ <xsd:sequence>
+ <xsd:element name="title" type="xsd:string"></xsd:element>
+ <xsd:element name="link" type="xsd:string"></xsd:element>
+ <xsd:element name="description" type="xsd:string"></xsd:element>
+ <xsd:element name="environment" type="xsd:string"></xsd:element>
+ <xsd:element name="type" type="xsd:string"></xsd:element>
+ <xsd:element name="priority" type="xsd:string"></xsd:element>
+ <xsd:element name="status" type="xsd:string"></xsd:element>
+ <xsd:element name="resolution" type="xsd:string"></xsd:element>
+ <xsd:element name="assignee" type="xsd:string"></xsd:element>
+ <xsd:element name="reporter" type="xsd:string"></xsd:element>
+ <xsd:element name="key" type="Key"></xsd:element>
+ <xsd:element name="summary" type="xsd:string"></xsd:element>
+ <xsd:element name="type" type="xsd:string"></xsd:element>
+ <xsd:element name="priority" type="xsd:string"></xsd:element>
+ <xsd:element name="status" type="xsd:string"></xsd:element>
+ <xsd:element name="resolution" type="xsd:string"></xsd:element>
+ <xsd:element name="assignee" type="xsd:string"></xsd:element>
+ <xsd:element name="reporter" type="xsd:string"></xsd:element>
+ <xsd:element name="created" type="xsd:string"></xsd:element>
+ <xsd:element name="updated" type="xsd:string"></xsd:element>
+ <xsd:element name="version" type="xsd:string"></xsd:element>
+ <xsd:element name="fixVersion" type="xsd:string"></xsd:element>
+ <xsd:element name="component" type="xsd:string"></xsd:element>
+ <xsd:element name="due" type="xsd:string"></xsd:element>
+ <xsd:element name="votes" type="xsd:string"></xsd:element>
+ <xsd:element name="comments" type="Comments"></xsd:element>
+ <xsd:sequence maxOccurs="unbounded" minOccurs="0"></xsd:sequence>
+ <xsd:any></xsd:any>
+ </xsd:sequence>
+ </xsd:complexType>
+
+
+ <xsd:complexType name="RSS">
+ <xsd:sequence>
+ <xsd:element name="channel" type="Channel"></xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="version" type="xsd:string"></xsd:attribute>
+ </xsd:complexType>
+
+
+ <xsd:complexType name="Key">
+ <xsd:simpleContent>
+ <xsd:extension base="xsd:string">
+ <xsd:attribute name="id" type="xsd:string"></xsd:attribute>
+ </xsd:extension>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+ <xsd:complexType name="Comment">
+ <xsd:simpleContent>
+ <xsd:extension base="xsd:string">
+ <xsd:attribute name="id" type="xsd:string"></xsd:attribute>
+ <xsd:attribute name="author" type="xsd:string"></xsd:attribute>
+ <xsd:attribute name="created" type="xsd:string"></xsd:attribute>
+ </xsd:extension>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+ <xsd:complexType name="Comments">
+ <xsd:sequence>
+ <xsd:element name="comment" type="Comment" maxOccurs="unbounded" minOccurs="0"></xsd:element>
+ </xsd:sequence>
+ </xsd:complexType>
+</xsd:schema> \ No newline at end of file
diff --git a/sandbox/kgoodson/jagg/src/main/resources/JiraSideband.xml b/sandbox/kgoodson/jagg/src/main/resources/JiraSideband.xml
index 8f27510a0a..fc6f66e770 100644
--- a/sandbox/kgoodson/jagg/src/main/resources/JiraSideband.xml
+++ b/sandbox/kgoodson/jagg/src/main/resources/JiraSideband.xml
@@ -36,7 +36,7 @@
</workItem>
</milestone>
<milestone ID="Dummy">
- <workItem ID='Activity 1'>
+ <workItem ID='Activity1'>
<title>Add support for ....</title>
<responsible>FB</responsible>
<dueDate>2001-01-01</dueDate>
diff --git a/sandbox/kgoodson/jagg/src/main/resources/exampleJira.xml b/sandbox/kgoodson/jagg/src/main/resources/exampleJira.xml
new file mode 100644
index 0000000000..16b4f82451
--- /dev/null
+++ b/sandbox/kgoodson/jagg/src/main/resources/exampleJira.xml
@@ -0,0 +1,52 @@
+<rss version="0.92" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="JiraRSS.xsd ">
+<channel>
+ <title>ASF JIRA</title>
+ <link>https://issues.apache.org:443/jira</link>
+ <description>This file is an XML representation of an issue</description>
+ <language>en-uk</language>
+ <build-info>
+ <version>3.13.5</version>
+ <build-number>360</build-number>
+ <build-date>07-07-2009</build-date>
+ <edition>Enterprise</edition>
+ </build-info>
+<item>
+ <title>[TUSCANY-3397] Add support for identifying the SCA Spec Version for contribution metadata</title>
+ <link>https://issues.apache.org:443/jira/browse/TUSCANY-3397</link>
+ <description>Provide the same support we have for Composites, for Contribution Metadata</description>
+ <environment />
+ <key id="12443784">TUSCANY-3397</key>
+ <summary>Add support for identifying the SCA Spec Version for contribution metadata</summary>
+ <type id="1" iconUrl="https://issues.apache.org:443/jira/images/icons/bug.gif">Bug</type>
+ <priority id="3" iconUrl="https://issues.apache.org:443/jira/images/icons/priority_major.gif">Major</priority>
+ <status id="5" iconUrl="https://issues.apache.org:443/jira/images/icons/status_resolved.gif">Resolved</status>
+ <resolution id="1">Fixed</resolution>
+ <assignee username="luciano resende">Luciano Resende</assignee>
+ <reporter username="luciano resende">Luciano Resende</reporter>
+ <created>Fri, 18 Dec 2009 17:31:07 +0000 (UTC)</created>
+ <updated>Fri, 18 Dec 2009 17:58:58 +0000 (UTC)</updated>
+ <version>Java-SCA-2.0</version>
+ <fixVersion>Java-SCA-2.0</fixVersion>
+ <component>Java SCA Core Runtime</component>
+ <due />
+ <votes>0</votes>
+<comments>
+ <comment id="12792548" author="luciano resende" created="Fri, 18 Dec 2009 17:58:58 +0000 (UTC)">Fixed, you can now identify the spec version of the contribution metadata based on the SCA Namespace being used, this means that, for SCA 1.1, specVersion will return <a href="http://docs.oasis-open.org/ns/opencsa/sca/200912">http://docs.oasis-open.org/ns/opencsa/sca/200912</a></comment>
+ </comments>
+ <attachments />
+ <subtasks />
+<customfields>
+<customfield id="customfield_12310222" key="com.atlassian.jira.ext.charting:timeinstatus">
+ <customfieldname>Time in Status</customfieldname>
+ <customfieldvalues />
+ </customfield>
+<customfield id="customfield_12310221" key="com.atlassian.jira.ext.charting:resolutiondate">
+ <customfieldname>Resolution Date</customfieldname>
+<customfieldvalues>
+ <customfieldvalue>Fri, 18 Dec 2009 17:58:58 +0000 (UTC)</customfieldvalue>
+ </customfieldvalues>
+ </customfield>
+ </customfields>
+ </item>
+ </channel>
+ </rss>